Cloudflare

CDN, security, and edge computing platform

developers.cloudflare.com/api ↗
Version
4.0.0
OpenAPI
3.0.3
Endpoints
2845
Schemas
5740
Updated
3 days ago
Infrastructure cdn dns security infrastructure
Use this API in your AI agent

Query structured spec data via REST or MCP. Get exactly what your agent needs.

Get API Key

Server URLs

https://api.cloudflare.com/client/v4

Authentication

apiKey apiKey bearer apiKey

Endpoints

Clear filters

Ai gateway datasets 2 endpoints

GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/datasets

Lists all AI Gateway evaluator types configured for the account.

operationId: aig-config-list-dataset

Parameters

Name In Required Type Description
account_id path required string
gateway_id path required string
page query optional integer
per_page query optional integer
name query optional string
enable query optional boolean
search query optional string

Responses

200 List objects
400 Bad Request
GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/datasets
GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/datasets/{id}

Retrieves details for a specific AI Gateway dataset.

operationId: aig-config-fetch-dataset

Parameters

Name In Required Type Description
account_id path required string
gateway_id path required string
id path required string

Responses

200 Returns a single object if found
404 Not Found
GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/datasets/{id}

Ai gateway dynamic routes 5 endpoints

GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/routes

List all AI Gateway Dynamic Routes.

operationId: aig-config-list-gateway-dynamic-routes

Parameters

Name In Required Type Description
account_id path required string
gateway_id path required string

Responses

200 Success
400 Bad Request
GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/routes
GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/routes/{id}

Get an AI Gateway Dynamic Route.

operationId: aig-config-get-gateway-dynamic-route

Parameters

Name In Required Type Description
account_id path required string
gateway_id path required string
id path required string

Responses

200 Success
400 Bad Request
GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/routes/{id}
GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/routes/{id}/deployments

List all AI Gateway Dynamic Route Deployments.

operationId: aig-config-list-gateway-dynamic-route-deployments

Parameters

Name In Required Type Description
account_id path required string
gateway_id path required string
id path required string

Responses

200 Success
400 Bad Request
GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/routes/{id}/deployments
GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/routes/{id}/versions

List all AI Gateway Dynamic Route Versions.

operationId: aig-config-list-gateway-dynamic-route-versions

Parameters

Name In Required Type Description
account_id path required string
gateway_id path required string
id path required string

Responses

200 Success
400 Bad Request
GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/routes/{id}/versions
GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/routes/{id}/versions/{version_id}

Get an AI Gateway Dynamic Route Version.

operationId: aig-config-get-gateway-dynamic-route-version

Parameters

Name In Required Type Description
account_id path required string
gateway_id path required string
id path required string
version_id path required string

Responses

200 Success
400 Bad Request
GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/routes/{id}/versions/{version_id}

Ai gateway evaluations 3 endpoints

GET /accounts/{account_id}/ai-gateway/evaluation-types
operationId: aig-config-list-evaluators

Parameters

Name In Required Type Description
account_id path required string
page query optional integer
per_page query optional integer
order_by query optional string
order_by_direction query optional string

Responses

200 Returns a list of Evaluators
400 Bad Request
GET /accounts/{account_id}/ai-gateway/evaluation-types
GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/evaluations

Lists all AI Gateway evaluator types configured for the account.

operationId: aig-config-list-evaluations

Parameters

Name In Required Type Description
account_id path required string
gateway_id path required string
page query optional integer
per_page query optional integer
name query optional string
processed query optional boolean
search query optional string

Responses

200 List objects
400 Bad Request
GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/evaluations
GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/evaluations/{id}

Retrieves details for a specific AI Gateway dataset.

operationId: aig-config-fetch-evaluations

Parameters

Name In Required Type Description
account_id path required string
gateway_id path required string
id path required string

Responses

200 Returns a single object if found
404 Not Found
GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/evaluations/{id}

Ai gateway gateways 3 endpoints

GET /accounts/{account_id}/ai-gateway/gateways

Lists all AI Gateway evaluator types configured for the account.

operationId: aig-config-list-gateway

Parameters

Name In Required Type Description
account_id path required string
page query optional integer
per_page query optional integer
search query optional string

Responses

200 List objects
400 Bad Request
GET /accounts/{account_id}/ai-gateway/gateways
GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/url/{provider}

Retrieves the endpoint URL for an AI Gateway.

operationId: aig-config-get-gateway-url

Parameters

Name In Required Type Description
gateway_id path required string
account_id path required string
provider path required string

Responses

200 Returns the log details
400 Bad Request
GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/url/{provider}
GET /accounts/{account_id}/ai-gateway/gateways/{id}

Retrieves details for a specific AI Gateway dataset.

operationId: aig-config-fetch-gateway

Parameters

Name In Required Type Description
account_id path required string
id path required string

Responses

200 Returns a single object if found
404 Not Found
GET /accounts/{account_id}/ai-gateway/gateways/{id}

Ai gateway logs 4 endpoints

GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/logs
operationId: aig-config-list-gateway-logs

Parameters

Name In Required Type Description
account_id path required string
gateway_id path required string
search query optional string
page query optional integer
per_page query optional integer
order_by query optional string
order_by_direction query optional string
filters query optional array
meta_info query optional boolean
direction query optional string
start_date query optional string
end_date query optional string
min_cost query optional number
max_cost query optional number
min_tokens_in query optional number
max_tokens_in query optional number
min_tokens_out query optional number
max_tokens_out query optional number
min_total_tokens query optional number
max_total_tokens query optional number
min_duration query optional number
max_duration query optional number
feedback query optional
success query optional boolean
cached query optional boolean
model query optional string
model_type query optional string
provider query optional string
request_content_type query optional string
response_content_type query optional string

Responses

200 Returns a list of Gateway Logs
400 Bad Request
GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/logs
GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/logs/{id}

Retrieves detailed information for a specific AI Gateway log entry.

operationId: aig-config-get-gateway-log-detail

Parameters

Name In Required Type Description
id path required string
gateway_id path required string
account_id path required string

Responses

200 Returns the log details
404 Not Found
GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/logs/{id}
GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/logs/{id}/request

Retrieves the original request payload for an AI Gateway log entry.

operationId: aig-config-get-gateway-log-request

Parameters

Name In Required Type Description
id path required string
gateway_id path required string
account_id path required string

Responses

200 Returns the request body from a specific log
404 Not Found
GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/logs/{id}/request
GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/logs/{id}/response

Retrieves the response payload for an AI Gateway log entry.

operationId: aig-config-get-gateway-log-response

Parameters

Name In Required Type Description
id path required string
gateway_id path required string
account_id path required string

Responses

200 Returns the response body from a specific log
404 Not Found
GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/logs/{id}/response

Ai gateway provider configs 1 endpoints

GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/provider_configs

Lists all AI Gateway evaluator types configured for the account.

operationId: aig-config-list-providers

Parameters

Name In Required Type Description
account_id path required string
gateway_id path required string
page query optional integer
per_page query optional integer

Responses

200 List objects
400 Bad Request
GET /accounts/{account_id}/ai-gateway/gateways/{gateway_id}/provider_configs

Ai search instances 6 endpoints

GET /accounts/{account_id}/ai-search/instances

List instances.

operationId: ai-search-list-instances

Parameters

Name In Required Type Description
account_id path required string
page query optional integer
per_page query optional integer
namespace query optional string
search query optional string Search by id
order_by query optional string Order By Column Name
order_by_direction query optional string Order By Direction

Responses

200 List objects
400 Input Validation Error
GET /accounts/{account_id}/ai-search/instances
GET /accounts/{account_id}/ai-search/instances/{id}

Read instances.

operationId: ai-search-fetch-instances

Parameters

Name In Required Type Description
id path required string AI Search instance ID. Lowercase alphanumeric, hyphens, and underscores.
account_id path required string

Responses

200 Returns a single object if found
400 Input Validation Error
404 Not Found
GET /accounts/{account_id}/ai-search/instances/{id}
GET /accounts/{account_id}/ai-search/instances/{id}/stats

Retrieves usage statistics for AI Search instances.

operationId: ai-search-stats

Parameters

Name In Required Type Description
id path required string AI Search instance ID. Lowercase alphanumeric, hyphens, and underscores.
account_id path required string

Responses

200 Returns the AI Search stats.
404 Not Found
GET /accounts/{account_id}/ai-search/instances/{id}/stats
GET /accounts/{account_id}/ai-search/namespaces/{name}/instances

List instances.

operationId: ai-search-namespace-list-instances

Parameters

Name In Required Type Description
account_id path required string
page query optional integer
per_page query optional integer
namespace query optional string
search query optional string Search by id
order_by query optional string Order By Column Name
order_by_direction query optional string Order By Direction
name path required string Namespace name

Responses

200 List objects
400 Input Validation Error
GET /accounts/{account_id}/ai-search/namespaces/{name}/instances
GET /accounts/{account_id}/ai-search/namespaces/{name}/instances/{id}

Read instances.

operationId: ai-search-namespace-fetch-instances

Parameters

Name In Required Type Description
id path required string AI Search instance ID. Lowercase alphanumeric, hyphens, and underscores.
account_id path required string
name path required string Namespace name

Responses

200 Returns a single object if found
400 Input Validation Error
404 Not Found
GET /accounts/{account_id}/ai-search/namespaces/{name}/instances/{id}
GET /accounts/{account_id}/ai-search/namespaces/{name}/instances/{id}/stats

Retrieves usage statistics for AI Search instances.

operationId: ai-search-namespace-stats

Parameters

Name In Required Type Description
id path required string AI Search instance ID. Lowercase alphanumeric, hyphens, and underscores.
account_id path required string
name path required string Namespace name

Responses

200 Returns the AI Search stats.
404 Not Found
GET /accounts/{account_id}/ai-search/namespaces/{name}/instances/{id}/stats

Ai search instances items 5 endpoints

GET /accounts/{account_id}/ai-search/namespaces/{name}/instances/{id}/items

Lists indexed items in an AI Search instance.

operationId: ai-search-namespace-instance-list-items

Parameters

Name In Required Type Description
id path required string AI Search instance ID. Lowercase alphanumeric, hyphens, and underscores.
account_id path required string
page query optional integer
per_page query optional integer
search query optional string
sort_by query optional string Sort order for items. "status" (default) sorts by status priority then last_seen_at. "modified_at" sorts by file modification time (most recent first), falling back to created_at.
status query optional string
source query optional string Filter items by source_id. Use "builtin" for uploaded files, or a source identifier like "web-crawler:https://example.com".
metadata_filter query optional string JSON-encoded metadata filter using Vectorize filter syntax. Examples: {"folder":"reports/"}, {"timestamp":{"$gte":1700000000000}}, {"folder":{"$in":["docs/","reports/"]}}
name path required string Namespace name

Responses

200 Returns the AI Search items.
404 Not Found
500 Internal Error.
GET /accounts/{account_id}/ai-search/namespaces/{name}/instances/{id}/items
GET /accounts/{account_id}/ai-search/namespaces/{name}/instances/{id}/items/{item_id}

Retrieves a specific indexed item from an AI Search instance.

operationId: ai-search-namespace-instance-get-item

Parameters

Name In Required Type Description
id path required string AI Search instance ID. Lowercase alphanumeric, hyphens, and underscores.
item_id path required string
account_id path required string
name path required string Namespace name

Responses

200 Returns a AI Search Item detail.
400 Bad Request.
500 Internal Error.
GET /accounts/{account_id}/ai-search/namespaces/{name}/instances/{id}/items/{item_id}
GET /accounts/{account_id}/ai-search/namespaces/{name}/instances/{id}/items/{item_id}/chunks

Lists chunks for a specific item in an AI Search instance, including their text content.

operationId: ai-search-namespace-instance-list-item-chunks

Parameters

Name In Required Type Description
id path required string AI Search instance ID. Lowercase alphanumeric, hyphens, and underscores.
item_id path required string
account_id path required string
limit query optional integer
offset query optional integer
name path required string Namespace name

Responses

200 Returns the AI Search item chunks with text content.
400 Bad Request.
500 Internal Error.
GET /accounts/{account_id}/ai-search/namespaces/{name}/instances/{id}/items/{item_id}/chunks
GET /accounts/{account_id}/ai-search/namespaces/{name}/instances/{id}/items/{item_id}/download

Downloads the raw file content for a specific item from the managed AI Search instance storage.

operationId: ai-search-namespace-instance-get-item-content

Parameters

Name In Required Type Description
id path required string AI Search instance ID. Lowercase alphanumeric, hyphens, and underscores.
item_id path required string
account_id path required string
name path required string Namespace name

Responses

200 Raw file content.
400 Bad Request.
500 Internal Error.
GET /accounts/{account_id}/ai-search/namespaces/{name}/instances/{id}/items/{item_id}/download
GET /accounts/{account_id}/ai-search/namespaces/{name}/instances/{id}/items/{item_id}/logs

Lists processing logs for a specific item in an AI Search instance.

operationId: ai-search-namespace-instance-logs-item

Parameters

Name In Required Type Description
id path required string AI Search instance ID. Lowercase alphanumeric, hyphens, and underscores.
item_id path required string
account_id path required string
limit query optional integer
cursor query optional string
name path required string Namespace name

Responses

200 Returns the AI Search item logs.
400 Bad Request.
500 Internal Error.
GET /accounts/{account_id}/ai-search/namespaces/{name}/instances/{id}/items/{item_id}/logs

Ai search instances jobs 6 endpoints

GET /accounts/{account_id}/ai-search/instances/{id}/jobs

Lists indexing jobs for an AI Search instance.

operationId: ai-search-instance-list-jobs

Parameters

Name In Required Type Description
id path required string AI Search instance ID. Lowercase alphanumeric, hyphens, and underscores.
account_id path required string
page query optional integer
per_page query optional integer

Responses

200 Returns a list of AI Search Jobs.
400 Bad Request.
500 Internal Error.
GET /accounts/{account_id}/ai-search/instances/{id}/jobs
GET /accounts/{account_id}/ai-search/instances/{id}/jobs/{job_id}

Retrieves details for a specific AI Search indexing job.

operationId: ai-search-instance-get-job

Parameters

Name In Required Type Description
id path required string AI Search instance ID. Lowercase alphanumeric, hyphens, and underscores.
job_id path required string
account_id path required string

Responses

200 Returns a AI Search Job Details.
400 Bad Request.
500 Internal Error.
GET /accounts/{account_id}/ai-search/instances/{id}/jobs/{job_id}
GET /accounts/{account_id}/ai-search/instances/{id}/jobs/{job_id}/logs

Lists log entries for an AI Search indexing job.

operationId: ai-search-instance-list-job-logs

Parameters

Name In Required Type Description
id path required string AI Search instance ID. Lowercase alphanumeric, hyphens, and underscores.
job_id path required string
account_id path required string
page query optional integer
per_page query optional integer

Responses

200 Returns a list of AI Search Job Logs.
400 Bad Request.
500 Internal Error.
GET /accounts/{account_id}/ai-search/instances/{id}/jobs/{job_id}/logs
GET /accounts/{account_id}/ai-search/namespaces/{name}/instances/{id}/jobs

Lists indexing jobs for an AI Search instance.

operationId: ai-search-namespace-instance-list-jobs

Parameters

Name In Required Type Description
id path required string AI Search instance ID. Lowercase alphanumeric, hyphens, and underscores.
account_id path required string
page query optional integer
per_page query optional integer
name path required string Namespace name

Responses

200 Returns a list of AI Search Jobs.
400 Bad Request.
500 Internal Error.
GET /accounts/{account_id}/ai-search/namespaces/{name}/instances/{id}/jobs
GET /accounts/{account_id}/ai-search/namespaces/{name}/instances/{id}/jobs/{job_id}

Retrieves details for a specific AI Search indexing job.

operationId: ai-search-namespace-instance-get-job

Parameters

Name In Required Type Description
id path required string AI Search instance ID. Lowercase alphanumeric, hyphens, and underscores.
job_id path required string
account_id path required string
name path required string Namespace name

Responses

200 Returns a AI Search Job Details.
400 Bad Request.
500 Internal Error.
GET /accounts/{account_id}/ai-search/namespaces/{name}/instances/{id}/jobs/{job_id}
GET /accounts/{account_id}/ai-search/namespaces/{name}/instances/{id}/jobs/{job_id}/logs

Lists log entries for an AI Search indexing job.

operationId: ai-search-namespace-instance-list-job-logs

Parameters

Name In Required Type Description
id path required string AI Search instance ID. Lowercase alphanumeric, hyphens, and underscores.
job_id path required string
account_id path required string
page query optional integer
per_page query optional integer
name path required string Namespace name

Responses

200 Returns a list of AI Search Job Logs.
400 Bad Request.
500 Internal Error.
GET /accounts/{account_id}/ai-search/namespaces/{name}/instances/{id}/jobs/{job_id}/logs

Ai search namespaces 2 endpoints

GET /accounts/{account_id}/ai-search/namespaces

List namespaces.

operationId: ai-search-list-namespaces

Parameters

Name In Required Type Description
account_id path required string
page query optional integer Page number (1-indexed).
per_page query optional integer Number of results per page.
search query optional string Filter namespaces whose name or description contains this string (case-insensitive).

Responses

200 List of namespaces.
400 Bad Request.
GET /accounts/{account_id}/ai-search/namespaces
GET /accounts/{account_id}/ai-search/namespaces/{name}

Read namespace.

operationId: ai-search-fetch-namespace

Parameters

Name In Required Type Description
account_id path required string
name path required string

Responses

200 Namespace details.
400 Bad Request.
500 Internal Error.
GET /accounts/{account_id}/ai-search/namespaces/{name}

Ai search tokens 2 endpoints

GET /accounts/{account_id}/ai-search/tokens

List tokens.

operationId: ai-search-list-tokens

Parameters

Name In Required Type Description
account_id path required string
page query optional integer
per_page query optional integer
order_by query optional string Order By Column Name
order_by_direction query optional string Order By Direction

Responses

200 List objects
400 Input Validation Error
GET /accounts/{account_id}/ai-search/tokens
GET /accounts/{account_id}/ai-search/tokens/{id}

Read tokens.

operationId: ai-search-fetch-tokens

Parameters

Name In Required Type Description
account_id path required string
id path required string

Responses

200 Returns a single object if found
400 Input Validation Error
404 Not Found
GET /accounts/{account_id}/ai-search/tokens/{id}

Api shield api discovery 2 endpoints

GET /zones/{zone_id}/api_gateway/discovery

Retrieve the most up to date view of discovered operations, rendered as OpenAPI schemas

operationId: api-shield-api-discovery-retrieve-discovered-operations-on-a-zone-as-openapi

Responses

4XX Retrieve discovered operations on a zone, rendered as OpenAPI schemas response failure
200 Retrieve discovered operations on a zone, rendered as OpenAPI schemas response
GET /zones/{zone_id}/api_gateway/discovery
GET /zones/{zone_id}/api_gateway/discovery/operations

Retrieve the most up to date view of discovered operations

operationId: api-shield-api-discovery-retrieve-discovered-operations-on-a-zone

Parameters

Name In Required Type Description
optional
optional
optional
optional
optional
optional
optional
optional
optional
optional

Responses

4XX Retrieve discovered operations on a zone response failure
200 Retrieve discovered operations on a zone response
GET /zones/{zone_id}/api_gateway/discovery/operations

Api shield client certificates for a zone 3 endpoints

GET /zones/{zone_id}/certificate_authorities/hostname_associations

List Hostname Associations

operationId: client-certificate-for-a-zone-list-hostname-associations

Parameters

Name In Required Type Description
zone_id path required
mtls_certificate_id query optional string

Responses

4XX List Hostname Associations Response Failure
200 List Hostname Associations Response
GET /zones/{zone_id}/certificate_authorities/hostname_associations
GET /zones/{zone_id}/client_certificates

List all of your Zone's API Shield mTLS Client Certificates by Status and/or using Pagination

operationId: client-certificate-for-a-zone-list-client-certificates

Parameters

Name In Required Type Description
zone_id path required
status query optional
page query optional number
per_page query optional number
limit query optional integer
offset query optional integer

Responses

4XX List Client Certificates Response Failure
200 List Client Certificates Response
GET /zones/{zone_id}/client_certificates
GET /zones/{zone_id}/client_certificates/{client_certificate_id}

Get Details for a single mTLS API Shield Client Certificate

operationId: client-certificate-for-a-zone-client-certificate-details

Parameters

Name In Required Type Description
zone_id path required
client_certificate_id path required

Responses

4XX Client Certificate Details Response Failure
200 Client Certificate Details Response
GET /zones/{zone_id}/client_certificates/{client_certificate_id}

Api shield endpoint management 3 endpoints

GET /zones/{zone_id}/api_gateway/operations

Lists all API operations tracked by API Shield for a zone with pagination. Returns operation details including method, path, and feature configurations.

operationId: api-shield-endpoint-management-retrieve-information-about-all-operations-on-a-zone

Parameters

Name In Required Type Description
optional
optional
order query optional string
optional
optional
optional
optional
optional

Responses

4XX Retrieve information about all operations on a zone response failure
200 Retrieve information about all operations on a zone response
GET /zones/{zone_id}/api_gateway/operations
GET /zones/{zone_id}/api_gateway/operations/{operation_id}

Gets detailed information about a specific API operation in API Shield, including its schema validation settings and traffic statistics.

operationId: api-shield-endpoint-management-retrieve-information-about-an-operation

Parameters

Name In Required Type Description
optional

Responses

4XX Retrieve information about an operation response failure
200 Retrieve information about an operation response
GET /zones/{zone_id}/api_gateway/operations/{operation_id}
GET /zones/{zone_id}/api_gateway/schemas
operationId: api-shield-endpoint-management-retrieve-operations-and-features-as-open-api-schemas

Parameters

Name In Required Type Description
host query optional array
optional

Responses

4XX Retrieve operations and features as OpenAPI schemas response failure
200 Retrieve operations and features as OpenAPI schemas response
GET /zones/{zone_id}/api_gateway/schemas

Api shield labels 3 endpoints

GET /zones/{zone_id}/api_gateway/labels

Retrieve all labels

operationId: api-shield-labels-get-labels

Parameters

Name In Required Type Description
optional
optional
optional
optional
optional
optional
optional

Responses

4XX Retrieve all labels response failure
200 Retrieve all labels response
GET /zones/{zone_id}/api_gateway/labels
GET /zones/{zone_id}/api_gateway/labels/managed/{name}

Retrieve managed label

operationId: api-shield-labels-get-managed-label

Parameters

Name In Required Type Description
optional

Responses

4XX Retrieve managed label response failure
200 Retrieve managed label response
GET /zones/{zone_id}/api_gateway/labels/managed/{name}
GET /zones/{zone_id}/api_gateway/labels/user/{name}

Retrieve user label

operationId: api-shield-labels-get-user-label

Parameters

Name In Required Type Description
optional

Responses

4XX Retrieve user label response failure
200 Retrieve user label response
GET /zones/{zone_id}/api_gateway/labels/user/{name}

Api shield settings 1 endpoints

GET /zones/{zone_id}/api_gateway/configuration

Gets the current API Shield configuration settings for a zone, including validation behavior and enforcement mode.

operationId: api-shield-settings-retrieve-information-about-specific-configuration-properties

Responses

4XX
200
GET /zones/{zone_id}/api_gateway/configuration

Asn intelligence 2 endpoints

GET /accounts/{account_id}/intel/asn/{asn}

Gets an overview of the Autonomous System Number (ASN) and a list of subnets for it.

operationId: asn-intelligence-get-asn-overview

Parameters

Name In Required Type Description
asn path required
account_id path required

Responses

4XX Get ASN Overview response failure.
200 Get ASN Overview response.
GET /accounts/{account_id}/intel/asn/{asn}
GET /accounts/{account_id}/intel/asn/{asn}/subnets

Get ASN Subnets.

operationId: asn-intelligence-get-asn-subnets

Parameters

Name In Required Type Description
asn path required
account_id path required

Responses

4XX Get ASN Subnets response failure.
200 Get ASN Subnets response.
GET /accounts/{account_id}/intel/asn/{asn}/subnets

Access authenticator device aaguids 1 endpoints

GET /accounts/{account_id}/access/authenticator_device_aaguids

Returns a list of Authenticator Device AAGUIDs for MFA configuration.

operationId: access-authenticator-device-aaguids-list

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List authenticator device AAGUIDs response failure
200 List authenticator device AAGUIDs response
GET /accounts/{account_id}/access/authenticator_device_aaguids

Access scim update logs 1 endpoints

GET /accounts/{account_id}/access/logs/scim/updates

Lists Access SCIM update logs that maintain a record of updates made to User and Group resources synced to Cloudflare via the System for Cross-domain Identity Management (SCIM).

operationId: access-scim-update-logs-list-access-scim-update-logs

Parameters

Name In Required Type Description
account_id path required
limit query optional
direction query optional
since query optional
until query optional
idp_id query required
status query optional
resource_type query optional
request_method query optional
resource_user_email query optional
resource_group_name query optional
cf_resource_id query optional
idp_resource_id query optional
optional
per_page query optional integer

Responses

4XX Get Access SCIM update logs response failure
200 Get Access SCIM update logs response
GET /accounts/{account_id}/access/logs/scim/updates

Access application-scoped policies 2 endpoints

GET /accounts/{account_id}/access/apps/{app_id}/policies

Lists Access policies configured for an application. Returns both exclusively scoped and reusable policies used by the application.

operationId: access-policies-list-access-app-policies

Parameters

Name In Required Type Description
app_id path required The application ID.
account_id path required
optional
per_page query optional integer

Responses

4XX List Access application policies response failure
200 List Access application policies response
GET /accounts/{account_id}/access/apps/{app_id}/policies
GET /accounts/{account_id}/access/apps/{app_id}/policies/{policy_id}

Fetches a single Access policy configured for an application. Returns both exclusively owned and reusable policies used by the application.

operationId: access-policies-get-an-access-policy

Parameters

Name In Required Type Description
app_id path required The application ID.
policy_id path required The policy ID.
account_id path required

Responses

4XX Get an Access policy response failure.
200 Get an Access policy response.
GET /accounts/{account_id}/access/apps/{app_id}/policies/{policy_id}

Access applications 3 endpoints

GET /accounts/{account_id}/access/apps

Lists all Access applications in an account.

operationId: access-applications-list-access-applications

Parameters

Name In Required Type Description
account_id path required
name query optional string
domain query optional string
aud query optional string
target_attributes query optional string
exact query optional boolean
search query optional string
optional
optional

Responses

4XX List Access applications response failure
200 List Access applications response
GET /accounts/{account_id}/access/apps
GET /accounts/{account_id}/access/apps/{app_id}

Fetches information about an Access application.

operationId: access-applications-get-an-access-application

Parameters

Name In Required Type Description
app_id path required
account_id path required

Responses

4XX Get an Access application response failure
200 Get an Access application response
GET /accounts/{account_id}/access/apps/{app_id}
GET /accounts/{account_id}/access/apps/{app_id}/user_policy_checks

Tests if a specific user has permission to access an application.

operationId: access-applications-test-access-policies

Parameters

Name In Required Type Description
app_id path required
account_id path required

Responses

4XX Test Access policies response failure
200 Test Access policies response
GET /accounts/{account_id}/access/apps/{app_id}/user_policy_checks

Access authentication logs 1 endpoints

GET /accounts/{account_id}/access/logs/access_requests

Gets a list of Access authentication audit logs for an account.

operationId: access-authentication-logs-get-access-authentication-logs

Parameters

Name In Required Type Description
account_id path required
limit query optional integer The maximum number of log entries to retrieve.
direction query optional The chronological sorting order for the logs.
since query optional string The earliest event timestamp to query.
until query optional string The latest event timestamp to query.
optional
per_page query optional integer
email query optional 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 query optional boolean When true, `email` is matched exactly instead of substring matching.
user_id query optional Filter by user UUID.
allowedOp query optional string Operator for the `allowed` filter.
country_codeOp query optional string Operator for the `country_code` filter.
app_typeOp query optional string Operator for the `app_type` filter.
app_uidOp query optional string Operator for the `app_uid` filter.
ray_idOp query optional string Operator for the `ray_id` filter.
emailOp query optional string Operator for the `email` filter.
idpOp query optional string Operator for the `idp` filter.
non_identityOp query optional string Operator for the `non_identity` filter.
user_idOp query optional string Operator for the `user_id` filter.
fields query optional string Comma-separated list of fields to include in the response. When omitted, all fields are returned.

Responses

4XX Get Access authentication logs response failure
200 Get Access authentication logs response
GET /accounts/{account_id}/access/logs/access_requests

Access custom pages 2 endpoints

GET /accounts/{account_id}/access/custom_pages

List custom pages

operationId: access-custom-pages-list-custom-pages

Parameters

Name In Required Type Description
account_id path required
optional
per_page query optional integer

Responses

4XX List custom pages response failure
200 List custom pages response
GET /accounts/{account_id}/access/custom_pages
GET /accounts/{account_id}/access/custom_pages/{custom_page_id}

Fetches a custom page and also returns its HTML.

operationId: access-custom-pages-get-a-custom-page

Parameters

Name In Required Type Description
custom_page_id path required
account_id path required

Responses

4XX Get a custom page response failure
200 Get a custom page response
GET /accounts/{account_id}/access/custom_pages/{custom_page_id}

Access groups 2 endpoints

GET /accounts/{account_id}/access/groups

Lists all Access groups.

operationId: access-groups-list-access-groups

Parameters

Name In Required Type Description
account_id path required
name query optional string
search query optional string
optional
optional

Responses

4XX List Access groups response failure
200 List Access groups response
GET /accounts/{account_id}/access/groups
GET /accounts/{account_id}/access/groups/{group_id}

Fetches a single Access group.

operationId: access-groups-get-an-access-group

Parameters

Name In Required Type Description
group_id path required
account_id path required

Responses

4XX Get an Access group response failure
200 Get an Access group response
GET /accounts/{account_id}/access/groups/{group_id}

Access identity providers 4 endpoints

GET /accounts/{account_id}/access/identity_providers

Lists all configured identity providers.

operationId: access-identity-providers-list-access-identity-providers

Parameters

Name In Required Type Description
account_id path required
scim_enabled query optional string
optional
per_page query optional integer

Responses

4XX List Access identity providers response failure
200 List Access identity providers response
GET /accounts/{account_id}/access/identity_providers
GET /accounts/{account_id}/access/identity_providers/{identity_provider_id}

Fetches a configured identity provider.

operationId: access-identity-providers-get-an-access-identity-provider

Parameters

Name In Required Type Description
identity_provider_id path required
account_id path required

Responses

4XX Get an Access identity provider response failure
200 Get an Access identity provider response
GET /accounts/{account_id}/access/identity_providers/{identity_provider_id}
GET /accounts/{account_id}/access/identity_providers/{identity_provider_id}/scim/groups

Lists SCIM Group resources synced to Cloudflare via the System for Cross-domain Identity Management (SCIM).

operationId: access-identity-providers-list-scim-group-resources

Parameters

Name In Required Type Description
identity_provider_id path required
account_id path required
cf_resource_id query optional
idp_resource_id query optional
name query optional
optional
per_page query optional integer

Responses

4XX List SCIM Group resources response failure
200 List SCIM Group resources response
GET /accounts/{account_id}/access/identity_providers/{identity_provider_id}/scim/groups
GET /accounts/{account_id}/access/identity_providers/{identity_provider_id}/scim/users

Lists SCIM User resources synced to Cloudflare via the System for Cross-domain Identity Management (SCIM).

operationId: access-identity-providers-list-scim-user-resources

Parameters

Name In Required Type Description
identity_provider_id path required
account_id path required
cf_resource_id query optional
idp_resource_id query optional
username query optional
email query optional
name query optional
optional
per_page query optional integer

Responses

4XX List SCIM User resources response failure
200 List SCIM User resources response
GET /accounts/{account_id}/access/identity_providers/{identity_provider_id}/scim/users

Access key configuration 1 endpoints

GET /accounts/{account_id}/access/keys

Gets the Access key rotation settings for an account.

operationId: access-key-configuration-get-the-access-key-configuration

Parameters

Name In Required Type Description
account_id path required

Responses

4XX Get the Access key configuration response failure
200 Get the Access key configuration response
GET /accounts/{account_id}/access/keys

Access mtls authentication 3 endpoints

GET /accounts/{account_id}/access/certificates

Lists all mTLS root certificates.

operationId: access-mtls-authentication-list-mtls-certificates

Parameters

Name In Required Type Description
account_id path required
optional
per_page query optional integer

Responses

4XX List mTLS certificates response failure
200 List mTLS certificates response
GET /accounts/{account_id}/access/certificates
GET /accounts/{account_id}/access/certificates/settings

List all mTLS hostname settings for this account.

operationId: access-mtls-authentication-list-mtls-certificates-hostname-settings

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List mTLS hostname settings response failure
200 List mTLS hostname settings response
GET /accounts/{account_id}/access/certificates/settings
GET /accounts/{account_id}/access/certificates/{certificate_id}

Fetches a single mTLS certificate.

operationId: access-mtls-authentication-get-an-mtls-certificate

Parameters

Name In Required Type Description
certificate_id path required
account_id path required

Responses

4XX Get an mTLS certificate response failure
200 Get an mTLS certificate response
GET /accounts/{account_id}/access/certificates/{certificate_id}

Access policy tester 2 endpoints

GET /accounts/{account_id}/access/policy-tests/{policy_test_id}

Fetches the current status of a given Access policy test.

operationId: access-policy-tests-get-an-update

Parameters

Name In Required Type Description
account_id path required
policy_test_id path required

Responses

200 Get an Access policy test update response.
400 Get an Access policy test update response failure.
GET /accounts/{account_id}/access/policy-tests/{policy_test_id}
GET /accounts/{account_id}/access/policy-tests/{policy_test_id}/users

Fetches a single page of user results from an Access policy test.

operationId: access-policy-tests-get-a-user-page

Parameters

Name In Required Type Description
account_id path required
policy_test_id path required
optional
per_page query optional integer
status query optional string Filter users by their policy evaluation status.

Responses

200 Get an Access policy tester users page response.
400 Get an Access policy tester users page response failure.
GET /accounts/{account_id}/access/policy-tests/{policy_test_id}/users

Access reusable policies 2 endpoints

GET /accounts/{account_id}/access/policies

Lists Access reusable policies.

operationId: access-policies-list-access-reusable-policies

Parameters

Name In Required Type Description
account_id path required
optional
per_page query optional integer

Responses

4XX List Access reusable policies response failure.
200 List Access reusable policies response.
GET /accounts/{account_id}/access/policies
GET /accounts/{account_id}/access/policies/{policy_id}

Fetches a single Access reusable policy.

operationId: access-policies-get-an-access-reusable-policy

Parameters

Name In Required Type Description
account_id path required
policy_id path required

Responses

4XX Get an Access reusable policy response failure.
200 Get an Access reusable policy response.
GET /accounts/{account_id}/access/policies/{policy_id}

Access service tokens 2 endpoints

GET /accounts/{account_id}/access/service_tokens

Lists all service tokens.

operationId: access-service-tokens-list-service-tokens

Parameters

Name In Required Type Description
account_id path required
name query optional string
search query optional string
optional
optional

Responses

4XX List service tokens response failure
200 List service tokens response
GET /accounts/{account_id}/access/service_tokens
GET /accounts/{account_id}/access/service_tokens/{service_token_id}

Fetches a single service token.

operationId: access-service-tokens-get-a-service-token

Parameters

Name In Required Type Description
service_token_id path required
account_id path required

Responses

4XX Get a service token response failure
200 Get a service token response
GET /accounts/{account_id}/access/service_tokens/{service_token_id}

Access short-lived certificate cas 2 endpoints

GET /accounts/{account_id}/access/apps/ca

Lists short-lived certificate CAs and their public keys.

operationId: access-short-lived-certificate-c-as-list-short-lived-certificate-c-as

Parameters

Name In Required Type Description
account_id path required
optional
per_page query optional integer

Responses

4XX List short-lived certificate CAs response failure
200 List short-lived certificate CAs response
GET /accounts/{account_id}/access/apps/ca
GET /accounts/{account_id}/access/apps/{app_id}/ca

Fetches a short-lived certificate CA and its public key.

operationId: access-short-lived-certificate-c-as-get-a-short-lived-certificate-ca

Parameters

Name In Required Type Description
app_id path required
account_id path required

Responses

4XX Get a short-lived certificate CA response failure
200 Get a short-lived certificate CA response
GET /accounts/{account_id}/access/apps/{app_id}/ca

Access tags 2 endpoints

GET /accounts/{account_id}/access/tags

List tags

operationId: access-tags-list-tags

Parameters

Name In Required Type Description
account_id path required
optional
per_page query optional integer

Responses

4XX List tags response failure
200 List tags response
GET /accounts/{account_id}/access/tags
GET /accounts/{account_id}/access/tags/{tag_name}

Get a tag

operationId: access-tags-get-a-tag

Parameters

Name In Required Type Description
account_id path required
tag_name path required

Responses

4XX Get a tag response failure
200 Get a tag response
GET /accounts/{account_id}/access/tags/{tag_name}

Account 1 endpoints

GET /accounts/{account_id}/builds/account/limits

Retrieve account limits and usage information

operationId: getAccountLimits

Parameters

Name In Required Type Description
optional

Responses

200 Account limits retrieved successfully
GET /accounts/{account_id}/builds/account/limits

Account load balancer monitor groups 3 endpoints

GET /accounts/{account_id}/load_balancers/monitor_groups

List configured monitor groups.

operationId: account-load-balancer-monitor-groups-list-monitor-groups

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List Monitor Groups response failure
200 List Monitor Groups response
GET /accounts/{account_id}/load_balancers/monitor_groups
GET /accounts/{account_id}/load_balancers/monitor_groups/{monitor_group_id}

Fetch a single configured monitor group.

operationId: account-load-balancer-monitor-groups-monitor-group-details

Parameters

Name In Required Type Description
monitor_group_id path required
account_id path required

Responses

4XX Monitor Group Details response failure
200 Monitor Group Details response
GET /accounts/{account_id}/load_balancers/monitor_groups/{monitor_group_id}
GET /accounts/{account_id}/load_balancers/monitor_groups/{monitor_group_id}/references

Get the list of resources that reference the provided monitor group.

operationId: account-load-balancer-monitor-groups-list-monitor-group-references

Parameters

Name In Required Type Description
monitor_group_id path required
account_id path required

Responses

4XX List Monitor Group References response failure.
200 List Monitor Group References response.
GET /accounts/{account_id}/load_balancers/monitor_groups/{monitor_group_id}/references

Account load balancer monitors 4 endpoints

GET /accounts/{account_id}/load_balancers/monitors

List configured monitors for an account.

operationId: account-load-balancer-monitors-list-monitors

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List Monitors response failure.
200 List Monitors response.
GET /accounts/{account_id}/load_balancers/monitors
GET /accounts/{account_id}/load_balancers/monitors/{monitor_id}

List a single configured monitor for an account.

operationId: account-load-balancer-monitors-monitor-details

Parameters

Name In Required Type Description
monitor_id path required
account_id path required

Responses

4XX Monitor Details response failure.
200 Monitor Details response.
GET /accounts/{account_id}/load_balancers/monitors/{monitor_id}
GET /accounts/{account_id}/load_balancers/monitors/{monitor_id}/references

Get the list of resources that reference the provided monitor.

operationId: account-load-balancer-monitors-list-monitor-references

Parameters

Name In Required Type Description
monitor_id path required
account_id path required

Responses

4XX List Monitor References response failure.
200 List Monitor References response.
GET /accounts/{account_id}/load_balancers/monitors/{monitor_id}/references
GET /accounts/{account_id}/load_balancers/preview/{preview_id}

Get the result of a previous preview operation using the provided preview_id.

operationId: account-load-balancer-monitors-preview-result

Parameters

Name In Required Type Description
preview_id path required
account_id path required

Responses

4XX Preview Result response failure.
200 Preview Result response.
GET /accounts/{account_id}/load_balancers/preview/{preview_id}

Account load balancer pools 4 endpoints

GET /accounts/{account_id}/load_balancers/pools

List configured pools.

operationId: account-load-balancer-pools-list-pools

Parameters

Name In Required Type Description
account_id path required
monitor query optional string

Responses

4XX List Pools response failure.
200 List Pools response.
GET /accounts/{account_id}/load_balancers/pools
GET /accounts/{account_id}/load_balancers/pools/{pool_id}

Fetch a single configured pool.

operationId: account-load-balancer-pools-pool-details

Parameters

Name In Required Type Description
pool_id path required
account_id path required

Responses

4XX Pool Details response failure.
200 Pool Details response.
GET /accounts/{account_id}/load_balancers/pools/{pool_id}
GET /accounts/{account_id}/load_balancers/pools/{pool_id}/health

Fetch the latest pool health status for a single pool.

operationId: account-load-balancer-pools-pool-health-details

Parameters

Name In Required Type Description
pool_id path required
account_id path required

Responses

4XX Pool Health Details response failure.
200 Pool Health Details response.
GET /accounts/{account_id}/load_balancers/pools/{pool_id}/health
GET /accounts/{account_id}/load_balancers/pools/{pool_id}/references

Get the list of resources that reference the provided pool.

operationId: account-load-balancer-pools-list-pool-references

Parameters

Name In Required Type Description
pool_id path required
account_id path required

Responses

4XX List Pool References response failure.
200 List Pool References response.
GET /accounts/{account_id}/load_balancers/pools/{pool_id}/references

Account members 2 endpoints

GET /accounts/{account_id}/members

List all members of an account.

operationId: account-members-list-members

Parameters

Name In Required Type Description
account_id path required
order query optional
status query optional string
page query optional number
per_page query optional number
direction query optional string

Responses

4XX List Members response failure
200 List Members response
GET /accounts/{account_id}/members
GET /accounts/{account_id}/members/{member_id}

Get information about a specific member of an account.

operationId: account-members-member-details

Parameters

Name In Required Type Description
member_id path required
account_id path required

Responses

4XX Member Details response failure
200 Member Details response
GET /accounts/{account_id}/members/{member_id}

Account owned api tokens 4 endpoints

GET /accounts/{account_id}/tokens

List all Account Owned API tokens created for this account.

operationId: account-api-tokens-list-tokens

Parameters

Name In Required Type Description
account_id path required
page query optional number
per_page query optional number
direction query optional string

Responses

4XX List Tokens response failure
200 List Tokens response
GET /accounts/{account_id}/tokens
GET /accounts/{account_id}/tokens/permission_groups

Find all available permission groups for Account Owned API Tokens

operationId: account-api-tokens-list-permission-groups

Parameters

Name In Required Type Description
account_id path required
name query optional string Filter by the name of the permission group. The value must be URL-encoded.
scope query optional string Filter by the scope of the permission group. The value must be URL-encoded.

Responses

4XX List Account Owned API Token Permission Groups response failure
200 List Account Owned API Token Permission Groups response
GET /accounts/{account_id}/tokens/permission_groups
GET /accounts/{account_id}/tokens/verify

Test whether a token works.

operationId: account-api-tokens-verify-token

Parameters

Name In Required Type Description
account_id path required

Responses

4XX Verify Token response failure
200 Verify Token response
GET /accounts/{account_id}/tokens/verify
GET /accounts/{account_id}/tokens/{token_id}

Get information about a specific Account Owned API token.

operationId: account-api-tokens-token-details

Parameters

Name In Required Type Description
account_id path required
token_id path required

Responses

4XX Token Details response failure
200 Token Details response
GET /accounts/{account_id}/tokens/{token_id}

Account permission groups 2 endpoints

GET /accounts/{account_id}/iam/permission_groups

List all the permissions groups for an account.

operationId: account-permission-group-list

Parameters

Name In Required Type Description
account_id path required
id query optional string
name query optional string
label query optional string
page query optional number
per_page query optional number

Responses

4XX List Permission Groups response failure
200 List Permission Groups response
GET /accounts/{account_id}/iam/permission_groups
GET /accounts/{account_id}/iam/permission_groups/{permission_group_id}

Get information about a specific permission group in an account.

operationId: account-permission-group-details

Parameters

Name In Required Type Description
account_id path required
permission_group_id path required

Responses

4XX Permission Group Details response failure
200 Permission Group Details response
GET /accounts/{account_id}/iam/permission_groups/{permission_group_id}

Account resource groups 2 endpoints

GET /accounts/{account_id}/iam/resource_groups

List all the resource groups for an account.

operationId: account-resource-group-list

Parameters

Name In Required Type Description
account_id path required
id query optional
name query optional string

Responses

4XX List Resource Groups response failure
200 List Resource Groups response
GET /accounts/{account_id}/iam/resource_groups
GET /accounts/{account_id}/iam/resource_groups/{resource_group_id}

Get information about a specific resource group in an account.

operationId: account-resource-group-details

Parameters

Name In Required Type Description
account_id path required
resource_group_id path required

Responses

4XX Resource Group Details response failure
200 Resource Group Details response
GET /accounts/{account_id}/iam/resource_groups/{resource_group_id}

Account roles 2 endpoints

GET /accounts/{account_id}/roles

Get all available roles for an account.

operationId: account-roles-list-roles

Parameters

Name In Required Type Description
account_id path required
page query optional number
per_page query optional number

Responses

4XX List Roles response failure
200 List Roles response
GET /accounts/{account_id}/roles
GET /accounts/{account_id}/roles/{role_id}

Get information about a specific role for an account.

operationId: account-roles-role-details

Parameters

Name In Required Type Description
role_id path required
account_id path required

Responses

4XX Role Details response failure
200 Role Details response
GET /accounts/{account_id}/roles/{role_id}

Account rulesets 8 endpoints

GET /accounts/{account_id}/rulesets

Fetches all rulesets at the account level.

operationId: listAccountRulesets

Parameters

Name In Required Type Description
account_id path required
cursor query optional
per_page query optional

Responses

4XX
200
GET /accounts/{account_id}/rulesets
GET /accounts/{account_id}/rulesets/phases/{ruleset_phase}/entrypoint

Fetches the latest version of the account entry point ruleset for a given phase.

operationId: getAccountEntrypointRuleset

Parameters

Name In Required Type Description
ruleset_phase path required
account_id path required

Responses

4XX
200
GET /accounts/{account_id}/rulesets/phases/{ruleset_phase}/entrypoint
GET /accounts/{account_id}/rulesets/phases/{ruleset_phase}/entrypoint/versions

Fetches the versions of an account entry point ruleset.

operationId: listAccountEntrypointRulesetVersions

Parameters

Name In Required Type Description
ruleset_phase path required
account_id path required

Responses

4XX
200
GET /accounts/{account_id}/rulesets/phases/{ruleset_phase}/entrypoint/versions
GET /accounts/{account_id}/rulesets/phases/{ruleset_phase}/entrypoint/versions/{ruleset_version}

Fetches a specific version of an account entry point ruleset.

operationId: getAccountEntrypointRulesetVersion

Parameters

Name In Required Type Description
ruleset_version path required
ruleset_phase path required
account_id path required

Responses

4XX
200
GET /accounts/{account_id}/rulesets/phases/{ruleset_phase}/entrypoint/versions/{ruleset_version}
GET /accounts/{account_id}/rulesets/{ruleset_id}

Fetches the latest version of an account ruleset.

operationId: getAccountRuleset

Parameters

Name In Required Type Description
ruleset_id path required
account_id path required

Responses

4XX
200
GET /accounts/{account_id}/rulesets/{ruleset_id}
GET /accounts/{account_id}/rulesets/{ruleset_id}/versions

Fetches the versions of an account ruleset.

operationId: listAccountRulesetVersions

Parameters

Name In Required Type Description
ruleset_id path required
account_id path required

Responses

4XX
200
GET /accounts/{account_id}/rulesets/{ruleset_id}/versions
GET /accounts/{account_id}/rulesets/{ruleset_id}/versions/{ruleset_version}

Fetches a specific version of an account ruleset.

operationId: getAccountRulesetVersion

Parameters

Name In Required Type Description
ruleset_version path required
ruleset_id path required
account_id path required

Responses

4XX
200
GET /accounts/{account_id}/rulesets/{ruleset_id}/versions/{ruleset_version}
GET /accounts/{account_id}/rulesets/{ruleset_id}/versions/{ruleset_version}/by_tag/{rule_tag}

Fetches the rules of a managed account ruleset version for a given tag.

operationId: listAccountRulesetVersionRulesByTag

Parameters

Name In Required Type Description
rule_tag path required
ruleset_version path required
ruleset_id path required
account_id path required

Responses

4XX
200
GET /accounts/{account_id}/rulesets/{ruleset_id}/versions/{ruleset_version}/by_tag/{rule_tag}

Account subscriptions 1 endpoints

GET /accounts/{account_id}/subscriptions

Lists all of an account's subscriptions.

operationId: account-subscriptions-list-subscriptions

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List Subscriptions response failure
200 List Subscriptions response
GET /accounts/{account_id}/subscriptions

Account user groups 3 endpoints

GET /accounts/{account_id}/iam/user_groups

List all the user groups for an account.

operationId: account-user-group-list

Parameters

Name In Required Type Description
account_id path required
id query optional ID of the user group to be fetched.
name query optional string
fuzzyName query optional string
page query optional number
per_page query optional number
direction query optional string

Responses

4XX List User Group response failure
200 List User Group response
GET /accounts/{account_id}/iam/user_groups
GET /accounts/{account_id}/iam/user_groups/{user_group_id}

Get information about a specific user group in an account.

operationId: account-user-group-details

Parameters

Name In Required Type Description
account_id path required
user_group_id path required

Responses

4XX User Group Details response failure
200 User Group Details response
GET /accounts/{account_id}/iam/user_groups/{user_group_id}
GET /accounts/{account_id}/iam/user_groups/{user_group_id}/members

List all the members attached to a user group.

operationId: account-user-group-member-list

Parameters

Name In Required Type Description
account_id path required
user_group_id path required
page query optional number
per_page query optional number

Responses

4XX User Group Details response failure
200 List User Group Members
GET /accounts/{account_id}/iam/user_groups/{user_group_id}/members

Account-level custom nameservers 1 endpoints

GET /accounts/{account_id}/custom_ns

List an account's custom nameservers.

operationId: account-level-custom-nameservers-list-account-custom-nameservers

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List Account Custom Nameservers response failure
200 List Account Custom Nameservers response
GET /accounts/{account_id}/custom_ns

Accounts 4 endpoints

GET /accounts

List all accounts you have ownership or verified access to.

operationId: accounts-list-accounts

Parameters

Name In Required Type Description
name query optional string
page query optional number
per_page query optional number
direction query optional string

Responses

4XX List Accounts response failure
200 List Accounts response
GET /accounts
GET /accounts/{account_id}

Get information about a specific account that you are a member of.

operationId: accounts-account-details

Parameters

Name In Required Type Description
account_id path required

Responses

4XX Account Details response failure
200 Account Details response
GET /accounts/{account_id}
GET /accounts/{account_id}/organizations

Retrieve a list of the organizations that "contain" this account or are managing it. The returned list will be in order from "root" to "leaf", where the "leaf" will be the organization that _immediately_ contains the specified account.

operationId: Accounts_listAccountOrganizations

Parameters

Name In Required Type Description
account_id path required string

Responses

4XX An unexpected error response.
200 The request has succeeded.
GET /accounts/{account_id}/organizations
GET /accounts/{account_id}/profile

Retrieves the profile information for a specific Cloudflare account, including organization details, settings, and metadata. This endpoint is commonly used to verify account access and retrieve account-level configuration.

operationId: Accounts_getAccountProfile

Parameters

Name In Required Type Description
account_id path required string

Responses

4XX An unexpected error response.
200 The request has succeeded.
GET /accounts/{account_id}/profile

Active session 1 endpoints

GET /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/active-session

Returns details of an ongoing active session for the given meeting ID.

operationId: GetActiveSession

Parameters

Name In Required Type Description
optional

Responses

200
404
GET /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/active-session

Analytics 1 endpoints

GET /accounts/{account_id}/realtime/kit/{app_id}/analytics/daywise

Returns day-wise session and recording analytics data of an App for the specified time range start_date to end_date. If start_date and end_date are not provided, the default time range is set from 30 days ago to the current date.

operationId: get-org-analytics

Parameters

Name In Required Type Description
account_id path required
app_id path required
optional
optional

Responses

200 OK
GET /accounts/{account_id}/realtime/kit/{app_id}/analytics/daywise

Applications 2 endpoints

GET /accounts/{accountId}/resource-library/applications

Get applications with different filters.

operationId: getApplications

Parameters

Name In Required Type Description
accountId path required string Account ID.
filter query optional string 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) - intel_id: Filter by Intel API ID (e.g., intel_id:498). .
limit query optional integer Limit of number of results to return (max 250).
offset query optional integer Offset of results to return.
order_by query optional string Order by result by field name and order (e.g., name:asc).

Responses

4XX Get application response failure.
200 Get the application response.
GET /accounts/{accountId}/resource-library/applications
GET /accounts/{accountId}/resource-library/applications/{id}

Get application by ID.

operationId: getApplicationById

Parameters

Name In Required Type Description
accountId path required string Account ID.
id path required string Application ID.

Responses

4XX Get application by id response failure.
200 Get the application response.
GET /accounts/{accountId}/resource-library/applications/{id}

Apps 1 endpoints

GET /accounts/{account_id}/realtime/kit/apps

Fetch all apps for your account

operationId: get_apps

Parameters

Name In Required Type Description
account_id path required

Responses

200 OK
GET /accounts/{account_id}/realtime/kit/apps

Argo analytics for geolocation 1 endpoints

GET /zones/{zone_id}/analytics/latency/colos

Retrieves Argo Smart Routing analytics broken down by geographic points of presence (PoPs). Shows latency improvements and routing efficiency per location.

operationId: argo-analytics-for-geolocation-argo-analytics-for-a-zone-at-different-po-ps

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Argo Analytics for a zone at different PoPs response failure
200 Argo Analytics for a zone at different PoPs response
GET /zones/{zone_id}/analytics/latency/colos

Argo analytics for zone 1 endpoints

GET /zones/{zone_id}/analytics/latency

Retrieves aggregate Argo Smart Routing analytics for a zone, including latency improvements, bandwidth savings, and routing statistics.

operationId: argo-analytics-for-zone-argo-analytics-for-a-zone

Parameters

Name In Required Type Description
zone_id path required
bins query optional string

Responses

4XX Argo Analytics for a zone response failure
200 Argo Analytics for a zone response
GET /zones/{zone_id}/analytics/latency

Argo smart routing 1 endpoints

GET /zones/{zone_id}/argo/smart_routing

Retrieves the value of Argo Smart Routing enablement setting.

operationId: argo-smart-routing-get-argo-smart-routing-setting

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Get Argo Smart Routing enablement setting failure.
200 Get Argo Smart Routing enablement setting response.
GET /zones/{zone_id}/argo/smart_routing

Attacker 1 endpoints

GET /accounts/{account_id}/cloudforce-one/events/attackers
operationId: get_AttackerList

Parameters

Name In Required Type Description
account_id path required string Account ID.
datasetIds query optional array Array of dataset IDs to query attackers from. If not provided, uses the default dataset.

Responses

200 Returns a list of attackers.
400 Bad Request.
GET /accounts/{account_id}/cloudforce-one/events/attackers

Audit logs 4 endpoints

GET /accounts/{account_id}/audit_logs

Gets a list of audit logs for an account. Can be filtered by who made the change, on which zone, and the timeframe of the change.

operationId: audit-logs-get-account-audit-logs

Parameters

Name In Required Type Description
account_id path required
id query optional string
export query optional boolean
action.type query optional string
actor.ip query optional string
actor.email query optional string
since query optional
before query optional
zone.name query optional string
direction query optional string
per_page query optional number
page query optional number
hide_user_logs query optional boolean

Responses

4XX Get account audit logs response failure
200 Get account audit logs response
GET /accounts/{account_id}/audit_logs
GET /accounts/{account_id}/logs/audit

Gets a list of audit logs for an account.

operationId: audit-logs-v2-get-account-audit-logs

Parameters

Name In Required Type Description
account_id path required string
account_name query optional array
action_result query optional array
action_type query optional array
actor_context query optional array
actor_email query optional array
actor_id query optional array
actor_ip_address query optional array
actor_token_id query optional array
actor_token_name query optional array
actor_type query optional array
audit_log_id query optional array
id query optional array
raw_cf_ray_id query optional array
raw_method query optional array
raw_status_code query optional array
raw_uri query optional array
resource_id query optional array
resource_product query optional array
resource_type query optional array
resource_scope query optional array
zone_id query optional array
zone_name query optional array
account_name.not query optional array
action_result.not query optional array
action_type.not query optional array
actor_context.not query optional array
actor_email.not query optional array
actor_id.not query optional array
actor_ip_address.not query optional array
actor_token_id.not query optional array
actor_token_name.not query optional array
actor_type.not query optional array
audit_log_id.not query optional array
id.not query optional array
raw_cf_ray_id.not query optional array
raw_method.not query optional array
raw_status_code.not query optional array
raw_uri.not query optional array
resource_id.not query optional array
resource_product.not query optional array
resource_type.not query optional array
resource_scope.not query optional array
zone_id.not query optional array
zone_name.not query optional array
since query required string 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 query required string 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.
direction query optional string
limit query optional number
cursor query optional string

Responses

4XX Get account audit logs failed response
200 Get account audit logs successful response
GET /accounts/{account_id}/logs/audit
GET /organizations/{organization_id}/logs/audit

Gets a list of audit logs for an organization.

operationId: audit-logs-v2-get-organization-audit-logs

Parameters

Name In Required Type Description
organization_id path required string
action_result query optional array
action_type query optional array
actor_context query optional array
actor_email query optional array
actor_id query optional array
actor_ip_address query optional array
actor_token_id query optional array
actor_token_name query optional array
actor_type query optional array
id query optional array
raw_cf_ray_id query optional array
raw_method query optional array
raw_status_code query optional array
raw_uri query optional array
resource_id query optional array
resource_product query optional array
resource_type query optional array
resource_scope query optional array
action_result.not query optional array
action_type.not query optional array
actor_context.not query optional array
actor_email.not query optional array
actor_id.not query optional array
actor_ip_address.not query optional array
actor_token_id.not query optional array
actor_token_name.not query optional array
actor_type.not query optional array
id.not query optional array
raw_cf_ray_id.not query optional array
raw_method.not query optional array
raw_status_code.not query optional array
raw_uri.not query optional array
resource_id.not query optional array
resource_product.not query optional array
resource_type.not query optional array
resource_scope.not query optional array
since query required string 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 query required string 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.
direction query optional string
limit query optional number
cursor query optional string

Responses

4XX Get organization audit logs failed response
200 Get organization audit logs successful response
GET /organizations/{organization_id}/logs/audit
GET /user/audit_logs

Gets a list of audit logs for a user account. Can be filtered by who made the change, on which zone, and the timeframe of the change.

operationId: audit-logs-get-user-audit-logs

Parameters

Name In Required Type Description
id query optional string
export query optional boolean
action.type query optional string
actor.ip query optional string
actor.email query optional string
since query optional
before query optional
zone.name query optional string
direction query optional string
per_page query optional number
page query optional number
hide_user_logs query optional boolean

Responses

4XX Get user audit logs response failure
200 Get user audit logs response
GET /user/audit_logs

Autorag jobs 3 endpoints

GET /accounts/{account_id}/autorag/rags/{id}/jobs
operationId: autorag-config-list-jobs

Parameters

Name In Required Type Description
id path required string rag id
account_id path required string
page query optional integer
per_page query optional integer

Responses

200 Returns a list of AutoRAG Jobs
404 autorag_not_found
503 unable_to_connect_to_autorag
GET /accounts/{account_id}/autorag/rags/{id}/jobs
GET /accounts/{account_id}/autorag/rags/{id}/jobs/{job_id}
operationId: autorag-config-get-job

Parameters

Name In Required Type Description
id path required string rag id
job_id path required string
account_id path required string

Responses

200 Returns a AutoRAG Job Details
404 job_not_found
503 unable_to_connect_to_autorag
GET /accounts/{account_id}/autorag/rags/{id}/jobs/{job_id}
GET /accounts/{account_id}/autorag/rags/{id}/jobs/{job_id}/logs
operationId: autorag-config-list-job-logs

Parameters

Name In Required Type Description
id path required string rag id
job_id path required string
account_id path required string
page query optional integer
per_page query optional integer

Responses

200 Returns a list of AutoRAG Job Logs
404 autorag_not_found
503 unable_to_connect_to_autorag
GET /accounts/{account_id}/autorag/rags/{id}/jobs/{job_id}/logs

Autorag rag 1 endpoints

GET /accounts/{account_id}/autorag/rags/{id}/files
operationId: autorag-config-files

Parameters

Name In Required Type Description
id path required string rag id
account_id path required string
page query optional integer
per_page query optional integer
search query optional string
status query optional string

Responses

200 Returns the AI Search files
404 autorag_not_found
503 unable_to_connect_to_autorag
GET /accounts/{account_id}/autorag/rags/{id}/files

Automatic ssl/tls 1 endpoints

GET /zones/{zone_id}/settings/ssl_automatic_mode

If the system is enabled, the response will include next_scheduled_scan, representing the next time this zone will be scanned and the zone's ssl/tls encryption mode is potentially upgraded by the system. If the system is disabled, next_scheduled_scan will not be present in the response body.

operationId: ssl-detector-automatic-mode-get-enrollment

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Get Automatic SSL/TLS Enrollment status failure.
200 Get Automatic SSL/TLS Enrollment status response.
GET /zones/{zone_id}/settings/ssl_automatic_mode

Billable usage 1 endpoints

GET /accounts/{account_id}/billing/usage/paygo

Returns billable usage data for PayGo (self-serve) accounts. When no query parameters are provided, returns usage for the current billing period. This endpoint is currently in beta and access is restricted to select accounts.

operationId: billable-usage-get-paygo-account-usage

Parameters

Name In Required Type Description
optional
optional
optional

Responses

4XX Indicates the request failed.
200 Indicates PayGo account usage data was successfully retrieved.
GET /accounts/{account_id}/billing/usage/paygo

Bindb 1 endpoints

GET /accounts/{account_id}/cloudforce-one/binary/{hash}
operationId: get_BinDBGetBinary

Parameters

Name In Required Type Description
account_id path required number Account ID.
hash path required string hash of the binary

Responses

200 Returns file information
400 Bad Request.
GET /accounts/{account_id}/cloudforce-one/binary/{hash}

Bot settings 1 endpoints

GET /zones/{zone_id}/bot_management

Retrieve a zone's Bot Management Config

operationId: bot-management-for-a-zone-get-config

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Bot Management config response failure
200 Bot Management config response
GET /zones/{zone_id}/bot_management

Botnet threat feed 3 endpoints

GET /accounts/{account_id}/botnet_feed/asn/{asn_id}/day_report

Gets all the data the botnet tracking database has for a given ASN registered to user account for given date. If no date is given, it will return results for the previous day.

operationId: botnet-threat-feed-get-day-report

Parameters

Name In Required Type Description
account_id path required
asn_id path required
date query optional

Responses

4XX Get botnet feed report for day response failure
200 Get botnet feed report for day
GET /accounts/{account_id}/botnet_feed/asn/{asn_id}/day_report
GET /accounts/{account_id}/botnet_feed/asn/{asn_id}/full_report

Gets all the data the botnet threat feed tracking database has for a given ASN registered to user account.

operationId: botnet-threat-feed-get-full-report

Parameters

Name In Required Type Description
account_id path required
asn_id path required

Responses

4XX Get full botnet feed report response failure
200 Get full botnet feed report
GET /accounts/{account_id}/botnet_feed/asn/{asn_id}/full_report
GET /accounts/{account_id}/botnet_feed/configs/asn

Gets a list of all ASNs registered for a user for the DDoS Botnet Feed API.

operationId: botnet-threat-feed-list-asn

Parameters

Name In Required Type Description
account_id path required

Responses

4XX Get list of ASNs response failure
200 Get list of ASNs response
GET /accounts/{account_id}/botnet_feed/configs/asn

Brand protection 5 endpoints

GET /accounts/{account_id}/cloudforce-one/v2/brand-protection/domain/matches

Get paginated list of domain matches for one or more brand protection queries. When multiple query_ids are provided (comma-separated), matches are deduplicated across queries and each match includes a matched_queries array.

operationId: get_DomainMatchList

Parameters

Name In Required Type Description
account_id path required string
offset query optional string
limit query optional string
query_id query required array
include_domain_id query optional string
include_dismissed query optional string
domain_search query optional string
orderBy query optional string
order query optional string

Responses

200 Successfully retrieved query matches
GET /accounts/{account_id}/cloudforce-one/v2/brand-protection/domain/matches
GET /accounts/{account_id}/cloudforce-one/v2/brand-protection/domain/queries

Get all saved brand protection queries for an account

operationId: get_GetDomainQueries

Parameters

Name In Required Type Description
account_id path required string
id query optional string

Responses

200 Successfully retrieved queries
GET /accounts/{account_id}/cloudforce-one/v2/brand-protection/domain/queries
GET /accounts/{account_id}/cloudforce-one/v2/brand-protection/logo/matches

Get paginated list of logo matches for a specific brand protection logo query

operationId: get_LogoMatchList

Parameters

Name In Required Type Description
account_id path required string
offset query optional string
limit query optional string
query_id query required string
download query optional string
orderBy query optional string
order query optional string

Responses

200 Successfully retrieved logo matches
GET /accounts/{account_id}/cloudforce-one/v2/brand-protection/logo/matches
GET /accounts/{account_id}/cloudforce-one/v2/brand-protection/logo/queries

Get all saved brand protection logo queries for an account. Optionally specify id to get a single query. Set download=true to include base64-encoded image data.

operationId: get_GetLogoQueries

Parameters

Name In Required Type Description
account_id path required string
id query optional string Optional query ID to retrieve a specific logo query
download query optional string If true, include base64-encoded image data in the response

Responses

200 Successfully retrieved logo queries
GET /accounts/{account_id}/cloudforce-one/v2/brand-protection/logo/queries
GET /accounts/{account_id}/cloudforce-one/v2/brand-protection/total-queries

Get the total number of saved brand protection queries (domain + logo) for an account

operationId: get_TotalQueries

Parameters

Name In Required Type Description
account_id path required string

Responses

200 Successfully retrieved total query count
GET /accounts/{account_id}/cloudforce-one/v2/brand-protection/total-queries

Build tokens 1 endpoints

GET /accounts/{account_id}/builds/tokens

Get all build tokens with pagination

operationId: listBuildTokens

Parameters

Name In Required Type Description
optional
optional
optional

Responses

200 Build tokens retrieved successfully
GET /accounts/{account_id}/builds/tokens

Builds 4 endpoints

GET /accounts/{account_id}/builds/builds

Retrieve builds for specific version IDs

operationId: getBuildsByVersionIds

Parameters

Name In Required Type Description
optional
version_ids query required

Responses

200 Builds retrieved successfully
GET /accounts/{account_id}/builds/builds
GET /accounts/{account_id}/builds/builds/latest

Retrieve the most recent builds for multiple worker scripts

operationId: getLatestBuildsByScripts

Parameters

Name In Required Type Description
optional
external_script_ids query required

Responses

200 Latest builds retrieved successfully
GET /accounts/{account_id}/builds/builds/latest
GET /accounts/{account_id}/builds/builds/{build_uuid}

Retrieve detailed information about a specific build

operationId: getBuildByUuid

Parameters

Name In Required Type Description
optional
optional

Responses

200 Build retrieved successfully
404
GET /accounts/{account_id}/builds/builds/{build_uuid}
GET /accounts/{account_id}/builds/builds/{build_uuid}/logs

Retrieve logs for a specific build with cursor-based pagination

operationId: getBuildLogs

Parameters

Name In Required Type Description
optional
optional
cursor query optional

Responses

200 Build logs retrieved successfully
404
GET /accounts/{account_id}/builds/builds/{build_uuid}/logs

Cnis 2 endpoints

GET /accounts/{account_id}/cni/cnis
operationId: list_cnis

Parameters

Name In Required Type Description
slot query optional string If specified, only show CNIs associated with the specified slot
tunnel_id query optional string If specified, only show cnis associated with the specified tunnel id
cursor query optional integer
limit query optional integer
account_id path required

Responses

200 List of matching CNI objects
400 Bad request
500 Internal server error
GET /accounts/{account_id}/cni/cnis
GET /accounts/{account_id}/cni/cnis/{cni}
operationId: get_cni

Parameters

Name In Required Type Description
cni path required string CNI ID to retrieve information about
account_id path required

Responses

200 CNI's associated data
400 Bad request
404 CNI not found
500 Internal server error
GET /accounts/{account_id}/cni/cnis/{cni}

Cache reserve clear 1 endpoints

GET /zones/{zone_id}/smart_shield/cache_reserve_clear

You can use Cache Reserve Clear to clear your Cache Reserve, but you must first disable Cache Reserve. In most cases, this will be accomplished within 24 hours. You cannot re-enable Cache Reserve while this process is ongoing. Keep in mind that you cannot undo or cancel this operation.

operationId: smart-shield-settings-get-cache-reserve-clear

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Get Cache Reserve Clear failure response.
200 Get Cache Reserve Clear response.
GET /zones/{zone_id}/smart_shield/cache_reserve_clear

Calls apps 2 endpoints

GET /accounts/{account_id}/calls/apps

Lists all apps in the Cloudflare account

operationId: calls-apps-list

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List apps response failure
200 List apps response
GET /accounts/{account_id}/calls/apps
GET /accounts/{account_id}/calls/apps/{app_id}

Fetches details for a single Calls app.

operationId: calls-apps-retrieve-app-details

Parameters

Name In Required Type Description
app_id path required
account_id path required

Responses

4XX Retrieve app details response failure
200 Retrieve app details response
GET /accounts/{account_id}/calls/apps/{app_id}

Calls turn keys 2 endpoints

GET /accounts/{account_id}/calls/turn_keys

Lists all TURN keys in the Cloudflare account

operationId: calls-turn-key-list

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List TURN key response failure
200 List TURN key response
GET /accounts/{account_id}/calls/turn_keys
GET /accounts/{account_id}/calls/turn_keys/{key_id}

Fetches details for a single TURN key.

operationId: calls-retrieve-turn-key-details

Parameters

Name In Required Type Description
key_id path required
account_id path required

Responses

4XX Retrieve TURN key details failure
200 Retrieve TURN key details response
GET /accounts/{account_id}/calls/turn_keys/{key_id}

Catalog sync 3 endpoints

GET /accounts/{account_id}/magic/cloud/catalog-syncs

List Catalog Syncs (Closed Beta).

operationId: catalog-syncs-list

Parameters

Name In Required Type Description
account_id path required

Responses

200 OK.
400 Bad Request.
401 Invalid Credentials.
403 Forbidden.
404 Not Found.
500 Internal Server Error.
GET /accounts/{account_id}/magic/cloud/catalog-syncs
GET /accounts/{account_id}/magic/cloud/catalog-syncs/prebuilt-policies

List prebuilt catalog sync policies (Closed Beta).

operationId: catalog-syncs-prebuilt-policies-list

Parameters

Name In Required Type Description
account_id path required
destination_type query optional Specify type of destination, omit to return all.

Responses

200 OK.
400 Bad Request.
401 Invalid Credentials.
403 Forbidden.
500 Internal Server Error.
GET /accounts/{account_id}/magic/cloud/catalog-syncs/prebuilt-policies
GET /accounts/{account_id}/magic/cloud/catalog-syncs/{sync_id}

Read a Catalog Sync (Closed Beta).

operationId: catalog-syncs-read

Parameters

Name In Required Type Description
account_id path required
sync_id path required

Responses

200 OK.
400 Bad Request.
401 Invalid Credentials.
403 Forbidden.
404 Not Found.
500 Internal Server Error.
GET /accounts/{account_id}/magic/cloud/catalog-syncs/{sync_id}

Category 5 endpoints

GET /accounts/{accountId}/resource-library/categories

Get all application categories.

operationId: getCategories

Parameters

Name In Required Type Description
accountId path required string Account ID.
limit query optional integer Limit of number of results to return.
offset query optional integer Offset of results to return.

Responses

4XX Get application categories response failure.
200 Get all application categories response.
GET /accounts/{accountId}/resource-library/categories
GET /accounts/{accountId}/resource-library/categories/{id}

Get application category by ID.

operationId: getCategoryById

Parameters

Name In Required Type Description
accountId path required string Account ID.
id path required string Application category ID.

Responses

4XX Get application category by id response failure.
200 Get application category by id response.
GET /accounts/{accountId}/resource-library/categories/{id}
GET /accounts/{account_id}/cloudforce-one/events/categories
operationId: get_CategoryList

Parameters

Name In Required Type Description
account_id path required string Account ID.
datasetIds query optional array Array of dataset IDs to query categories from. If not provided, uses the default dataset.

Responses

200 Returns a list of categories.
400 Bad Request.
GET /accounts/{account_id}/cloudforce-one/events/categories
GET /accounts/{account_id}/cloudforce-one/events/categories/catalog
operationId: get_CategoryListComplete

Parameters

Name In Required Type Description
account_id path required string Account ID.

Responses

200 Returns a list of categories.
400 Bad Request.
GET /accounts/{account_id}/cloudforce-one/events/categories/catalog
GET /accounts/{account_id}/cloudforce-one/events/categories/{category_id}
operationId: get_CategoryRead

Parameters

Name In Required Type Description
account_id path required string Account ID.
category_id path required string Category UUID.

Responses

200 Returns a category.
400 Bad Request.
GET /accounts/{account_id}/cloudforce-one/events/categories/{category_id}

Certificate packs 3 endpoints

GET /zones/{zone_id}/ssl/certificate_packs

For a given zone, list all active certificate packs.

operationId: certificate-packs-list-certificate-packs

Parameters

Name In Required Type Description
zone_id path required
page query optional number
per_page query optional number
status query optional
deploy query optional

Responses

4XX List Certificate Packs response failure
200 List Certificate Packs response
GET /zones/{zone_id}/ssl/certificate_packs
GET /zones/{zone_id}/ssl/certificate_packs/quota

For a given zone, list certificate pack quotas.

operationId: certificate-packs-get-certificate-pack-quotas

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Get Certificate Pack Quotas response failure
200 Get Certificate Pack Quotas response
GET /zones/{zone_id}/ssl/certificate_packs/quota
GET /zones/{zone_id}/ssl/certificate_packs/{certificate_pack_id}

For a given zone, get a certificate pack.

operationId: certificate-packs-get-certificate-pack

Parameters

Name In Required Type Description
certificate_pack_id path required
zone_id path required

Responses

4XX Get Certificate Pack response failure
200 Get Certificate Pack response
GET /zones/{zone_id}/ssl/certificate_packs/{certificate_pack_id}

Client versions 2 endpoints

GET /accounts/{account_id}/devices/client-versions

Lists available WARP client versions for a specific target environment and release track. This endpoint is in Beta.

operationId: list-client-versions

Parameters

Name In Required Type Description
account_id path required string
target_environment query required string The target environment for the client version (e.g., windows, macos).
release_track query required string The release track (ga for General Availability, beta for Beta releases).
page query optional integer The page number to return.
per_page query optional integer The maximum number of versions to return per page.

Responses

200 List client versions response.
GET /accounts/{account_id}/devices/client-versions
GET /accounts/{account_id}/devices/client-versions/target-environments

Retrieves a list of all available target environments with their display names. This endpoint is in Beta.

operationId: list-client-target-environments

Parameters

Name In Required Type Description
account_id path required string

Responses

200 List target environments response.
GET /accounts/{account_id}/devices/client-versions/target-environments

Cloud integrations 3 endpoints

GET /accounts/{account_id}/magic/cloud/providers

List Cloud Integrations (Closed Beta).

operationId: providers-list

Parameters

Name In Required Type Description
account_id path required
status query optional boolean
order_by query optional string One of ["updated_at", "id", "cloud_type", "name"].
desc query optional boolean
cloudflare query optional boolean

Responses

200 OK.
400 Bad Request.
401 Invalid Credentials.
403 Forbidden.
500 Internal Server Error.
GET /accounts/{account_id}/magic/cloud/providers
GET /accounts/{account_id}/magic/cloud/providers/{provider_id}

Read a Cloud Integration (Closed Beta).

operationId: providers-read

Parameters

Name In Required Type Description
account_id path required
provider_id path required
status query optional boolean

Responses

200 OK.
400 Bad Request.
401 Invalid Credentials.
403 Forbidden.
404 Not Found.
500 Internal Server Error.
GET /accounts/{account_id}/magic/cloud/providers/{provider_id}
GET /accounts/{account_id}/magic/cloud/providers/{provider_id}/initial_setup

Get initial configuration to complete Cloud Integration setup (Closed Beta).

operationId: providers-initial-setup

Parameters

Name In Required Type Description
account_id path required
provider_id path required

Responses

200 OK.
400 Bad Request.
401 Invalid Credentials.
403 Forbidden.
404 Not Found.
500 Internal Server Error.
GET /accounts/{account_id}/magic/cloud/providers/{provider_id}/initial_setup

Cloudflare ips 1 endpoints

GET /ips

Get IPs used on the Cloudflare/JD Cloud network, see https://www.cloudflare.com/ips for Cloudflare IPs or https://developers.cloudflare.com/china-network/reference/infrastructure/ for JD Cloud IPs.

operationId: cloudflare-ips-cloudflare-ip-details

Parameters

Name In Required Type Description
networks query optional string Specified as `jdcloud` to list IPs used by JD Cloud data centers.

Responses

4XX Cloudflare IP Details response failure
200 Cloudflare IP Details response
GET /ips

Cloudflare images 4 endpoints

GET /accounts/{account_id}/images/v1/stats

Fetch image statistics details for Cloudflare Images. The returned statistics detail storage usage, including the current image count vs this account's allowance.

operationId: cloudflare-images-images-usage-statistics

Parameters

Name In Required Type Description
account_id path required

Responses

4XX Images usage statistics response failure
200 Images usage statistics response
GET /accounts/{account_id}/images/v1/stats
GET /accounts/{account_id}/images/v1/{image_id}

Fetch details for a single image.

operationId: cloudflare-images-image-details

Parameters

Name In Required Type Description
image_id path required
account_id path required

Responses

4XX Image details response failure
200 Image details response
GET /accounts/{account_id}/images/v1/{image_id}
GET /accounts/{account_id}/images/v1/{image_id}/blob

Fetch base image. For most images this will be the originally uploaded file. For larger images it can be a near-lossless version of the original.

operationId: cloudflare-images-base-image

Parameters

Name In Required Type Description
image_id path required
account_id path required

Responses

4XX Base image response failure
200 Base image response. Returns uploaded image data.
GET /accounts/{account_id}/images/v1/{image_id}/blob
GET /accounts/{account_id}/images/v2

List up to 10000 images with up to 1000 results per page. Use the optional parameters below to get a specific range of images. Pagination is supported via continuation_token. **Metadata Filtering (Optional):** You can optionally filter images by custom metadata fields using the `meta.<field>[<operator>]=<value>` syntax. **Supported Operators:** - `eq` / `eq:string` / `eq:number` / `eq:boolean` - Exact match - `in` / `in:string` / `in:number` - Match any value in list (pipe-separated) **Metadata Filter Constraints:** - Maximum 5 metadata filters per request - Maximum 5 levels of nesting (e.g., `meta.first.second.third.fourth.fifth`) - Maximum 10 elements for list operators (`in`) - Supports string, number, and boolean value types **Examples:** ``` # List all images /images/v2 # Filter by metadata [eq] /images/v2?meta.status[eq:string]=active # Filter by metadata [in] /images/v2?meta.status[in]=pending|deleted|flagged # Filter by metadata [in:number] /images/v2?meta.ratings[in:number]=4|5 # Filter by nested metadata /images/v2?meta.region.name[eq]=eu-west # Combine metadata filters with creator /images/v2?meta.status[eq]=active&creator=user123 # Multiple metadata filters (AND logic) /images/v2?meta.status[eq]=active&meta.priority[eq:number]=5 ```

operationId: cloudflare-images-list-images-v2

Parameters

Name In Required Type Description
account_id path required
continuation_token query optional
per_page query optional number
sort_order query optional string
creator query optional string
meta.<field>[<operator>] query optional string 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`

Responses

4XX List images response failure
200 List images response
400 Bad request
GET /accounts/{account_id}/images/v2

Cloudflare images keys 1 endpoints

GET /accounts/{account_id}/images/v1/keys

Lists your signing keys. These can be found on your Cloudflare Images dashboard.

operationId: cloudflare-images-keys-list-signing-keys

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List Signing Keys response failure
200 List Signing Keys response
GET /accounts/{account_id}/images/v1/keys

Cloudflare images variants 3 endpoints

GET /accounts/{account_id}/images/v1/variants

Lists existing variants.

operationId: cloudflare-images-variants-list-variants

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List variants response failure
200 List variants response
GET /accounts/{account_id}/images/v1/variants
GET /accounts/{account_id}/images/v1/variants/{variant_id}

Fetch details for a single variant.

operationId: cloudflare-images-variants-variant-details

Parameters

Name In Required Type Description
variant_id path required
account_id path required

Responses

4XX Variant details response failure
200 Variant details response
GET /accounts/{account_id}/images/v1/variants/{variant_id}
GET /accounts/{account_id}/images/v1/variants/{variant_id}/flat

Fetch details for a single variant with properties at the top level of the result.

operationId: cloudflare-images-variants-variant-details-flat

Parameters

Name In Required Type Description
variant_id path required
account_id path required

Responses

4XX Variant details flat response failure
200 Variant details flat response
GET /accounts/{account_id}/images/v1/variants/{variant_id}/flat

Cloudflare tunnel 11 endpoints

GET /accounts/{account_id}/cfd_tunnel

Lists and filters Cloudflare Tunnels in an account.

operationId: cloudflare-tunnel-list-cloudflare-tunnels

Parameters

Name In Required Type Description
account_id path required
name query optional
is_deleted query optional boolean
existed_at query optional
uuid query optional
was_active_at query optional string
was_inactive_at query optional string
include_prefix query optional string
exclude_prefix query optional string
status query optional
per_page query optional
page query optional

Responses

4XX List Cloudflare Tunnels response failure
200 List Cloudflare Tunnels response
GET /accounts/{account_id}/cfd_tunnel
GET /accounts/{account_id}/cfd_tunnel/{tunnel_id}

Fetches a single Cloudflare Tunnel.

operationId: cloudflare-tunnel-get-a-cloudflare-tunnel

Parameters

Name In Required Type Description
account_id path required
tunnel_id path required

Responses

4XX Get a Cloudflare Tunnel response failure
200 Get a Cloudflare Tunnel response
GET /accounts/{account_id}/cfd_tunnel/{tunnel_id}
GET /accounts/{account_id}/cfd_tunnel/{tunnel_id}/connections

Fetches connection details for a Cloudflare Tunnel.

operationId: cloudflare-tunnel-list-cloudflare-tunnel-connections

Parameters

Name In Required Type Description
account_id path required
tunnel_id path required

Responses

4XX List Cloudflare Tunnel connections response failure
200 List Cloudflare Tunnel connections response
GET /accounts/{account_id}/cfd_tunnel/{tunnel_id}/connections
GET /accounts/{account_id}/cfd_tunnel/{tunnel_id}/connectors/{connector_id}

Fetches connector and connection details for a Cloudflare Tunnel.

operationId: cloudflare-tunnel-get-cloudflare-tunnel-connector

Parameters

Name In Required Type Description
account_id path required
tunnel_id path required
connector_id path required

Responses

4XX Get Cloudflare Tunnel connector response failure
200 Get Cloudflare Tunnel connector response
GET /accounts/{account_id}/cfd_tunnel/{tunnel_id}/connectors/{connector_id}
GET /accounts/{account_id}/cfd_tunnel/{tunnel_id}/token

Gets the token used to associate cloudflared with a specific tunnel.

operationId: cloudflare-tunnel-get-a-cloudflare-tunnel-token

Parameters

Name In Required Type Description
account_id path required
tunnel_id path required

Responses

4XX Get a Cloudflare Tunnel token response failure
200 Get a Cloudflare Tunnel token response
GET /accounts/{account_id}/cfd_tunnel/{tunnel_id}/token
GET /accounts/{account_id}/tunnels

Lists and filters all types of Tunnels in an account.

operationId: cloudflare-tunnel-list-all-tunnels

Parameters

Name In Required Type Description
account_id path required
name query optional string
is_deleted query optional boolean
existed_at query optional
uuid query optional
was_active_at query optional string
was_inactive_at query optional string
include_prefix query optional string
exclude_prefix query optional string
tun_types query optional
status query optional
per_page query optional
page query optional

Responses

4XX List Tunnels response failure
200 List Tunnels response
GET /accounts/{account_id}/tunnels
GET /accounts/{account_id}/warp_connector

Lists and filters Warp Connector Tunnels in an account.

operationId: cloudflare-tunnel-list-warp-connector-tunnels

Parameters

Name In Required Type Description
account_id path required
name query optional string
is_deleted query optional boolean
existed_at query optional
uuid query optional
was_active_at query optional string
was_inactive_at query optional string
include_prefix query optional string
exclude_prefix query optional string
status query optional
per_page query optional
page query optional

Responses

4XX List Warp Connector Tunnels response failure
200 List Warp Connector Tunnels response
GET /accounts/{account_id}/warp_connector
GET /accounts/{account_id}/warp_connector/{tunnel_id}

Fetches a single Warp Connector Tunnel.

operationId: cloudflare-tunnel-get-a-warp-connector-tunnel

Parameters

Name In Required Type Description
account_id path required
tunnel_id path required

Responses

4XX Get a Warp Connector Tunnel response failure
200 Get a Warp Connector Tunnel response
GET /accounts/{account_id}/warp_connector/{tunnel_id}
GET /accounts/{account_id}/warp_connector/{tunnel_id}/connections

Fetches connection details for a WARP Connector Tunnel.

operationId: cloudflare-tunnel-list-warp-connector-tunnel-connections

Parameters

Name In Required Type Description
account_id path required
tunnel_id path required

Responses

4XX List WARP Connector connections response failure
200 List WARP Connector Tunnel connections response
GET /accounts/{account_id}/warp_connector/{tunnel_id}/connections
GET /accounts/{account_id}/warp_connector/{tunnel_id}/connectors/{connector_id}

Fetches connector and connection details for a WARP Connector Tunnel.

operationId: cloudflare-tunnel-get-warp-connector-tunnel-connector

Parameters

Name In Required Type Description
account_id path required
tunnel_id path required
connector_id path required

Responses

4XX Get WARP Connector Tunnel connector response failure
200 Get WARP Connector Tunnel connector response
GET /accounts/{account_id}/warp_connector/{tunnel_id}/connectors/{connector_id}
GET /accounts/{account_id}/warp_connector/{tunnel_id}/token

Gets the token used to associate warp device with a specific Warp Connector tunnel.

operationId: cloudflare-tunnel-get-a-warp-connector-tunnel-token

Parameters

Name In Required Type Description
account_id path required
tunnel_id path required

Responses

4XX Get a Warp Connector Tunnel token response failure
200 Get a Warp Connector Tunnel token response
GET /accounts/{account_id}/warp_connector/{tunnel_id}/token

Cloudflare tunnel configuration 1 endpoints

GET /accounts/{account_id}/cfd_tunnel/{tunnel_id}/configurations

Gets the configuration for a remotely-managed tunnel

operationId: cloudflare-tunnel-configuration-get-configuration

Parameters

Name In Required Type Description
account_id path required
tunnel_id path required

Responses

4XX Get configuration response failure
200 Get configuration response
GET /accounts/{account_id}/cfd_tunnel/{tunnel_id}/configurations

Connectivity services 2 endpoints

GET /accounts/{account_id}/connectivity/directory/services
operationId: connectivity-services-list

Parameters

Name In Required Type Description
account_id path required
type query optional string
page query optional integer Current page in the response
per_page query optional integer Max amount of entries returned per page

Responses

4XX Failed to retrieve Workers VPC connectivity services
200 Successfully retrieved Workers VPC connectivity services
GET /accounts/{account_id}/connectivity/directory/services
GET /accounts/{account_id}/connectivity/directory/services/{service_id}
operationId: connectivity-services-get

Parameters

Name In Required Type Description
account_id path required string
service_id path required string

Responses

4XX Failed to retrieve Workers VPC connectivity service
200 Successfully retrieved Workers VPC connectivity service
GET /accounts/{account_id}/connectivity/directory/services/{service_id}

Containers 1 endpoints

GET /accounts/{account_id}/containers

Lists all the container applications that are associated with your account.

operationId: publicListApplications

Parameters

Name In Required Type Description
name query optional string Filter containers by name
image query optional string Filter containers by image

Responses

200
401
500
GET /accounts/{account_id}/containers

Content scanning 2 endpoints

GET /zones/{zone_id}/content-upload-scan/payloads

Get a list of existing custom scan expressions for Content Scanning.

operationId: waf-content-scanning-list-custom-scan-expressions

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX List existing Content Scan custom scan expressions failure response.
200 List existing Content Scan custom scan expressions response.
GET /zones/{zone_id}/content-upload-scan/payloads
GET /zones/{zone_id}/content-upload-scan/settings

Retrieve the current status of Content Scanning.

operationId: waf-content-scanning-get-status

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Get Content Scanning status failure response.
200 Get Content Scanning status response.
GET /zones/{zone_id}/content-upload-scan/settings

Country 1 endpoints

GET /accounts/{account_id}/cloudforce-one/events/countries
operationId: get_CountryRead

Parameters

Name In Required Type Description
account_id path required string Account ID.

Responses

200 Returns the long and short country code for every country.
400 Bad Request.
GET /accounts/{account_id}/cloudforce-one/events/countries

Credential sets 2 endpoints

GET /accounts/{account_id}/vuln_scanner/credential_sets

Returns all credential sets for the account.

operationId: list-credential-sets

Parameters

Name In Required Type Description
optional
optional

Responses

4XX
200 Successful response.
GET /accounts/{account_id}/vuln_scanner/credential_sets
GET /accounts/{account_id}/vuln_scanner/credential_sets/{credential_set_id}

Returns a single credential set by ID.

operationId: get-credential-set

Responses

4XX
200 Successful response.
GET /accounts/{account_id}/vuln_scanner/credential_sets/{credential_set_id}

Credentials 2 endpoints

GET /accounts/{account_id}/vuln_scanner/credential_sets/{credential_set_id}/credentials

Returns all credentials within a credential set.

operationId: list-credentials

Parameters

Name In Required Type Description
optional
optional

Responses

4XX
200 Successful response.
GET /accounts/{account_id}/vuln_scanner/credential_sets/{credential_set_id}/credentials
GET /accounts/{account_id}/vuln_scanner/credential_sets/{credential_set_id}/credentials/{credential_id}

Returns a single credential by ID.

operationId: get-credential

Responses

4XX
200 Successful response.
GET /accounts/{account_id}/vuln_scanner/credential_sets/{credential_set_id}/credentials/{credential_id}

Custom hostname fallback origin for a zone 1 endpoints

GET /zones/{zone_id}/custom_hostnames/fallback_origin

Retrieves the current fallback origin configuration for custom hostnames on a zone. The fallback origin handles traffic when specific custom hostname origins are unavailable.

operationId: custom-hostname-fallback-origin-for-a-zone-get-fallback-origin-for-custom-hostnames

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Get Fallback Origin for Custom Hostnames response failure
200 Get Fallback Origin for Custom Hostnames response
GET /zones/{zone_id}/custom_hostnames/fallback_origin

Custom hostname for a zone 2 endpoints

GET /zones/{zone_id}/custom_hostnames

List, search, sort, and filter all of your custom hostnames.

operationId: custom-hostname-for-a-zone-list-custom-hostnames

Parameters

Name In Required Type Description
zone_id path required
hostname query optional string
hostname.contain query optional string
id query optional string
page query optional number
per_page query optional number
order query optional
direction query optional
ssl_status query optional string
hostname_status query optional string
certificate_authority query optional string
wildcard query optional boolean
custom_origin_server query optional string
ssl query optional

Responses

4XX List Custom Hostnames response failure
200 List Custom Hostnames response
GET /zones/{zone_id}/custom_hostnames
GET /zones/{zone_id}/custom_hostnames/{custom_hostname_id}

Retrieves detailed information about a specific custom hostname, including SSL certificate status, ownership verification, and origin configuration.

operationId: custom-hostname-for-a-zone-custom-hostname-details

Parameters

Name In Required Type Description
custom_hostname_id path required
zone_id path required

Responses

4XX Custom Hostname Details response failure
200 Custom Hostname Details response
GET /zones/{zone_id}/custom_hostnames/{custom_hostname_id}

Custom indicator feeds 5 endpoints

GET /accounts/{account_id}/intel/indicator-feeds

Retrieves details for all accessible custom threat indicator feeds.

operationId: custom-indicator-feeds-get-indicator-feeds

Parameters

Name In Required Type Description
account_id path required

Responses

4XX Get indicator feeds response failure
200 Get indicator feeds response
GET /accounts/{account_id}/intel/indicator-feeds
GET /accounts/{account_id}/intel/indicator-feeds/permissions/view

Lists current access permissions for custom threat indicator feeds.

operationId: custom-indicator-feeds-view-permissions

Parameters

Name In Required Type Description
account_id path required

Responses

4XX Get indicator feeds response failure
200 Get indicator feed metadata
GET /accounts/{account_id}/intel/indicator-feeds/permissions/view
GET /accounts/{account_id}/intel/indicator-feeds/{feed_id}

Retrieves details for a specific custom threat indicator feed.

operationId: custom-indicator-feeds-get-indicator-feed-metadata

Parameters

Name In Required Type Description
account_id path required
feed_id path required

Responses

4XX Get indicator feeds response failure
200 Get indicator feed metadata
GET /accounts/{account_id}/intel/indicator-feeds/{feed_id}
GET /accounts/{account_id}/intel/indicator-feeds/{feed_id}/data

Retrieves the raw data entries in a custom threat indicator feed.

operationId: custom-indicator-feeds-get-indicator-feed-data

Parameters

Name In Required Type Description
account_id path required
feed_id path required

Responses

4XX Get indicator feeds response failure
200 Get indicator feed metadata
GET /accounts/{account_id}/intel/indicator-feeds/{feed_id}/data
GET /accounts/{account_id}/intel/indicator-feeds/{feed_id}/download

Downloads the content of a custom threat indicator feed.

operationId: custom-indicator-feeds-download-indicator-feed-data

Parameters

Name In Required Type Description
account_id path required
feed_id path required

Responses

4XX Get indicator feeds response failure
200 Get indicator feed metadata
GET /accounts/{account_id}/intel/indicator-feeds/{feed_id}/download

Custom origin trust store 2 endpoints

GET /zones/{zone_id}/acm/custom_trust_store

Get Custom Origin Trust Store for a Zone.

operationId: custom-origin-trust-store-list-details

Parameters

Name In Required Type Description
zone_id path required
page query optional number
per_page query optional number
limit query optional integer
offset query optional integer

Responses

4XX Custom Origin Trust Store response failure
200 Custom Origin Trust Store Details response
GET /zones/{zone_id}/acm/custom_trust_store
GET /zones/{zone_id}/acm/custom_trust_store/{custom_origin_trust_store_id}

Retrieves details about a specific certificate in the custom origin trust store, including expiration and subject information.

operationId: custom-origin-trust-store-details

Parameters

Name In Required Type Description
custom_origin_trust_store_id path required
zone_id path required

Responses

4XX Custom Origin Trust Store Details response failure
200 Custom Origin Trust Store Details response
GET /zones/{zone_id}/acm/custom_trust_store/{custom_origin_trust_store_id}

Custom ssl for a zone 2 endpoints

GET /zones/{zone_id}/custom_certificates

List, search, and filter all of your custom SSL certificates. The higher priority will break ties across overlapping 'legacy_custom' certificates, but 'legacy_custom' certificates will always supercede 'sni_custom' certificates.

operationId: custom-ssl-for-a-zone-list-ssl-configurations

Parameters

Name In Required Type Description
zone_id path required
page query optional number
per_page query optional number
match query optional string
status query optional

Responses

4XX List SSL Configurations response failure
200 List SSL Configurations response
GET /zones/{zone_id}/custom_certificates
GET /zones/{zone_id}/custom_certificates/{custom_certificate_id}

Retrieves details for a specific custom SSL certificate, including certificate metadata, bundle method, geographic restrictions, and associated keyless server configuration.

operationId: custom-ssl-for-a-zone-ssl-configuration-details

Parameters

Name In Required Type Description
custom_certificate_id path required
zone_id path required

Responses

4XX SSL Configuration Details response failure
200 SSL Configuration Details response
GET /zones/{zone_id}/custom_certificates/{custom_certificate_id}

Custom assets for a zone 2 endpoints

GET /zones/{zone_identifier}/custom_pages/assets

Fetches all the custom assets at the zone level.

operationId: custom-assets-for-a-zone-list-custom-assets

Parameters

Name In Required Type Description
zone_identifier path required
page query optional integer
per_page query optional integer

Responses

4XX List custom assets response failure
200 List custom assets response
GET /zones/{zone_identifier}/custom_pages/assets
GET /zones/{zone_identifier}/custom_pages/assets/{asset_name}

Fetches the details of a custom asset.

operationId: custom-assets-for-a-zone-get-a-custom-asset

Parameters

Name In Required Type Description
asset_name path required
zone_identifier path required

Responses

4XX Get a custom asset response failure
200 Get a custom asset response
GET /zones/{zone_identifier}/custom_pages/assets/{asset_name}

Custom assets for an account 2 endpoints

GET /accounts/{account_identifier}/custom_pages/assets

Fetches all the custom assets at the account level.

operationId: custom-assets-for-an-account-list-custom-assets

Parameters

Name In Required Type Description
account_identifier path required
page query optional integer
per_page query optional integer

Responses

4XX List custom assets response failure
200 List custom assets response
GET /accounts/{account_identifier}/custom_pages/assets
GET /accounts/{account_identifier}/custom_pages/assets/{asset_name}

Fetches the details of a custom asset.

operationId: custom-assets-for-an-account-get-a-custom-asset

Parameters

Name In Required Type Description
asset_name path required
account_identifier path required

Responses

4XX Get a custom asset response failure
200 Get a custom asset response
GET /accounts/{account_identifier}/custom_pages/assets/{asset_name}

Custom pages for a zone 2 endpoints

GET /zones/{zone_identifier}/custom_pages

Fetches all the custom pages at the zone level.

operationId: custom-pages-for-a-zone-list-custom-pages

Parameters

Name In Required Type Description
zone_identifier path required

Responses

4XX List custom pages response failure
200 List custom pages response
GET /zones/{zone_identifier}/custom_pages
GET /zones/{zone_identifier}/custom_pages/{identifier}

Fetches the details of a custom page.

operationId: custom-pages-for-a-zone-get-a-custom-page

Parameters

Name In Required Type Description
identifier path required
zone_identifier path required

Responses

4XX Get a custom page response failure
200 Get a custom page response
GET /zones/{zone_identifier}/custom_pages/{identifier}

Custom pages for an account 2 endpoints

GET /accounts/{account_identifier}/custom_pages

Fetches all the custom pages at the account level.

operationId: custom-pages-for-an-account-list-custom-pages

Parameters

Name In Required Type Description
account_identifier path required

Responses

4XX List custom pages response failure
200 List custom pages response
GET /accounts/{account_identifier}/custom_pages
GET /accounts/{account_identifier}/custom_pages/{identifier}

Fetches the details of a custom page.

operationId: custom-pages-for-an-account-get-a-custom-page

Parameters

Name In Required Type Description
identifier path required
account_identifier path required

Responses

4XX Get a custom page response failure
200 Get a custom page response
GET /accounts/{account_identifier}/custom_pages/{identifier}

D1 3 endpoints

GET /accounts/{account_id}/d1/database

Returns a list of D1 databases.

operationId: d1-list-databases

Parameters

Name In Required Type Description
account_id path required
name query optional string
page query optional number
per_page query optional number

Responses

4XX List D1 databases response failure
200 List D1 databases response
GET /accounts/{account_id}/d1/database
GET /accounts/{account_id}/d1/database/{database_id}

Returns the specified D1 database.

operationId: d1-get-database

Parameters

Name In Required Type Description
account_id path required
database_id path required

Responses

4XX Database details response failure
200 Database details response
GET /accounts/{account_id}/d1/database/{database_id}
GET /accounts/{account_id}/d1/database/{database_id}/time_travel/bookmark

Retrieves the current bookmark, or the nearest bookmark at or before a provided timestamp. Bookmarks can be used with the restore endpoint to revert the database to a previous point in time.

operationId: d1-time-travel-get-bookmark

Parameters

Name In Required Type Description
account_id path required
database_id path required
timestamp query optional An optional ISO 8601 timestamp. If provided, returns the nearest available bookmark at or before this timestamp. If omitted, returns the current bookmark.

Responses

4XX Failed to retrieve bookmark
200 Bookmark retrieved successfully
GET /accounts/{account_id}/d1/database/{database_id}/time_travel/bookmark

Dcv delegation 1 endpoints

GET /zones/{zone_id}/dcv_delegation/uuid

Retrieve the account and zone specific unique identifier used as part of the CNAME target for DCV Delegation.

operationId: dcv-delegation-uuid-get

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Retrieve the DCV Delegation unique identifier response failure.
200 Retrieve the DCV Delegation unique identifier response.
GET /zones/{zone_id}/dcv_delegation/uuid

Dex remote commands 4 endpoints

GET /accounts/{account_id}/dex/commands

Retrieves a paginated list of commands issued to devices under the specified account, optionally filtered by time range, device, or other parameters

operationId: get-commands

Parameters

Name In Required Type Description
account_id path required unique identifier linked to an account in the API request path
page query required number Page number for pagination
per_page query required number Number of results per page
from query optional string Start time for the query in ISO (RFC3339 - ISO 8601) format
to query optional string End time for the query in ISO (RFC3339 - ISO 8601) format
device_id query optional string Unique identifier for a device
user_email query optional string Email tied to the device
command_type query optional string Optionally filter executed commands by command type
status query optional string Optionally filter executed commands by status

Responses

4XX Get commands failure response
200 Get commands response
GET /accounts/{account_id}/dex/commands
GET /accounts/{account_id}/dex/commands/devices

List devices with WARP client support for remote captures which have been connected in the last 1 hour.

operationId: get-commands-eligible-devices

Parameters

Name In Required Type Description
account_id path required unique identifier linked to an account in the API request path
page query required number Page number of paginated results
per_page query required number Number of items per page
search query optional string Filter devices by name or email

Responses

4XX List eligible devices failure response
200 List of eligible devices
GET /accounts/{account_id}/dex/commands/devices
GET /accounts/{account_id}/dex/commands/quota

Retrieves the current quota usage and limits for device commands within a specific account, including the time when the quota will reset

operationId: get-commands-quota

Parameters

Name In Required Type Description
account_id path required unique identifier linked to an account in the API request path

Responses

4XX Get commands quota failure response
200 Get commands quota response
GET /accounts/{account_id}/dex/commands/quota
GET /accounts/{account_id}/dex/commands/{command_id}/downloads/{filename}

Downloads artifacts for an executed command. Bulk downloads are not supported

operationId: get-commands-command-id-downloads-filename

Parameters

Name In Required Type Description
account_id path required unique identifier linked to an account in the API request path
command_id path required Unique identifier for command
filename path required string The name of the file to be downloaded, including the `.zip` extension

Responses

4XX Get downloaded commands failure response
200 Get command artifacts response
GET /accounts/{account_id}/dex/commands/{command_id}/downloads/{filename}

Dex rules 2 endpoints

GET /accounts/{account_id}/dex/rules

List DEX Rules

operationId: list-dex-rules

Parameters

Name In Required Type Description
account_id path required unique identifier linked to an account in the API request path
page query required number Page number of paginated results
per_page query required number Number of items per page
sort_order query optional string Sort direction for sort_by property
sort_by query optional string Which property to sort results by
name query optional string Filter results by rule name

Responses

4XX List DEX Rules failure response
200 success response
GET /accounts/{account_id}/dex/rules
GET /accounts/{account_id}/dex/rules/{rule_id}

Get details for a DEX Rule

operationId: get-dex-rule

Parameters

Name In Required Type Description
account_id path required unique identifier linked to an account in the API request path
rule_id path required unique identifier of the rule

Responses

4XX List DEX Rule failure response
200 success response
GET /accounts/{account_id}/dex/rules/{rule_id}

Dex synthetic application monitoring 13 endpoints

GET /accounts/{account_id}/dex/colos

List Cloudflare colos that account's devices were connected to during a time period, sorted by usage starting from the most used colo. Colos without traffic are also returned and sorted alphabetically.

operationId: dex-endpoints-list-colos

Parameters

Name In Required Type Description
account_id path required unique identifier linked to an account in the API request path.
from query required string Start time for connection period in ISO (RFC3339 - ISO 8601) format
to query required string End time for connection period in ISO (RFC3339 - ISO 8601) format
sortBy query optional string Type of usage that colos should be sorted by. If unspecified, returns all Cloudflare colos sorted alphabetically.

Responses

4XX List colos failure response
200 List colos response
GET /accounts/{account_id}/dex/colos
GET /accounts/{account_id}/dex/devices/{device_id}/fleet-status/live

Get the live status of a latest device given device_id from the device_state table

operationId: devices-live-status

Parameters

Name In Required Type Description
account_id path required Unique identifier for account
device_id path required Unique identifier for device
since_minutes query required Number of minutes before current time
time_now query optional Number of minutes before current time
colo query optional List of data centers to filter results

Responses

4XX Get the live status of a latest device failure
200 Get the live status of a latest device
GET /accounts/{account_id}/dex/devices/{device_id}/fleet-status/live
GET /accounts/{account_id}/dex/fleet-status/devices

List details for devices using WARP

operationId: dex-fleet-status-devices

Parameters

Name In Required Type Description
account_id path required Unique identifier for account
to query required Time range end in ISO format
from query required Time range beginning in ISO format
page query required Page number
per_page query required Number of results per page
sort_by query optional Dimension to sort results by
colo query optional Cloudflare colo
device_id query optional Device-specific ID, given as UUID v4
mode query optional The mode under which the WARP client is run
status query optional Network status
platform query optional Operating system
version query optional WARP client version
source query optional Source: * `hourly` - device details aggregated hourly, up to 7 days prior * `last_seen` - device details, up to 60 minutes prior. Time windows exceeding 60 minutes will be rejected from June 1st, 2026. Please use 'hourly' or 'raw' instead for longer time ranges. * `raw` - device details, up to 7 days prior

Responses

4XX List devices response failure
200 List devices response
GET /accounts/{account_id}/dex/fleet-status/devices
GET /accounts/{account_id}/dex/fleet-status/live

List details for live (up to 60 minutes) devices using WARP

operationId: dex-fleet-status-live

Parameters

Name In Required Type Description
account_id path required Unique identifier for account
since_minutes query required Number of minutes before current time

Responses

4XX List device details (live) response failure
200 List device details (live) response
GET /accounts/{account_id}/dex/fleet-status/live
GET /accounts/{account_id}/dex/fleet-status/over-time

List details for devices using WARP, up to 7 days

operationId: dex-fleet-status-over-time

Parameters

Name In Required Type Description
account_id path required Unique identifier for account
to query required Time range end in ISO format
from query required Time range beginning in ISO format
colo query optional Cloudflare colo
device_id query optional Device-specific ID, given as UUID v4

Responses

4XX DEX HTTP test details failure response
200 List DEX devices response
GET /accounts/{account_id}/dex/fleet-status/over-time
GET /accounts/{account_id}/dex/http-tests/{test_id}

Get test details and aggregate performance metrics for an http test for a given time period between 1 hour and 7 days.

operationId: dex-endpoints-http-test-details

Parameters

Name In Required Type Description
account_id path required unique identifier linked to an account in the API request path.
test_id path required unique identifier for a specific test
deviceId query optional array Optionally filter result stats to a specific device(s). Cannot be used in combination with colo param.
from query required string Start time for aggregate metrics in ISO ms
to query required string End time for aggregate metrics in ISO ms
interval query required string Time interval for aggregate time slots.
colo query optional string Optionally filter result stats to a Cloudflare colo. Cannot be used in combination with deviceId param.

Responses

4XX DEX HTTP test details failure response
200 DEX HTTP test details response
GET /accounts/{account_id}/dex/http-tests/{test_id}
GET /accounts/{account_id}/dex/http-tests/{test_id}/percentiles

Get percentiles for an http test for a given time period between 1 hour and 7 days.

operationId: dex-endpoints-http-test-percentiles

Parameters

Name In Required Type Description
account_id path required unique identifier linked to an account in the API request path.
test_id path required unique identifier for a specific test
deviceId query optional array Optionally filter result stats to a specific device(s). Cannot be used in combination with colo param.
from query required string Start time for the query in ISO (RFC3339 - ISO 8601) format
to query required string End time for the query in ISO (RFC3339 - ISO 8601) format
colo query optional string Optionally filter result stats to a Cloudflare colo. Cannot be used in combination with deviceId param.

Responses

4XX DEX HTTP test percentiles failure response
200 DEX HTTP test percentiles response
GET /accounts/{account_id}/dex/http-tests/{test_id}/percentiles
GET /accounts/{account_id}/dex/tests/overview

List DEX tests with overview metrics

operationId: dex-endpoints-list-tests-overview

Parameters

Name In Required Type Description
account_id path required unique identifier linked to an account in the API request path.
colo query optional string Optionally filter result stats to a Cloudflare colo. Cannot be used in combination with deviceId param.
testName query optional string Optionally filter results by test name
deviceId query optional array Optionally filter result stats to a specific device(s). Cannot be used in combination with colo param.
registration_id query optional string Optionally filter results to a specific device registration. Must be used in combination with a single deviceId.
page query optional number Page number of paginated results
per_page query optional number Number of items per page
kind query optional string Filter by test type

Responses

4XX failure response
200 success response
GET /accounts/{account_id}/dex/tests/overview
GET /accounts/{account_id}/dex/tests/unique-devices

Returns unique count of devices that have run synthetic application monitoring tests in the past 7 days.

operationId: dex-endpoints-tests-unique-devices

Parameters

Name In Required Type Description
account_id path required unique identifier linked to an account in the API request path.
testName query optional string Optionally filter results by test name
deviceId query optional array Optionally filter result stats to a specific device(s). Cannot be used in combination with colo param.

Responses

4XX DEX unique devices targeted failure response
200 DEX unique devices targeted response
GET /accounts/{account_id}/dex/tests/unique-devices
GET /accounts/{account_id}/dex/traceroute-test-results/{test_result_id}/network-path

Get a breakdown of hops and performance metrics for a specific traceroute test run

operationId: dex-endpoints-traceroute-test-result-network-path

Parameters

Name In Required Type Description
account_id path required unique identifier linked to an account
test_result_id path required unique identifier for a specific traceroute test

Responses

4XX DEX traceroute test result network path failure response
200 DEX traceroute test result network path response
GET /accounts/{account_id}/dex/traceroute-test-results/{test_result_id}/network-path
GET /accounts/{account_id}/dex/traceroute-tests/{test_id}

Get test details and aggregate performance metrics for an traceroute test for a given time period between 1 hour and 7 days.

operationId: dex-endpoints-traceroute-test-details

Parameters

Name In Required Type Description
account_id path required Unique identifier linked to an account
test_id path required Unique identifier for a specific test
deviceId query optional array Optionally filter result stats to a specific device(s). Cannot be used in combination with colo param.
from query required string Start time for aggregate metrics in ISO ms
to query required string End time for aggregate metrics in ISO ms
interval query required string Time interval for aggregate time slots.
colo query optional string Optionally filter result stats to a Cloudflare colo. Cannot be used in combination with deviceId param.

Responses

4XX DEX traceroute test details response failure response
200 DEX traceroute test details response
GET /accounts/{account_id}/dex/traceroute-tests/{test_id}
GET /accounts/{account_id}/dex/traceroute-tests/{test_id}/network-path

Get a breakdown of metrics by hop for individual traceroute test runs

operationId: dex-endpoints-traceroute-test-network-path

Parameters

Name In Required Type Description
account_id path required unique identifier linked to an account
test_id path required unique identifier for a specific test
deviceId query required string Device to filter tracroute result runs to
from query required string Start time for aggregate metrics in ISO ms
to query required string End time for aggregate metrics in ISO ms
interval query required string Time interval for aggregate time slots.

Responses

4XX DEX traceroute test network path failure response
200 DEX traceroute test network path response
GET /accounts/{account_id}/dex/traceroute-tests/{test_id}/network-path
GET /accounts/{account_id}/dex/traceroute-tests/{test_id}/percentiles

Get percentiles for a traceroute test for a given time period between 1 hour and 7 days.

operationId: dex-endpoints-traceroute-test-percentiles

Parameters

Name In Required Type Description
account_id path required unique identifier linked to an account in the API request path.
test_id path required unique identifier for a specific test
deviceId query optional array Optionally filter result stats to a specific device(s). Cannot be used in combination with colo param.
from query required string Start time for the query in ISO (RFC3339 - ISO 8601) format
to query required string End time for the query in ISO (RFC3339 - ISO 8601) format
colo query optional string Optionally filter result stats to a Cloudflare colo. Cannot be used in combination with deviceId param.

Responses

4XX DEX Traceroute test percentiles failure response
200 DEX Traceroute test percentiles response
GET /accounts/{account_id}/dex/traceroute-tests/{test_id}/percentiles

Dlp datasets 2 endpoints

GET /accounts/{account_id}/dlp/datasets

Lists all DLP datasets configured for the account, including custom word lists and EDM datasets.

operationId: dlp-datasets-read-all

Parameters

Name In Required Type Description
account_id path required string

Responses

4XX Datasets read failed.
200 Datasets read successfully.
GET /accounts/{account_id}/dlp/datasets
GET /accounts/{account_id}/dlp/datasets/{dataset_id}
operationId: dlp-datasets-read

Parameters

Name In Required Type Description
account_id path required string
dataset_id path required string

Responses

4XX Dataset read failed.
200 Dataset read successfully.
GET /accounts/{account_id}/dlp/datasets/{dataset_id}

Dlp document fingerprints 2 endpoints

GET /accounts/{account_id}/dlp/document_fingerprints

Lists all document fingerprints configured for DLP scanning in the account.

operationId: dlp-document-fingerprints-read-all

Parameters

Name In Required Type Description
account_id path required string

Responses

4XX Document fingerprint read failed.
200 Document fingerprint read was successful.
GET /accounts/{account_id}/dlp/document_fingerprints
GET /accounts/{account_id}/dlp/document_fingerprints/{document_fingerprint_id}
operationId: dlp-document-fingerprints-read

Parameters

Name In Required Type Description
account_id path required string
document_fingerprint_id path required string

Responses

4XX Document fingerprint read failed.
200 Document fingerprint read was successful.
GET /accounts/{account_id}/dlp/document_fingerprints/{document_fingerprint_id}

Dlp email 3 endpoints

GET /accounts/{account_id}/dlp/email/account_mapping

Retrieves the email provider mapping configuration for DLP email scanning.

operationId: dlp-email-scanner-get-account-mapping

Parameters

Name In Required Type Description
account_id path required string

Responses

4XX Get Email Scanner Account Mapping failure response.
200 Get Email Scanner Account Mapping response.
GET /accounts/{account_id}/dlp/email/account_mapping
GET /accounts/{account_id}/dlp/email/rules

Lists all email scanner rules for an account.

operationId: dlp-email-scanner-list-all-rules

Parameters

Name In Required Type Description
account_id path required string

Responses

4XX List all email scanner rules failure response.
200 List all email scanner rules response.
GET /accounts/{account_id}/dlp/email/rules
GET /accounts/{account_id}/dlp/email/rules/{rule_id}

Gets detailed configuration for a specific DLP email scanning rule, including detection patterns and actions.

operationId: dlp-email-scanner-get-rule

Parameters

Name In Required Type Description
account_id path required string
rule_id path required string

Responses

4XX Get Email Scanner Rule failure response.
200 Get Email Scanner Rule response.
GET /accounts/{account_id}/dlp/email/rules/{rule_id}

Dlp entries 2 endpoints

GET /accounts/{account_id}/dlp/entries

Lists all DLP entries in an account.

operationId: dlp-entries-list-all-entries

Parameters

Name In Required Type Description
account_id path required string

Responses

4XX List all entries failure response.
200 List all entries response.
GET /accounts/{account_id}/dlp/entries
GET /accounts/{account_id}/dlp/entries/{entry_id}

Fetches a DLP entry by ID.

operationId: dlp-entries-get-dlp-entry

Parameters

Name In Required Type Description
account_id path required string
entry_id path required string

Responses

4XX Get entry failure response.
200 Get entry response.
GET /accounts/{account_id}/dlp/entries/{entry_id}

Dlp profiles 6 endpoints

GET /accounts/{account_id}/dlp/profiles

Lists all DLP profiles in an account.

operationId: dlp-profiles-list-all-profiles

Parameters

Name In Required Type Description
all query optional boolean Return all profiles, including those that current account does not have access to.
account_id path required string

Responses

4XX List all profiles failure response.
200 List all profiles response.
GET /accounts/{account_id}/dlp/profiles
GET /accounts/{account_id}/dlp/profiles/custom

Lists all DLP custom profiles in an account.

operationId: dlp-profiles-list-all-custom-profiles

Parameters

Name In Required Type Description
account_id path required string

Responses

4XX List all profiles failure response.
200 List all custom profiles response.
GET /accounts/{account_id}/dlp/profiles/custom
GET /accounts/{account_id}/dlp/profiles/custom/{profile_id}

Fetches a custom DLP profile by id.

operationId: dlp-profiles-get-custom-profile

Parameters

Name In Required Type Description
account_id path required string
profile_id path required string

Responses

4XX Custom profile failure response.
200 Custom profile response.
GET /accounts/{account_id}/dlp/profiles/custom/{profile_id}
GET /accounts/{account_id}/dlp/profiles/predefined/{profile_id}

Fetches a predefined DLP profile by id.

operationId: dlp-profiles-get-predefined-profile

Parameters

Name In Required Type Description
account_id path required string
profile_id path required string

Responses

4XX Predefined profile failure response.
200 Predefined profile response.
GET /accounts/{account_id}/dlp/profiles/predefined/{profile_id}
GET /accounts/{account_id}/dlp/profiles/predefined/{profile_id}/config

This is similar to `get_predefined` but only returns entries that are enabled. This is needed for our terraform API Fetches a predefined DLP profile by id.

operationId: dlp-profiles-get-predefined-profile-config

Parameters

Name In Required Type Description
account_id path required string
profile_id path required string

Responses

4XX Predefined profile failure response.
200 Predefined profile response.
GET /accounts/{account_id}/dlp/profiles/predefined/{profile_id}/config
GET /accounts/{account_id}/dlp/profiles/{profile_id}

Fetches a DLP profile by ID.

operationId: dlp-profiles-get-dlp-profile

Parameters

Name In Required Type Description
account_id path required string
profile_id path required string

Responses

4XX Get profile failure response.
200 Get profile response.
GET /accounts/{account_id}/dlp/profiles/{profile_id}

Dlp settings 3 endpoints

GET /accounts/{account_id}/dlp/limits

Retrieves current DLP usage limits and quotas for the account, including maximum allowed counts and current usage for custom entries, dataset cells, and document fingerprints.

operationId: dlp-limits-get

Parameters

Name In Required Type Description
account_id path required string

Responses

4XX Limits get failed.
200 Limits retrieved successfully.
GET /accounts/{account_id}/dlp/limits
GET /accounts/{account_id}/dlp/payload_log

Gets the current payload logging configuration for DLP, showing whether matched content is being logged.

operationId: dlp-payload-log-get

Parameters

Name In Required Type Description
account_id path required string

Responses

4XX Failed to get payload log settings.
200 Payload log settings.
GET /accounts/{account_id}/dlp/payload_log
GET /accounts/{account_id}/dlp/settings
operationId: dlp-settings-get

Parameters

Name In Required Type Description
account_id path required string

Responses

4XX Failed to get DLP settings.
200 DLP settings.
GET /accounts/{account_id}/dlp/settings

Dls regional services 3 endpoints

GET /accounts/{account_id}/addressing/regional_hostnames/regions

List all Regional Services regions available for use by this account.

operationId: dls-account-regional-hostnames-account-list-regions

Parameters

Name In Required Type Description
optional

Responses

4XX Failure to list regions
200 List regions response
GET /accounts/{account_id}/addressing/regional_hostnames/regions
GET /zones/{zone_id}/addressing/regional_hostnames

List all Regional Hostnames within a zone.

operationId: dls-account-regional-hostnames-account-list-hostnames

Parameters

Name In Required Type Description
optional

Responses

4XX Failure to list hostnames
200 List hostnames response
GET /zones/{zone_id}/addressing/regional_hostnames
GET /zones/{zone_id}/addressing/regional_hostnames/{hostname}

Fetch the configuration for a specific Regional Hostname, within a zone.

operationId: dls-account-regional-hostnames-account-fetch-hostname

Parameters

Name In Required Type Description
optional
optional

Responses

4XX Failure to fetch hostname
200 Fetch hostname response
GET /zones/{zone_id}/addressing/regional_hostnames/{hostname}

Dns analytics 2 endpoints

GET /zones/{zone_id}/dns_analytics/report

Retrieves a list of summarised aggregate metrics over a given time period. See [Analytics API properties](https://developers.cloudflare.com/dns/reference/analytics-api-properties/) for detailed information about the available query parameters.

operationId: dns-analytics-table

Parameters

Name In Required Type Description
zone_id path required
metrics query optional
dimensions query optional
since query optional
until query optional
limit query optional
sort query optional
filters query optional

Responses

4XX Table response failure
200 Table response
GET /zones/{zone_id}/dns_analytics/report
GET /zones/{zone_id}/dns_analytics/report/bytime

Retrieves a list of aggregate metrics grouped by time interval. See [Analytics API properties](https://developers.cloudflare.com/dns/reference/analytics-api-properties/) for detailed information about the available query parameters.

operationId: dns-analytics-by-time

Parameters

Name In Required Type Description
zone_id path required
metrics query optional
dimensions query optional
since query optional
until query optional
limit query optional
sort query optional
filters query optional
time_delta query optional

Responses

4XX By Time response failure
200 By Time response
GET /zones/{zone_id}/dns_analytics/report/bytime

Dns firewall 3 endpoints

GET /accounts/{account_id}/dns_firewall

List DNS Firewall clusters for an account

operationId: dns-firewall-list-dns-firewall-clusters

Parameters

Name In Required Type Description
account_id path required
page query optional number
per_page query optional number

Responses

4XX List DNS Firewall Clusters response failure
200 List DNS Firewall Clusters response
GET /accounts/{account_id}/dns_firewall
GET /accounts/{account_id}/dns_firewall/{dns_firewall_id}

Show a single DNS Firewall cluster for an account

operationId: dns-firewall-dns-firewall-cluster-details

Parameters

Name In Required Type Description
dns_firewall_id path required
account_id path required

Responses

4XX DNS Firewall Cluster Details response failure
200 DNS Firewall Cluster Details response
GET /accounts/{account_id}/dns_firewall/{dns_firewall_id}
GET /accounts/{account_id}/dns_firewall/{dns_firewall_id}/reverse_dns

Show reverse DNS configuration (PTR records) for a DNS Firewall cluster

operationId: dns-firewall-show-dns-firewall-cluster-reverse-dns

Parameters

Name In Required Type Description
dns_firewall_id path required
account_id path required

Responses

4XX Show DNS Firewall Cluster Reverse DNS response failure
200 Show DNS Firewall Cluster Reverse DNS response
GET /accounts/{account_id}/dns_firewall/{dns_firewall_id}/reverse_dns

Dns firewall analytics 2 endpoints

GET /accounts/{account_id}/dns_firewall/{dns_firewall_id}/dns_analytics/report

Retrieves a list of summarised aggregate metrics over a given time period. See [Analytics API properties](https://developers.cloudflare.com/dns/reference/analytics-api-properties/) for detailed information about the available query parameters.

operationId: dns-firewall-analytics-table

Parameters

Name In Required Type Description
dns_firewall_id path required
account_id path required
metrics query optional
dimensions query optional
since query optional
until query optional
limit query optional
sort query optional
filters query optional

Responses

4XX Table response failure
200 Table response
GET /accounts/{account_id}/dns_firewall/{dns_firewall_id}/dns_analytics/report
GET /accounts/{account_id}/dns_firewall/{dns_firewall_id}/dns_analytics/report/bytime

Retrieves a list of aggregate metrics grouped by time interval. See [Analytics API properties](https://developers.cloudflare.com/dns/reference/analytics-api-properties/) for detailed information about the available query parameters.

operationId: dns-firewall-analytics-by-time

Parameters

Name In Required Type Description
dns_firewall_id path required
account_id path required
metrics query optional
dimensions query optional
since query optional
until query optional
limit query optional
sort query optional
filters query optional
time_delta query optional

Responses

4XX By Time response failure
200 By Time response
GET /accounts/{account_id}/dns_firewall/{dns_firewall_id}/dns_analytics/report/bytime

Dns internal views for an account 2 endpoints

GET /accounts/{account_id}/dns_settings/views

List DNS Internal Views for an Account

operationId: dns-views-for-an-account-list-internal-dns-views

Parameters

Name In Required Type Description
account_id path required
name query optional string
name.exact query optional string
name.contains query optional string
name.startswith query optional string
name.endswith query optional string
zone_id query optional string
zone_name query optional string
match query optional
page query optional
per_page query optional
order query optional
direction query optional

Responses

4XX List Internal DNS Views response failure
200 List Internal DNS Views response
GET /accounts/{account_id}/dns_settings/views
GET /accounts/{account_id}/dns_settings/views/{view_id}

Get DNS Internal View

operationId: dns-views-for-an-account-get-internal-dns-view

Parameters

Name In Required Type Description
account_id path required
view_id path required

Responses

4XX List Internal DNS Views response failure
200 Get DNS Internal View response
GET /accounts/{account_id}/dns_settings/views/{view_id}

Dns records for a zone 5 endpoints

GET /zones/{zone_id}/dns_records

List, search, sort, and filter a zones' DNS records.

operationId: dns-records-for-a-zone-list-dns-records

Parameters

Name In Required Type Description
zone_id path required
name query optional string
name.exact query optional string
name.contains query optional string
name.startswith query optional string
name.endswith query optional string
type query optional
content query optional string
content.exact query optional string
content.contains query optional string
content.startswith query optional string
content.endswith query optional string
proxied query optional
match query optional
comment query optional string
comment.present query optional string
comment.absent query optional string
comment.exact query optional string
comment.contains query optional string
comment.startswith query optional string
comment.endswith query optional string
tag query optional string
tag.present query optional string
tag.absent query optional string
tag.exact query optional string
tag.contains query optional string
tag.startswith query optional string
tag.endswith query optional string
search query optional
tag_match query optional
page query optional
per_page query optional
order query optional
direction query optional

Responses

4XX List DNS Records response failure
200 List DNS Records response
GET /zones/{zone_id}/dns_records
GET /zones/{zone_id}/dns_records/export

You can export your [BIND config](https://en.wikipedia.org/wiki/Zone_file "Zone file") through this endpoint. See [the documentation](https://developers.cloudflare.com/dns/manage-dns-records/how-to/import-and-export/ "Import and export records") for more information.

operationId: dns-records-for-a-zone-export-dns-records

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Export DNS Records response failure
200 Export DNS Records response
GET /zones/{zone_id}/dns_records/export
GET /zones/{zone_id}/dns_records/scan/review

Retrieves the list of DNS records discovered up to this point by the asynchronous scan. These records are temporary until explicitly accepted or rejected via `POST /scan/review`. Additional records may be discovered by the scan later.

operationId: dns-records-for-a-zone-review-dns-scan

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Scan review failure
200 List of discovered DNS records
GET /zones/{zone_id}/dns_records/scan/review
GET /zones/{zone_id}/dns_records/usage

Get the current DNS record usage for a zone, including the number of records and the quota limit.

operationId: dns-records-for-a-zone-get-usage

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Get DNS Record Usage response failure
200 Get DNS Record Usage response
GET /zones/{zone_id}/dns_records/usage
GET /zones/{zone_id}/dns_records/{dns_record_id}
operationId: dns-records-for-a-zone-dns-record-details

Parameters

Name In Required Type Description
dns_record_id path required
zone_id path required

Responses

4XX DNS Record Details response failure
200 DNS Record Details response
GET /zones/{zone_id}/dns_records/{dns_record_id}

Dns records for an account 1 endpoints

GET /accounts/{account_id}/dns_records/usage

Get the current DNS record usage and quota for an account. May include internal DNS usage and quota.

operationId: dns-records-for-an-account-get-usage

Parameters

Name In Required Type Description
account_id path required

Responses

4XX Get DNS Record Usage response failure
200 Get DNS Record Usage response
GET /accounts/{account_id}/dns_records/usage

Dns settings for a zone 1 endpoints

GET /zones/{zone_id}/dns_settings

Show DNS settings for a zone

operationId: dns-settings-for-a-zone-list-dns-settings

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Show DNS Settings response failure
200 Show DNS Settings response
GET /zones/{zone_id}/dns_settings

Dns settings for an account 1 endpoints

GET /accounts/{account_id}/dns_settings

Show DNS settings for an account

operationId: dns-settings-for-an-account-list-dns-settings

Parameters

Name In Required Type Description
account_id path required

Responses

4XX Show DNS Settings response failure
200 Show DNS Settings response
GET /accounts/{account_id}/dns_settings

Dnssec 2 endpoints

GET /zones/{zone_id}/dnssec

Details about DNSSEC status and configuration.

operationId: dnssec-dnssec-details

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX DNSSEC Details response failure.
200 DNSSEC Details response.
GET /zones/{zone_id}/dnssec
GET /zones/{zone_id}/dnssec/zsk

List the Zone Signing Keys (ZSKs) that DNSSEC uses for the zone.

operationId: dnssec-list-dnssec-zsks

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX List DNSSEC ZSKs response failure.
200 List DNSSEC ZSKs response.
GET /zones/{zone_id}/dnssec/zsk

Dataset 2 endpoints

GET /accounts/{account_id}/cloudforce-one/events/dataset
operationId: get_DatasetList

Parameters

Name In Required Type Description
account_id path required string Account ID.

Responses

200 Returns a list of dataset in an account.
400 Bad Request.
GET /accounts/{account_id}/cloudforce-one/events/dataset
GET /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}
operationId: get_DatasetRead

Parameters

Name In Required Type Description
account_id path required string Account ID.
dataset_id path required string Dataset ID.

Responses

200 Returns a dataset.
400 Bad Request.
GET /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}

Deployment groups 2 endpoints

GET /accounts/{account_id}/devices/deployment-groups

Lists all deployment groups for an account. Use deployment groups to assign target WARP client versions to specific devices. This endpoint is in Beta.

operationId: list-deployment-groups

Parameters

Name In Required Type Description
account_id path required string
page query optional integer The page number to return.
per_page query optional integer The maximum number of deployment groups to return per page.

Responses

200 Lists deployment group response.
GET /accounts/{account_id}/devices/deployment-groups
GET /accounts/{account_id}/devices/deployment-groups/{group_id}

Fetches a single deployment group by its ID. This endpoint is in Beta.

operationId: get-deployment-group

Parameters

Name In Required Type Description
account_id path required string
group_id path required string

Responses

200 Gets deployment group response.
GET /accounts/{account_id}/devices/deployment-groups/{group_id}

Destinations 1 endpoints

GET /accounts/{account_id}/workers/observability/destinations

List your Workers Observability Telemetry Destinations.

operationId: destination.list

Parameters

Name In Required Type Description
page query optional number
perPage query optional number
order query optional string
orderBy query optional string

Responses

200 Successful request
401 Unauthorized
404 Not found
500 Internal error
GET /accounts/{account_id}/workers/observability/destinations

Device dex tests 2 endpoints

GET /accounts/{account_id}/dex/devices/dex_tests

Fetch all DEX tests

operationId: device-dex-test-details

Parameters

Name In Required Type Description
account_id path required
page query optional number Page number of paginated results
per_page query optional number Number of items per page
testName query optional string Filter by test name
kind query optional string Filter by test type

Responses

4XX Device DEX test response failure
200 Device DEX test details response
GET /accounts/{account_id}/dex/devices/dex_tests
GET /accounts/{account_id}/dex/devices/dex_tests/{dex_test_id}

Fetch a single DEX test.

operationId: device-dex-test-get-device-dex-test

Parameters

Name In Required Type Description
account_id path required
dex_test_id path required

Responses

4XX Device DEX test response failure
200 Device DEX test details response
GET /accounts/{account_id}/dex/devices/dex_tests/{dex_test_id}

Device managed networks 2 endpoints

GET /accounts/{account_id}/devices/networks

Fetches a list of managed networks for an account.

operationId: device-managed-networks-list-device-managed-networks

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List your device managed networks response failure.
200 List your device managed networks response.
GET /accounts/{account_id}/devices/networks
GET /accounts/{account_id}/devices/networks/{network_id}

Fetches details for a single managed network.

operationId: device-managed-networks-device-managed-network-details

Parameters

Name In Required Type Description
network_id path required
account_id path required

Responses

4XX Get device managed network details response failure.
200 Get device managed network details response.
GET /accounts/{account_id}/devices/networks/{network_id}

Device posture integrations 2 endpoints

GET /accounts/{account_id}/devices/posture/integration

Fetches the list of device posture integrations for an account.

operationId: device-posture-integrations-list-device-posture-integrations

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List your device posture integrations response failure.
200 List your device posture integrations response.
GET /accounts/{account_id}/devices/posture/integration
GET /accounts/{account_id}/devices/posture/integration/{integration_id}

Fetches details for a single device posture integration.

operationId: device-posture-integrations-device-posture-integration-details

Parameters

Name In Required Type Description
integration_id path required
account_id path required

Responses

4XX Get device posture integration details response failure.
200 Get device posture integration details response.
GET /accounts/{account_id}/devices/posture/integration/{integration_id}

Device posture rules 2 endpoints

GET /accounts/{account_id}/devices/posture

Fetches device posture rules for a Zero Trust account.

operationId: device-posture-rules-list-device-posture-rules

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List device posture rules response failure.
200 List device posture rules response.
GET /accounts/{account_id}/devices/posture
GET /accounts/{account_id}/devices/posture/{rule_id}

Fetches a single device posture rule.

operationId: device-posture-rules-device-posture-rules-details

Parameters

Name In Required Type Description
rule_id path required
account_id path required

Responses

4XX Get device posture rule details response failure.
200 Get device posture rule details response.
GET /accounts/{account_id}/devices/posture/{rule_id}

Devices 10 endpoints

GET /accounts/{account_id}/devices/policies

Fetches a list of the device settings profiles for an account.

operationId: devices-list-device-settings-policies

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List device settings profiles response failure.
200 List device settings profiles response.
GET /accounts/{account_id}/devices/policies
GET /accounts/{account_id}/devices/policy

Fetches the default device settings profile for an account.

operationId: devices-get-default-device-settings-policy

Parameters

Name In Required Type Description
account_id path required

Responses

4XX Get the default device settings profile response failure.
200 Get the default device settings profile response.
GET /accounts/{account_id}/devices/policy
GET /accounts/{account_id}/devices/policy/exclude

Fetches the list of routes excluded from the WARP client's tunnel.

operationId: devices-get-split-tunnel-exclude-list

Parameters

Name In Required Type Description
account_id path required

Responses

4XX Get the Split Tunnel exclude list response failure.
200 Get the Split Tunnel exclude list response.
GET /accounts/{account_id}/devices/policy/exclude
GET /accounts/{account_id}/devices/policy/fallback_domains

Fetches a list of domains to bypass Gateway DNS resolution. These domains will use the specified local DNS resolver instead.

operationId: devices-get-local-domain-fallback-list

Parameters

Name In Required Type Description
account_id path required

Responses

4XX Get your Local Domain Fallback list response failure.
200 Get your Local Domain Fallback list response.
GET /accounts/{account_id}/devices/policy/fallback_domains
GET /accounts/{account_id}/devices/policy/include

Fetches the list of routes included in the WARP client's tunnel.

operationId: devices-get-split-tunnel-include-list

Parameters

Name In Required Type Description
account_id path required

Responses

4XX Get the Split Tunnel include list response failure.
200 Get the Split Tunnel include list response.
GET /accounts/{account_id}/devices/policy/include
GET /accounts/{account_id}/devices/policy/{policy_id}

Fetches a device settings profile by ID.

operationId: devices-get-device-settings-policy-by-id

Parameters

Name In Required Type Description
policy_id path required
account_id path required

Responses

4XX Get device settings profile by ID response failure.
200 Get device settings profile by ID response.
GET /accounts/{account_id}/devices/policy/{policy_id}
GET /accounts/{account_id}/devices/policy/{policy_id}/exclude

Fetches the list of routes excluded from the WARP client's tunnel for a specific device settings profile.

operationId: devices-get-split-tunnel-exclude-list-for-a-device-settings-policy

Parameters

Name In Required Type Description
policy_id path required
account_id path required

Responses

4XX Get the Split Tunnel exclude list for a device settings profile response failure.
200 Get the Split Tunnel exclude list for a device settings profile response.
GET /accounts/{account_id}/devices/policy/{policy_id}/exclude
GET /accounts/{account_id}/devices/policy/{policy_id}/fallback_domains

Fetches the list of domains to bypass Gateway DNS resolution from a specified device settings profile. These domains will use the specified local DNS resolver instead.

operationId: devices-get-local-domain-fallback-list-for-a-device-settings-policy

Parameters

Name In Required Type Description
policy_id path required
account_id path required

Responses

4XX Get the Local Domain Fallback list for a device settings profile response failure.
200 Get the Local Domain Fallback list for a device settings profile response.
GET /accounts/{account_id}/devices/policy/{policy_id}/fallback_domains
GET /accounts/{account_id}/devices/policy/{policy_id}/include

Fetches the list of routes included in the WARP client's tunnel for a specific device settings profile.

operationId: devices-get-split-tunnel-include-list-for-a-device-settings-policy

Parameters

Name In Required Type Description
policy_id path required
account_id path required

Responses

4XX Get the Split Tunnel include list for a device settings profile response failure.
200 Get the Split Tunnel include list for a device settings profile response.
GET /accounts/{account_id}/devices/policy/{policy_id}/include
GET /zones/{zone_id}/devices/policy/certificates

Fetches device certificate provisioning.

operationId: devices-get-policy-certificates

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Get WARP client provision certificates enabled status failure.
200 Get WARP client provision certificates enabled status response.
GET /zones/{zone_id}/devices/policy/certificates

Devices resilience 1 endpoints

GET /accounts/{account_id}/devices/resilience/disconnect

Fetch the Global WARP override state.

operationId: devices-resilience-retrieve-global-warp-override

Parameters

Name In Required Type Description
account_id path required

Responses

4XX Fetch Global WARP override state failure.
200 Fetch Global WARP override state response.
GET /accounts/{account_id}/devices/resilience/disconnect

Domain discovery 1 endpoints

GET /accounts/{account_id}/registrar/domain-search

Searches for domain name suggestions based on a keyword, phrase, or partial domain name. Returns a list of potentially available domains with pricing information. **Important:** Results are non-authoritative and based on cached data. Always use the `/domain-check` endpoint to verify real-time availability before attempting registration. Suggestions are scoped to extensions supported for programmatic registration via this API (`POST /registrations`). Domains on unsupported extensions will not appear in results, even if they are available at the registry level. ### Use cases - Brand name discovery (e.g., "acme corp" → acmecorp.com, acmecorp.dev) - Keyword-based suggestions (e.g., "coffee shop" → coffeeshop.com, mycoffeeshop.net) - Alternative extension discovery (e.g., "example.com" → example.com, example.app, example.xyz) ### Workflow 1. Call this endpoint with a keyword or domain name. 2. Present suggestions to the user. 3. Call `/domain-check` with the user's chosen domains to confirm real-time availability and pricing. 4. Proceed to `POST /registrations` only for supported non-premium domains where the Check response returns `registrable: true`. **Note:** Searching with just a domain extension (e.g., "com" or ".app") is not supported. Provide a keyword or domain name.

operationId: registrar-domain-discovery-search

Parameters

Name In Required Type Description
account_id path required Cloudflare account ID. Required for all Registrar API operations.
q query required string The search term to find domain suggestions. Accepts keywords, phrases, or full domain names. - Phrases: "coffee shop" returns coffeeshop.com, mycoffeeshop.net, etc. - Domain names: "example.com" returns example.com and variations across extensions
extensions query optional array Limits results to specific domain extensions from the supported set. If not specified, returns results across all supported extensions. Extensions not in the supported set are silently ignored.
limit query optional integer Maximum number of domain suggestions to return. Defaults to 20 if not specified.

Responses

200 Successfully returned domain search results.
400 Invalid request parameters. Common causes: - Missing required `q` parameter - Query exceeds 100 character limit - Invalid extension format
GET /accounts/{account_id}/registrar/domain-search

Domain history 1 endpoints

GET /accounts/{account_id}/intel/domain-history

Gets historical security threat and content categories currently and previously assigned to a domain.

operationId: domain-history-get-domain-history

Parameters

Name In Required Type Description
account_id path required
domain query optional string

Responses

4XX Get Domain History response failure.
200 Get Domain History response.
GET /accounts/{account_id}/intel/domain-history

Domain intelligence 2 endpoints

GET /accounts/{account_id}/intel/domain

Gets security details and statistics about a domain.

operationId: domain-intelligence-get-domain-details

Parameters

Name In Required Type Description
account_id path required
domain query optional string
skip_dns query optional boolean Skip DNS resolution lookups for faster response.

Responses

4XX Get Domain Details response failure.
200 Get Domain Details response.
GET /accounts/{account_id}/intel/domain
GET /accounts/{account_id}/intel/domain/bulk

Same as summary.

operationId: domain-intelligence-get-multiple-domain-details

Parameters

Name In Required Type Description
account_id path required
domain query optional array Accepts multiple values like `?domain=cloudflare.com&domain=example.com`.

Responses

4XX Get Multiple Domain Details response failure.
200 Get Multiple Domain Details response.
GET /accounts/{account_id}/intel/domain/bulk

Domains 2 endpoints

GET /accounts/{account_id}/workers/domains

Lists all domains for an account.

operationId: workers.domains.list

Parameters

Name In Required Type Description
account_id path required
zone_id query optional string
zone_name query optional string
service query optional string
hostname query optional string
environment query optional string

Responses

4XX List domains failure.
200 List domains response.
GET /accounts/{account_id}/workers/domains
GET /accounts/{account_id}/workers/domains/{domain_id}

Gets information about a domain.

operationId: workers.domains.get

Parameters

Name In Required Type Description
account_id path required
domain_id path required string

Responses

4XX Get domain failure.
200 Get domain response.
GET /accounts/{account_id}/workers/domains/{domain_id}

Durable objects namespace 2 endpoints

GET /accounts/{account_id}/workers/durable_objects/namespaces

Returns the Durable Object namespaces owned by an account.

operationId: durable-objects-namespace-list-namespaces

Parameters

Name In Required Type Description
account_id path required
page query optional integer Current page.
per_page query optional integer Items per-page.

Responses

4XX List Namespaces response failure.
200 List Namespaces response.
GET /accounts/{account_id}/workers/durable_objects/namespaces
GET /accounts/{account_id}/workers/durable_objects/namespaces/{id}/objects

Returns the Durable Objects in a given namespace.

operationId: durable-objects-namespace-list-objects

Parameters

Name In Required Type Description
account_id path required
id path required
limit query optional number
cursor query optional string

Responses

4XX List Objects response failure.
200 List Objects response.
GET /accounts/{account_id}/workers/durable_objects/namespaces/{id}/objects

Email routing destination addresses 2 endpoints

GET /accounts/{account_id}/email/routing/addresses

Lists existing destination addresses.

operationId: email-routing-destination-addresses-list-destination-addresses

Parameters

Name In Required Type Description
account_id path required
page query optional number
per_page query optional number
direction query optional string
verified query optional boolean

Responses

200 List destination addresses response
GET /accounts/{account_id}/email/routing/addresses
GET /accounts/{account_id}/email/routing/addresses/{destination_address_identifier}

Gets information for a specific destination email already created.

operationId: email-routing-destination-addresses-get-a-destination-address

Parameters

Name In Required Type Description
destination_address_identifier path required
account_id path required

Responses

200 Get a destination address response
GET /accounts/{account_id}/email/routing/addresses/{destination_address_identifier}

Email routing routing rules 3 endpoints

GET /zones/{zone_id}/email/routing/rules

Lists existing routing rules.

operationId: email-routing-routing-rules-list-routing-rules

Parameters

Name In Required Type Description
zone_id path required
page query optional number
per_page query optional number
enabled query optional boolean

Responses

200 List routing rules response
GET /zones/{zone_id}/email/routing/rules
GET /zones/{zone_id}/email/routing/rules/catch_all

Get information on the default catch-all routing rule.

operationId: email-routing-routing-rules-get-catch-all-rule

Parameters

Name In Required Type Description
zone_id path required

Responses

200 Get catch-all rule response
GET /zones/{zone_id}/email/routing/rules/catch_all
GET /zones/{zone_id}/email/routing/rules/{rule_identifier}

Get information for a specific routing rule already created.

operationId: email-routing-routing-rules-get-routing-rule

Parameters

Name In Required Type Description
rule_identifier path required
zone_id path required

Responses

200 Get routing rule response
GET /zones/{zone_id}/email/routing/rules/{rule_identifier}

Email routing settings 2 endpoints

GET /zones/{zone_id}/email/routing

Get information about the settings for your Email Routing zone.

operationId: email-routing-settings-get-email-routing-settings

Parameters

Name In Required Type Description
zone_id path required

Responses

200 Get Email Routing settings response
GET /zones/{zone_id}/email/routing
GET /zones/{zone_id}/email/routing/dns

Show the DNS records needed to configure your Email Routing zone.

operationId: email-routing-settings-email-routing-dns-settings

Parameters

Name In Required Type Description
zone_id path required
subdomain query optional

Responses

200 Email Routing - DNS settings response
GET /zones/{zone_id}/email/routing/dns

Email security 9 endpoints

GET /accounts/{account_id}/email-security/investigate

Returns information for each email that matches the search parameter(s). If the search takes too long, the endpoint returns 202 with a Location header pointing to a polling endpoint where results can be retrieved once ready.

operationId: email_security_investigate

Parameters

Name In Required Type Description
account_id path required
start query optional string The beginning of the search date range. Defaults to `now - 30 days` if not provided.
end query optional string The end of the search date range. Defaults to `now` if not provided.
query query optional string 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 query optional boolean Determines if the search results will include detections or not.
action_log query optional boolean Determines if the message action log is included in the response.
final_disposition query optional The dispositions the search filters by.
metric query optional string
message_action query optional The message actions the search filters by.
recipient query optional string Filter by recipient. Matches either an email address or a domain.
sender query optional string Filter by sender. Matches either an email address or a domain.
alert_id query optional string
domain query optional string Filter by a domain found in the email: sender domain, recipient domain, or a domain in a link.
message_id query optional string
subject query optional string Search for messages containing individual keywords in any order within the subject.
exact_subject query optional string Search for messages with an exact subject match.
submissions query optional boolean Search for submissions instead of original messages
cursor query optional string
per_page query optional integer The number of results per page.
page query optional integer Deprecated: Use cursor pagination instead.

Responses

4XX
200 Contains the search results for the provided query.
202 The search is taking longer than expected. Use the Location header to poll for results.
GET /accounts/{account_id}/email-security/investigate
GET /accounts/{account_id}/email-security/investigate/{investigate_id}/action_log

Returns the list of post-delivery actions (moves, quarantine releases, previews, etc.) that have been applied to a specific email message.

operationId: email_security_get_message_action_log

Parameters

Name In Required Type Description
account_id path required
investigate_id path required string

Responses

4XX
200 Contains the action log for the email.
GET /accounts/{account_id}/email-security/investigate/{investigate_id}/action_log
GET /accounts/{account_id}/email-security/investigate/{postfix_id}

Retrieves detailed information about a specific email message, including headers, metadata, and security scan results.

operationId: email_security_get_message

Parameters

Name In Required Type Description
account_id path required
postfix_id path required
submission query optional boolean When true, search the submissions datastore only. When false or omitted, search the regular datastore only.

Responses

4XX
200 Contains the email message details.
GET /accounts/{account_id}/email-security/investigate/{postfix_id}
GET /accounts/{account_id}/email-security/investigate/{postfix_id}/detections

Returns detection details such as threat categories and sender information for non-benign messages.

operationId: email_security_get_message_detections

Parameters

Name In Required Type Description
account_id path required
postfix_id path required

Responses

4XX
200 Contains the email message details.
GET /accounts/{account_id}/email-security/investigate/{postfix_id}/detections
GET /accounts/{account_id}/email-security/investigate/{postfix_id}/preview

Returns a preview of the message body as a base64 encoded PNG image for non-benign messages.

operationId: email_security_get_message_preview

Parameters

Name In Required Type Description
account_id path required
postfix_id path required

Responses

4XX
200 Contains a preview of the email.
GET /accounts/{account_id}/email-security/investigate/{postfix_id}/preview
GET /accounts/{account_id}/email-security/investigate/{postfix_id}/raw

Returns the raw eml of any non-benign message.

operationId: email_security_get_message_raw

Parameters

Name In Required Type Description
account_id path required
postfix_id path required

Responses

4XX
200 Contains the raw content of the email.
GET /accounts/{account_id}/email-security/investigate/{postfix_id}/raw
GET /accounts/{account_id}/email-security/investigate/{postfix_id}/trace

Gets the delivery trace for an email message, showing its path through email security processing.

operationId: email_security_get_message_trace

Parameters

Name In Required Type Description
account_id path required
postfix_id path required
submission query optional boolean When true, search the submissions datastore only. When false or omitted, search the regular datastore only.

Responses

4XX
200 Contains the email trace.
GET /accounts/{account_id}/email-security/investigate/{postfix_id}/trace
GET /accounts/{account_id}/email-security/phishguard/reports

Retrieves `PhishGuard` reports showing phishing attempts and suspicious email patterns detected.

operationId: email_security_get_phishguard_reports

Parameters

Name In Required Type Description
account_id path required
from_date query optional string
to_date query optional string
start query optional string The beginning of the search date range (RFC3339 format).
end query optional string The end of the search date range (RFC3339 format).

Responses

4XX
200 Contains a list of PhishGuard reports.
GET /accounts/{account_id}/email-security/phishguard/reports
GET /accounts/{account_id}/email-security/submissions

This endpoint returns information for submissions to made to reclassify emails.

operationId: email_security_submissions

Parameters

Name In Required Type Description
account_id path required
start query optional string The beginning of the search date range. Defaults to `now - 30 days` if not provided.
end query optional string The end of the search date range. Defaults to `now` if not provided.
type query optional
submission_id query optional string
original_disposition query optional
requested_disposition query optional
outcome_disposition query optional
status query optional string
query query optional string
customer_status query optional
page query optional integer The page number of paginated results.
per_page query optional integer The number of results per page.

Responses

4XX
200
GET /accounts/{account_id}/email-security/submissions

Email security settings 10 endpoints

GET /accounts/{account_id}/email-security/settings/allow_policies

Lists, searches, and sorts an account’s email allow policies.

operationId: email_security_list_allow_policies

Parameters

Name In Required Type Description
account_id path required
page query optional integer The page number of paginated results.
per_page query optional integer The number of results per page.
order query optional string The field to sort by.
direction query optional The sorting direction.
search query optional string 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 query optional boolean
is_trusted_sender query optional boolean
is_recipient query optional boolean
is_exempt_recipient query optional boolean
is_spoof query optional boolean
is_acceptable_sender query optional boolean
verify_sender query optional boolean
pattern_type query optional
pattern query optional string

Responses

4XX
200 Contains a list of allow policies for the account.
GET /accounts/{account_id}/email-security/settings/allow_policies
GET /accounts/{account_id}/email-security/settings/allow_policies/{policy_id}

Retrieves details for a specific email allow policy, including its matching criteria and scope.

operationId: email_security_get_allow_policy

Parameters

Name In Required Type Description
account_id path required
policy_id path required

Responses

4XX
200
GET /accounts/{account_id}/email-security/settings/allow_policies/{policy_id}
GET /accounts/{account_id}/email-security/settings/block_senders

Lists all blocked sender entries with their patterns and block reasons.

operationId: email_security_list_blocked_senders

Parameters

Name In Required Type Description
account_id path required
page query optional integer The page number of paginated results.
per_page query optional integer The number of results per page.
order query optional string The field to sort by.
direction query optional The sorting direction.
search query optional string 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 query optional
pattern query optional string

Responses

4XX
200 Contains a list of blocked senders for the account.
GET /accounts/{account_id}/email-security/settings/block_senders
GET /accounts/{account_id}/email-security/settings/block_senders/{pattern_id}

Gets information about a specific blocked sender entry, including the pattern and block reason.

operationId: email_security_get_blocked_sender

Parameters

Name In Required Type Description
account_id path required
pattern_id path required

Responses

4XX
200
GET /accounts/{account_id}/email-security/settings/block_senders/{pattern_id}
GET /accounts/{account_id}/email-security/settings/domains

Lists, searches, and sorts an account’s email domains.

operationId: email_security_list_domains

Parameters

Name In Required Type Description
account_id path required
page query optional integer The page number of paginated results.
per_page query optional integer The number of results per page.
order query optional string The field to sort by.
direction query optional The sorting direction.
search query optional string 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 query optional Filters response to domains with the provided delivery mode.
domain query optional array Filters results by the provided domains, allowing for multiple occurrences.
active_delivery_mode query optional Filters response to domains with the currently active delivery mode.
integration_id query optional string Filters response to domains with the provided integration ID.

Responses

4XX
200 Contains a list of domains for the account.
GET /accounts/{account_id}/email-security/settings/domains
GET /accounts/{account_id}/email-security/settings/domains/{domain_id}

Gets configuration details for a specific domain in email security.

operationId: email_security_get_domain

Parameters

Name In Required Type Description
account_id path required
domain_id path required integer

Responses

4XX
200
GET /accounts/{account_id}/email-security/settings/domains/{domain_id}
GET /accounts/{account_id}/email-security/settings/impersonation_registry

Lists, searches, and sorts entries in the impersonation registry.

operationId: email_security_list_display_names

Parameters

Name In Required Type Description
account_id path required
page query optional integer The page number of paginated results.
per_page query optional integer The number of results per page.
order query optional string The field to sort by.
direction query optional The sorting direction.
search query optional string 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 query optional

Responses

4XX
200 Contains the list of impersonation registry entries for the account.
GET /accounts/{account_id}/email-security/settings/impersonation_registry
GET /accounts/{account_id}/email-security/settings/impersonation_registry/{display_name_id}

Retrieves a display name entry used for impersonation protection.

operationId: email_security_get_display_name

Parameters

Name In Required Type Description
account_id path required
display_name_id path required integer

Responses

4XX
200
GET /accounts/{account_id}/email-security/settings/impersonation_registry/{display_name_id}
GET /accounts/{account_id}/email-security/settings/trusted_domains

Lists, searches, and sorts an account’s trusted email domains.

operationId: email_security_list_trusted_domains

Parameters

Name In Required Type Description
account_id path required
page query optional integer The page number of paginated results.
per_page query optional integer The number of results per page.
order query optional string The field to sort by.
direction query optional The sorting direction.
search query optional string 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 query optional boolean
is_similarity query optional boolean
pattern query optional string

Responses

4XX
200 Contains the list of trusted domains for the account.
GET /accounts/{account_id}/email-security/settings/trusted_domains
GET /accounts/{account_id}/email-security/settings/trusted_domains/{trusted_domain_id}

Gets information about a specific trusted domain entry.

operationId: email_security_get_trusted_domain

Parameters

Name In Required Type Description
account_id path required
trusted_domain_id path required

Responses

4XX
200
GET /accounts/{account_id}/email-security/settings/trusted_domains/{trusted_domain_id}

Email sending 1 endpoints

GET /accounts/{account_id}/email/sending/limits

Returns the current daily sending quota for the account. Null when the quota is not yet available.

operationId: email-sending-get-sending-limits

Parameters

Name In Required Type Description
account_id path required

Responses

200 Get sending limits response
GET /accounts/{account_id}/email/sending/limits

Email sending subdomains 3 endpoints

GET /zones/{zone_id}/email/sending/subdomains

Lists all sending-enabled subdomains for the zone.

operationId: email-sending-subdomains-list-sending-subdomains

Parameters

Name In Required Type Description
zone_id path required

Responses

200 List sending subdomains response
GET /zones/{zone_id}/email/sending/subdomains
GET /zones/{zone_id}/email/sending/subdomains/{subdomain_id}

Gets information for a specific sending subdomain.

operationId: email-sending-subdomains-get-sending-subdomain

Parameters

Name In Required Type Description
subdomain_id path required
zone_id path required

Responses

200 Get a sending subdomain response
GET /zones/{zone_id}/email/sending/subdomains/{subdomain_id}
GET /zones/{zone_id}/email/sending/subdomains/{subdomain_id}/dns

Returns the expected DNS records for a sending subdomain.

operationId: email-sending-subdomains-get-sending-subdomain-dns

Parameters

Name In Required Type Description
subdomain_id path required
zone_id path required

Responses

200 Get sending subdomain DNS records response
GET /zones/{zone_id}/email/sending/subdomains/{subdomain_id}/dns

Endpoint health checks 2 endpoints

GET /accounts/{account_id}/diagnostics/endpoint-healthchecks

List Endpoint Health Checks.

operationId: diagnostics-endpoint-healthcheck-list

Parameters

Name In Required Type Description
account_id path required

Responses

4XX Endpoint Health Check response failure.
200 Endpoint Health Checks for account.
GET /accounts/{account_id}/diagnostics/endpoint-healthchecks
GET /accounts/{account_id}/diagnostics/endpoint-healthchecks/{id}

Get a single Endpoint Health Check.

operationId: diagnostics-endpoint-healthcheck-get

Parameters

Name In Required Type Description
account_id path required
id path required

Responses

4XX Endpoint Health Check failure.
200 Endpoint Health Checks response.
GET /accounts/{account_id}/diagnostics/endpoint-healthchecks/{id}

Environment variables 1 endpoints

GET /accounts/{account_id}/builds/triggers/{trigger_uuid}/environment_variables

Get all environment variables for a trigger

operationId: listEnvironmentVariables

Parameters

Name In Required Type Description
optional
optional

Responses

200 Environment variables retrieved successfully
GET /accounts/{account_id}/builds/triggers/{trigger_uuid}/environment_variables

Event 8 endpoints

GET /accounts/{account_id}/cloudforce-one/events

When `datasetId` is unspecified, events will be listed from the `Cloudforce One Threat Events` dataset. To list existing datasets (and their IDs), use the [`List Datasets`](https://developers.cloudflare.com/api/resources/cloudforce_one/subresources/threat_events/subresources/datasets/methods/list/) endpoint). Also, must provide query parameters.

operationId: get_EventListGet

Parameters

Name In Required Type Description
account_id path required string Account ID.
cursor query optional string
search query optional array
page query optional number
pageSize query optional number
orderBy query optional string
order query optional string
datasetId query optional array
forceRefresh query optional boolean
format query optional string

Responses

200 Returns a list of events.
400 Bad Request.
GET /accounts/{account_id}/cloudforce-one/events
GET /accounts/{account_id}/cloudforce-one/events/aggregate

Aggregate threat events by one or more columns (e.g., attacker, targetIndustry) with optional date filtering and daily grouping. Supports multi-dimensional aggregation for cross-analysis.

operationId: get_EventAggregate

Parameters

Name In Required Type Description
account_id path required string Account ID.
aggregateBy query required string Column(s) to aggregate by - single column or comma-separated list (e.g., 'attacker', 'targetIndustry', 'attacker,targetIndustry')
datasetId query optional array Dataset ID(s) to filter by. Can be a single dataset ID, comma-separated list, or array. If not provided, uses default dataset
startDate query optional string Start date for filtering (ISO 8601 format, e.g., '2024-01-01')
endDate query optional string End date for filtering (ISO 8601 format, e.g., '2024-12-31')
groupByDate query optional boolean Whether to group results by date (daily aggregation)
limit query optional number Maximum number of results to return

Responses

200 Returns aggregated event data.
400 Bad Request.
GET /accounts/{account_id}/cloudforce-one/events/aggregate
GET /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/events/{event_id}

Retrieves a specific event by its UUID.

operationId: get_EventRead

Parameters

Name In Required Type Description
account_id path required string Account ID.
dataset_id path required string Dataset ID.
event_id path required string Event UUID.

Responses

200 Returns the event.
404 Bad Request.
GET /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/events/{event_id}
GET /accounts/{account_id}/cloudforce-one/events/queries

Retrieve all saved event queries for the account

operationId: get_EventQueryList

Parameters

Name In Required Type Description
account_id path required string Account ID.

Responses

200 Returns a list of event queries.
500 Bad Request.
GET /accounts/{account_id}/cloudforce-one/events/queries
GET /accounts/{account_id}/cloudforce-one/events/queries/{query_id}

Retrieve a saved event query by its ID

operationId: get_EventQueryRead

Parameters

Name In Required Type Description
account_id path required string Account ID.
query_id path required integer Event query ID

Responses

200 Returns the event query.
404 Bad Request.
GET /accounts/{account_id}/cloudforce-one/events/queries/{query_id}
GET /accounts/{account_id}/cloudforce-one/events/raw/{dataset_id}/{event_id}

Retrieves the raw data associated with an event. Searches across all shards in the dataset.

operationId: get_EventRawReadDS

Parameters

Name In Required Type Description
account_id path required string Account ID.
event_id path required string Event ID.
dataset_id path required string Dataset ID.

Responses

200 Returns the raw event data.
404 Bad Request.
500 Bad Request.
GET /accounts/{account_id}/cloudforce-one/events/raw/{dataset_id}/{event_id}
GET /accounts/{account_id}/cloudforce-one/events/{event_id}/raw/{raw_id}
operationId: get_EventRawRead

Parameters

Name In Required Type Description
account_id path required string Account ID.
event_id path required string Event UUID.
raw_id path required string Raw Event UUID.

Responses

200 Returns the raw event.
400 Bad Request.
GET /accounts/{account_id}/cloudforce-one/events/{event_id}/raw/{raw_id}
GET /accounts/{account_id}/cloudforce-one/events/{event_id}/relationships

The `event_id` must be defined (to list existing events (and their IDs), use the [`Filter and List Events`](https://developers.cloudflare.com/api/resources/cloudforce_one/subresources/threat_events/methods/list/) endpoint). Also, must provide query parameters.

operationId: get_EventRelationships

Parameters

Name In Required Type Description
account_id path required string Account ID.
event_id path required string Event UUID.
direction query optional string The direction to traverse the graph. Defaults to 'both' to search all.
maxDepth query optional number The maximum depth to traverse. Defaults to 5.
relationshipTypes query optional An optional array of relationship types to filter by.
indicatorTypeIds query optional array An optional array of indicator type IDs to filter the results by.
datasetId query required string The dataset ID to search within.
includeParent query optional boolean Whether to include the starting event in the results. Defaults to true.
page query optional number
pageSize query optional number

Responses

200 Returns a list of events related to the specified starting event.
400 Bad Request.
GET /accounts/{account_id}/cloudforce-one/events/{event_id}/relationships

Feedback 1 endpoints

GET /zones/{zone_id}/bot_management/feedback

Returns all feedback reports previously submitted for the specified zone. Feedback reports help improve detection by sharing samples of traffic that were misclassified as bots or humans.

operationId: bot-management-zone-feedback-list

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Feedback list failure
200 List of feedback reports
GET /zones/{zone_id}/bot_management/feedback

Firewall for ai 2 endpoints

GET /zones/{zone_id}/firewall-for-ai/custom-topics

Get the Firewall for AI custom topic categories for a zone.

operationId: firewall-for-ai-custom-topics-get

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Get Firewall for AI custom topics failure response.
200 Get Firewall for AI custom topics response.
GET /zones/{zone_id}/firewall-for-ai/custom-topics
GET /zones/{zone_id}/firewall-for-ai/settings

Get whether Firewall for AI is enabled or disabled for a zone.

operationId: firewall-for-ai-settings-get

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Get Firewall for AI status failure response.
200 Get Firewall for AI status response.
GET /zones/{zone_id}/firewall-for-ai/settings

Fraud detection 1 endpoints

GET /zones/{zone_id}/fraud_detection/settings

Retrieve Fraud Detection settings for a zone.

operationId: fraud-detection-zone-get-settings

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Fraud Detection settings response failure
200 Fraud Detection settings response
GET /zones/{zone_id}/fraud_detection/settings

Gateway ca 1 endpoints

GET /accounts/{account_id}/access/gateway_ca

Lists SSH Certificate Authorities (CA).

operationId: access-gateway-ca-list-SSH-ca

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List SSH Certificate Authorities (CA) response failure
200 List SSH Certificate Authorities (CA) response
GET /accounts/{account_id}/access/gateway_ca

Github integration 1 endpoints

GET /accounts/{account_id}/builds/repos/{provider_type}/{provider_account_id}/{repo_id}/config_autofill

Analyze repository for automatic configuration detection

operationId: getWorkerConfigAutofill

Parameters

Name In Required Type Description
optional
provider_type path required SCM provider type
provider_account_id path required
repo_id path required
branch query required
root_directory query optional

Responses

200 Configuration autofill data retrieved successfully
GET /accounts/{account_id}/builds/repos/{provider_type}/{provider_account_id}/{repo_id}/config_autofill

Google tag gateway 1 endpoints

GET /zones/{zone_id}/settings/google-tag-gateway/config

Gets the Google Tag Gateway configuration for a zone.

operationId: zone-settings-get-google-tag-gateway-config

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Get Google Tag Gateway configuration response failure.
200 Get Google Tag Gateway configuration response.
GET /zones/{zone_id}/settings/google-tag-gateway/config

Groups 3 endpoints

GET /accounts/{account_id}/cloudforce-one/events/dataset/-/groups

List groups for an account

operationId: get_GroupList

Parameters

Name In Required Type Description
account_id path required string Account ID.

Responses

200 Returns the list of groups.
400 Bad Request.
GET /accounts/{account_id}/cloudforce-one/events/dataset/-/groups
GET /accounts/{account_id}/cloudforce-one/events/dataset/-/groups/{group_id}

Read a group for an account

operationId: get_GroupRead

Parameters

Name In Required Type Description
account_id path required string Account ID.
group_id path required string

Responses

200 Return the group.
400 Bad Request.
GET /accounts/{account_id}/cloudforce-one/events/dataset/-/groups/{group_id}
GET /accounts/{account_id}/cloudforce-one/events/dataset/-/groups/{group_id}/members

List group members

operationId: get_GroupMemberList

Parameters

Name In Required Type Description
account_id path required string Account ID.
group_id path required string

Responses

200 Returns the group members.
400 Bad Request.
GET /accounts/{account_id}/cloudforce-one/events/dataset/-/groups/{group_id}/members

Health checks 5 endpoints

GET /zones/{zone_id}/healthchecks

List configured health checks.

operationId: health-checks-list-health-checks

Parameters

Name In Required Type Description
zone_id path required
optional
optional

Responses

4XX List Health Checks response failure.
200 List Health Checks response
GET /zones/{zone_id}/healthchecks
GET /zones/{zone_id}/healthchecks/preview/{healthcheck_id}

Fetch a single configured health check preview.

operationId: health-checks-health-check-preview-details

Parameters

Name In Required Type Description
healthcheck_id path required
zone_id path required

Responses

4XX Health Check Preview Details response failure.
200 Health Check Preview Details response.
GET /zones/{zone_id}/healthchecks/preview/{healthcheck_id}
GET /zones/{zone_id}/healthchecks/{healthcheck_id}

Fetch a single configured health check.

operationId: health-checks-health-check-details

Parameters

Name In Required Type Description
healthcheck_id path required
zone_id path required

Responses

4XX Health Check Details response failure.
200 Health Check Details response.
GET /zones/{zone_id}/healthchecks/{healthcheck_id}
GET /zones/{zone_id}/smart_shield/healthchecks

List configured health checks.

operationId: smart-shield-list-health-checks

Parameters

Name In Required Type Description
zone_id path required
optional
optional

Responses

4XX List Health Checks response failure.
200 List Health Checks response
GET /zones/{zone_id}/smart_shield/healthchecks
GET /zones/{zone_id}/smart_shield/healthchecks/{healthcheck_id}

Fetch a single configured health check.

operationId: smart-shield-health-check-details

Parameters

Name In Required Type Description
healthcheck_id path required
zone_id path required

Responses

4XX Health Check Details response failure.
200 Health Check Details response.
GET /zones/{zone_id}/smart_shield/healthchecks/{healthcheck_id}

Hyperdrive 2 endpoints

GET /accounts/{account_id}/hyperdrive/configs

Returns a list of Hyperdrives.

operationId: list-hyperdrive

Parameters

Name In Required Type Description
account_id path required The Cloudflare account ID.

Responses

4XX List Hyperdrives Failure Response.
200 List Hyperdrives Response.
GET /accounts/{account_id}/hyperdrive/configs
GET /accounts/{account_id}/hyperdrive/configs/{hyperdrive_id}

Returns the specified Hyperdrive configuration.

operationId: get-hyperdrive

Parameters

Name In Required Type Description
account_id path required The Cloudflare account ID.
hyperdrive_id path required The unique identifier of the Hyperdrive configuration.

Responses

4XX Get Hyperdrive Failure.
200 Get Hyperdrive Response.
GET /accounts/{account_id}/hyperdrive/configs/{hyperdrive_id}

Ip access rules for a user 1 endpoints

GET /user/firewall/access_rules/rules

Fetches IP Access rules of the user. You can filter the results using several optional parameters.

operationId: ip-access-rules-for-a-user-list-ip-access-rules

Parameters

Name In Required Type Description
mode query optional
configuration.target query optional string
configuration.value query optional string
notes query optional string
match query optional string
page query optional number
per_page query optional number
order query optional string
direction query optional string

Responses

4XX List IP Access rules response failure.
200 List IP Access rules response.
GET /user/firewall/access_rules/rules

Ip access rules for a zone 1 endpoints

GET /zones/{zone_id}/firewall/access_rules/rules

Fetches IP Access rules of a zone. You can filter the results using several optional parameters.

operationId: ip-access-rules-for-a-zone-list-ip-access-rules

Parameters

Name In Required Type Description
zone_id path required
mode query optional
configuration.target query optional string
configuration.value query optional string
notes query optional string
match query optional string
page query optional number
per_page query optional number
order query optional string
direction query optional string

Responses

4XX List IP Access rules response failure.
200 List IP Access rules response.
GET /zones/{zone_id}/firewall/access_rules/rules

Ip access rules for an account 2 endpoints

GET /accounts/{account_id}/firewall/access_rules/rules

Fetches IP Access rules of an account. These rules apply to all the zones in the account. You can filter the results using several optional parameters.

operationId: ip-access-rules-for-an-account-list-ip-access-rules

Parameters

Name In Required Type Description
account_id path required
mode query optional
configuration.target query optional string
configuration.value query optional string
notes query optional string
match query optional string
page query optional number
per_page query optional number
order query optional string
direction query optional string

Responses

4XX List IP Access rules response failure.
200 List IP Access rules response.
GET /accounts/{account_id}/firewall/access_rules/rules
GET /accounts/{account_id}/firewall/access_rules/rules/{rule_id}

Fetches the details of an IP Access rule defined at the account level.

operationId: ip-access-rules-for-an-account-get-an-ip-access-rule

Parameters

Name In Required Type Description
rule_id path required
account_id path required

Responses

4XX Get an IP Access rule response failure.
200 Get an IP Access rule response.
GET /accounts/{account_id}/firewall/access_rules/rules/{rule_id}

Ip address management address maps 2 endpoints

GET /accounts/{account_id}/addressing/address_maps

List all address maps owned by the account.

operationId: ip-address-management-address-maps-list-address-maps

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List Address Maps response failure
200 List Address Maps response
GET /accounts/{account_id}/addressing/address_maps
GET /accounts/{account_id}/addressing/address_maps/{address_map_id}

Show a particular address map owned by the account.

operationId: ip-address-management-address-maps-address-map-details

Parameters

Name In Required Type Description
address_map_id path required
account_id path required

Responses

4XX Address Map Details response failure
200 Address Map Details response
GET /accounts/{account_id}/addressing/address_maps/{address_map_id}

Ip address management bgp prefixes 2 endpoints

GET /accounts/{account_id}/addressing/prefixes/{prefix_id}/bgp/prefixes

List all BGP Prefixes within the specified IP Prefix. BGP Prefixes are used to control which specific subnets are advertised to the Internet. It is possible to advertise subnets more specific than an IP Prefix by creating more specific BGP Prefixes.

operationId: ip-address-management-prefixes-list-bgp-prefixes

Parameters

Name In Required Type Description
account_id path required
prefix_id path required

Responses

4XX List BGP Prefixes response failure
200 List BGP Prefixes response
GET /accounts/{account_id}/addressing/prefixes/{prefix_id}/bgp/prefixes
GET /accounts/{account_id}/addressing/prefixes/{prefix_id}/bgp/prefixes/{bgp_prefix_id}

Retrieve a single BGP Prefix according to its identifier

operationId: ip-address-management-prefixes-fetch-bgp-prefix

Parameters

Name In Required Type Description
account_id path required
prefix_id path required
bgp_prefix_id path required

Responses

4XX Fetch BGP Prefix response failure
200 Fetch BGP Prefix response
GET /accounts/{account_id}/addressing/prefixes/{prefix_id}/bgp/prefixes/{bgp_prefix_id}

Ip address management leases 1 endpoints

GET /accounts/{account_id}/addressing/leases

List all leases owned by the account.

operationId: ip-address-management-list-leases

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List Leases response failure
200 List Leases response
GET /accounts/{account_id}/addressing/leases

Ip address management prefix delegation 1 endpoints

GET /accounts/{account_id}/addressing/prefixes/{prefix_id}/delegations

List all delegations for a given account IP prefix.

operationId: ip-address-management-prefix-delegation-list-prefix-delegations

Parameters

Name In Required Type Description
prefix_id path required
account_id path required

Responses

4XX List Prefix Delegations response failure
200 List Prefix Delegations response
GET /accounts/{account_id}/addressing/prefixes/{prefix_id}/delegations

Ip address management prefixes 3 endpoints

GET /accounts/{account_id}/addressing/loa_documents/{loa_document_id}/download

Download specified LOA document under the account.

operationId: ip-address-management-prefixes-download-loa-document

Parameters

Name In Required Type Description
loa_document_id path required
account_id path required

Responses

4XX Download LOA Document response failure
200 Download LOA Document response
GET /accounts/{account_id}/addressing/loa_documents/{loa_document_id}/download
GET /accounts/{account_id}/addressing/prefixes

List all prefixes owned by the account.

operationId: ip-address-management-prefixes-list-prefixes

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List Prefixes response failure
200 List Prefixes response
GET /accounts/{account_id}/addressing/prefixes
GET /accounts/{account_id}/addressing/prefixes/{prefix_id}

List a particular prefix owned by the account.

operationId: ip-address-management-prefixes-prefix-details

Parameters

Name In Required Type Description
prefix_id path required
account_id path required

Responses

4XX Prefix Details response failure
200 Prefix Details response
GET /accounts/{account_id}/addressing/prefixes/{prefix_id}

Ip address management service bindings 3 endpoints

GET /accounts/{account_id}/addressing/prefixes/{prefix_id}/bindings

List the Cloudflare services this prefix is currently bound to. Traffic sent to an address within an IP prefix will be routed to the Cloudflare service of the most-specific Service Binding matching the address. **Example:** binding `192.0.2.0/24` to Cloudflare Magic Transit and `192.0.2.1/32` to the Cloudflare CDN would route traffic for `192.0.2.1` to the CDN, and traffic for all other IPs in the prefix to Cloudflare Magic Transit.

operationId: ip-address-management-service-bindings-list-service-bindings

Parameters

Name In Required Type Description
account_id path required
prefix_id path required

Responses

4XX List Service Bindings response failure
200 Service Bindings attached to the Prefix
GET /accounts/{account_id}/addressing/prefixes/{prefix_id}/bindings
GET /accounts/{account_id}/addressing/prefixes/{prefix_id}/bindings/{binding_id}

Fetch a single Service Binding

operationId: ip-address-management-service-bindings-get-service-binding

Parameters

Name In Required Type Description
account_id path required
prefix_id path required
binding_id path required

Responses

4XX Get Service Binding response failure
200 The Service Binding with the requested ID
GET /accounts/{account_id}/addressing/prefixes/{prefix_id}/bindings/{binding_id}
GET /accounts/{account_id}/addressing/services

Bring-Your-Own IP (BYOIP) prefixes onboarded to Cloudflare must be bound to a service running on the Cloudflare network to enable a Cloudflare product on the IP addresses. This endpoint can be used as a reference of available services on the Cloudflare network, and their service IDs.

operationId: ip-address-management-service-bindings-list-services

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List Services response failure
200 Service names and IDs
GET /accounts/{account_id}/addressing/services

Ip intelligence 1 endpoints

GET /accounts/{account_id}/intel/ip

Gets the geolocation, ASN, infrastructure type of the ASN, and any security threat categories of an IP address. **Must provide ip query parameters.** For example, `/intel/ip?ipv4=1.1.1.1` or `/intel/ip?ipv6=2001:db8::1`.

operationId: ip-intelligence-get-ip-overview

Parameters

Name In Required Type Description
account_id path required
ipv4 query optional string
ipv6 query optional string

Responses

4XX Get IP Overview response failure.
200 Get IP Overview response.
GET /accounts/{account_id}/intel/ip

Ip list 1 endpoints

GET /accounts/{account_id}/intel/ip-lists

Returns a list of available IP list categories (e.g., anonymizer, botnetcc, malware, tor, vpn, open_proxies). This endpoint provides metadata about which IP lists are available in the system.

operationId: ip-list-get-ip-lists

Parameters

Name In Required Type Description
account_id path required

Responses

4XX Get Available IP Lists response failure.
200 Get Available IP Lists response.
GET /accounts/{account_id}/intel/ip-lists

Ip profiles 2 endpoints

GET /accounts/{account_id}/devices/ip-profiles

Lists WARP Device IP profiles.

operationId: list-ip-profiles

Parameters

Name In Required Type Description
account_id path required string
per_page query optional integer The number of IP profiles to return per page.

Responses

200 List Device IP profiles response.
GET /accounts/{account_id}/devices/ip-profiles
GET /accounts/{account_id}/devices/ip-profiles/{profile_id}

Fetches a single WARP Device IP profile.

operationId: get-ip-profile

Parameters

Name In Required Type Description
account_id path required string
profile_id path required string

Responses

200 Get Device IP profile response.
GET /accounts/{account_id}/devices/ip-profiles/{profile_id}

Indicator 3 endpoints

GET /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/indicators/tags

Returns all mirrored tags from the indicator dataset (DO mirror table). No pagination.

operationId: get_IndicatorTagsList

Parameters

Name In Required Type Description
account_id path required string Account ID.
dataset_id path required string Dataset ID.

Responses

200 Returns an array of mirrored tags.
400 Bad Request.
404 Bad Request.
500 Bad Request.
GET /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/indicators/tags
GET /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/indicators/{indicator_id}

Retrieves a specific indicator by its UUID.

operationId: get_IndicatorRead

Parameters

Name In Required Type Description
account_id path required string Account ID.
dataset_id path required string Dataset ID.
indicator_id path required string Indicator UUID.

Responses

200 Returns the indicator.
404 Bad Request.
GET /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/indicators/{indicator_id}
GET /accounts/{account_id}/cloudforce-one/events/indicators

Retrieves a paginated list of indicators across specified datasets. Use datasetIds=all or datasetIds=* to query all datasets for the account. If no datasetIds provided, uses the default dataset.

operationId: get_IndicatorList

Parameters

Name In Required Type Description
account_id path required string Account ID.
datasetIds query optional array 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 query optional number
pageSize query optional number
search query optional array 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 query optional string Filter indicators by value using substring match (LIKE). Legacy alternative to structured search.
indicatorType query optional string
relatedEvents query optional array Filter by related event IDs
tags query optional array 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 query optional string Filter indicators created on or after this date. Must use ISO 8601 format (e.g., '2024-01-15T00:00:00Z').
createdBefore query optional string Filter indicators created on or before this date. Must use ISO 8601 format (e.g., '2024-12-31T23:59:59Z').
relatedEventsLimit query optional number Limit the number of related events returned per indicator. Default: 2. Set to 0 for none, -1 for all events.
includeTags query optional boolean Whether to include full tag details for each indicator. Defaults to true.
includeTotalCount query optional boolean Whether to compute accurate total count via COUNT(*). Defaults to false for performance. When false, total_count is an approximation.
format query optional string Output format for indicator data. 'json' returns the default format, 'stix2' returns STIX 2.1 Indicator SDOs.

Responses

200 Returns a paginated list of indicators.
400 Bad Request.
GET /accounts/{account_id}/cloudforce-one/events/indicators

Indicator types 1 endpoints

GET /accounts/{account_id}/cloudforce-one/events/indicator-types
operationId: get_IndicatorTypesList

Parameters

Name In Required Type Description
account_id path required string Account ID.
datasetIds query optional array Array of dataset IDs to query indicator types from. If not provided, queries all datasets for the account.

Responses

200 Returns a list of indicator types.
400 Bad Request.
GET /accounts/{account_id}/cloudforce-one/events/indicator-types

Infrastructure access targets 2 endpoints

GET /accounts/{account_id}/infrastructure/targets

Lists and sorts an account’s targets. Filters are optional and are ANDed together.

operationId: infra-targets-list

Parameters

Name In Required Type Description
account_id path required
hostname query optional string Hostname of a target
hostname_contains query optional string Partial match to the hostname of a target
virtual_network_id query optional string Private virtual network identifier of the target
ip_v4 query optional string IPv4 address of the target
ip_v6 query optional string IPv6 address of the target
created_before query optional string Date and time at which the target was created before (inclusive)
created_after query optional string Date and time at which the target was created after (inclusive)
modified_before query optional string Date and time at which the target was modified before (inclusive)
modified_after query optional string Date and time at which the target was modified after (inclusive)
ips query optional array 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 query optional array 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 query optional string Filters for targets whose IP addresses look like the specified string. Supports `*` as a wildcard character
ipv4_start query optional string Defines an IPv4 filter range's starting value (inclusive). Requires `ipv4_end` to be specified as well.
ipv4_end query optional string Defines an IPv4 filter range's ending value (inclusive). Requires `ipv4_start` to be specified as well.
ipv6_start query optional string Defines an IPv6 filter range's starting value (inclusive). Requires `ipv6_end` to be specified as well.
ipv6_end query optional string Defines an IPv6 filter range's ending value (inclusive). Requires `ipv6_start` to be specified as well.
page query optional integer Current page in the response
per_page query optional integer Max amount of entries returned per page
order query optional string The field to sort by.
direction query optional The sorting direction.

Responses

4XX Failed to retrieve all targets in the account
200 Successfully retrieved all targets in the account
GET /accounts/{account_id}/infrastructure/targets
GET /accounts/{account_id}/infrastructure/targets/{target_id}
operationId: infra-targets-get

Parameters

Name In Required Type Description
account_id path required
target_id path required

Responses

4XX Failed to retrieve the target
200 Successfully retrieved the target
GET /accounts/{account_id}/infrastructure/targets/{target_id}

Instant logs jobs for a zone 1 endpoints

GET /zones/{zone_id}/logpush/edge/jobs

Lists Instant Logs jobs for a zone.

operationId: get-zones-zone_id-logpush-edge-jobs

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX List Instant Logs jobs response failure.
200 List Instant Logs jobs response.
GET /zones/{zone_id}/logpush/edge/jobs

Interconnects 4 endpoints

GET /accounts/{account_id}/cni/interconnects
operationId: list_interconnects

Parameters

Name In Required Type Description
site query optional string If specified, only show interconnects located at the given site
type query optional string If specified, only show interconnects of the given type
cursor query optional integer
limit query optional integer
account_id path required

Responses

200 List of matching interconnect objects
400 Bad request
500 Internal server error
GET /accounts/{account_id}/cni/interconnects
GET /accounts/{account_id}/cni/interconnects/{icon}
operationId: get_interconnect

Parameters

Name In Required Type Description
icon path required string Interconnect name to retrieve information about
account_id path required

Responses

200 Information about the specified interconnect
400 Bad request
404 Interconnect not found
500 Internal server error
GET /accounts/{account_id}/cni/interconnects/{icon}
GET /accounts/{account_id}/cni/interconnects/{icon}/loa
operationId: get_interconnect_loa

Parameters

Name In Required Type Description
icon path required string Interconnect name to retrieve information about
account_id path required

Responses

200 Generated LOA in PDF format
400 Bad request
404 Interconnect not found
500 Internal server error
GET /accounts/{account_id}/cni/interconnects/{icon}/loa
GET /accounts/{account_id}/cni/interconnects/{icon}/status
operationId: get_interconnect_status

Parameters

Name In Required Type Description
icon path required string Interconnect name to retrieve information about
account_id path required

Responses

200 Current interconnect status
400 Bad request
404 Interconnect not found
500 Internal server error
GET /accounts/{account_id}/cni/interconnects/{icon}/status

Keyless ssl for a zone 2 endpoints

GET /zones/{zone_id}/keyless_certificates

List all Keyless SSL configurations for a given zone.

operationId: keyless-ssl-for-a-zone-list-keyless-ssl-configurations

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX List Keyless SSL Configurations response failure
200 List Keyless SSL Configurations response
GET /zones/{zone_id}/keyless_certificates
GET /zones/{zone_id}/keyless_certificates/{keyless_certificate_id}

Get details for one Keyless SSL configuration.

operationId: keyless-ssl-for-a-zone-get-keyless-ssl-configuration

Parameters

Name In Required Type Description
keyless_certificate_id path required
zone_id path required

Responses

4XX Get Keyless SSL Configuration response failure
200 Get Keyless SSL Configuration response
GET /zones/{zone_id}/keyless_certificates/{keyless_certificate_id}

Leaked credential checks 3 endpoints

GET /zones/{zone_id}/leaked-credential-checks

Retrieves the current status of Leaked Credential Checks.

operationId: waf-product-api-leaked-credentials-get-status

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Get Leaked Credential Checks status failure response.
200 Get Leaked Credential Checks status response.
GET /zones/{zone_id}/leaked-credential-checks
GET /zones/{zone_id}/leaked-credential-checks/detections

List user-defined detection patterns for Leaked Credential Checks.

operationId: waf-product-api-leaked-credentials-list-detections

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX List Leaked Credential Checks custom detections failure response.
200 List Leaked Credential Checks custom detections response.
GET /zones/{zone_id}/leaked-credential-checks/detections
GET /zones/{zone_id}/leaked-credential-checks/detections/{detection_id}

Get user-defined detection pattern for Leaked Credential Checks.

operationId: waf-product-api-leaked-credentials-get-detection

Parameters

Name In Required Type Description
zone_id path required
detection_id path required

Responses

4XX Update Leaked Credential Checks custom detection failure response.
200 Get Leaked Credential Checks custom detection response.
GET /zones/{zone_id}/leaked-credential-checks/detections/{detection_id}

Lists 5 endpoints

GET /accounts/{account_id}/rules/lists

Fetches all lists in the account.

operationId: lists-get-lists

Parameters

Name In Required Type Description
account_id path required

Responses

4XX Get lists response failure.
200 Get lists response.
GET /accounts/{account_id}/rules/lists
GET /accounts/{account_id}/rules/lists/bulk_operations/{operation_id}

Gets the current status of an asynchronous operation on a list. The `status` property can have one of the following values: `pending`, `running`, `completed`, or `failed`. If the status is `failed`, the `error` property will contain a message describing the error.

operationId: lists-get-bulk-operation-status

Parameters

Name In Required Type Description
operation_id path required
account_id path required

Responses

4XX Get bulk operation status response failure.
200 Get bulk operation status response.
GET /accounts/{account_id}/rules/lists/bulk_operations/{operation_id}
GET /accounts/{account_id}/rules/lists/{list_id}

Fetches the details of a list.

operationId: lists-get-a-list

Parameters

Name In Required Type Description
list_id path required
account_id path required

Responses

4XX Get a list response failure.
200 Get a list response.
GET /accounts/{account_id}/rules/lists/{list_id}
GET /accounts/{account_id}/rules/lists/{list_id}/items

Fetches all the items in the list.

operationId: lists-get-list-items

Parameters

Name In Required Type Description
list_id path required
account_id path required
cursor query optional string
per_page query optional integer
search query optional string

Responses

4XX Get list items response failure.
200 Get list items response.
GET /accounts/{account_id}/rules/lists/{list_id}/items
GET /accounts/{account_id}/rules/lists/{list_id}/items/{item_id}

Fetches a list item in the list.

operationId: lists-get-a-list-item

Parameters

Name In Required Type Description
item_id path required
list_id path required
account_id path required

Responses

4XX Get a list item response failure.
200 Get a list item response.
GET /accounts/{account_id}/rules/lists/{list_id}/items/{item_id}

Live streams 8 endpoints

GET /accounts/{account_id}/realtime/kit/{app_id}/livestreams

Returns details of livestreams associated with the given App ID. It includes livestreams created by your App and RealtimeKit meetings that are livestreamed by your App. If you only want details of livestreams created by your App and not RealtimeKit meetings, you can use the `exclude_meetings` query parameter.

operationId: fetch_all_livestreams

Parameters

Name In Required Type Description
exclude_meetings query optional boolean Exclude the RealtimeKit meetings that are livestreamed.
per_page query optional integer Number of results per page.
page_no query optional integer The page number from which you want your page search results to be displayed.
status query optional string Specifies the status of the operation.
start_time query optional string Specify the start time range in ISO format to access the live stream.
end_time query optional string Specify the end time range in ISO format to access the live stream.
sort_order query optional string Specifies the sorting order for the results.

Responses

200 OK
GET /accounts/{account_id}/realtime/kit/{app_id}/livestreams
GET /accounts/{account_id}/realtime/kit/{app_id}/livestreams/sessions/{livestream-session-id}

Returns livestream session details for the given livestream session ID. Retrieve the `livestream_session_id`using the `Fetch livestream session details using a session ID` API.

operationId: get-v2-livestreams-livestream-session-id

Parameters

Name In Required Type Description
account_id path required
app_id path required
livestream-session-id path required string

Responses

200 OK
GET /accounts/{account_id}/realtime/kit/{app_id}/livestreams/sessions/{livestream-session-id}
GET /accounts/{account_id}/realtime/kit/{app_id}/livestreams/{livestream_id}

Returns details of a livestream with sessions for the given livestream ID. Retreive the livestream ID using the `Start livestreaming a meeting` API.

operationId: get-v2-livestream-session-livestream-id

Parameters

Name In Required Type Description
account_id path required
app_id path required
page_no query optional integer The page number from which you want your page search results to be displayed.
per_page query optional integer Number of results per page.
livestream_id path required string

Responses

200 OK
GET /accounts/{account_id}/realtime/kit/{app_id}/livestreams/{livestream_id}
GET /accounts/{account_id}/realtime/kit/{app_id}/livestreams/{livestream_id}/active-livestream-session

Returns details of all active livestreams for the given livestream ID. Retreive the livestream ID using the `Start livestreaming a meeting` API.

operationId: get-v2-active-livestream-session-details

Parameters

Name In Required Type Description
account_id path required
app_id path required
livestream_id path required string

Responses

200 OK
GET /accounts/{account_id}/realtime/kit/{app_id}/livestreams/{livestream_id}/active-livestream-session
GET /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/active-livestream

Returns details of all active livestreams for the given meeting ID.

operationId: get-v2-meetings-meetingId-active-livestream

Parameters

Name In Required Type Description
meeting_id path required string ID of the meeting

Responses

200 OK
GET /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/active-livestream
GET /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/livestream

Returns livestream session details for the given meeting ID. Retreive the meeting ID using the `Create a meeting` API.

operationId: livestream-session-details

Parameters

Name In Required Type Description
page_no query optional integer The page number from which you want your page search results to be displayed.
per_page query optional integer Number of results per page.
meeting_id path required string ID of the meeting

Responses

200 OK
GET /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/livestream
GET /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}/livestream-sessions

Returns livestream session details for the given session ID. Retreive the session ID using the `Fetch all sessions of an App` API.

operationId: get-v2-livestreamsession-session-meetingId-active-livestream

Parameters

Name In Required Type Description
account_id path required
app_id path required
per_page query optional number Number of results per page.
page_no query optional number The page number from which you want your page search results to be displayed.
session_id path required string

Responses

200 OK
GET /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}/livestream-sessions
GET /accounts/{account_id}/realtime/kit/{app_id}/analytics/livestreams/overall

Returns livestream analytics for the specified time range.

operationId: get-livestream-analytics-complete

Parameters

Name In Required Type Description
account_id path required
app_id path required
start_time query optional string Specify the start time range in ISO format to access the livestream analytics.
end_time query optional string Specify the end time range in ISO format to access the livestream analytics.

Responses

200 OK
GET /accounts/{account_id}/realtime/kit/{app_id}/analytics/livestreams/overall

Load balancer healthcheck events 1 endpoints

GET /user/load_balancing_analytics/events

List origin health changes.

operationId: load-balancer-healthcheck-events-list-healthcheck-events

Parameters

Name In Required Type Description
until query optional
pool_name query optional
origin_healthy query optional
pool_id query optional
since query optional string
origin_name query optional string
pool_healthy query optional boolean

Responses

4XX List Healthcheck Events response failure.
200 List Healthcheck Events response.
GET /user/load_balancing_analytics/events

Load balancer monitors 4 endpoints

GET /user/load_balancers/monitors

List configured monitors for a user.

operationId: load-balancer-monitors-list-monitors

Responses

4XX Failed list monitors response.
200 Successful list monitors response.
GET /user/load_balancers/monitors
GET /user/load_balancers/monitors/{monitor_id}

List a single configured monitor for a user.

operationId: load-balancer-monitors-monitor-details

Parameters

Name In Required Type Description
monitor_id path required

Responses

4XX Monitor Details response failure.
200 Monitor Details response.
GET /user/load_balancers/monitors/{monitor_id}
GET /user/load_balancers/monitors/{monitor_id}/references

Get the list of resources that reference the provided monitor.

operationId: load-balancer-monitors-list-monitor-references

Parameters

Name In Required Type Description
monitor_id path required

Responses

4XX List Monitor References response failure.
200 List Monitor References response.
GET /user/load_balancers/monitors/{monitor_id}/references
GET /user/load_balancers/preview/{preview_id}

Get the result of a previous preview operation using the provided preview_id.

operationId: load-balancer-monitors-preview-result

Parameters

Name In Required Type Description
preview_id path required

Responses

4XX Preview Result response failure.
200 Preview Result response.
GET /user/load_balancers/preview/{preview_id}

Load balancer pools 4 endpoints

GET /user/load_balancers/pools

List configured pools.

operationId: load-balancer-pools-list-pools

Parameters

Name In Required Type Description
monitor query optional string

Responses

4XX List Pools response failure.
200 List Pools response.
GET /user/load_balancers/pools
GET /user/load_balancers/pools/{pool_id}

Fetch a single configured pool.

operationId: load-balancer-pools-pool-details

Parameters

Name In Required Type Description
pool_id path required

Responses

4XX Pool Details response failure.
200 Pool Details response.
GET /user/load_balancers/pools/{pool_id}
GET /user/load_balancers/pools/{pool_id}/health

Fetch the latest pool health status for a single pool.

operationId: load-balancer-pools-pool-health-details

Parameters

Name In Required Type Description
pool_id path required

Responses

4XX Pool Health Details response failure.
200 Pool Health Details response.
GET /user/load_balancers/pools/{pool_id}/health
GET /user/load_balancers/pools/{pool_id}/references

Get the list of resources that reference the provided pool.

operationId: load-balancer-pools-list-pool-references

Parameters

Name In Required Type Description
pool_id path required

Responses

4XX List Pool References response failure.
200 List Pool References response.
GET /user/load_balancers/pools/{pool_id}/references

Load balancer regions 2 endpoints

GET /accounts/{account_id}/load_balancers/regions

List all region mappings.

operationId: load-balancer-regions-list-regions

Parameters

Name In Required Type Description
account_id path required
subdivision_code query optional
subdivision_code_a2 query optional
country_code_a2 query optional string

Responses

4XX List Regions response failure.
200 List Regions response.
GET /accounts/{account_id}/load_balancers/regions
GET /accounts/{account_id}/load_balancers/regions/{region_id}

Get a single region mapping.

operationId: load-balancer-regions-get-region

Parameters

Name In Required Type Description
region_id path required
account_id path required

Responses

4XX Get Region response failure.
200 Get Region response.
GET /accounts/{account_id}/load_balancers/regions/{region_id}

Load balancers 2 endpoints

GET /zones/{zone_id}/load_balancers

List configured load balancers.

operationId: load-balancers-list-load-balancers

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX List Load Balancers response failure.
200 List Load Balancers response.
GET /zones/{zone_id}/load_balancers
GET /zones/{zone_id}/load_balancers/{load_balancer_id}

Fetch a single configured load balancer.

operationId: load-balancers-load-balancer-details

Parameters

Name In Required Type Description
zone_id path required
load_balancer_id path required

Responses

4XX Load Balancer Details response failure.
200 Load Balancer Details response.
GET /zones/{zone_id}/load_balancers/{load_balancer_id}

Log explorer datasets 6 endpoints

GET /accounts/{account_id}/logs/explorer/datasets

Returns all Log Explorer datasets configured for the account. Pass `include_zones=true` to also include zone-level datasets that belong to this account. List responses omit the `fields` property; use the single-dataset endpoint to retrieve field configuration.

operationId: accounts-logs-explorer-datasets-list

Parameters

Name In Required Type Description
include_zones query optional boolean Set to true to include zone-scoped datasets belonging to this account.

Responses

200 The datasets the account has configured.
400
403
404
GET /accounts/{account_id}/logs/explorer/datasets
GET /accounts/{account_id}/logs/explorer/datasets/available

Returns all dataset types that this account can create. Each entry includes the dataset schema and timestamp field. The schema shows all possible fields for a dataset. However, not all fields may be available for your account. When creating or updating a dataset, only fields available to your account can be enabled. If you request a field that is not available, you will receive an error.

operationId: accounts-logs-explorer-datasets-available-list

Responses

200 List of dataset types available to create.
400
403
404
GET /accounts/{account_id}/logs/explorer/datasets/available
GET /accounts/{account_id}/logs/explorer/datasets/{dataset_id}

Retrieve a single Log Explorer dataset by ID for the account.

operationId: accounts-logs-explorer-datasets-get

Responses

200 Dataset details, including the fields active for ingestion.
400
403
404
GET /accounts/{account_id}/logs/explorer/datasets/{dataset_id}
GET /zones/{zone_id}/logs/explorer/datasets

Returns all Log Explorer datasets configured for the zone. List responses omit the `fields` property; use the single-dataset endpoint to retrieve field configuration.

operationId: zones-logs-explorer-datasets-list

Responses

200 The datasets the zone has configured.
400
403
404
GET /zones/{zone_id}/logs/explorer/datasets
GET /zones/{zone_id}/logs/explorer/datasets/available

Returns all dataset types that this zone can create. Each entry includes the dataset schema and timestamp field. The schema shows all possible fields for a dataset. However, not all fields may be available for your account. When creating or updating a dataset, only fields available to your account can be enabled. If you request a field that is not available, you will receive an error.

operationId: zones-logs-explorer-datasets-available-list

Responses

200 List of dataset types available to create.
400
403
404
GET /zones/{zone_id}/logs/explorer/datasets/available
GET /zones/{zone_id}/logs/explorer/datasets/{dataset_id}

Retrieve a single Log Explorer dataset by ID for the zone.

operationId: zones-logs-explorer-datasets-get

Responses

200 Dataset details, including the fields active for ingestion.
400
403
404
GET /zones/{zone_id}/logs/explorer/datasets/{dataset_id}

Logcontrol cmb config for an account 1 endpoints

GET /accounts/{account_id}/logs/control/cmb/config

Gets CMB config.

operationId: get-accounts-account_id-logs-control-cmb-config

Parameters

Name In Required Type Description
account_id path required

Responses

4XX Get CMB config response failure
200 Get CMB config response
GET /accounts/{account_id}/logs/control/cmb/config

Logpush jobs for a zone 4 endpoints

GET /zones/{zone_id}/logpush/datasets/{dataset_id}/fields

Lists all fields available for a dataset. The response result is. an object with key-value pairs, where keys are field names, and values are descriptions.

operationId: get-zones-zone_id-logpush-datasets-dataset_id-fields

Parameters

Name In Required Type Description
dataset_id path required
zone_id path required

Responses

4XX List fields response failure.
200 List fields response.
GET /zones/{zone_id}/logpush/datasets/{dataset_id}/fields
GET /zones/{zone_id}/logpush/datasets/{dataset_id}/jobs

Lists Logpush jobs for a zone for a dataset.

operationId: get-zones-zone_id-logpush-datasets-dataset_id-jobs

Parameters

Name In Required Type Description
dataset_id path required
zone_id path required

Responses

4XX List Logpush jobs for a dataset response failure.
200 List Logpush jobs for a dataset response.
GET /zones/{zone_id}/logpush/datasets/{dataset_id}/jobs
GET /zones/{zone_id}/logpush/jobs

Lists Logpush jobs for a zone.

operationId: get-zones-zone_id-logpush-jobs

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX List Logpush jobs response failure.
200 List Logpush jobs response.
GET /zones/{zone_id}/logpush/jobs
GET /zones/{zone_id}/logpush/jobs/{job_id}

Gets the details of a Logpush job.

operationId: get-zones-zone_id-logpush-jobs-job_id

Parameters

Name In Required Type Description
job_id path required
zone_id path required

Responses

4XX Get Logpush job details response failure.
200 Get Logpush job details response.
GET /zones/{zone_id}/logpush/jobs/{job_id}

Logpush jobs for an account 4 endpoints

GET /accounts/{account_id}/logpush/datasets/{dataset_id}/fields

Lists all fields available for a dataset. The response result is. an object with key-value pairs, where keys are field names, and values are descriptions.

operationId: get-accounts-account_id-logpush-datasets-dataset_id-fields

Parameters

Name In Required Type Description
dataset_id path required
account_id path required

Responses

4XX List fields response failure.
200 List fields response.
GET /accounts/{account_id}/logpush/datasets/{dataset_id}/fields
GET /accounts/{account_id}/logpush/datasets/{dataset_id}/jobs

Lists Logpush jobs for an account for a dataset.

operationId: get-accounts-account_id-logpush-datasets-dataset_id-jobs

Parameters

Name In Required Type Description
dataset_id path required
account_id path required

Responses

4XX List Logpush jobs for a dataset response failure.
200 List Logpush jobs for a dataset response.
GET /accounts/{account_id}/logpush/datasets/{dataset_id}/jobs
GET /accounts/{account_id}/logpush/jobs

Lists Logpush jobs for an account.

operationId: get-accounts-account_id-logpush-jobs

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List Logpush jobs response failure.
200 List Logpush jobs response.
GET /accounts/{account_id}/logpush/jobs
GET /accounts/{account_id}/logpush/jobs/{job_id}

Gets the details of a Logpush job.

operationId: get-accounts-account_id-logpush-jobs-job_id

Parameters

Name In Required Type Description
job_id path required
account_id path required

Responses

4XX Get Logpush job details response failure.
200 Get Logpush job details response.
GET /accounts/{account_id}/logpush/jobs/{job_id}

Logs received 4 endpoints

GET /zones/{zone_id}/logs/control/retention/flag

Gets log retention flag for Logpull API.

operationId: get-zones-zone_id-logs-control-retention-flag

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Get log retention flag response failure
200 Get log retention flag response
GET /zones/{zone_id}/logs/control/retention/flag
GET /zones/{zone_id}/logs/rayids/{ray_id}

The `/rayids` api route allows lookups by specific rayid. The rayids route will return zero, one, or more records (ray ids are not unique).

operationId: get-zones-zone_id-logs-rayids-ray_id

Parameters

Name In Required Type Description
zone_id path required
ray_id path required
fields query optional
timestamps query optional

Responses

4XX Get logs RayIDs response failure
200 Get logs RayIDs response
GET /zones/{zone_id}/logs/rayids/{ray_id}
GET /zones/{zone_id}/logs/received

The `/received` api route allows customers to retrieve their edge HTTP logs. The basic access pattern is "give me all the logs for zone Z for minute M", where the minute M refers to the time records were received at Cloudflare's central data center. `start` is inclusive, and `end` is exclusive. Because of that, to get all data, at minutely cadence, starting at 10AM, the proper values are: `start=2018-05-20T10:00:00Z&end=2018-05-20T10:01:00Z`, then `start=2018-05-20T10:01:00Z&end=2018-05-20T10:02:00Z` and so on; the overlap will be handled properly.

operationId: get-zones-zone_id-logs-received

Parameters

Name In Required Type Description
zone_id path required
start query optional
end query required
fields query optional
sample query optional
count query optional
timestamps query optional

Responses

4XX Get logs received response failure
200 Get logs received response
GET /zones/{zone_id}/logs/received
GET /zones/{zone_id}/logs/received/fields

Lists all fields available. The response is json object with key-value pairs, where keys are field names, and values are descriptions.

operationId: get-zones-zone_id-logs-received-fields

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX List fields response failure
200 List fields response
GET /zones/{zone_id}/logs/received/fields

Mcp portal 2 endpoints

GET /accounts/{account_id}/access/ai-controls/mcp/portals

Lists all MCP portals configured for the account.

operationId: mcp-portals-api-list-portals

Parameters

Name In Required Type Description
account_id path required string
page query optional integer
per_page query optional integer
search query optional string

Responses

200 List objects
400 Bad Request
GET /accounts/{account_id}/access/ai-controls/mcp/portals
GET /accounts/{account_id}/access/ai-controls/mcp/portals/{id}
operationId: mcp-portals-api-fetch-gateways

Parameters

Name In Required Type Description
id path required string
account_id path required string

Responses

200 Returns a single object if found
404 Not Found
GET /accounts/{account_id}/access/ai-controls/mcp/portals/{id}

Mcp portal servers 2 endpoints

GET /accounts/{account_id}/access/ai-controls/mcp/servers

Lists all MCP portals configured for the account.

operationId: mcp-portals-api-list-servers

Parameters

Name In Required Type Description
account_id path required string
page query optional integer
per_page query optional integer
search query optional string

Responses

200 List objects
400 Bad Request
GET /accounts/{account_id}/access/ai-controls/mcp/servers
GET /accounts/{account_id}/access/ai-controls/mcp/servers/{id}

Retrieves gateway configuration for MCP portals.

operationId: mcp-portals-api-fetch-servers

Parameters

Name In Required Type Description
account_id path required string
id path required string

Responses

200 Returns a single object if found
404 Not Found
GET /accounts/{account_id}/access/ai-controls/mcp/servers/{id}

Magic account apps 1 endpoints

GET /accounts/{account_id}/magic/apps

Lists Apps associated with an account.

operationId: magic-account-apps-list-apps

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List Apps response failure
200 List Apps response
GET /accounts/{account_id}/magic/apps

Magic connectors 8 endpoints

GET /accounts/{account_id}/magic/connectors
operationId: mconn-connector-list

Parameters

Name In Required Type Description
account_id path required

Responses

200 OK
400 Bad Request
401 Unauthorized
403 Forbidden
500 Internal Server Error
GET /accounts/{account_id}/magic/connectors
GET /accounts/{account_id}/magic/connectors/{connector_id}
operationId: mconn-connector-fetch

Parameters

Name In Required Type Description
account_id path required
connector_id path required

Responses

200 OK
400 Bad Request
401 Unauthorized
403 Forbidden
404 Not Found
500 Internal Server Error
GET /accounts/{account_id}/magic/connectors/{connector_id}
GET /accounts/{account_id}/magic/connectors/{connector_id}/telemetry/events
operationId: mconn-connector-telemetry-events-list

Parameters

Name In Required Type Description
account_id path required
connector_id path required string
from query required number
to query required number
limit query optional number
cursor query optional string
k query optional string Filter by event kind

Responses

200 OK
400 Bad Request
401 Unauthorized
403 Forbidden
429 Too Many Requests
500 Internal Server Error
GET /accounts/{account_id}/magic/connectors/{connector_id}/telemetry/events
GET /accounts/{account_id}/magic/connectors/{connector_id}/telemetry/events/latest
operationId: mconn-connector-telemetry-events-listLatest

Parameters

Name In Required Type Description
account_id path required
connector_id path required string

Responses

200 OK
400 Bad Request
401 Unauthorized
403 Forbidden
404 Not Found
429 Too Many Requests
500 Internal Server Error
GET /accounts/{account_id}/magic/connectors/{connector_id}/telemetry/events/latest
GET /accounts/{account_id}/magic/connectors/{connector_id}/telemetry/events/{event_t}.{event_n}
operationId: mconn-connector-telemetry-events-get

Parameters

Name In Required Type Description
account_id path required
connector_id path required string
event_t path required number
event_n path required number

Responses

200 OK
400 Bad Request
401 Unauthorized
403 Forbidden
404 Not Found
429 Too Many Requests
500 Internal Server Error
GET /accounts/{account_id}/magic/connectors/{connector_id}/telemetry/events/{event_t}.{event_n}
GET /accounts/{account_id}/magic/connectors/{connector_id}/telemetry/snapshots
operationId: mconn-connector-telemetry-snapshots-list

Parameters

Name In Required Type Description
account_id path required
connector_id path required string
from query required number
to query required number
limit query optional number
cursor query optional string

Responses

200 OK
400 Bad Request
401 Unauthorized
403 Forbidden
429 Too Many Requests
500 Internal Server Error
GET /accounts/{account_id}/magic/connectors/{connector_id}/telemetry/snapshots
GET /accounts/{account_id}/magic/connectors/{connector_id}/telemetry/snapshots/latest
operationId: mconn-connector-telemetry-snapshots-listLatest

Parameters

Name In Required Type Description
account_id path required
connector_id path required string

Responses

200 OK
400 Bad Request
401 Unauthorized
403 Forbidden
404 Not Found
429 Too Many Requests
500 Internal Server Error
GET /accounts/{account_id}/magic/connectors/{connector_id}/telemetry/snapshots/latest
GET /accounts/{account_id}/magic/connectors/{connector_id}/telemetry/snapshots/{snapshot_t}
operationId: mconn-connector-telemetry-snapshots-get

Parameters

Name In Required Type Description
account_id path required
connector_id path required string
snapshot_t path required number

Responses

200 OK
400 Bad Request
401 Unauthorized
403 Forbidden
404 Not Found
429 Too Many Requests
500 Internal Server Error
GET /accounts/{account_id}/magic/connectors/{connector_id}/telemetry/snapshots/{snapshot_t}

Magic gre tunnels 2 endpoints

GET /accounts/{account_id}/magic/gre_tunnels

Lists GRE tunnels associated with an account.

operationId: magic-gre-tunnels-list-gre-tunnels

Parameters

Name In Required Type Description
account_id path required
x-magic-new-hc-target header optional boolean If true, the health check target in the response body will be presented using the new object format. Defaults to false.

Responses

4XX List GRE tunnels response failure
200 List GRE tunnels response
GET /accounts/{account_id}/magic/gre_tunnels
GET /accounts/{account_id}/magic/gre_tunnels/{gre_tunnel_id}

Lists informtion for a specific GRE tunnel.

operationId: magic-gre-tunnels-list-gre-tunnel-details

Parameters

Name In Required Type Description
gre_tunnel_id path required
account_id path required
x-magic-new-hc-target header optional boolean If true, the health check target in the response body will be presented using the new object format. Defaults to false.

Responses

4XX List GRE Tunnel Details response failure
200 List GRE Tunnel Details response
GET /accounts/{account_id}/magic/gre_tunnels/{gre_tunnel_id}

Magic ipsec tunnels 2 endpoints

GET /accounts/{account_id}/magic/ipsec_tunnels

Lists IPsec tunnels associated with an account.

operationId: magic-ipsec-tunnels-list-ipsec-tunnels

Parameters

Name In Required Type Description
account_id path required
x-magic-new-hc-target header optional boolean If true, the health check target in the response body will be presented using the new object format. Defaults to false.

Responses

4XX List IPsec tunnels response failure
200 List IPsec tunnels response
GET /accounts/{account_id}/magic/ipsec_tunnels
GET /accounts/{account_id}/magic/ipsec_tunnels/{ipsec_tunnel_id}

Lists details for a specific IPsec tunnel.

operationId: magic-ipsec-tunnels-list-ipsec-tunnel-details

Parameters

Name In Required Type Description
ipsec_tunnel_id path required
account_id path required
x-magic-new-hc-target header optional boolean If true, the health check target in the response body will be presented using the new object format. Defaults to false.

Responses

4XX List IPsec tunnel details response failure
200 List IPsec tunnel details response
GET /accounts/{account_id}/magic/ipsec_tunnels/{ipsec_tunnel_id}

Magic interconnects 2 endpoints

GET /accounts/{account_id}/magic/cf_interconnects

Lists interconnects associated with an account.

operationId: magic-interconnects-list-interconnects

Parameters

Name In Required Type Description
account_id path required
x-magic-new-hc-target header optional boolean If true, the health check target in the response body will be presented using the new object format. Defaults to false.

Responses

4XX List interconnects response failure
200 List interconnects response
GET /accounts/{account_id}/magic/cf_interconnects
GET /accounts/{account_id}/magic/cf_interconnects/{cf_interconnect_id}

Lists details for a specific interconnect.

operationId: magic-interconnects-list-interconnect-details

Parameters

Name In Required Type Description
cf_interconnect_id path required
account_id path required
x-magic-new-hc-target header optional boolean If true, the health check target in the response body will be presented using the new object format. Defaults to false.

Responses

4XX List interconnect Details response failure
200 List interconnect Details response
GET /accounts/{account_id}/magic/cf_interconnects/{cf_interconnect_id}

Magic network monitoring configuration 2 endpoints

GET /accounts/{account_id}/mnm/config

Lists default sampling, router IPs and warp devices for account.

operationId: magic-network-monitoring-configuration-list-account-configuration

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List account configuration response failure
200 List account configuration response
GET /accounts/{account_id}/mnm/config
GET /accounts/{account_id}/mnm/config/full

Lists default sampling, router IPs, warp devices, and rules for account.

operationId: magic-network-monitoring-configuration-list-rules-and-account-configuration

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List rules and account configuration response failure
200 List rules and account configuration response
GET /accounts/{account_id}/mnm/config/full

Magic network monitoring rules 2 endpoints

GET /accounts/{account_id}/mnm/rules

Lists network monitoring rules for account.

operationId: magic-network-monitoring-rules-list-rules

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List rules response failure
200 List rules response
GET /accounts/{account_id}/mnm/rules
GET /accounts/{account_id}/mnm/rules/{rule_id}

List a single network monitoring rule for account.

operationId: magic-network-monitoring-rules-get-rule

Parameters

Name In Required Type Description
rule_id path required
account_id path required

Responses

4XX Get rule response failure
200 Get rule response
GET /accounts/{account_id}/mnm/rules/{rule_id}

Magic pcap collection 4 endpoints

GET /accounts/{account_id}/pcaps

Lists all packet capture requests for an account.

operationId: magic-pcap-collection-list-packet-capture-requests

Parameters

Name In Required Type Description
account_id path required

Responses

default List packet capture requests response failure.
200 List packet capture requests response.
GET /accounts/{account_id}/pcaps
GET /accounts/{account_id}/pcaps/ownership

List all buckets configured for use with PCAPs API.

operationId: magic-pcap-collection-list-pca-ps-bucket-ownership

Parameters

Name In Required Type Description
account_id path required

Responses

default List PCAPs Bucket Ownership response failure.
200 List PCAPs Bucket Ownership response.
GET /accounts/{account_id}/pcaps/ownership
GET /accounts/{account_id}/pcaps/{pcap_id}

Get information for a PCAP request by id.

operationId: magic-pcap-collection-get-pcap-request

Parameters

Name In Required Type Description
pcap_id path required
account_id path required

Responses

default Get PCAP request response failure.
200 Get PCAP request response.
GET /accounts/{account_id}/pcaps/{pcap_id}
GET /accounts/{account_id}/pcaps/{pcap_id}/download

Download PCAP information into a file. Response is a binary PCAP file.

operationId: magic-pcap-collection-download-simple-pcap

Parameters

Name In Required Type Description
pcap_id path required
account_id path required

Responses

default Download Simple PCAP response failure.
200 Download Simple PCAP response.
GET /accounts/{account_id}/pcaps/{pcap_id}/download

Magic site acls 2 endpoints

GET /accounts/{account_id}/magic/sites/{site_id}/acls

Lists Site ACLs associated with an account.

operationId: magic-site-acls-list-acls

Parameters

Name In Required Type Description
account_id path required
site_id path required

Responses

4XX List Site ACLs response failure
200 List Site ACLs response
GET /accounts/{account_id}/magic/sites/{site_id}/acls
GET /accounts/{account_id}/magic/sites/{site_id}/acls/{acl_id}

Get a specific Site ACL.

operationId: magic-site-acls-acl-details

Parameters

Name In Required Type Description
site_id path required
account_id path required
acl_id path required

Responses

4XX Site ACL Details response failure
200 Site ACL Details response
GET /accounts/{account_id}/magic/sites/{site_id}/acls/{acl_id}

Magic site app configs 1 endpoints

GET /accounts/{account_id}/magic/sites/{site_id}/app_configs

Lists App Configs associated with a site.

operationId: magic-site-app-configs-list-app-configs

Parameters

Name In Required Type Description
account_id path required
site_id path required

Responses

4XX List App Configs response failure
200 List App Configs response
GET /accounts/{account_id}/magic/sites/{site_id}/app_configs

Magic site lans 2 endpoints

GET /accounts/{account_id}/magic/sites/{site_id}/lans

Lists Site LANs associated with an account.

operationId: magic-site-lans-list-lans

Parameters

Name In Required Type Description
account_id path required
site_id path required

Responses

4XX List Site LANs response failure
200 List Site LANs response
GET /accounts/{account_id}/magic/sites/{site_id}/lans
GET /accounts/{account_id}/magic/sites/{site_id}/lans/{lan_id}

Get a specific Site LAN.

operationId: magic-site-lans-lan-details

Parameters

Name In Required Type Description
site_id path required
account_id path required
lan_id path required

Responses

4XX Site LAN Details response failure
200 Site LAN Details response
GET /accounts/{account_id}/magic/sites/{site_id}/lans/{lan_id}

Magic site netflow config 1 endpoints

GET /accounts/{account_id}/magic/sites/{site_id}/netflow_config

Get NetFlow configuration for a site.

operationId: magic-site-netflow-config-details

Parameters

Name In Required Type Description
account_id path required
site_id path required

Responses

4XX Get NetFlow Configuration response failure
200 Get NetFlow Configuration response
GET /accounts/{account_id}/magic/sites/{site_id}/netflow_config

Magic site wans 2 endpoints

GET /accounts/{account_id}/magic/sites/{site_id}/wans

Lists Site WANs associated with an account.

operationId: magic-site-wans-list-wans

Parameters

Name In Required Type Description
account_id path required
site_id path required

Responses

4XX List Site WANs response failure
200 List Site WANs response
GET /accounts/{account_id}/magic/sites/{site_id}/wans
GET /accounts/{account_id}/magic/sites/{site_id}/wans/{wan_id}

Get a specific Site WAN.

operationId: magic-site-wans-wan-details

Parameters

Name In Required Type Description
site_id path required
account_id path required
wan_id path required

Responses

4XX Site WAN Details response failure
200 Site WAN Details response
GET /accounts/{account_id}/magic/sites/{site_id}/wans/{wan_id}

Magic sites 2 endpoints

GET /accounts/{account_id}/magic/sites

Lists Sites associated with an account. Use connectorid query param to return sites where connectorid matches either site.ConnectorID or site.SecondaryConnectorID.

operationId: magic-sites-list-sites

Parameters

Name In Required Type Description
account_id path required
connectorid query optional

Responses

4XX List Sites response failure
200 List Sites response
GET /accounts/{account_id}/magic/sites
GET /accounts/{account_id}/magic/sites/{site_id}

Get a specific Site.

operationId: magic-sites-site-details

Parameters

Name In Required Type Description
site_id path required
account_id path required
x-magic-new-hc-target header optional boolean If true, the health check target in the response body will be presented using the new object format. Defaults to false.

Responses

4XX Site Details response failure
200 Site Details response
GET /accounts/{account_id}/magic/sites/{site_id}

Magic static routes 2 endpoints

GET /accounts/{account_id}/magic/routes

List all Magic static routes.

operationId: magic-static-routes-list-routes

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List Routes response failure
200 List Routes response
GET /accounts/{account_id}/magic/routes
GET /accounts/{account_id}/magic/routes/{route_id}

Get a specific Magic static route.

operationId: magic-static-routes-route-details

Parameters

Name In Required Type Description
route_id path required
account_id path required

Responses

4XX Route Details response failure
200 Route Details response
GET /accounts/{account_id}/magic/routes/{route_id}

Maintenance configuration 1 endpoints

GET /accounts/{account_id}/r2-catalog/{bucket_name}/maintenance-configs

Retrieve the maintenance configuration for a specific catalog, including compaction settings and credential status.

operationId: get-maintenance-config

Parameters

Name In Required Type Description
account_id path required Identifies the account.
bucket_name path required Specifies the R2 bucket name.

Responses

200 Maintenance configuration retrieved successfully.
400 Bad request.
401 Authentication failed.
403 Forbidden.
404 Catalog not found.
500 Internal server error.
GET /accounts/{account_id}/r2-catalog/{bucket_name}/maintenance-configs

Managed transforms 1 endpoints

GET /zones/{zone_id}/managed_headers

Fetches a list of all Managed Transforms.

operationId: listManagedTransforms

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX
200
GET /zones/{zone_id}/managed_headers

Meetings 4 endpoints

GET /accounts/{account_id}/realtime/kit/{app_id}/meetings

Returns all meetings for the given App ID.

operationId: get_all_meetings

Parameters

Name In Required Type Description
account_id path required
app_id path required
optional
optional
optional
optional
optional

Responses

200
GET /accounts/{account_id}/realtime/kit/{app_id}/meetings
GET /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}

Returns a meeting details in an App for the given meeting ID.

operationId: get_meeting

Parameters

Name In Required Type Description
name query optional string
meeting_id path required string ID of the meeting. Fetch the meeting ID using the create a meeting API.

Responses

200
500
GET /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}
GET /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/participants

Returns all participants detail for the given meeting ID.

operationId: get_meeting_participants

Parameters

Name In Required Type Description
account_id path required
app_id path required
optional
optional
meeting_id path required string ID of the meeting. Fetch the meeting ID using the create a meeting API.

Responses

200
500
GET /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/participants
GET /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/participants/{participant_id}

Returns a participant details for the given meeting and participant ID.

operationId: get_meeting_participant

Parameters

Name In Required Type Description
meeting_id path required string ID of the meeting. You can fetch the meeting ID using the create a meeting API.
participant_id path required string ID of the participant. You can fetch the participant ID using the add a participant API.

Responses

200
500
GET /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/participants/{participant_id}

Moq relays 2 endpoints

GET /accounts/{account_id}/moq/relays

Lists all MoQ relays for the account. Returns only metadata. Config, status, and tokens are omitted.

Parameters

Name In Required Type Description
optional

Responses

200 Relay list retrieved successfully.
500 Error 21006: Unexpected server error.
GET /accounts/{account_id}/moq/relays
GET /accounts/{account_id}/moq/relays/{relay_id}

Retrieves a single MoQ relay including config and status. Tokens are NOT included.

Parameters

Name In Required Type Description
optional
optional

Responses

200 Relay retrieved successfully.
400 Error 21003: Relay ID should be 32 hex characters.
404 Error 21007: Relay not found.
500 Error 21006: Unexpected server error.
GET /accounts/{account_id}/moq/relays/{relay_id}

Namespace management 1 endpoints

GET /accounts/{account_id}/r2-catalog/{bucket_name}/namespaces

Returns a list of namespaces in the specified R2 catalog. Supports hierarchical filtering and pagination for efficient traversal of large namespace hierarchies.

operationId: list-namespaces

Parameters

Name In Required Type Description
account_id path required Identifies the account.
bucket_name path required Specifies the R2 bucket name.
page_token query optional string Opaque pagination token from a previous response. Use this to fetch the next page of results.
page_size query optional integer Maximum number of namespaces to return per page. Defaults to 100, maximum 1000.
parent query optional string 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 query optional boolean Whether to include namespace UUIDs in the response. Set to true to receive the namespace_uuids array.
return_details query optional boolean Whether to include additional metadata (timestamps). When true, response includes created_at and updated_at arrays.

Responses

200 List of namespaces retrieved successfully.
400 Bad request (e.g., invalid page_size, malformed parent namespace).
401 Authentication failed.
403 Forbidden.
404 Catalog not found.
500 Internal server error.
GET /accounts/{account_id}/r2-catalog/{bucket_name}/namespaces

Notification alert types 1 endpoints

GET /accounts/{account_id}/alerting/v3/available_alerts

Gets a list of all alert types for which an account is eligible.

operationId: notification-alert-types-get-alert-types

Parameters

Name In Required Type Description
account_id path required

Responses

4XX Get Alert Types response failure
200 Get Alert Types response
GET /accounts/{account_id}/alerting/v3/available_alerts

Notification history 1 endpoints

GET /accounts/{account_id}/alerting/v3/history

Gets a list of history records for notifications sent to an account. The records are displayed for last `x` number of days based on the zone plan (free = 30, pro = 30, biz = 30, ent = 90).

operationId: notification-history-list-history

Parameters

Name In Required Type Description
account_id path required
per_page query optional
before query optional
page query optional number
since query optional string

Responses

4XX List History response failure
200 List History response
GET /accounts/{account_id}/alerting/v3/history

Notification mechanism eligibility 1 endpoints

GET /accounts/{account_id}/alerting/v3/destinations/eligible

Get a list of all delivery mechanism types for which an account is eligible.

operationId: notification-mechanism-eligibility-get-delivery-mechanism-eligibility

Parameters

Name In Required Type Description
account_id path required

Responses

4XX Get delivery mechanism eligibility response failure
200 Get delivery mechanism eligibility response
GET /accounts/{account_id}/alerting/v3/destinations/eligible

Notification silences 2 endpoints

GET /accounts/{account_id}/alerting/v3/silences

Gets a list of silences for an account.

operationId: notification-silences-list-silences

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List Silences response failure
200 List Silences response
GET /accounts/{account_id}/alerting/v3/silences
GET /accounts/{account_id}/alerting/v3/silences/{silence_id}

Gets a specific silence for an account.

operationId: notification-silences-get-silence

Parameters

Name In Required Type Description
account_id path required
silence_id path required

Responses

4XX Get Silence response failure
200 Get Silence response
GET /accounts/{account_id}/alerting/v3/silences/{silence_id}

Notification destinations with pagerduty 2 endpoints

GET /accounts/{account_id}/alerting/v3/destinations/pagerduty

Get a list of all configured PagerDuty services.

operationId: notification-destinations-with-pager-duty-list-pager-duty-services

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List PagerDuty services response failure
200 List PagerDuty services response
GET /accounts/{account_id}/alerting/v3/destinations/pagerduty
GET /accounts/{account_id}/alerting/v3/destinations/pagerduty/connect/{token_id}

Links PagerDuty with the account using the integration token.

operationId: notification-destinations-with-pager-duty-connect-pager-duty-token

Parameters

Name In Required Type Description
account_id path required
token_id path required

Responses

4XX Create a Notification policy response failure
200 Create a Notification policy response
GET /accounts/{account_id}/alerting/v3/destinations/pagerduty/connect/{token_id}

Notification policies 2 endpoints

GET /accounts/{account_id}/alerting/v3/policies

Get a list of all Notification policies.

operationId: notification-policies-list-notification-policies

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List Notification policies response failure
200 List Notification policies response
GET /accounts/{account_id}/alerting/v3/policies
GET /accounts/{account_id}/alerting/v3/policies/{policy_id}

Get details for a single policy.

operationId: notification-policies-get-a-notification-policy

Parameters

Name In Required Type Description
account_id path required
policy_id path required

Responses

4XX Get a Notification policy response failure
200 Get a Notification policy response
GET /accounts/{account_id}/alerting/v3/policies/{policy_id}

Notification webhooks 2 endpoints

GET /accounts/{account_id}/alerting/v3/destinations/webhooks

Gets a list of all configured webhook destinations.

operationId: notification-webhooks-list-webhooks

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List webhooks response failure
200 List webhooks response
GET /accounts/{account_id}/alerting/v3/destinations/webhooks
GET /accounts/{account_id}/alerting/v3/destinations/webhooks/{webhook_id}

Get details for a single webhooks destination.

operationId: notification-webhooks-get-a-webhook

Parameters

Name In Required Type Description
account_id path required
webhook_id path required

Responses

4XX Get a webhook response failure
200 Get a webhook response
GET /accounts/{account_id}/alerting/v3/destinations/webhooks/{webhook_id}

Observatory 6 endpoints

GET /zones/{zone_id}/speed_api/availabilities

Retrieves quota for all plans, as well as the current zone quota.

operationId: speed-get-availabilities

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Failure response.
200 Page test availability.
GET /zones/{zone_id}/speed_api/availabilities
GET /zones/{zone_id}/speed_api/pages

Lists all webpages which have been tested.

operationId: speed-list-pages

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Failure response.
200 List of pages.
GET /zones/{zone_id}/speed_api/pages
GET /zones/{zone_id}/speed_api/pages/{url}/tests

Test history (list of tests) for a specific webpage.

operationId: speed-list-test-history

Parameters

Name In Required Type Description
zone_id path required
url path required
page query optional integer
per_page query optional integer
region query optional

Responses

4XX Failure response.
200 List of test history for a page.
GET /zones/{zone_id}/speed_api/pages/{url}/tests
GET /zones/{zone_id}/speed_api/pages/{url}/tests/{test_id}

Retrieves the result of a specific test.

operationId: speed-get-test

Parameters

Name In Required Type Description
zone_id path required
url path required
test_id path required string

Responses

4XX Failure response.
200 Page test result.
GET /zones/{zone_id}/speed_api/pages/{url}/tests/{test_id}
GET /zones/{zone_id}/speed_api/pages/{url}/trend

Lists the core web vital metrics trend over time for a specific page.

operationId: speed-list-page-trend

Parameters

Name In Required Type Description
zone_id path required
url path required
region query required
deviceType query required
start query required
end query optional
tz query required string The timezone of the start and end timestamps.
metrics query required string A comma-separated list of metrics to include in the results.

Responses

4XX Failure response.
200 Page trend.
GET /zones/{zone_id}/speed_api/pages/{url}/trend
GET /zones/{zone_id}/speed_api/schedule/{url}

Retrieves the test schedule for a page in a specific region.

operationId: speed-get-scheduled-test

Parameters

Name In Required Type Description
zone_id path required
url path required
region query optional

Responses

4XX Failure response.
200 Page test schedule.
GET /zones/{zone_id}/speed_api/schedule/{url}

On-ramps 3 endpoints

GET /accounts/{account_id}/magic/cloud/onramps

List On-ramps (Closed Beta).

operationId: onramps-list

Parameters

Name In Required Type Description
account_id path required
order_by query optional string One of ["updated_at", "id", "cloud_type", "name"].
desc query optional boolean
status query optional boolean
vpcs query optional boolean

Responses

200 OK.
400 Bad Request.
401 Invalid Credentials.
403 Forbidden.
500 Internal Server Error.
GET /accounts/{account_id}/magic/cloud/onramps
GET /accounts/{account_id}/magic/cloud/onramps/magic_wan_address_space

Read the Magic WAN Address Space (Closed Beta).

operationId: onramps-mwan-addr-space-read

Parameters

Name In Required Type Description
account_id path required

Responses

200 OK.
400 Bad Request.
401 Invalid Credentials.
403 Forbidden.
404 Not Found.
500 Internal Server Error.
GET /accounts/{account_id}/magic/cloud/onramps/magic_wan_address_space
GET /accounts/{account_id}/magic/cloud/onramps/{onramp_id}

Read an On-ramp (Closed Beta).

operationId: onramps-read

Parameters

Name In Required Type Description
account_id path required
onramp_id path required
status query optional boolean
vpcs query optional boolean
post_apply_resources query optional boolean
planned_resources query optional boolean

Responses

200 OK.
400 Bad Request.
401 Invalid Credentials.
403 Forbidden.
404 Not Found.
500 Internal Server Error.
GET /accounts/{account_id}/magic/cloud/onramps/{onramp_id}

Organizationmembers 2 endpoints

GET /organizations/{organization_id}/members

List memberships for an Organization. (Currently in Closed Beta - see https://developers.cloudflare.com/fundamentals/organizations/)

operationId: Members_list

Parameters

Name In Required Type Description
organization_id path required
status query optional array Filter the list of memberships by membership status.
user.email query optional string Filter the list of memberships for a specific email.
user.email.contains query optional string Filter the list of memberships for a specific email that contains a substring.
user.email.startsWith query optional string Filter the list of memberships for a specific email that starts with a substring.
user.email.endsWith query optional string Filter the list of memberships for a specific email that ends with a substring.
optional
optional

Responses

4XX An unexpected error response.
200 The request has succeeded.
GET /organizations/{organization_id}/members
GET /organizations/{organization_id}/members/{member_id}

Retrieve a single membership from an Organization. (Currently in Closed Beta - see https://developers.cloudflare.com/fundamentals/organizations/)

operationId: Members_retrieve

Parameters

Name In Required Type Description
organization_id path required
member_id path required

Responses

4XX An unexpected error response.
200 The request has succeeded.
GET /organizations/{organization_id}/members/{member_id}

Organizations 4 endpoints

GET /organizations

Retrieve a list of organizations a particular user has access to. (Currently in Closed Beta - see https://developers.cloudflare.com/fundamentals/organizations/)

operationId: Organization_listOrganizations

Parameters

Name In Required Type Description
optional
optional
optional
optional
optional
optional
optional
optional
optional
optional
optional

Responses

4XX An unexpected error response.
200 The request has succeeded.
GET /organizations
GET /organizations/{organization_id}

Retrieve the details of a certain organization. (Currently in Closed Beta - see https://developers.cloudflare.com/fundamentals/organizations/)

operationId: Organizations_retrieve

Parameters

Name In Required Type Description
organization_id path required The ID of the organization to retrieve.

Responses

4XX An unexpected error response.
200 The request has succeeded.
GET /organizations/{organization_id}
GET /organizations/{organization_id}/accounts

Retrieve a list of accounts that belong to a specific organization. (Currently in Closed Beta - see https://developers.cloudflare.com/fundamentals/organizations/)

operationId: Organizations_getAccounts

Parameters

Name In Required Type Description
organization_id path required The ID of the organization to retrieve a list of accounts for.
account_pubname query optional string (case-insensitive) Filter the list of accounts to where the account_pubname is equal to a particular string.
account_pubname.startsWith query optional string (case-insensitive) Filter the list of accounts to where the account_pubname starts with a particular string.
account_pubname.endsWith query optional string (case-insensitive) Filter the list of accounts to where the account_pubname ends with a particular string.
account_pubname.contains query optional string (case-insensitive) Filter the list of accounts to where the account_pubname contains a particular string.
name query optional string (case-insensitive) Filter the list of accounts to where the name is equal to a particular string.
name.startsWith query optional string (case-insensitive) Filter the list of accounts to where the name starts with a particular string.
name.endsWith query optional string (case-insensitive) Filter the list of accounts to where the name ends with a particular string.
name.contains query optional string (case-insensitive) Filter the list of accounts to where the name contains a particular string.
order_by query optional string Field to order results by. Currently supported values: `account_name`. When not specified, results are ordered by internal account ID.
direction query optional string Sort direction for the order_by field. Valid values: `asc`, `desc`. Defaults to `asc` when order_by is specified.
optional
optional

Responses

4XX An unexpected error response.
200 The request has succeeded.
GET /organizations/{organization_id}/accounts
GET /organizations/{organization_id}/profile

Get an organizations profile if it exists. (Currently in Closed Beta - see https://developers.cloudflare.com/fundamentals/organizations/)

operationId: Organizations_getProfile

Parameters

Name In Required Type Description
organization_id path required The ID of the organization to retrieve a profile for.

Responses

4XX An unexpected error response.
200 The request has succeeded.
GET /organizations/{organization_id}/profile

Origin ca 2 endpoints

GET /certificates

List all existing Origin CA certificates for a given zone. You can use an Origin CA Key as your User Service Key or an API token when calling this endpoint ([see above](#requests)).

operationId: origin-ca-list-certificates

Parameters

Name In Required Type Description
zone_id query required
page query optional number
per_page query optional number
limit query optional integer
offset query optional integer

Responses

4XX List Certificates response failure
200 List Certificates response
GET /certificates
GET /certificates/{certificate_id}

Get an existing Origin CA certificate by its serial number. You can use an Origin CA Key as your User Service Key or an API token when calling this endpoint ([see above](#requests)).

operationId: origin-ca-get-certificate

Parameters

Name In Required Type Description
certificate_id path required

Responses

4XX Get Certificate response failure
200 Get Certificate response
GET /certificates/{certificate_id}

Origin post-quantum 1 endpoints

GET /zones/{zone_id}/cache/origin_post_quantum_encryption

Instructs Cloudflare to use Post-Quantum (PQ) key agreement algorithms when connecting to your origin. Preferred instructs Cloudflare to opportunistically send a Post-Quantum keyshare in the first message to the origin (for fastest connections when the origin supports and prefers PQ), supported means that PQ algorithms are advertised but only used when requested by the origin, and off means that PQ algorithms are not advertised.

operationId: zone-cache-settings-get-origin-post-quantum-encryption-setting

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Get Origin Post-Quantum Encryption setting response failure.
200 Get Origin Post-Quantum Encryption setting response.
GET /zones/{zone_id}/cache/origin_post_quantum_encryption

Page rules 2 endpoints

GET /zones/{zone_id}/pagerules

Fetches Page Rules in a zone.

operationId: page-rules-list-page-rules

Parameters

Name In Required Type Description
zone_id path required
order query optional string
direction query optional string
match query optional string
status query optional string

Responses

4XX List Page Rules response failure
200 List Page Rules response
GET /zones/{zone_id}/pagerules
GET /zones/{zone_id}/pagerules/{pagerule_id}

Fetches the details of a Page Rule.

operationId: page-rules-get-a-page-rule

Parameters

Name In Required Type Description
pagerule_id path required
zone_id path required

Responses

4XX Get a Page Rule response failure
200 Get a Page Rule response
GET /zones/{zone_id}/pagerules/{pagerule_id}

Page shield 9 endpoints

GET /zones/{zone_id}/page_shield

Fetches the Page Shield settings.

operationId: page-shield-get-settings

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Get Page Shield settings response failure
200 Get Page Shield settings response
GET /zones/{zone_id}/page_shield
GET /zones/{zone_id}/page_shield/connections

Lists all connections detected by Page Shield.

operationId: page-shield-list-connections

Parameters

Name In Required Type Description
zone_id path required
exclude_urls query optional string
urls query optional string
hosts query optional string
page query optional string
per_page query optional number
order_by query optional string
direction query optional string
prioritize_malicious query optional boolean
exclude_cdn_cgi query optional boolean
status query optional string
page_url query optional string
export query optional string

Responses

4XX List Page Shield connections response failure
200 List Page Shield connections response
GET /zones/{zone_id}/page_shield/connections
GET /zones/{zone_id}/page_shield/connections/{connection_id}

Fetches a connection detected by Page Shield by connection ID.

operationId: page-shield-get-connection

Parameters

Name In Required Type Description
zone_id path required
connection_id path required

Responses

4XX Get a Page Shield connection response failure
200 Get a Page Shield connection response
GET /zones/{zone_id}/page_shield/connections/{connection_id}
GET /zones/{zone_id}/page_shield/cookies

Lists all cookies collected by Page Shield.

operationId: page-shield-list-cookies

Parameters

Name In Required Type Description
zone_id path required
hosts query optional string
page query optional string
per_page query optional number
order_by query optional string
direction query optional string
page_url query optional string
export query optional string
name query optional string
secure query optional boolean
http_only query optional boolean
same_site query optional string
type query optional string
path query optional string
domain query optional string

Responses

4XX List Page Shield cookies response failure
200 List Page Shield cookies response
GET /zones/{zone_id}/page_shield/cookies
GET /zones/{zone_id}/page_shield/cookies/{cookie_id}

Fetches a cookie collected by Page Shield by cookie ID.

operationId: page-shield-get-cookie

Parameters

Name In Required Type Description
zone_id path required
cookie_id path required

Responses

4XX Get a Page Shield cookie response failure
200 Get a Page Shield cookie response
GET /zones/{zone_id}/page_shield/cookies/{cookie_id}
GET /zones/{zone_id}/page_shield/policies

Lists all Page Shield policies.

operationId: page-shield-list-policies

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX List Page Shield policies response failure
200 List Page Shield policies response
GET /zones/{zone_id}/page_shield/policies
GET /zones/{zone_id}/page_shield/policies/{policy_id}

Fetches a Page Shield policy by ID.

operationId: page-shield-get-policy

Parameters

Name In Required Type Description
zone_id path required
policy_id path required

Responses

4XX Get a Page Shield policy response failure
200 Get a Page Shield policy response
GET /zones/{zone_id}/page_shield/policies/{policy_id}
GET /zones/{zone_id}/page_shield/scripts

Lists all scripts detected by Page Shield.

operationId: page-shield-list-scripts

Parameters

Name In Required Type Description
zone_id path required
exclude_urls query optional string
urls query optional string
hosts query optional string
page query optional string
per_page query optional number
order_by query optional string
direction query optional string
prioritize_malicious query optional boolean
exclude_cdn_cgi query optional boolean
exclude_duplicates query optional boolean
status query optional string
page_url query optional string
export query optional string

Responses

4XX List Page Shield scripts response failure
200 List Page Shield scripts response
GET /zones/{zone_id}/page_shield/scripts
GET /zones/{zone_id}/page_shield/scripts/{script_id}

Fetches a script detected by Page Shield by script ID.

operationId: page-shield-get-script

Parameters

Name In Required Type Description
zone_id path required
script_id path required

Responses

4XX Get a Page Shield script response failure
200 Get a Page Shield script response
GET /zones/{zone_id}/page_shield/scripts/{script_id}

Pages deployment 3 endpoints

GET /accounts/{account_id}/pages/projects/{project_name}/deployments

Fetch a list of project deployments.

operationId: pages-deployment-get-deployments

Parameters

Name In Required Type Description
project_name path required
account_id path required
env query optional string
page query optional integer
per_page query optional integer

Responses

4XX Get deployments response failure.
200 Get deployments response.
GET /accounts/{account_id}/pages/projects/{project_name}/deployments
GET /accounts/{account_id}/pages/projects/{project_name}/deployments/{deployment_id}

Fetch information about a deployment.

operationId: pages-deployment-get-deployment-info

Parameters

Name In Required Type Description
deployment_id path required
project_name path required
account_id path required

Responses

4XX Get deployment info response failure.
200 Get deployment info response.
GET /accounts/{account_id}/pages/projects/{project_name}/deployments/{deployment_id}
GET /accounts/{account_id}/pages/projects/{project_name}/deployments/{deployment_id}/history/logs

Fetch deployment logs for a project.

operationId: pages-deployment-get-deployment-logs

Parameters

Name In Required Type Description
deployment_id path required
project_name path required
account_id path required

Responses

4XX Get deployment logs response failure.
200 Get deployment logs response.
GET /accounts/{account_id}/pages/projects/{project_name}/deployments/{deployment_id}/history/logs

Pages domains 2 endpoints

GET /accounts/{account_id}/pages/projects/{project_name}/domains

Fetch a list of all domains associated with a Pages project.

operationId: pages-domains-get-domains

Parameters

Name In Required Type Description
project_name path required
account_id path required

Responses

4XX Get domains response failure.
200 Get domains response.
GET /accounts/{account_id}/pages/projects/{project_name}/domains
GET /accounts/{account_id}/pages/projects/{project_name}/domains/{domain_name}

Fetch a single domain.

operationId: pages-domains-get-domain

Parameters

Name In Required Type Description
domain_name path required
project_name path required
account_id path required

Responses

4XX Get domain response failure.
200 Get domain response.
GET /accounts/{account_id}/pages/projects/{project_name}/domains/{domain_name}

Pages project 2 endpoints

GET /accounts/{account_id}/pages/projects

Fetch a list of all user projects.

operationId: pages-project-get-projects

Parameters

Name In Required Type Description
account_id path required
page query optional integer
per_page query optional integer

Responses

4XX Get projects response failure.
200 Get projects response.
GET /accounts/{account_id}/pages/projects
GET /accounts/{account_id}/pages/projects/{project_name}

Fetch a project by name.

operationId: pages-project-get-project

Parameters

Name In Required Type Description
project_name path required
account_id path required

Responses

4XX Get project response failure.
200 Get project response.
GET /accounts/{account_id}/pages/projects/{project_name}

Passive dns by ip 1 endpoints

GET /accounts/{account_id}/intel/dns

Gets a list of all the domains that have resolved to a specific IP address.

operationId: passive-dns-by-ip-get-passive-dns-by-ip

Parameters

Name In Required Type Description
account_id path required
start_end_params query optional
ipv4 query optional string
page query optional number
per_page query optional number

Responses

4XX Get Passive DNS by IP response failure.
200 Get Passive DNS by IP response.
GET /accounts/{account_id}/intel/dns

Per-hostname tls settings 2 endpoints

GET /zones/{zone_id}/hostnames/settings/{setting_id}

List the requested TLS setting for the hostnames under this zone.

operationId: per-hostname-tls-settings-list

Parameters

Name In Required Type Description
zone_id path required
setting_id path required

Responses

4XX List per-hostname TLS settings response failure
200 List per-hostname TLS settings response
GET /zones/{zone_id}/hostnames/settings/{setting_id}
GET /zones/{zone_id}/hostnames/settings/{setting_id}/{hostname}

Get the requested TLS setting for the hostname.

operationId: per-hostname-tls-settings-get

Parameters

Name In Required Type Description
zone_id path required
setting_id path required
hostname path required

Responses

4XX Get TLS setting for hostname response failure
200 Get TLS setting for hostname response
GET /zones/{zone_id}/hostnames/settings/{setting_id}/{hostname}

Per-hostname authenticated origin pull 4 endpoints

GET /zones/{zone_id}/origin_tls_client_auth/hostnames

List certificate ID - hostname associations for the given zone. Shows which hostnames are associated to which certificates for authenticated origin pulls.

operationId: per-hostname-authenticated-origin-pull-list-hostname-associations

Parameters

Name In Required Type Description
zone_id path required
page query optional number
per_page query optional number
status query optional string

Responses

4XX List Hostname Associations response failure
200 List Hostname Associations response
GET /zones/{zone_id}/origin_tls_client_auth/hostnames
GET /zones/{zone_id}/origin_tls_client_auth/hostnames/certificates

Lists all client certificates configured for per-hostname authenticated origin pulls on the zone.

operationId: per-hostname-authenticated-origin-pull-list-certificates

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX List Certificates response failure
200 List Certificates response
GET /zones/{zone_id}/origin_tls_client_auth/hostnames/certificates
GET /zones/{zone_id}/origin_tls_client_auth/hostnames/certificates/{certificate_id}

Get the certificate by ID to be used for client authentication on a hostname.

operationId: per-hostname-authenticated-origin-pull-get-the-hostname-client-certificate

Parameters

Name In Required Type Description
certificate_id path required
zone_id path required

Responses

4XX Get the Hostname Client Certificate response failure
200 Get the Hostname Client Certificate response
GET /zones/{zone_id}/origin_tls_client_auth/hostnames/certificates/{certificate_id}
GET /zones/{zone_id}/origin_tls_client_auth/hostnames/{hostname}

Retrieves the client certificate authentication status for a specific hostname, showing whether authenticated origin pulls are enabled.

operationId: per-hostname-authenticated-origin-pull-get-the-hostname-status-for-client-authentication

Parameters

Name In Required Type Description
hostname path required
zone_id path required

Responses

4XX Get the Hostname Status for Client Authentication response failure
200 Get the Hostname Status for Client Authentication response
GET /zones/{zone_id}/origin_tls_client_auth/hostnames/{hostname}

Permissions 1 endpoints

GET /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/permissions

List permissions

operationId: get_PermissionList

Parameters

Name In Required Type Description
account_id path required string Account ID.
dataset_id path required string Dataset UUID.

Responses

200 Returns the list of permissions.
400 Bad Request.
404 Bad Request.
GET /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/permissions

Physical devices 2 endpoints

GET /accounts/{account_id}/devices/physical-devices

Lists WARP devices.

operationId: list-devices

Parameters

Name In Required Type Description
account_id path required string
optional
optional
optional
optional
optional
optional
optional
optional
optional
optional
optional

Responses

200 Returns a list of Devices.
GET /accounts/{account_id}/devices/physical-devices
GET /accounts/{account_id}/devices/physical-devices/{device_id}

Fetches a single WARP device.

operationId: get-device

Parameters

Name In Required Type Description
device_id path required string
account_id path required string
optional

Responses

200 Returns a Device.
GET /accounts/{account_id}/devices/physical-devices/{device_id}

Presets 2 endpoints

GET /accounts/{account_id}/realtime/kit/{app_id}/presets

Fetches all the presets belonging to an App.

operationId: get-presets

Parameters

Name In Required Type Description
account_id path required
app_id path required
optional
optional

Responses

200
GET /accounts/{account_id}/realtime/kit/{app_id}/presets
GET /accounts/{account_id}/realtime/kit/{app_id}/presets/{preset_id}

Fetches details of a preset using the provided preset ID

operationId: get-presets-preset_id

Parameters

Name In Required Type Description
account_id path required
app_id path required
preset_id path required string ID of the preset to fetch

Responses

200
GET /accounts/{account_id}/realtime/kit/{app_id}/presets/{preset_id}

Priority intelligence requirements (pir) 2 endpoints

GET /accounts/{account_id}/cloudforce-one/requests/priority/quota

Retrieves quota usage for Cloudforce One priority requests.

operationId: cloudforce-one-priority-quota

Parameters

Name In Required Type Description
account_id path required

Responses

4XX Get priority quota response failure.
200 Get priority quota response.
GET /accounts/{account_id}/cloudforce-one/requests/priority/quota
GET /accounts/{account_id}/cloudforce-one/requests/priority/{priority_id}

Retrieves a specific priority intelligence request from Cloudforce One.

operationId: cloudforce-one-priority-get

Parameters

Name In Required Type Description
account_id path required
priority_id path required

Responses

4XX Get priority response failure.
200 Get priority response.
GET /accounts/{account_id}/cloudforce-one/requests/priority/{priority_id}

Public 9 endpoints

GET /accounts/{account_id}/email/routing/suppression
operationId: get_publicListSuppressionRouting

Parameters

Name In Required Type Description
account_id path required string
page query optional integer
per_page query optional integer
order query optional string
direction query optional string

Responses

200 Returns suppressed emails.
400 Bad request.
GET /accounts/{account_id}/email/routing/suppression
GET /accounts/{account_id}/email/routing/suppression/{suppression_id}
operationId: get_publicGetSuppressionRouting

Parameters

Name In Required Type Description
account_id path required string
suppression_id path required string

Responses

200 Returns suppression.
404 Suppression not found.
GET /accounts/{account_id}/email/routing/suppression/{suppression_id}
GET /accounts/{account_id}/email/sending/feedback
operationId: get_publicFeedbackStatus

Parameters

Name In Required Type Description
account_id path required string
start_at query optional string
end_at query optional string

Responses

200 Returns feedback statistics.
GET /accounts/{account_id}/email/sending/feedback
GET /accounts/{account_id}/email/sending/suppression
operationId: get_publicListSuppressionSending

Parameters

Name In Required Type Description
account_id path required string
page query optional integer
per_page query optional integer
order query optional string
direction query optional string

Responses

200 Returns suppressed emails.
400 Bad request.
GET /accounts/{account_id}/email/sending/suppression
GET /accounts/{account_id}/email/sending/suppression/{suppression_id}
operationId: get_publicGetSuppressionSending

Parameters

Name In Required Type Description
account_id path required string
suppression_id path required string

Responses

200 Returns suppression.
404 Suppression not found.
GET /accounts/{account_id}/email/sending/suppression/{suppression_id}
GET /zones/{zone_id}/email/routing/suppression
operationId: get_publicListSuppressionZoneRouting

Parameters

Name In Required Type Description
zone_id path required string
page query optional integer
per_page query optional integer
order query optional string
direction query optional string

Responses

200 Returns suppressed emails.
400 Bad request.
GET /zones/{zone_id}/email/routing/suppression
GET /zones/{zone_id}/email/routing/suppression/{suppression_id}
operationId: get_publicGetSuppressionZoneRouting

Parameters

Name In Required Type Description
zone_id path required string
suppression_id path required string

Responses

200 Returns suppression.
404 Suppression not found.
GET /zones/{zone_id}/email/routing/suppression/{suppression_id}
GET /zones/{zone_id}/email/sending/suppression
operationId: get_publicListSuppressionZoneSending

Parameters

Name In Required Type Description
zone_id path required string
page query optional integer
per_page query optional integer
order query optional string
direction query optional string

Responses

200 Returns suppressed emails.
400 Bad request.
GET /zones/{zone_id}/email/sending/suppression
GET /zones/{zone_id}/email/sending/suppression/{suppression_id}
operationId: get_publicGetSuppressionZoneSending

Parameters

Name In Required Type Description
zone_id path required string
suppression_id path required string

Responses

200 Returns suppression.
404 Suppression not found.
GET /zones/{zone_id}/email/sending/suppression/{suppression_id}

Queue 8 endpoints

GET /accounts/{account_id}/event_subscriptions/subscriptions

Get a paginated list of event subscriptions with optional sorting and filtering

operationId: subscriptions-list

Parameters

Name In Required Type Description
account_id path required
page query optional integer Page number for pagination
per_page query optional integer Number of items per page
order query optional string Field to sort by
direction query optional string Sort direction

Responses

4XX Failure response
200 List of event subscriptions
GET /accounts/{account_id}/event_subscriptions/subscriptions
GET /accounts/{account_id}/event_subscriptions/subscriptions/{subscription_id}

Get details about an existing event subscription

operationId: subscriptions-get

Parameters

Name In Required Type Description
account_id path required
subscription_id path required

Responses

200 Details about an event subscription
404 Event subscription does not exist
GET /accounts/{account_id}/event_subscriptions/subscriptions/{subscription_id}
GET /accounts/{account_id}/queues

Returns the queues owned by an account.

operationId: queues-list

Parameters

Name In Required Type Description
account_id path required

Responses

4XX Failure response
200 List of all Queues that belong to this account
GET /accounts/{account_id}/queues
GET /accounts/{account_id}/queues/{queue_id}

Get details about a specific queue.

operationId: queues-get

Parameters

Name In Required Type Description
queue_id path required
account_id path required

Responses

4XX Failure response
200 Details of the requested Queue
GET /accounts/{account_id}/queues/{queue_id}
GET /accounts/{account_id}/queues/{queue_id}/consumers

Returns the consumers for a Queue

operationId: queues-list-consumers

Parameters

Name In Required Type Description
queue_id path required
account_id path required

Responses

4XX Failure response
200 All consumers attached to this Queue
GET /accounts/{account_id}/queues/{queue_id}/consumers
GET /accounts/{account_id}/queues/{queue_id}/consumers/{consumer_id}

Fetches the consumer for a queue by consumer id

operationId: queues-get-consumer

Parameters

Name In Required Type Description
consumer_id path required
queue_id path required
account_id path required

Responses

4XX Get Queue Consumer response failure.
200 Get Queue Consumer response.
GET /accounts/{account_id}/queues/{queue_id}/consumers/{consumer_id}
GET /accounts/{account_id}/queues/{queue_id}/metrics

Return best-effort metrics for a queue. Values may be approximate due to the distributed nature of queues.

operationId: queues-get-metrics

Parameters

Name In Required Type Description
queue_id path required
account_id path required

Responses

4XX Failure response.
200 Queue metrics.
GET /accounts/{account_id}/queues/{queue_id}/metrics
GET /accounts/{account_id}/queues/{queue_id}/purge

Get details about a Queue's purge status.

operationId: queues-purge-get

Parameters

Name In Required Type Description
queue_id path required
account_id path required

Responses

4XX Failure response
200 Details of the requested Queue
GET /accounts/{account_id}/queues/{queue_id}/purge

R2 account 1 endpoints

GET /accounts/{account_id}/r2/metrics

Get Storage/Object Count Metrics across all buckets in your account. Note that Account-Level Metrics may not immediately reflect the latest data.

operationId: r2-get-account-level-metrics

Parameters

Name In Required Type Description
account_id path required

Responses

4XX Get Account-Level Metrics response failure.
200 Get Account-Level Metrics response.
GET /accounts/{account_id}/r2/metrics

R2 bucket 12 endpoints

GET /accounts/{account_id}/event_notifications/r2/{bucket_name}/configuration

List all event notification rules for a bucket.

operationId: r2-get-event-notification-configs

Parameters

Name In Required Type Description
bucket_name path required
account_id path required
cf-r2-jurisdiction header optional

Responses

4XX Read Configuration failure.
200 Read Configuration response.
404 No Configuration Found response.
GET /accounts/{account_id}/event_notifications/r2/{bucket_name}/configuration
GET /accounts/{account_id}/event_notifications/r2/{bucket_name}/configuration/queues/{queue_id}

Get a single event notification rule.

operationId: r2-get-event-notification-config

Parameters

Name In Required Type Description
queue_id path required
bucket_name path required
account_id path required
cf-r2-jurisdiction header optional string

Responses

4XX Read Configuration failure.
200 Read Configuration response.
404 No Configuration Found response.
GET /accounts/{account_id}/event_notifications/r2/{bucket_name}/configuration/queues/{queue_id}
GET /accounts/{account_id}/r2/buckets

Lists all R2 buckets on your account.

operationId: r2-list-buckets

Parameters

Name In Required Type Description
account_id path required
name_contains query optional string
start_after query optional string
per_page query optional number
order query optional string
direction query optional string
cursor query optional string
cf-r2-jurisdiction header optional

Responses

4XX List Buckets response failure.
200 List Buckets response.
GET /accounts/{account_id}/r2/buckets
GET /accounts/{account_id}/r2/buckets/{bucket_name}

Gets properties of an existing R2 bucket.

operationId: r2-get-bucket

Parameters

Name In Required Type Description
account_id path required
bucket_name path required
cf-r2-jurisdiction header optional

Responses

4XX Get Bucket response failure.
200 Get Bucket response.
GET /accounts/{account_id}/r2/buckets/{bucket_name}
GET /accounts/{account_id}/r2/buckets/{bucket_name}/cors

Get the CORS policy for a bucket.

operationId: r2-get-bucket-cors-policy

Parameters

Name In Required Type Description
bucket_name path required
account_id path required
cf-r2-jurisdiction header optional

Responses

4XX Error Response.
200 Success Response.
GET /accounts/{account_id}/r2/buckets/{bucket_name}/cors
GET /accounts/{account_id}/r2/buckets/{bucket_name}/domains/custom

Gets a list of all custom domains registered with an existing R2 bucket.

operationId: r2-list-custom-domains

Parameters

Name In Required Type Description
account_id path required
bucket_name path required
cf-r2-jurisdiction header optional

Responses

4XX List Custom Domains response failure.
200 List Custom Domains response.
GET /accounts/{account_id}/r2/buckets/{bucket_name}/domains/custom
GET /accounts/{account_id}/r2/buckets/{bucket_name}/domains/custom/{domain}

Get the configuration for a custom domain on an existing R2 bucket.

operationId: r2-get-custom-domain-settings

Parameters

Name In Required Type Description
account_id path required
bucket_name path required
domain path required
cf-r2-jurisdiction header optional

Responses

4XX Get Custom Domain Configuration response failure.
200 Get Custom Domain Configuration response.
GET /accounts/{account_id}/r2/buckets/{bucket_name}/domains/custom/{domain}
GET /accounts/{account_id}/r2/buckets/{bucket_name}/domains/managed

Gets state of public access over the bucket's R2-managed (r2.dev) domain.

operationId: r2-get-bucket-public-policy

Parameters

Name In Required Type Description
account_id path required
bucket_name path required
cf-r2-jurisdiction header optional

Responses

4XX Get Managed Subdomain response failure.
200 Get Managed Subdomain response.
GET /accounts/{account_id}/r2/buckets/{bucket_name}/domains/managed
GET /accounts/{account_id}/r2/buckets/{bucket_name}/lifecycle

Get object lifecycle rules for a bucket.

operationId: r2-get-bucket-lifecycle-configuration

Parameters

Name In Required Type Description
bucket_name path required
account_id path required
cf-r2-jurisdiction header optional

Responses

4XX Error Response.
200 Success Response.
GET /accounts/{account_id}/r2/buckets/{bucket_name}/lifecycle
GET /accounts/{account_id}/r2/buckets/{bucket_name}/local-uploads

Get the local uploads configuration for a bucket. When enabled, object's data is written to the nearest region first, then asynchronously replicated to the bucket's primary region.

operationId: r2-get-bucket-local-uploads-configuration

Parameters

Name In Required Type Description
bucket_name path required
account_id path required

Responses

4XX Error Response.
200 Success Response.
GET /accounts/{account_id}/r2/buckets/{bucket_name}/local-uploads
GET /accounts/{account_id}/r2/buckets/{bucket_name}/lock

Get lock rules for a bucket.

operationId: r2-get-bucket-lock-configuration

Parameters

Name In Required Type Description
bucket_name path required
account_id path required
cf-r2-jurisdiction header optional

Responses

4XX Error Response.
200 Success Response.
GET /accounts/{account_id}/r2/buckets/{bucket_name}/lock
GET /accounts/{account_id}/r2/buckets/{bucket_name}/sippy

Gets configuration for Sippy for an existing R2 bucket.

operationId: r2-get-bucket-sippy-config

Parameters

Name In Required Type Description
account_id path required
bucket_name path required
cf-r2-jurisdiction header optional

Responses

4XX Get Sippy Configuration response failure.
200 Get Sippy Configuration response.
GET /accounts/{account_id}/r2/buckets/{bucket_name}/sippy

R2 catalog management 2 endpoints

GET /accounts/{account_id}/r2-catalog

Returns a list of R2 buckets that have been enabled as Apache Iceberg catalogs for the specified account. Each catalog represents an R2 bucket configured to store Iceberg metadata and data files.

operationId: list-catalogs

Parameters

Name In Required Type Description
account_id path required Identifies the account.

Responses

200 List of R2 catalogs.
400 Bad request.
401 Authentication failed.
403 Forbidden.
500 Internal server error.
GET /accounts/{account_id}/r2-catalog
GET /accounts/{account_id}/r2-catalog/{bucket_name}

Retrieve detailed information about a specific R2 catalog by bucket name. Returns catalog status, maintenance configuration, and credential status.

operationId: get-catalog-details

Parameters

Name In Required Type Description
account_id path required Identifies the account.
bucket_name path required Specifies the R2 bucket name.

Responses

200 R2 catalog details.
400 Bad request.
401 Authentication failed.
403 Forbidden.
404 Catalog not found.
500 Internal server error.
GET /accounts/{account_id}/r2-catalog/{bucket_name}

R2 super slurper 4 endpoints

GET /accounts/{account_id}/slurper/jobs

Lists all R2 Super Slurper migration jobs for the account with their status.

operationId: slurper-list-jobs

Parameters

Name In Required Type Description
account_id path required string
limit query optional integer
offset query optional integer

Responses

4XX Failure response
200 A list of jobs
GET /accounts/{account_id}/slurper/jobs
GET /accounts/{account_id}/slurper/jobs/{job_id}

Retrieves detailed status and configuration for a specific R2 Super Slurper migration job.

operationId: slurper-get-job

Parameters

Name In Required Type Description
account_id path required string
job_id path required string

Responses

4XX Failure response
200 Job details
GET /accounts/{account_id}/slurper/jobs/{job_id}
GET /accounts/{account_id}/slurper/jobs/{job_id}/logs

Gets log entries for an R2 Super Slurper migration job, showing migration status changes, errors, etc.

operationId: slurper-get-job-logs

Parameters

Name In Required Type Description
account_id path required string
job_id path required string
limit query optional integer
offset query optional integer

Responses

4XX Failure response
200 Job logs
GET /accounts/{account_id}/slurper/jobs/{job_id}/logs
GET /accounts/{account_id}/slurper/jobs/{job_id}/progress

Retrieves current progress metrics for an R2 Super Slurper migration job

operationId: slurper-get-job-progress

Parameters

Name In Required Type Description
account_id path required string
job_id path required string

Responses

4XX Failure response
200 Job progress
GET /accounts/{account_id}/slurper/jobs/{job_id}/progress

Radar ai bots 3 endpoints

GET /radar/ai/bots/summary/{dimension}

Retrieves an aggregated summary of AI bots HTTP requests grouped by the specified dimension.

operationId: radar-get-ai-bots-summary

Parameters

Name In Required Type Description
dimension path required string Specifies the attribute by which to group the results.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional array Filters results by bot crawl purpose.
userAgent query optional array Filters results by user agent.
vertical query optional array Filters results by vertical.
industry query optional array Filters results by industry.
contentType query optional array Filters results by content type category.
responseStatus query optional array Filters results by HTTP response status code (e.g. 200, 403, 404). Only [IANA-registered codes](https://www.iana.org/assignments/http-status-codes/http-status-codes.xhtml) are accepted.
responseStatusCategory query optional array Filters results by HTTP response status code category.
limitPerGroup query optional integer 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 query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/ai/bots/summary/{dimension}
GET /radar/ai/bots/timeseries

Retrieves AI bots HTTP request volume over time.

operationId: radar-get-ai-bots-timeseries

Parameters

Name In Required Type Description
aggInterval query optional string 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 query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional array Filters results by bot crawl purpose.
userAgent query optional array Filters results by user agent.
industry query optional array Filters results by industry.
vertical query optional array Filters results by vertical.
contentType query optional array Filters results by content type category.
responseStatus query optional array Filters results by HTTP response status code (e.g. 200, 403, 404). Only [IANA-registered codes](https://www.iana.org/assignments/http-status-codes/http-status-codes.xhtml) are accepted.
responseStatusCategory query optional array Filters results by HTTP response status code category.
limitPerGroup query optional integer 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 query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/ai/bots/timeseries
GET /radar/ai/bots/timeseries_groups/{dimension}

Retrieves the distribution of HTTP requests from AI bots, grouped by the specified dimension over time.

operationId: radar-get-ai-bots-timeseries-group

Parameters

Name In Required Type Description
dimension path required string Specifies the attribute by which to group the results.
aggInterval query optional string 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 query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional array Filters results by bot crawl purpose.
userAgent query optional array Filters results by user agent.
industry query optional array Filters results by industry.
vertical query optional array Filters results by vertical.
contentType query optional array Filters results by content type category.
responseStatus query optional array Filters results by HTTP response status code (e.g. 200, 403, 404). Only [IANA-registered codes](https://www.iana.org/assignments/http-status-codes/http-status-codes.xhtml) are accepted.
responseStatusCategory query optional array Filters results by HTTP response status code category.
limitPerGroup query optional integer 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 query optional string Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/).
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/ai/bots/timeseries_groups/{dimension}

Radar ai inference 2 endpoints

GET /radar/ai/inference/summary/{dimension}

Retrieves an aggregated summary of unique accounts using Workers AI inference grouped by the specified dimension.

operationId: radar-get-ai-inference-summary

Parameters

Name In Required Type Description
dimension path required string Specifies the attribute by which to group the results.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional integer 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 query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/ai/inference/summary/{dimension}
GET /radar/ai/inference/timeseries_groups/{dimension}

Retrieves the distribution of unique accounts using Workers AI inference, grouped by the specified dimension over time.

operationId: radar-get-ai-inference-timeseries-group

Parameters

Name In Required Type Description
dimension path required string Specifies the attribute by which to group the results.
aggInterval query optional string 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 query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional integer 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 query optional string Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/).
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/ai/inference/timeseries_groups/{dimension}

Radar as112 7 endpoints

GET /radar/as112/summary/{dimension}

Retrieves the distribution of AS112 queries by the specified dimension.

operationId: radar-get-dns-as112-summary

Parameters

Name In Required Type Description
dimension path required string Specifies the attribute by which to group the results.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
location query optional array 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 query optional array 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 query optional array Filters results by DNS query type.
protocol query optional array Filters results by DNS transport protocol.
responseCode query optional array Filters results by DNS response code.
limitPerGroup query optional integer 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 query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/as112/summary/{dimension}
GET /radar/as112/timeseries

Retrieves the AS112 DNS queries over time.

operationId: radar-get-dns-as112-timeseries

Parameters

Name In Required Type Description
aggInterval query optional string 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 query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
location query optional array 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 query optional array 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 query optional array Filters results by DNS query type.
protocol query optional array Filters results by DNS transport protocol.
responseCode query optional array Filters results by DNS response code.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/as112/timeseries
GET /radar/as112/timeseries_groups/{dimension}

Retrieves the distribution of AS112 queries grouped by dimension over time.

operationId: radar-get-dns-as112-timeseries-group

Parameters

Name In Required Type Description
dimension path required string Specifies the attribute by which to group the results.
aggInterval query optional string 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 query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
location query optional array 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 query optional array 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 query optional array Filters results by DNS query type.
protocol query optional array Filters results by DNS transport protocol.
responseCode query optional array Filters results by DNS response code.
limitPerGroup query optional integer 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 query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/as112/timeseries_groups/{dimension}
GET /radar/as112/top/locations

Retrieves the top locations by AS112 DNS queries.

operationId: radar-get-dns-as112-top-locations

Parameters

Name In Required Type Description
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
location query optional array 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 query optional array 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 query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/as112/top/locations
GET /radar/as112/top/locations/dnssec/{dnssec}

Retrieves the top locations of DNS queries to AS112 with DNSSEC (DNS Security Extensions) support.

operationId: radar-get-dns-as112-top-locations-by-dnssec

Parameters

Name In Required Type Description
dnssec path required string DNSSEC (DNS Security Extensions) status.
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
location query optional array 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 query optional array 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 query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/as112/top/locations/dnssec/{dnssec}
GET /radar/as112/top/locations/edns/{edns}

Retrieves the top locations of DNS queries to AS112 with EDNS (Extension Mechanisms for DNS) support.

operationId: radar-get-dns-as112-top-locations-by-edns

Parameters

Name In Required Type Description
edns path required string EDNS (Extension Mechanisms for DNS) status.
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
location query optional array 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 query optional array 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 query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/as112/top/locations/edns/{edns}
GET /radar/as112/top/locations/ip_version/{ip_version}

Retrieves the top locations of DNS queries to AS112 for an IP version.

operationId: radar-get-dns-as112-top-locations-by-ip-version

Parameters

Name In Required Type Description
ip_version path required string IP version.
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
location query optional array 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 query optional array 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 query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/as112/top/locations/ip_version/{ip_version}

Radar agent readiness 1 endpoints

GET /radar/agent_readiness/summary/{dimension}

Returns a summary of AI agent readiness scores across scanned domains, grouped by the specified dimension. Data is sourced from weekly bulk scans. All values are raw domain counts.

operationId: radar-get-agent-readiness-summary

Parameters

Name In Required Type Description
dimension path required string Specifies the agent readiness data dimension by which to group the results.
date query optional string Filters results by the specified date.
domainCategory query optional array Filters results by domain category.
name query optional array Array of names used to label the series in the response.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/agent_readiness/summary/{dimension}

Radar annotations 3 endpoints

GET /radar/annotations

Retrieves the latest annotations.

operationId: radar-get-annotations

Parameters

Name In Required Type Description
limit query optional integer Limits the number of objects returned in the response.
offset query optional integer Skips the specified number of objects before fetching the results.
dateRange query optional string Filters results by date range.
dateStart query optional string Start of the date range (inclusive).
dateEnd query optional string End of the date range (inclusive).
dataSource query optional string Filters results by data source.
eventType query optional string Filters results by event type.
asn query optional integer Filters results by Autonomous System. Specify a single Autonomous System Number (ASN) as integer.
location query optional string Filters results by location. Specify an alpha-2 location code.
origin query optional string Filters results by origin.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/annotations
GET /radar/annotations/outages

Retrieves the latest Internet outages and anomalies.

operationId: radar-get-annotations-outages

Parameters

Name In Required Type Description
limit query optional integer Limits the number of objects returned in the response.
offset query optional integer Skips the specified number of objects before fetching the results.
dateRange query optional string Filters results by date range.
dateStart query optional string Start of the date range (inclusive).
dateEnd query optional string End of the date range (inclusive).
asn query optional integer Filters results by Autonomous System. Specify a single Autonomous System Number (ASN) as integer.
location query optional string Filters results by location. Specify an alpha-2 location code.
origin query optional string Filters results by origin.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/annotations/outages
GET /radar/annotations/outages/locations

Retrieves the number of outages by location.

operationId: radar-get-annotations-outages-top

Parameters

Name In Required Type Description
limit query optional integer Limits the number of objects returned in the response.
dateRange query optional string Filters results by date range.
dateStart query optional string Start of the date range (inclusive).
dateEnd query optional string End of the date range (inclusive).
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/annotations/outages/locations

Radar autonomous systems 6 endpoints

GET /radar/entities/asns

Retrieves a list of autonomous systems.

operationId: radar-get-entities-asn-list

Parameters

Name In Required Type Description
limit query optional integer Limits the number of objects returned in the response.
offset query optional integer Skips the specified number of objects before fetching the results.
asn query optional string Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list.
location query optional string Filters results by location. Specify an alpha-2 location code.
orderBy query optional string Specifies the metric to order the ASNs by.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/entities/asns
GET /radar/entities/asns/botnet_threat_feed

Retrieves a ranked list of Autonomous Systems based on their presence in the Cloudflare Botnet Threat Feed. Rankings can be sorted by offense count or number of bad IPs. Optionally compare to a previous date to see rank changes.

operationId: radar-get-as-botnet-threat-feed

Parameters

Name In Required Type Description
limit query optional integer Limits the number of objects returned in the response.
offset query optional integer Skips the specified number of objects before fetching the results.
metric query optional string Metric to rank ASNs by.
date query optional string 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 query optional string Relative date range for rank change comparison (e.g., "1d", "7d", "30d").
location query optional string Filters results by location. Specify an alpha-2 location code.
asn query optional array 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 query optional string Sort order.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/entities/asns/botnet_threat_feed
GET /radar/entities/asns/ip

Retrieves the requested autonomous system information based on IP address. Population estimates come from APNIC (refer to https://labs.apnic.net/?p=526).

operationId: radar-get-entities-asn-by-ip

Parameters

Name In Required Type Description
ip query required string IP address.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/entities/asns/ip
GET /radar/entities/asns/{asn}

Retrieves the requested autonomous system information. (A confidence level below `5` indicates a low level of confidence in the traffic data - normally this happens because Cloudflare has a small amount of traffic from/to this AS). Population estimates come from APNIC (refer to https://labs.apnic.net/?p=526).

operationId: radar-get-entities-asn-by-id

Parameters

Name In Required Type Description
asn path required integer Single Autonomous System Number (ASN) as integer.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/entities/asns/{asn}
GET /radar/entities/asns/{asn}/as_set

Retrieves Internet Routing Registry AS-SETs that an AS is a member of.

operationId: radar-get-asns-as-set

Parameters

Name In Required Type Description
asn path required integer Retrieves all AS-SETs that the given AS is a member of.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/entities/asns/{asn}/as_set
GET /radar/entities/asns/{asn}/rel

Retrieves AS-level relationship for given networks.

operationId: radar-get-asns-rel

Parameters

Name In Required Type Description
asn path required integer Retrieves all ASNs with provider-customer or peering relationships with the given ASN.
asn2 query optional integer Retrieves the AS relationship of ASN2 with respect to the given ASN.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/entities/asns/{asn}/rel

Radar bgp 15 endpoints

GET /radar/bgp/hijacks/events

Retrieves the BGP hijack events.

operationId: radar-get-bgp-hijacks-events

Parameters

Name In Required Type Description
page query optional integer Current page number, starting from 1.
per_page query optional integer Number of entries per page.
eventId query optional integer The unique identifier of a event.
hijackerAsn query optional integer The potential hijacker AS of a BGP hijack event.
victimAsn query optional integer The potential victim AS of a BGP hijack event.
involvedAsn query optional integer The potential hijacker or victim AS of a BGP hijack event.
involvedCountry query optional string The country code of the potential hijacker or victim AS of a BGP hijack event.
prefix query optional string
minConfidence query optional integer Filters events by minimum confidence score (1-4 low, 5-7 mid, 8+ high).
maxConfidence query optional integer Filters events by maximum confidence score (1-4 low, 5-7 mid, 8+ high).
dateRange query optional string Filters results by date range.
dateStart query optional string Start of the date range (inclusive).
dateEnd query optional string End of the date range (inclusive).
sortBy query optional string Sorts results by the specified field.
sortOrder query optional string Sort order.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/bgp/hijacks/events
GET /radar/bgp/ips/timeseries

Retrieves time series data for the announced IP space count, represented as the number of IPv4 /24s and IPv6 /48s, for a given ASN.

operationId: radar-get-bgp-ips-timeseries

Parameters

Name In Required Type Description
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array Filters results by location. Specify a comma-separated list of alpha-2 location codes.
ipVersion query optional array Filters results by IP version (Ipv4 vs. IPv6).
includeDelay query optional boolean Includes data delay meta information.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/bgp/ips/timeseries
GET /radar/bgp/leaks/events

Retrieves the BGP route leak events.

operationId: radar-get-bgp-route-leak-events

Parameters

Name In Required Type Description
page query optional integer Current page number, starting from 1.
per_page query optional integer Number of entries per page.
eventId query optional integer The unique identifier of a event.
leakAsn query optional integer The leaking AS of a route leak event.
involvedAsn query optional integer ASN that is causing or affected by a route leak event.
involvedCountry query optional string Country code of a involved ASN in a route leak event.
dateRange query optional string Filters results by date range.
dateStart query optional string Start of the date range (inclusive).
dateEnd query optional string End of the date range (inclusive).
sortBy query optional string Sorts results by the specified field.
sortOrder query optional string Sort order.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/bgp/leaks/events
GET /radar/bgp/routes/ases

Retrieves all ASes in the current global routing tables with routing statistics.

operationId: radar-get-bgp-routes-asns

Parameters

Name In Required Type Description
location query optional string Filters results by location. Specify an alpha-2 location code.
limit query optional integer Limits the number of objects returned in the response.
sortBy query optional string Sorts results by the specified field.
sortOrder query optional string Sort order.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/bgp/routes/ases
GET /radar/bgp/routes/moas

Retrieves all Multi-Origin AS (MOAS) prefixes in the global routing tables.

operationId: radar-get-bgp-pfx2as-moas

Parameters

Name In Required Type Description
origin query optional integer Lookup MOASes originated by the given ASN.
prefix query optional string
invalid_only query optional boolean Lookup only RPKI invalid MOASes.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/bgp/routes/moas
GET /radar/bgp/routes/pfx2as

Retrieves the prefix-to-ASN mapping from global routing tables.

operationId: radar-get-bgp-pfx2as

Parameters

Name In Required Type Description
prefix query optional string
origin query optional integer Lookup prefixes originated by the given ASN.
rpkiStatus query optional string Return only results with matching rpki status: valid, invalid or unknown.
longestPrefixMatch query optional boolean 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 query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/bgp/routes/pfx2as
GET /radar/bgp/routes/realtime

Retrieves real-time BGP routes for a prefix, using public real-time data collectors (RouteViews and RIPE RIS).

operationId: radar-get-bgp-routes-realtime

Parameters

Name In Required Type Description
prefix query optional string
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/bgp/routes/realtime
GET /radar/bgp/routes/stats

Retrieves the BGP routing table stats.

operationId: radar-get-bgp-routes-stats

Parameters

Name In Required Type Description
asn query optional integer Filters results by Autonomous System. Specify a single Autonomous System Number (ASN) as integer.
location query optional string Filters results by location. Specify an alpha-2 location code.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/bgp/routes/stats
GET /radar/bgp/rpki/aspa/changes

Retrieves ASPA (Autonomous System Provider Authorization) changes over time. Returns daily aggregated changes including additions, removals, and modifications of ASPA objects.

operationId: radar-get-bgp-rpki-aspa-changes

Parameters

Name In Required Type Description
dateStart query optional string Start of the date range (inclusive).
dateEnd query optional string End of the date range (inclusive).
asn query optional integer Filter changes involving this ASN (as customer or provider).
includeAsnInfo query optional boolean Include ASN metadata (name, country) in response.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/bgp/rpki/aspa/changes
GET /radar/bgp/rpki/aspa/snapshot

Retrieves current or historical ASPA (Autonomous System Provider Authorization) objects. ASPA objects define which ASNs are authorized upstream providers for a customer ASN.

operationId: radar-get-bgp-rpki-aspa-snapshot

Parameters

Name In Required Type Description
customerAsn query optional integer Filter by customer ASN (the ASN publishing the ASPA object).
providerAsn query optional integer Filter by provider ASN (an authorized upstream provider in ASPA objects).
date query optional string Filters results by the specified datetime (ISO 8601).
includeAsnInfo query optional boolean Include ASN metadata (name, country) in response.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/bgp/rpki/aspa/snapshot
GET /radar/bgp/rpki/aspa/timeseries

Retrieves ASPA (Autonomous System Provider Authorization) object count over time. Supports filtering by RIR or location (country code) to generate multiple named series. If no RIR or location filter is specified, returns total count.

operationId: radar-get-bgp-rpki-aspa-timeseries

Parameters

Name In Required Type Description
dateStart query optional string Start of the date range (inclusive).
dateEnd query optional string End of the date range (inclusive).
name query optional array Array of names used to label the series in the response.
rir query optional array Filter by Regional Internet Registry (RIR). Multiple RIRs generate multiple series.
location query optional array Filters results by location. Specify a comma-separated list of alpha-2 location codes.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/bgp/rpki/aspa/timeseries
GET /radar/bgp/timeseries

Retrieves BGP updates over time. When requesting updates for an autonomous system, only BGP updates of type announcement are returned.

operationId: radar-get-bgp-timeseries

Parameters

Name In Required Type Description
aggInterval query optional string 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 query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
prefix query optional array Filters results by BGP network prefix.
updateType query optional array Filters results by BGP update type.
asn query optional array 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 query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/bgp/timeseries
GET /radar/bgp/top/ases

Retrieves the top autonomous systems by BGP updates (announcements only).

operationId: radar-get-bgp-top-ases

Parameters

Name In Required Type Description
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array Filters results by BGP network prefix.
updateType query optional array Filters results by BGP update type.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/bgp/top/ases
GET /radar/bgp/top/ases/prefixes

Retrieves the full list of autonomous systems on the global routing table ordered by announced prefixes count. The data comes from public BGP MRT data archives and updates every 2 hours.

operationId: radar-get-bgp-top-asns-by-prefixes

Parameters

Name In Required Type Description
country query optional string Alpha-2 country code.
limit query optional integer Maximum number of ASes to return.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/bgp/top/ases/prefixes
GET /radar/bgp/top/prefixes

Retrieves the top network prefixes by BGP updates.

operationId: radar-get-bgp-top-prefixes

Parameters

Name In Required Type Description
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array Filters results by BGP update type.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/bgp/top/prefixes

Radar bots 5 endpoints

GET /radar/bots

Retrieves a list of bots.

operationId: radar-get-bots

Parameters

Name In Required Type Description
limit query optional integer Limits the number of objects returned in the response.
offset query optional integer Skips the specified number of objects before fetching the results.
botCategory query optional string Filters results by bot category.
botOperator query optional string Filters results by bot operator.
kind query optional string Filters results by bot kind.
botVerificationStatus query optional string Filters results by bot verification status.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/bots
GET /radar/bots/summary/{dimension}

Retrieves an aggregated summary of bots HTTP requests grouped by the specified dimension.

operationId: radar-get-bots-summary

Parameters

Name In Required Type Description
dimension path required string Specifies the attribute by which to group the results.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional integer 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 query optional array Filters results by bot name.
botOperator query optional array Filters results by bot operator.
botCategory query optional array Filters results by bot category.
botKind query optional array Filters results by bot kind.
botVerificationStatus query optional array Filters results by bot verification status (Verified vs. Unverified).
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/bots/summary/{dimension}
GET /radar/bots/timeseries

Retrieves bots HTTP request volume over time.

operationId: radar-get-bots-timeseries

Parameters

Name In Required Type Description
aggInterval query optional string 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 query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional array Filters results by bot name.
botOperator query optional array Filters results by bot operator.
botCategory query optional array Filters results by bot category.
botKind query optional array Filters results by bot kind.
botVerificationStatus query optional array Filters results by bot verification status (Verified vs. Unverified).
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/bots/timeseries
GET /radar/bots/timeseries_groups/{dimension}

Retrieves the distribution of HTTP requests from bots, grouped by the specified dimension over time.

operationId: radar-get-bots-timeseries-group

Parameters

Name In Required Type Description
dimension path required string Specifies the attribute by which to group the results.
aggInterval query optional string 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 query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional integer 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 query optional array Filters results by bot name.
botOperator query optional array Filters results by bot operator.
botCategory query optional array Filters results by bot category.
botKind query optional array Filters results by bot kind.
botVerificationStatus query optional array Filters results by bot verification status (Verified vs. Unverified).
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/bots/timeseries_groups/{dimension}
GET /radar/bots/{bot_slug}

Retrieves the requested bot information.

operationId: radar-get-bot-details

Parameters

Name In Required Type Description
bot_slug path required string Bot slug.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/bots/{bot_slug}

Radar certificate transparency 7 endpoints

GET /radar/ct/authorities

Retrieves a list of certificate authorities.

operationId: radar-get-certificate-authorities

Parameters

Name In Required Type Description
limit query optional integer Limits the number of objects returned in the response.
offset query optional integer Skips the specified number of objects before fetching the results.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/ct/authorities
GET /radar/ct/authorities/{ca_slug}

Retrieves the requested CA information.

operationId: radar-get-certificate-authority-details

Parameters

Name In Required Type Description
ca_slug path required string Certificate authority SHA256 fingerprint.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/ct/authorities/{ca_slug}
GET /radar/ct/logs

Retrieves a list of certificate logs.

operationId: radar-get-certificate-logs

Parameters

Name In Required Type Description
limit query optional integer Limits the number of objects returned in the response.
offset query optional integer Skips the specified number of objects before fetching the results.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/ct/logs
GET /radar/ct/logs/{log_slug}

Retrieves the requested certificate log information.

operationId: radar-get-certificate-log-details

Parameters

Name In Required Type Description
log_slug path required string Certificate log slug.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/ct/logs/{log_slug}
GET /radar/ct/summary/{dimension}

Retrieves an aggregated summary of certificates grouped by the specified dimension.

operationId: radar-get-ct-summary

Parameters

Name In Required Type Description
dimension path required string Specifies the certificate attribute by which to group the results.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
limitPerGroup query optional integer 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 query optional array Filters results by certificate authority.
caOwner query optional array Filters results by certificate authority owner.
duration query optional array Filters results by certificate duration.
entryType query optional array Filters results by entry type (certificate vs. pre-certificate).
expirationStatus query optional array Filters results by expiration status (expired vs. valid).
hasIps query optional array Filters results based on whether the certificates are bound to specific IP addresses.
hasWildcards query optional array Filters results based on whether the certificates contain wildcard domains.
log query optional array Filters results by certificate log.
logApi query optional array Filters results by certificate log API (RFC6962 vs. static).
logOperator query optional array Filters results by certificate log operator.
publicKeyAlgorithm query optional array Filters results by public key algorithm.
signatureAlgorithm query optional array Filters results by signature algorithm.
tld query optional array Filters results by top-level domain.
validationLevel query optional array Filters results by validation level.
uniqueEntries query optional array Specifies whether to filter out duplicate certificates and pre-certificates. Set to true for unique entries only.
normalization query optional string Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/).
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/ct/summary/{dimension}
GET /radar/ct/timeseries

Retrieves certificate volume over time.

operationId: radar-get-ct-timeseries

Parameters

Name In Required Type Description
aggInterval query optional string 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 query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
ca query optional array Filters results by certificate authority.
caOwner query optional array Filters results by certificate authority owner.
duration query optional array Filters results by certificate duration.
entryType query optional array Filters results by entry type (certificate vs. pre-certificate).
expirationStatus query optional array Filters results by expiration status (expired vs. valid).
hasIps query optional array Filters results based on whether the certificates are bound to specific IP addresses.
hasWildcards query optional array Filters results based on whether the certificates contain wildcard domains.
log query optional array Filters results by certificate log.
logApi query optional array Filters results by certificate log API (RFC6962 vs. static).
logOperator query optional array Filters results by certificate log operator.
publicKeyAlgorithm query optional array Filters results by public key algorithm.
signatureAlgorithm query optional array Filters results by signature algorithm.
tld query optional array Filters results by top-level domain.
validationLevel query optional array Filters results by validation level.
uniqueEntries query optional array Specifies whether to filter out duplicate certificates and pre-certificates. Set to true for unique entries only.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/ct/timeseries
GET /radar/ct/timeseries_groups/{dimension}

Retrieves the distribution of certificates grouped by the specified dimension over time.

operationId: radar-get-ct-timeseries-group

Parameters

Name In Required Type Description
dimension path required string Specifies the certificate attribute by which to group the results.
aggInterval query optional string 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 query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
limitPerGroup query optional integer 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 query optional array Filters results by certificate authority.
caOwner query optional array Filters results by certificate authority owner.
duration query optional array Filters results by certificate duration.
entryType query optional array Filters results by entry type (certificate vs. pre-certificate).
expirationStatus query optional array Filters results by expiration status (expired vs. valid).
hasIps query optional array Filters results based on whether the certificates are bound to specific IP addresses.
hasWildcards query optional array Filters results based on whether the certificates contain wildcard domains.
log query optional array Filters results by certificate log.
logApi query optional array Filters results by certificate log API (RFC6962 vs. static).
logOperator query optional array Filters results by certificate log operator.
publicKeyAlgorithm query optional array Filters results by public key algorithm.
signatureAlgorithm query optional array Filters results by signature algorithm.
validationLevel query optional array Filters results by validation level.
tld query optional array Filters results by top-level domain.
normalization query optional string Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/).
uniqueEntries query optional array Specifies whether to filter out duplicate certificates and pre-certificates. Set to true for unique entries only.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/ct/timeseries_groups/{dimension}

Radar dns 5 endpoints

GET /radar/dns/summary/{dimension}

Retrieves the distribution of DNS queries by the specified dimension.

operationId: radar-get-dns-summary

Parameters

Name In Required Type Description
dimension path required string Specifies the attribute by which to group the results.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional array Filters results based on cache status.
nodata query optional array Specifies whether the response includes empty DNS responses (NODATA).
protocol query optional array Filters results by DNS transport protocol.
queryType query optional array Filters results by DNS query type.
responseCode query optional array Filters results by DNS response code.
responseTtl query optional array Filters results by DNS response TTL.
dnssec query optional array Filters results based on DNSSEC (DNS Security Extensions) support.
dnssecAware query optional array Filters results based on DNSSEC (DNS Security Extensions) client awareness.
dnssecE2e query optional array Filters results based on DNSSEC-validated answers by end-to-end security status.
ipVersion query optional array Filters results by IP version (Ipv4 vs. IPv6).
limitPerGroup query optional integer 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 query optional array Filters results based on whether the queries have a matching answer.
tld query optional array Filters results by top-level domain.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/dns/summary/{dimension}
GET /radar/dns/timeseries

Retrieves normalized query volume to the 1.1.1.1 DNS resolver over time.

operationId: radar-get-dns-timeseries

Parameters

Name In Required Type Description
aggInterval query optional string 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 query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional array Filters results based on cache status.
nodata query optional array Specifies whether the response includes empty DNS responses (NODATA).
protocol query optional array Filters results by DNS transport protocol.
queryType query optional array Filters results by DNS query type.
responseCode query optional array Filters results by DNS response code.
responseTtl query optional array Filters results by DNS response TTL.
dnssec query optional array Filters results based on DNSSEC (DNS Security Extensions) support.
dnssecAware query optional array Filters results based on DNSSEC (DNS Security Extensions) client awareness.
dnssecE2e query optional array Filters results based on DNSSEC-validated answers by end-to-end security status.
ipVersion query optional array Filters results by IP version (Ipv4 vs. IPv6).
matchingAnswer query optional array Filters results based on whether the queries have a matching answer.
tld query optional array Filters results by top-level domain.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/dns/timeseries
GET /radar/dns/timeseries_groups/{dimension}

Retrieves the distribution of DNS queries grouped by dimension over time.

operationId: radar-get-dns-timeseries-group

Parameters

Name In Required Type Description
dimension path required string Specifies the attribute by which to group the results.
aggInterval query optional string 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 query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional array Filters results based on cache status.
nodata query optional array Specifies whether the response includes empty DNS responses (NODATA).
protocol query optional array Filters results by DNS transport protocol.
queryType query optional array Filters results by DNS query type.
responseCode query optional array Filters results by DNS response code.
responseTtl query optional array Filters results by DNS response TTL.
dnssec query optional array Filters results based on DNSSEC (DNS Security Extensions) support.
dnssecAware query optional array Filters results based on DNSSEC (DNS Security Extensions) client awareness.
dnssecE2e query optional array Filters results based on DNSSEC-validated answers by end-to-end security status.
ipVersion query optional array Filters results by IP version (Ipv4 vs. IPv6).
limitPerGroup query optional integer 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 query optional array Filters results based on whether the queries have a matching answer.
tld query optional array Filters results by top-level domain.
normalization query optional string Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/).
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/dns/timeseries_groups/{dimension}
GET /radar/dns/top/ases

Retrieves the top autonomous systems by DNS queries made to 1.1.1.1 DNS resolver.

operationId: radar-get-dns-top-ases

Parameters

Name In Required Type Description
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional array Filters results by domain name.
cacheHit query optional array Filters results based on cache status.
nodata query optional array Specifies whether the response includes empty DNS responses (NODATA).
protocol query optional array Filters results by DNS transport protocol.
queryType query optional array Filters results by DNS query type.
responseCode query optional array Filters results by DNS response code.
responseTtl query optional array Filters results by DNS response TTL.
dnssec query optional array Filters results based on DNSSEC (DNS Security Extensions) support.
dnssecAware query optional array Filters results based on DNSSEC (DNS Security Extensions) client awareness.
dnssecE2e query optional array Filters results based on DNSSEC-validated answers by end-to-end security status.
ipVersion query optional array Filters results by IP version (Ipv4 vs. IPv6).
matchingAnswer query optional array Filters results based on whether the queries have a matching answer.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/dns/top/ases
GET /radar/dns/top/locations

Retrieves the top locations by DNS queries made to 1.1.1.1 DNS resolver.

operationId: radar-get-dns-top-locations

Parameters

Name In Required Type Description
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional array Filters results by domain name.
cacheHit query optional array Filters results based on cache status.
nodata query optional array Specifies whether the response includes empty DNS responses (NODATA).
protocol query optional array Filters results by DNS transport protocol.
queryType query optional array Filters results by DNS query type.
responseCode query optional array Filters results by DNS response code.
responseTtl query optional array Filters results by DNS response TTL.
dnssec query optional array Filters results based on DNSSEC (DNS Security Extensions) support.
dnssecAware query optional array Filters results based on DNSSEC (DNS Security Extensions) client awareness.
dnssecE2e query optional array Filters results based on DNSSEC-validated answers by end-to-end security status.
ipVersion query optional array Filters results by IP version (Ipv4 vs. IPv6).
matchingAnswer query optional array Filters results based on whether the queries have a matching answer.
tld query optional array Filters results by top-level domain.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/dns/top/locations

Radar datasets 2 endpoints

GET /radar/datasets

Retrieves a list of datasets.

operationId: radar-get-reports-datasets

Parameters

Name In Required Type Description
limit query optional integer Limits the number of objects returned in the response.
offset query optional integer Skips the specified number of objects before fetching the results.
datasetType query optional string Filters results by dataset type.
date query optional string Filters results by the specified date.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/datasets
GET /radar/datasets/{alias}

Retrieves the CSV content of a given dataset by alias or ID. When getting the content by alias the latest dataset is returned, optionally filtered by the latest available at a given date.

operationId: radar-get-reports-dataset-download

Parameters

Name In Required Type Description
alias path required string Dataset alias or ID.

Responses

200 Successful response.
400 Bad request.
GET /radar/datasets/{alias}

Radar domains ranking 3 endpoints

GET /radar/ranking/domain/{domain}

Retrieves domain rank details. Cloudflare provides an ordered rank for the top 100 domains, but for the remainder it only provides ranking buckets like top 200 thousand, top one million, etc.. These are available through Radar datasets endpoints.

operationId: radar-get-ranking-domain-details

Parameters

Name In Required Type Description
domain path required string Domain name.
limit query optional integer Limits the number of objects returned in the response.
rankingType query optional string The ranking type.
name query optional array Array of names used to label the series in the response.
includeTopLocations query optional boolean Includes top locations in the response.
date query optional array Filters results by the specified array of dates.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/ranking/domain/{domain}
GET /radar/ranking/timeseries_groups

Retrieves domains rank over time.

operationId: radar-get-ranking-domain-timeseries

Parameters

Name In Required Type Description
limit query optional integer Limits the number of objects returned in the response.
rankingType query optional string The ranking type.
name query optional array Array of names used to label the series in the response.
location query optional array Filters results by location. Specify a comma-separated list of alpha-2 location codes.
domains query optional array Filters results by domain name. Specify a comma-separated list of domain names.
domainCategory query optional array Filters results by domain category.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/ranking/timeseries_groups
GET /radar/ranking/top

Retrieves the top or trending domains based on their rank. Popular domains are domains of broad appeal based on how people use the Internet. Trending domains are domains that are generating a surge in interest. For more information on top domains, see https://blog.cloudflare.com/radar-domain-rankings/.

operationId: radar-get-ranking-top-domains

Parameters

Name In Required Type Description
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
location query optional array Filters results by location. Specify a comma-separated list of alpha-2 location codes.
domainCategory query optional array Filters results by domain category.
date query optional array Filters results by the specified array of dates.
rankingType query optional string The ranking type.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/ranking/top

Radar email routing 2 endpoints

GET /radar/email/routing/summary/{dimension}

Retrieves the distribution of email routing metrics by the specified dimension.

operationId: radar-get-email-routing-summary

Parameters

Name In Required Type Description
dimension path required string Specifies the attribute by which to group the results.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
arc query optional array Filters results by ARC (Authenticated Received Chain) validation.
dkim query optional array Filters results by DKIM (DomainKeys Identified Mail) validation status.
dmarc query optional array Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status.
spf query optional array Filters results by SPF (Sender Policy Framework) validation status.
ipVersion query optional array Filters results by IP version (Ipv4 vs. IPv6).
encrypted query optional array Filters results by encryption status (encrypted vs. not-encrypted).
limitPerGroup query optional integer 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 query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/email/routing/summary/{dimension}
GET /radar/email/routing/timeseries_groups/{dimension}

Retrieves the distribution of email routing metrics grouped by dimension over time.

operationId: radar-get-email-routing-timeseries-group

Parameters

Name In Required Type Description
dimension path required string Specifies the attribute by which to group the results.
aggInterval query optional string 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 query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
arc query optional array Filters results by ARC (Authenticated Received Chain) validation.
dkim query optional array Filters results by DKIM (DomainKeys Identified Mail) validation status.
dmarc query optional array Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status.
spf query optional array Filters results by SPF (Sender Policy Framework) validation status.
ipVersion query optional array Filters results by IP version (Ipv4 vs. IPv6).
encrypted query optional array Filters results by encryption status (encrypted vs. not-encrypted).
limitPerGroup query optional integer 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 query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/email/routing/timeseries_groups/{dimension}

Radar email security 6 endpoints

GET /radar/email/security/summary/{dimension}

Retrieves the distribution of email security metrics by the specified dimension.

operationId: radar-get-email-security-summary

Parameters

Name In Required Type Description
dimension path required string Specifies the attribute by which to group the results.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
arc query optional array Filters results by ARC (Authenticated Received Chain) validation.
dkim query optional array Filters results by DKIM (DomainKeys Identified Mail) validation status.
dmarc query optional array Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status.
spf query optional array Filters results by SPF (Sender Policy Framework) validation status.
tlsVersion query optional array Filters results by TLS version.
limitPerGroup query optional integer 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 query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/email/security/summary/{dimension}
GET /radar/email/security/timeseries_groups/{dimension}

Retrieves the distribution of email security metrics grouped by dimension over time.

operationId: radar-get-email-security-timeseries-group

Parameters

Name In Required Type Description
dimension path required string Specifies the attribute by which to group the results.
aggInterval query optional string 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 query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
arc query optional array Filters results by ARC (Authenticated Received Chain) validation.
dkim query optional array Filters results by DKIM (DomainKeys Identified Mail) validation status.
dmarc query optional array Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status.
spf query optional array Filters results by SPF (Sender Policy Framework) validation status.
tlsVersion query optional array Filters results by TLS version.
limitPerGroup query optional integer 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 query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/email/security/timeseries_groups/{dimension}
GET /radar/email/security/top/tlds

Retrieves the top TLDs by number of email messages.

operationId: radar-get-email-security-top-tlds-by-messages

Parameters

Name In Required Type Description
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
arc query optional array Filters results by ARC (Authenticated Received Chain) validation.
dkim query optional array Filters results by DKIM (DomainKeys Identified Mail) validation status.
dmarc query optional array Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status.
spf query optional array Filters results by SPF (Sender Policy Framework) validation status.
tlsVersion query optional array Filters results by TLS version.
tldCategory query optional string Filters results by TLD category.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/email/security/top/tlds
GET /radar/email/security/top/tlds/malicious/{malicious}

Retrieves the top TLDs by emails classified as malicious or not.

operationId: radar-get-email-security-top-tlds-by-malicious

Parameters

Name In Required Type Description
malicious path required string Malicious classification.
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
arc query optional array Filters results by ARC (Authenticated Received Chain) validation.
dkim query optional array Filters results by DKIM (DomainKeys Identified Mail) validation status.
dmarc query optional array Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status.
spf query optional array Filters results by SPF (Sender Policy Framework) validation status.
tlsVersion query optional array Filters results by TLS version.
tldCategory query optional string Filters results by TLD category.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/email/security/top/tlds/malicious/{malicious}
GET /radar/email/security/top/tlds/spam/{spam}

Retrieves the top TLDs by emails classified as spam or not.

operationId: radar-get-email-security-top-tlds-by-spam

Parameters

Name In Required Type Description
spam path required string Spam classification.
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
arc query optional array Filters results by ARC (Authenticated Received Chain) validation.
dkim query optional array Filters results by DKIM (DomainKeys Identified Mail) validation status.
dmarc query optional array Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status.
spf query optional array Filters results by SPF (Sender Policy Framework) validation status.
tlsVersion query optional array Filters results by TLS version.
tldCategory query optional string Filters results by TLD category.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/email/security/top/tlds/spam/{spam}
GET /radar/email/security/top/tlds/spoof/{spoof}

Retrieves the top TLDs by emails classified as spoof or not.

operationId: radar-get-email-security-top-tlds-by-spoof

Parameters

Name In Required Type Description
spoof path required string Spoof classification.
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
arc query optional array Filters results by ARC (Authenticated Received Chain) validation.
dkim query optional array Filters results by DKIM (DomainKeys Identified Mail) validation status.
dmarc query optional array Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status.
spf query optional array Filters results by SPF (Sender Policy Framework) validation status.
tlsVersion query optional array Filters results by TLS version.
tldCategory query optional string Filters results by TLD category.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/email/security/top/tlds/spoof/{spoof}

Radar geolocations 2 endpoints

GET /radar/geolocations

Retrieves a list of geolocations. Geolocation names can be localized by sending an `Accept-Language` HTTP header with a BCP 47 language tag (e.g., `Accept-Language: pt-PT`). The full quality-value chain is supported (e.g., `pt-PT,pt;q=0.9,en;q=0.8`).

operationId: radar-get-geolocations

Parameters

Name In Required Type Description
limit query optional integer Limits the number of objects returned in the response.
offset query optional integer Skips the specified number of objects before fetching the results.
geoId query optional string Filters results by geolocation. Specify a comma-separated list of GeoNames IDs.
location query optional string Filters results by location. Specify a comma-separated list of alpha-2 location codes.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/geolocations
GET /radar/geolocations/{geo_id}

Retrieves the requested Geolocation information. Geolocation names can be localized by sending an `Accept-Language` HTTP header with a BCP 47 language tag (e.g., `Accept-Language: pt-PT`). The full quality-value chain is supported (e.g., `pt-PT,pt;q=0.9,en;q=0.8`).

operationId: radar-get-geolocation-details

Parameters

Name In Required Type Description
geo_id path required string Geolocation ID. Refer to [GeoNames](https://download.geonames.org/export/dump/readme.txt)
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/geolocations/{geo_id}

Radar http 21 endpoints

GET /radar/http/summary/{dimension}

Retrieves the distribution of HTTP requests by the specified dimension.

operationId: radar-get-http-summary

Parameters

Name In Required Type Description
dimension path required string Specifies the HTTP attribute by which to group the results.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional array 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 query optional array Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/).
deviceType query optional array Filters results by device type.
httpProtocol query optional array Filters results by HTTP protocol (HTTP vs. HTTPS).
httpVersion query optional array Filters results by HTTP version.
ipVersion query optional array Filters results by IP version (Ipv4 vs. IPv6).
os query optional array Filters results by operating system.
tlsVersion query optional array Filters results by TLS version.
limitPerGroup query optional integer 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 query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/http/summary/{dimension}
GET /radar/http/timeseries

Retrieves the HTTP requests over time.

operationId: radar-get-http-timeseries

Parameters

Name In Required Type Description
aggInterval query optional string 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 query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional array 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 query optional string Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/).
botClass query optional array Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/).
deviceType query optional array Filters results by device type.
httpProtocol query optional array Filters results by HTTP protocol (HTTP vs. HTTPS).
httpVersion query optional array Filters results by HTTP version.
ipVersion query optional array Filters results by IP version (Ipv4 vs. IPv6).
os query optional array Filters results by operating system.
tlsVersion query optional array Filters results by TLS version.
browserFamily query optional array Filters results by browser family.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/http/timeseries
GET /radar/http/timeseries_groups/{dimension}

Retrieves the distribution of HTTP requests grouped by dimension.

operationId: radar-get-http-timeseries-group

Parameters

Name In Required Type Description
dimension path required string Specifies the HTTP attribute by which to group the results.
aggInterval query optional string 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 query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional array 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 query optional integer 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 query optional array Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/).
deviceType query optional array Filters results by device type.
httpProtocol query optional array Filters results by HTTP protocol (HTTP vs. HTTPS).
httpVersion query optional array Filters results by HTTP version.
normalization query optional string Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/).
ipVersion query optional array Filters results by IP version (Ipv4 vs. IPv6).
os query optional array Filters results by operating system.
tlsVersion query optional array Filters results by TLS version.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/http/timeseries_groups/{dimension}
GET /radar/http/top/ases

Retrieves the top autonomous systems by HTTP requests.

operationId: radar-get-http-top-ases-by-http-requests

Parameters

Name In Required Type Description
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional array 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 query optional array Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/).
deviceType query optional array Filters results by device type.
httpProtocol query optional array Filters results by HTTP protocol (HTTP vs. HTTPS).
httpVersion query optional array Filters results by HTTP version.
ipVersion query optional array Filters results by IP version (Ipv4 vs. IPv6).
os query optional array Filters results by operating system.
tlsVersion query optional array Filters results by TLS version.
browserFamily query optional array Filters results by browser family.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/http/top/ases
GET /radar/http/top/ases/bot_class/{bot_class}

Retrieves the top autonomous systems, by HTTP requests, of the requested bot class.

operationId: radar-get-http-top-ases-by-bot-class

Parameters

Name In Required Type Description
bot_class path required string Bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/).
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional array 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 query optional array Filters results by device type.
httpProtocol query optional array Filters results by HTTP protocol (HTTP vs. HTTPS).
httpVersion query optional array Filters results by HTTP version.
ipVersion query optional array Filters results by IP version (Ipv4 vs. IPv6).
os query optional array Filters results by operating system.
tlsVersion query optional array Filters results by TLS version.
browserFamily query optional array Filters results by browser family.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/http/top/ases/bot_class/{bot_class}
GET /radar/http/top/ases/browser_family/{browser_family}

Retrieves the top autonomous systems, by HTTP requests, of the requested browser family.

operationId: radar-get-http-top-ases-by-browser-family

Parameters

Name In Required Type Description
browser_family path required string Browser family.
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional array 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 query optional array Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/).
deviceType query optional array Filters results by device type.
httpProtocol query optional array Filters results by HTTP protocol (HTTP vs. HTTPS).
httpVersion query optional array Filters results by HTTP version.
ipVersion query optional array Filters results by IP version (Ipv4 vs. IPv6).
os query optional array Filters results by operating system.
tlsVersion query optional array Filters results by TLS version.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/http/top/ases/browser_family/{browser_family}
GET /radar/http/top/ases/device_type/{device_type}

Retrieves the top autonomous systems, by HTTP requests, of the requested device type.

operationId: radar-get-http-top-ases-by-device-type

Parameters

Name In Required Type Description
device_type path required string Device type.
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional array 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 query optional array Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/).
httpProtocol query optional array Filters results by HTTP protocol (HTTP vs. HTTPS).
httpVersion query optional array Filters results by HTTP version.
ipVersion query optional array Filters results by IP version (Ipv4 vs. IPv6).
os query optional array Filters results by operating system.
tlsVersion query optional array Filters results by TLS version.
browserFamily query optional array Filters results by browser family.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/http/top/ases/device_type/{device_type}
GET /radar/http/top/ases/http_protocol/{http_protocol}

Retrieves the top autonomous systems, by HTTP requests, of the requested HTTP protocol.

operationId: radar-get-http-top-ases-by-http-protocol

Parameters

Name In Required Type Description
http_protocol path required string HTTP protocol (HTTP vs. HTTPS).
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional array 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 query optional array Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/).
deviceType query optional array Filters results by device type.
httpVersion query optional array Filters results by HTTP version.
ipVersion query optional array Filters results by IP version (Ipv4 vs. IPv6).
os query optional array Filters results by operating system.
tlsVersion query optional array Filters results by TLS version.
browserFamily query optional array Filters results by browser family.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/http/top/ases/http_protocol/{http_protocol}
GET /radar/http/top/ases/http_version/{http_version}

Retrieves the top autonomous systems, by HTTP requests, of the requested HTTP version.

operationId: radar-get-http-top-ases-by-http-version

Parameters

Name In Required Type Description
http_version path required string HTTP version.
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional array 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 query optional array Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/).
deviceType query optional array Filters results by device type.
httpProtocol query optional array Filters results by HTTP protocol (HTTP vs. HTTPS).
ipVersion query optional array Filters results by IP version (Ipv4 vs. IPv6).
os query optional array Filters results by operating system.
tlsVersion query optional array Filters results by TLS version.
browserFamily query optional array Filters results by browser family.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/http/top/ases/http_version/{http_version}
GET /radar/http/top/ases/ip_version/{ip_version}

Retrieves the top autonomous systems, by HTTP requests, of the requested IP version.

operationId: radar-get-http-top-ases-by-ip-version

Parameters

Name In Required Type Description
ip_version path required string IP version.
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional array 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 query optional array Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/).
deviceType query optional array Filters results by device type.
httpProtocol query optional array Filters results by HTTP protocol (HTTP vs. HTTPS).
httpVersion query optional array Filters results by HTTP version.
os query optional array Filters results by operating system.
tlsVersion query optional array Filters results by TLS version.
browserFamily query optional array Filters results by browser family.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/http/top/ases/ip_version/{ip_version}
GET /radar/http/top/ases/os/{os}

Retrieves the top autonomous systems, by HTTP requests, of the requested operating system.

operationId: radar-get-http-top-ases-by-operating-system

Parameters

Name In Required Type Description
os path required string Operating system.
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional array 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 query optional array Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/).
deviceType query optional array Filters results by device type.
httpProtocol query optional array Filters results by HTTP protocol (HTTP vs. HTTPS).
httpVersion query optional array Filters results by HTTP version.
ipVersion query optional array Filters results by IP version (Ipv4 vs. IPv6).
tlsVersion query optional array Filters results by TLS version.
browserFamily query optional array Filters results by browser family.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/http/top/ases/os/{os}
GET /radar/http/top/ases/tls_version/{tls_version}

Retrieves the top autonomous systems, by HTTP requests, of the requested TLS protocol version.

operationId: radar-get-http-top-ases-by-tls-version

Parameters

Name In Required Type Description
tls_version path required string TLS version.
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional array 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 query optional array Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/).
deviceType query optional array Filters results by device type.
httpProtocol query optional array Filters results by HTTP protocol (HTTP vs. HTTPS).
httpVersion query optional array Filters results by HTTP version.
ipVersion query optional array Filters results by IP version (Ipv4 vs. IPv6).
os query optional array Filters results by operating system.
browserFamily query optional array Filters results by browser family.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/http/top/ases/tls_version/{tls_version}
GET /radar/http/top/locations

Retrieves the top locations by HTTP requests.

operationId: radar-get-http-top-locations-by-http-requests

Parameters

Name In Required Type Description
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional array 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 query optional array Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/).
deviceType query optional array Filters results by device type.
httpProtocol query optional array Filters results by HTTP protocol (HTTP vs. HTTPS).
httpVersion query optional array Filters results by HTTP version.
ipVersion query optional array Filters results by IP version (Ipv4 vs. IPv6).
os query optional array Filters results by operating system.
tlsVersion query optional array Filters results by TLS version.
browserFamily query optional array Filters results by browser family.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/http/top/locations
GET /radar/http/top/locations/bot_class/{bot_class}

Retrieves the top locations, by HTTP requests, of the requested bot class.

operationId: radar-get-http-top-locations-by-bot-class

Parameters

Name In Required Type Description
bot_class path required string Bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/).
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional array 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 query optional array Filters results by device type.
httpProtocol query optional array Filters results by HTTP protocol (HTTP vs. HTTPS).
httpVersion query optional array Filters results by HTTP version.
ipVersion query optional array Filters results by IP version (Ipv4 vs. IPv6).
os query optional array Filters results by operating system.
tlsVersion query optional array Filters results by TLS version.
browserFamily query optional array Filters results by browser family.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/http/top/locations/bot_class/{bot_class}
GET /radar/http/top/locations/browser_family/{browser_family}

Retrieves the top locations, by HTTP requests, of the requested browser family.

operationId: radar-get-http-top-locations-by-browser-family

Parameters

Name In Required Type Description
browser_family path required string Browser family.
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional array 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 query optional array Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/).
deviceType query optional array Filters results by device type.
httpProtocol query optional array Filters results by HTTP protocol (HTTP vs. HTTPS).
httpVersion query optional array Filters results by HTTP version.
ipVersion query optional array Filters results by IP version (Ipv4 vs. IPv6).
os query optional array Filters results by operating system.
tlsVersion query optional array Filters results by TLS version.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/http/top/locations/browser_family/{browser_family}
GET /radar/http/top/locations/device_type/{device_type}

Retrieves the top locations, by HTTP requests, of the requested device type.

operationId: radar-get-http-top-locations-by-device-type

Parameters

Name In Required Type Description
device_type path required string Device type.
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional array 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 query optional array Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/).
httpProtocol query optional array Filters results by HTTP protocol (HTTP vs. HTTPS).
httpVersion query optional array Filters results by HTTP version.
ipVersion query optional array Filters results by IP version (Ipv4 vs. IPv6).
os query optional array Filters results by operating system.
tlsVersion query optional array Filters results by TLS version.
browserFamily query optional array Filters results by browser family.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/http/top/locations/device_type/{device_type}
GET /radar/http/top/locations/http_protocol/{http_protocol}

Retrieves the top locations, by HTTP requests, of the requested HTTP protocol.

operationId: radar-get-http-top-locations-by-http-protocol

Parameters

Name In Required Type Description
http_protocol path required string HTTP protocol (HTTP vs. HTTPS).
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional array 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 query optional array Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/).
deviceType query optional array Filters results by device type.
httpVersion query optional array Filters results by HTTP version.
ipVersion query optional array Filters results by IP version (Ipv4 vs. IPv6).
os query optional array Filters results by operating system.
tlsVersion query optional array Filters results by TLS version.
browserFamily query optional array Filters results by browser family.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/http/top/locations/http_protocol/{http_protocol}
GET /radar/http/top/locations/http_version/{http_version}

Retrieves the top locations, by HTTP requests, of the requested HTTP version.

operationId: radar-get-http-top-locations-by-http-version

Parameters

Name In Required Type Description
http_version path required string HTTP version.
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional array 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 query optional array Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/).
deviceType query optional array Filters results by device type.
httpProtocol query optional array Filters results by HTTP protocol (HTTP vs. HTTPS).
ipVersion query optional array Filters results by IP version (Ipv4 vs. IPv6).
os query optional array Filters results by operating system.
tlsVersion query optional array Filters results by TLS version.
browserFamily query optional array Filters results by browser family.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/http/top/locations/http_version/{http_version}
GET /radar/http/top/locations/ip_version/{ip_version}

Retrieves the top locations, by HTTP requests, of the requested IP version.

operationId: radar-get-http-top-locations-by-ip-version

Parameters

Name In Required Type Description
ip_version path required string IP version.
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional array 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 query optional array Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/).
deviceType query optional array Filters results by device type.
httpProtocol query optional array Filters results by HTTP protocol (HTTP vs. HTTPS).
httpVersion query optional array Filters results by HTTP version.
os query optional array Filters results by operating system.
tlsVersion query optional array Filters results by TLS version.
browserFamily query optional array Filters results by browser family.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/http/top/locations/ip_version/{ip_version}
GET /radar/http/top/locations/os/{os}

Retrieves the top locations, by HTTP requests, of the requested operating system.

operationId: radar-get-http-top-locations-by-operating-system

Parameters

Name In Required Type Description
os path required string Operating system.
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional array 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 query optional array Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/).
deviceType query optional array Filters results by device type.
httpProtocol query optional array Filters results by HTTP protocol (HTTP vs. HTTPS).
httpVersion query optional array Filters results by HTTP version.
ipVersion query optional array Filters results by IP version (Ipv4 vs. IPv6).
tlsVersion query optional array Filters results by TLS version.
browserFamily query optional array Filters results by browser family.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/http/top/locations/os/{os}
GET /radar/http/top/locations/tls_version/{tls_version}

Retrieves the top locations, by HTTP requests, of the requested TLS protocol version.

operationId: radar-get-http-top-locations-by-tls-version

Parameters

Name In Required Type Description
tls_version path required string TLS version.
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional array 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 query optional array Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/).
deviceType query optional array Filters results by device type.
httpProtocol query optional array Filters results by HTTP protocol (HTTP vs. HTTPS).
httpVersion query optional array Filters results by HTTP version.
ipVersion query optional array Filters results by IP version (Ipv4 vs. IPv6).
os query optional array Filters results by operating system.
browserFamily query optional array Filters results by browser family.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/http/top/locations/tls_version/{tls_version}

Radar ip 1 endpoints

GET /radar/entities/ip

Retrieves IP address information.

operationId: radar-get-entities-ip

Parameters

Name In Required Type Description
ip query required string IP address.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/entities/ip

Radar internet services ranking 3 endpoints

GET /radar/ranking/internet_services/categories

Retrieves the list of Internet services categories.

operationId: radar-get-ranking-internet-services-categories

Parameters

Name In Required Type Description
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
date query optional array Filters results by the specified array of dates.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/ranking/internet_services/categories
GET /radar/ranking/internet_services/timeseries_groups

Retrieves Internet Services rank update changes over time.

operationId: radar-get-ranking-internet-services-timeseries

Parameters

Name In Required Type Description
serviceCategory query optional array Filters results by Internet service category.
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/ranking/internet_services/timeseries_groups
GET /radar/ranking/internet_services/top

Retrieves top Internet services based on their rank.

operationId: radar-get-ranking-top-internet-services

Parameters

Name In Required Type Description
serviceCategory query optional array Filters results by Internet service category.
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
date query optional array Filters results by the specified array of dates.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/ranking/internet_services/top

Radar layer 3 attacks 6 endpoints

GET /radar/attacks/layer3/summary/{dimension}

Retrieves the distribution of layer 3 attacks by the specified dimension.

operationId: radar-get-attacks-layer3-summary

Parameters

Name In Required Type Description
dimension path required string Specifies the attribute by which to group the results.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
location query optional array 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 query optional array 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 query optional array Filters results by IP version (Ipv4 vs. IPv6).
protocol query optional array Filters the results by layer 3/4 protocol.
direction query optional string Specifies whether the `location` filter applies to the source or target location.
limitPerGroup query optional integer 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 query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/attacks/layer3/summary/{dimension}
GET /radar/attacks/layer3/timeseries

Retrieves layer 3 attacks over time.

operationId: radar-get-attacks-layer3-timeseries-by-bytes

Parameters

Name In Required Type Description
aggInterval query optional string 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 query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional array Filters results by IP version (Ipv4 vs. IPv6).
protocol query optional array Filters the results by layer 3/4 protocol.
normalization query optional string Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/).
metric query optional string Measurement units, eg. bytes.
direction query optional string Specifies whether the `location` filter applies to the source or target location.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/attacks/layer3/timeseries
GET /radar/attacks/layer3/timeseries_groups/{dimension}

Retrieves the distribution of layer 3 attacks grouped by dimension over time.

operationId: radar-get-attacks-layer3-timeseries-group

Parameters

Name In Required Type Description
dimension path required string Specifies the attribute by which to group the results.
aggInterval query optional string 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 query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
location query optional array 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 query optional array 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 query optional array Filters results by IP version (Ipv4 vs. IPv6).
protocol query optional array Filters the results by layer 3/4 protocol.
normalization query optional string Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/).
direction query optional string Specifies whether the `location` filter applies to the source or target location.
limitPerGroup query optional integer 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 query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/attacks/layer3/timeseries_groups/{dimension}
GET /radar/attacks/layer3/top/attacks

Retrieves the top layer 3 attacks from origin to target location. Values are a percentage out of the total layer 3 attacks (with billing country). You can optionally limit the number of attacks by origin/target location (useful if all the top attacks are from or to the same location).

operationId: radar-get-attacks-layer3-top-attacks

Parameters

Name In Required Type Description
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
location query optional array 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 query optional array 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 query optional array Filters results by IP version (Ipv4 vs. IPv6).
protocol query optional array Filters the results by layer 3/4 protocol.
limitDirection query optional string Specifies whether the `limitPerLocation` applies to the source or target location.
limitPerLocation query optional integer Limits the number of attacks per origin/target (refer to `limitDirection` parameter) location.
magnitude query optional string Orders results based on attack magnitude, defined by total mitigated bytes or total mitigated attacks.
normalization query optional string Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/).
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/attacks/layer3/top/attacks
GET /radar/attacks/layer3/top/locations/origin

Retrieves the origin locations of layer 3 attacks.

operationId: radar-get-attacks-layer3-top-origin-locations

Parameters

Name In Required Type Description
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
location query optional array 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 query optional array 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 query optional array Filters results by IP version (Ipv4 vs. IPv6).
protocol query optional array Filters the results by layer 3/4 protocol.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/attacks/layer3/top/locations/origin
GET /radar/attacks/layer3/top/locations/target

Retrieves the target locations of layer 3 attacks.

operationId: radar-get-attacks-layer3-top-target-locations

Parameters

Name In Required Type Description
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
location query optional array 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 query optional array 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 query optional array Filters results by IP version (Ipv4 vs. IPv6).
protocol query optional array Filters the results by layer 3/4 protocol.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/attacks/layer3/top/locations/target

Radar layer 7 attacks 7 endpoints

GET /radar/attacks/layer7/summary/{dimension}

Retrieves the distribution of layer 7 attacks by the specified dimension.

operationId: radar-get-attacks-layer7-summary

Parameters

Name In Required Type Description
dimension path required string Specifies the attribute by which to group the results.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional array Filters results by IP version (Ipv4 vs. IPv6).
httpVersion query optional array Filters results by HTTP version.
httpMethod query optional array Filters results by HTTP method.
mitigationProduct query optional array Filters the results by layer 7 mitigation product.
limitPerGroup query optional integer 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 query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/attacks/layer7/summary/{dimension}
GET /radar/attacks/layer7/timeseries

Retrieves layer 7 attacks over time.

operationId: radar-get-attacks-layer7-timeseries

Parameters

Name In Required Type Description
aggInterval query optional string 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 query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional string Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/).
ipVersion query optional array Filters results by IP version (Ipv4 vs. IPv6).
httpVersion query optional array Filters results by HTTP version.
httpMethod query optional array Filters results by HTTP method.
mitigationProduct query optional array Filters the results by layer 7 mitigation product.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/attacks/layer7/timeseries
GET /radar/attacks/layer7/timeseries_groups/{dimension}

Retrieves the distribution of layer 7 attacks grouped by dimension over time.

operationId: radar-get-attacks-layer7-timeseries-group

Parameters

Name In Required Type Description
dimension path required string Specifies the attribute by which to group the results.
aggInterval query optional string 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 query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional array Filters results by IP version (Ipv4 vs. IPv6).
httpVersion query optional array Filters results by HTTP version.
httpMethod query optional array Filters results by HTTP method.
mitigationProduct query optional array Filters the results by layer 7 mitigation product.
normalization query optional string Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/).
limitPerGroup query optional integer 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 query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/attacks/layer7/timeseries_groups/{dimension}
GET /radar/attacks/layer7/top/ases/origin

Retrieves the top origin autonomous systems of layer 7 attacks. Values are percentages of the total layer 7 attacks, with the origin autonomous systems determined by the client IP address.

operationId: radar-get-attacks-layer7-top-origin-as

Parameters

Name In Required Type Description
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
location query optional array 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 query optional array 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 query optional array Filters results by IP version (Ipv4 vs. IPv6).
httpVersion query optional array Filters results by HTTP version.
httpMethod query optional array Filters results by HTTP method.
mitigationProduct query optional array Filters the results by layer 7 mitigation product.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/attacks/layer7/top/ases/origin
GET /radar/attacks/layer7/top/attacks

Retrieves the top attacks from origin to target location. Values are percentages of the total layer 7 attacks (with billing country). The attack magnitude can be defined by the number of mitigated requests or by the number of zones affected. You can optionally limit the number of attacks by origin/target location (useful if all the top attacks are from or to the same location).

operationId: radar-get-attacks-layer7-top-attacks

Parameters

Name In Required Type Description
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional array Filters the results by layer 7 mitigation product.
limitDirection query optional string Specifies whether the `limitPerLocation` applies to the source or target location.
limitPerLocation query optional integer Limits the number of attacks per origin/target (refer to `limitDirection` parameter) location.
normalization query optional string Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/).
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/attacks/layer7/top/attacks
GET /radar/attacks/layer7/top/locations/origin

Retrieves the top origin locations of layer 7 attacks. Values are percentages of the total layer 7 attacks, with the origin location determined by the client IP address.

operationId: radar-get-attacks-layer7-top-origin-location

Parameters

Name In Required Type Description
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array Filters results by IP version (Ipv4 vs. IPv6).
httpVersion query optional array Filters results by HTTP version.
httpMethod query optional array Filters results by HTTP method.
mitigationProduct query optional array Filters the results by layer 7 mitigation product.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/attacks/layer7/top/locations/origin
GET /radar/attacks/layer7/top/locations/target

Retrieves the top target locations of and by layer 7 attacks. Values are a percentage out of the total layer 7 attacks. The target location is determined by the attacked zone's billing country, when available.

operationId: radar-get-attacks-layer7-top-target-location

Parameters

Name In Required Type Description
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
continent query optional array 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 query optional array Filters the results by layer 7 mitigation product.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/attacks/layer7/top/locations/target

Radar leaked credential checks 2 endpoints

GET /radar/leaked_credential_checks/summary/{dimension}

Retrieves an aggregated summary of HTTP authentication requests grouped by the specified dimension.

operationId: radar-get-leaked-credential-checks-summary

Parameters

Name In Required Type Description
dimension path required string Specifies the attribute by which to group the results.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional array Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/).
compromised query optional array Filters results by compromised credential status (clean vs. compromised).
limitPerGroup query optional integer 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 query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/leaked_credential_checks/summary/{dimension}
GET /radar/leaked_credential_checks/timeseries_groups/{dimension}

Retrieves the distribution of HTTP authentication requests, grouped by the specified dimension over time.

operationId: radar-get-leaked-credential-checks-timeseries-group

Parameters

Name In Required Type Description
dimension path required string Specifies the attribute by which to group the results.
aggInterval query optional string 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 query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional array Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/).
compromised query optional array Filters results by compromised credential status (clean vs. compromised).
checkResult query optional array Filters results by leaked credential check result.
limitPerGroup query optional integer 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 query optional string Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/).
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/leaked_credential_checks/timeseries_groups/{dimension}

Radar locations 2 endpoints

GET /radar/entities/locations

Retrieves a list of locations.

operationId: radar-get-entities-locations

Parameters

Name In Required Type Description
limit query optional integer Limits the number of objects returned in the response.
offset query optional integer Skips the specified number of objects before fetching the results.
location query optional string Filters results by location. Specify a comma-separated list of alpha-2 location codes.
region query optional string Filters results by region.
subregion query optional string Filters results by subregion.
continent query optional string Filters results by continent code.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/entities/locations
GET /radar/entities/locations/{location}

Retrieves the requested location information. (A confidence level below `5` indicates a low level of confidence in the traffic data - normally this happens because Cloudflare has a small amount of traffic from/to this location).

operationId: radar-get-entities-location-by-alpha2

Parameters

Name In Required Type Description
location path required string Location alpha-2 code.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/entities/locations/{location}

Radar markdown for agents 2 endpoints

GET /radar/ai/markdown_for_agents/summary

Retrieves the overall median HTML-to-markdown reduction ratio for AI agent requests over the given date range.

operationId: radar-get-ai-markdown-for-agents-summary

Parameters

Name In Required Type Description
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/ai/markdown_for_agents/summary
GET /radar/ai/markdown_for_agents/timeseries

Retrieves the median HTML-to-markdown reduction ratio over time for AI agent requests.

operationId: radar-get-ai-markdown-for-agents-timeseries

Parameters

Name In Required Type Description
aggInterval query optional string 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 query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/ai/markdown_for_agents/timeseries

Radar netflows 5 endpoints

GET /radar/netflows/summary/{dimension}

Retrieves the distribution of network traffic (NetFlows) by the specified dimension.

operationId: radar-get-netflows-summary

Parameters

Name In Required Type Description
dimension path required string Specifies the NetFlows attribute by which to group the results.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional array 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 query optional array Filters the results by network traffic product types.
limitPerGroup query optional integer 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 query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/netflows/summary/{dimension}
GET /radar/netflows/timeseries

Retrieves network traffic (NetFlows) over time.

operationId: radar-get-netflows-timeseries

Parameters

Name In Required Type Description
aggInterval query optional string 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 query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
product query optional array Filters the results by network traffic product types.
asn query optional array 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 query optional array 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 query optional array 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 query optional array 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 query optional string Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/).
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/netflows/timeseries
GET /radar/netflows/timeseries_groups/{dimension}

Retrieves the distribution of NetFlows traffic, grouped by the specified dimension over time.

operationId: radar-get-netflows-timeseries-group

Parameters

Name In Required Type Description
dimension path required string Specifies the NetFlows attribute by which to group the results.
aggInterval query optional string 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 query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional array 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 query optional integer 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 query optional string Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/).
product query optional array Filters the results by network traffic product types.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/netflows/timeseries_groups/{dimension}
GET /radar/netflows/top/ases

Retrieves the top autonomous systems by network traffic (NetFlows).

operationId: radar-get-netflows-top-ases

Parameters

Name In Required Type Description
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional array 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 query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/netflows/top/ases
GET /radar/netflows/top/locations

Retrieves the top locations by network traffic (NetFlows).

operationId: radar-get-netflows-top-locations

Parameters

Name In Required Type Description
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional array 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 query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/netflows/top/locations

Radar origins 5 endpoints

GET /radar/origins

Retrieves a list of origins with their regions.

operationId: radar-get-origins

Parameters

Name In Required Type Description
limit query optional integer Limits the number of objects returned in the response.
offset query optional integer Skips the specified number of objects before fetching the results.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/origins
GET /radar/origins/summary/{dimension}

Retrieves an aggregated summary of origin metrics grouped by the specified dimension.

operationId: radar-get-origins-summary

Parameters

Name In Required Type Description
dimension path required string Specifies the origin attribute by which to group the results.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
limitPerGroup query optional integer 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.
origin query required array Filters results by origin.
metric query required string Specifies the metric to retrieve.
region query optional array Filters results by origin region.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/origins/summary/{dimension}
GET /radar/origins/timeseries

Retrieves the time series of origin metrics for the specified origin.

operationId: radar-get-origins-timeseries

Parameters

Name In Required Type Description
aggInterval query optional string 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 query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
origin query required array Filters results by origin.
metric query required string Specifies the metric to retrieve.
region query optional array Filters results by origin region.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/origins/timeseries
GET /radar/origins/timeseries_groups/{dimension}

Retrieves the distribution of origin metrics grouped by the specified dimension over time.

operationId: radar-get-origins-timeseries-group

Parameters

Name In Required Type Description
dimension path required string Specifies the origin attribute by which to group the results.
aggInterval query optional string 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 query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
limitPerGroup query optional integer 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.
origin query required array Filters results by origin.
metric query required string Specifies the metric to retrieve.
region query optional array Filters results by origin region.
normalization query optional string Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/).
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/origins/timeseries_groups/{dimension}
GET /radar/origins/{slug}

Retrieves the requested origin information with its regions.

operationId: radar-get-origin-details

Parameters

Name In Required Type Description
slug path required string Origin slug.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/origins/{slug}

Radar post-quantum 3 endpoints

GET /radar/post_quantum/origin/summary/{dimension}

Returns a summary of origin post-quantum data grouped by the specified dimension.

operationId: radar-get-origin-post-quantum-summary

Parameters

Name In Required Type Description
dimension path required string Specifies the origin post-quantum data dimension by which to group the results.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/post_quantum/origin/summary/{dimension}
GET /radar/post_quantum/origin/timeseries_groups/{dimension}

Returns a timeseries of origin post-quantum data grouped by the specified dimension.

operationId: radar-get-origin-post-quantum-timeseries-groups

Parameters

Name In Required Type Description
dimension path required string Specifies the origin post-quantum data dimension by which to group the results.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/post_quantum/origin/timeseries_groups/{dimension}
GET /radar/post_quantum/tls/support

Tests whether a hostname or IP address supports Post-Quantum (PQ) TLS key exchange. Returns information about the negotiated key exchange algorithm and whether it uses PQ cryptography.

operationId: radar-get-post-quantum-tls-support

Parameters

Name In Required Type Description
host query required string Hostname or IP address to test for Post-Quantum TLS support, optionally with port (defaults to 443).

Responses

200 Successful response.
400 Bad request.
GET /radar/post_quantum/tls/support

Radar quality 6 endpoints

GET /radar/quality/iqi/summary

Retrieves a summary (percentiles) of bandwidth, latency, or DNS response time from the Radar Internet Quality Index (IQI).

operationId: radar-get-quality-index-summary

Parameters

Name In Required Type Description
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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.
metric query required string Defines which metric to return (bandwidth, latency, or DNS response time).
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/quality/iqi/summary
GET /radar/quality/iqi/timeseries_groups

Retrieves a time series (percentiles) of bandwidth, latency, or DNS response time from the Radar Internet Quality Index (IQI).

operationId: radar-get-quality-index-timeseries-group

Parameters

Name In Required Type Description
aggInterval query optional string 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 query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional boolean Enables interpolation for all series (using the average).
metric query required string Defines which metric to return (bandwidth, latency, or DNS response time).
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/quality/iqi/timeseries_groups
GET /radar/quality/speed/histogram

Retrieves a histogram from the previous 90 days of Cloudflare Speed Test data, split into fixed bandwidth (Mbps), latency (ms), or jitter (ms) buckets.

operationId: radar-get-quality-speed-histogram

Parameters

Name In Required Type Description
name query optional array Array of names used to label the series in the response.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional integer Specifies the width for every bucket in the histogram.
metricGroup query optional string Metrics to be returned.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/quality/speed/histogram
GET /radar/quality/speed/summary

Retrieves a summary of bandwidth, latency, jitter, and packet loss, from the previous 90 days of Cloudflare Speed Test data.

operationId: radar-get-quality-speed-summary

Parameters

Name In Required Type Description
name query optional array Array of names used to label the series in the response.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/quality/speed/summary
GET /radar/quality/speed/top/ases

Retrieves the top autonomous systems by bandwidth, latency, jitter, or packet loss, from the previous 90 days of Cloudflare Speed Test data.

operationId: radar-get-quality-speed-top-ases

Parameters

Name In Required Type Description
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional string Specifies the metric to order the results by.
reverse query optional boolean Reverses the order of results.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/quality/speed/top/ases
GET /radar/quality/speed/top/locations

Retrieves the top locations by bandwidth, latency, jitter, or packet loss, from the previous 90 days of Cloudflare Speed Test data.

operationId: radar-get-quality-speed-top-locations

Parameters

Name In Required Type Description
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional string Specifies the metric to order the results by.
reverse query optional boolean Reverses the order of results.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/quality/speed/top/locations

Radar robots.txt 2 endpoints

GET /radar/robots_txt/top/domain_categories

Retrieves the top domain categories by the number of robots.txt files parsed.

operationId: radar-get-robots-txt-top-domain-categories-by-files-parsed

Parameters

Name In Required Type Description
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
userAgentCategory query optional string Filters results by user agent category.
date query optional array Filters results by the specified array of dates.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/robots_txt/top/domain_categories
GET /radar/robots_txt/top/user_agents/directive

Retrieves the top user agents on robots.txt files.

operationId: radar-get-robots-txt-top-user-agents-by-directive

Parameters

Name In Required Type Description
limit query optional integer Limits the number of objects returned in the response.
name query optional array Array of names used to label the series in the response.
userAgentCategory query optional string Filters results by user agent category.
date query optional array Filters results by the specified array of dates.
domainCategory query optional array Filters results by domain category.
directive query optional string Filters results by robots.txt directive.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/robots_txt/top/user_agents/directive

Radar tcp resets and timeouts 2 endpoints

GET /radar/tcp_resets_timeouts/summary

Retrieves the distribution of connection stage by TCP connections terminated within the first 10 packets by a reset or timeout.

operationId: radar-get-tcp-resets-timeouts-summary

Parameters

Name In Required Type Description
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/tcp_resets_timeouts/summary
GET /radar/tcp_resets_timeouts/timeseries_groups

Retrieves the distribution of connection stage by TCP connections terminated within the first 10 packets by a reset or timeout over time.

operationId: radar-get-tcp-resets-timeouts-timeseries-group

Parameters

Name In Required Type Description
aggInterval query optional string 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 query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
asn query optional array 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 query optional array 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 query optional array 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 query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/tcp_resets_timeouts/timeseries_groups

Radar top-level domains 2 endpoints

GET /radar/tlds

Retrieves a list of TLDs.

operationId: radar-get-tlds

Parameters

Name In Required Type Description
limit query optional integer Limits the number of objects returned in the response.
offset query optional integer Skips the specified number of objects before fetching the results.
tldManager query optional string Filters results by TLD manager.
tldType query optional string Filters results by TLD type.
tld query optional string Filters results by top-level domain. Specify a comma-separated list of TLDs.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/tlds
GET /radar/tlds/{tld}

Retrieves the requested TLD information.

operationId: radar-get-tld-details

Parameters

Name In Required Type Description
tld path required string Top-level domain.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
404 Not found.
GET /radar/tlds/{tld}

Radar traffic anomalies 2 endpoints

GET /radar/traffic_anomalies

Retrieves the latest Internet traffic anomalies, which are signals that might indicate an outage. These alerts are automatically detected by Radar and manually verified by our team.

operationId: radar-get-traffic-anomalies

Parameters

Name In Required Type Description
limit query optional integer Limits the number of objects returned in the response.
offset query optional integer Skips the specified number of objects before fetching the results.
dateRange query optional string Filters results by date range.
dateStart query optional string Start of the date range (inclusive).
dateEnd query optional string End of the date range (inclusive).
status query optional string
type query optional array Filters results by entity type (LOCATION, AS, or ORIGIN).
asn query optional integer Filters results by Autonomous System. Specify a single Autonomous System Number (ASN) as integer.
location query optional string Filters results by location. Specify an alpha-2 location code.
origin query optional string Filters results by origin.
format query optional string Format in which results will be returned.

Responses

200 List of Internet traffic anomalies.
400 Bad request.
GET /radar/traffic_anomalies
GET /radar/traffic_anomalies/locations

Retrieves the sum of Internet traffic anomalies, grouped by location. These anomalies are signals that might indicate an outage, automatically detected by Radar and manually verified by our team.

operationId: radar-get-traffic-anomalies-top

Parameters

Name In Required Type Description
limit query optional integer Limits the number of objects returned in the response.
dateRange query optional string Filters results by date range.
dateStart query optional string Start of the date range (inclusive).
dateEnd query optional string End of the date range (inclusive).
status query optional string
format query optional string Format in which results will be returned.

Responses

200 List of locations with number of traffic anomalies.
400 Bad request.
GET /radar/traffic_anomalies/locations

Radar web crawlers 2 endpoints

GET /radar/bots/crawlers/summary/{dimension}

Retrieves an aggregated summary of HTTP requests from crawlers, grouped by the specified dimension.

operationId: radar-get-crawlers-summary

Parameters

Name In Required Type Description
dimension path required string Specifies the attribute by which to group the results.
name query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
limitPerGroup query optional integer 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 query optional array Filters results by bot operator.
vertical query optional array Filters results by vertical.
industry query optional array Filters results by industry.
clientType query optional array Filters results by agent type.
responseStatus query optional array Filters results by HTTP response status code (e.g. 200, 403, 404). Only [IANA-registered codes](https://www.iana.org/assignments/http-status-codes/http-status-codes.xhtml) are accepted.
responseStatusCategory query optional array Filters results by HTTP response status code category.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/bots/crawlers/summary/{dimension}
GET /radar/bots/crawlers/timeseries_groups/{dimension}

Retrieves the distribution of HTTP requests from crawlers, grouped by the specified dimension over time.

operationId: radar-get-crawlers-timeseries-group

Parameters

Name In Required Type Description
dimension path required string Specifies the attribute by which to group the results.
aggInterval query optional string 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 query optional array Array of names used to label the series in the response.
dateRange query optional array 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 query optional array Start of the date range.
dateEnd query optional array End of the date range (inclusive).
limitPerGroup query optional integer 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 query optional array Filters results by bot operator.
vertical query optional array Filters results by vertical.
industry query optional array Filters results by industry.
clientType query optional array Filters results by agent type.
responseStatus query optional array Filters results by HTTP response status code (e.g. 200, 403, 404). Only [IANA-registered codes](https://www.iana.org/assignments/http-status-codes/http-status-codes.xhtml) are accepted.
responseStatusCategory query optional array Filters results by HTTP response status code category.
format query optional string Format in which results will be returned.

Responses

200 Successful response.
400 Bad request.
GET /radar/bots/crawlers/timeseries_groups/{dimension}

Recordings 3 endpoints

GET /accounts/{account_id}/realtime/kit/{app_id}/recordings

Returns all recordings for an App. If the `meeting_id` parameter is passed, returns all recordings for the given meeting ID.

operationId: get_all_recordings

Parameters

Name In Required Type Description
account_id path required
app_id path required
meeting_id query optional string ID of a meeting. Optional. Will limit results to only this meeting if passed.
optional
optional
expired query optional boolean If passed, only shows expired/non-expired recordings on RealtimeKit's bucket
optional
optional
optional
optional
optional
optional

Responses

200
201 Created
GET /accounts/{account_id}/realtime/kit/{app_id}/recordings
GET /accounts/{account_id}/realtime/kit/{app_id}/recordings/active-recording/{meeting_id}

Returns the active recording details for the given meeting ID.

operationId: get_active_recording

Parameters

Name In Required Type Description
account_id path required
app_id path required
meeting_id path required string ID of the meeting

Responses

200
404
GET /accounts/{account_id}/realtime/kit/{app_id}/recordings/active-recording/{meeting_id}
GET /accounts/{account_id}/realtime/kit/{app_id}/recordings/{recording_id}

Returns details of a recording for the given recording ID.

operationId: get_one_recording

Parameters

Name In Required Type Description
account_id path required
app_id path required
recording_id path required string ID of the recording

Responses

200
GET /accounts/{account_id}/realtime/kit/{app_id}/recordings/{recording_id}

Registrar registration 4 endpoints

GET /accounts/{account_id}/registrar/registrations

Returns a paginated list of domain registrations owned by the account. This endpoint uses cursor-based pagination. Results are ordered by registration date by default. To fetch the next page, pass the `cursor` value from the `result_info` object in the response as the `cursor` query parameter in your next request. An empty `cursor` string indicates there are no more pages.

operationId: registrar-domain-registration-list

Parameters

Name In Required Type Description
account_id path required Cloudflare account ID.
optional
optional
optional
sort_by query optional string Column to sort results by. Defaults to registration date (`registry_created_at`) when omitted.

Responses

4XX List registrations failure.
200 List of registrations for the account.
GET /accounts/{account_id}/registrar/registrations
GET /accounts/{account_id}/registrar/registrations/{domain_name}

Returns the current state of a domain registration. This is the canonical read endpoint for a domain you own. It returns the full registration resource including current settings and expiration. When the registration resource is ready, both `created_at` and `expires_at` are present in the response.

operationId: registrar-domain-registration-get

Parameters

Name In Required Type Description
account_id path required Cloudflare account ID.
domain_name path required Domain name to retrieve.

Responses

4XX Get registration failure.
200 Registration details.
GET /accounts/{account_id}/registrar/registrations/{domain_name}
GET /accounts/{account_id}/registrar/registrations/{domain_name}/registration-status

Returns the current status of a domain registration workflow. Use this endpoint to poll for completion when the POST response returned `202 Accepted`. The URL is provided in the `links.self` field of the workflow status response. Poll this endpoint until the workflow reaches a terminal state or a state that requires user attention. **Terminal states:** `succeeded` and `failed` are terminal and always have `completed: true`. **Non-terminal states:** - `action_required` has `completed: false` and will not resolve on its own. The workflow is paused pending user intervention. - `blocked` has `completed: false` and indicates the workflow is waiting on a third party such as the extension registry or losing registrar. Continue polling while informing the user of the delay. Use increasing backoff between polls. When `state: blocked`, use a longer polling interval and do not poll indefinitely. A naive polling loop that only checks `completed` can run indefinitely when `state: action_required`. Break explicitly on `action_required`: ```js let status; do { await new Promise(r => setTimeout(r, 2000)); status = await cloudflare.request({ method: 'GET', path: reg.result.links.self, }); } while ( !status.result.completed && status.result.state !== 'action_required' ); if (status.result.state === 'action_required') { // Surface context.action and context.confirmation_sent_to to the user. // Do not re-submit the registration request. } ```

operationId: registrar-domain-registration-get-status

Parameters

Name In Required Type Description
account_id path required Cloudflare account ID. Required for all Registrar API operations.
domain_name path required

Responses

4XX Get status failure.
200 Registration workflow status.
GET /accounts/{account_id}/registrar/registrations/{domain_name}/registration-status
GET /accounts/{account_id}/registrar/registrations/{domain_name}/update-status

Returns the current status of a domain update workflow. Use this endpoint to poll for completion when the PATCH response returned `202 Accepted`. The URL is provided in the `links.self` field of the workflow status response. Poll this endpoint until the workflow reaches a terminal state or a state that requires user attention. Use increasing backoff between polls. When the workflow remains blocked on a third party, use a longer polling interval and do not poll indefinitely.

operationId: registrar-domain-registration-get-update-status

Parameters

Name In Required Type Description
account_id path required Cloudflare account ID.
domain_name path required

Responses

4XX Get update status failure.
200 Update workflow status.
GET /accounts/{account_id}/registrar/registrations/{domain_name}/update-status

Registrations 2 endpoints

GET /accounts/{account_id}/devices/registrations

Lists WARP registrations.

operationId: list-registrations

Parameters

Name In Required Type Description
account_id path required string
optional
optional
optional
optional
optional
optional
optional
optional
optional
optional
optional
optional

Responses

200 List of registrations response.
GET /accounts/{account_id}/devices/registrations
GET /accounts/{account_id}/devices/registrations/{registration_id}

Fetches a single WARP registration.

operationId: get-registration

Parameters

Name In Required Type Description
registration_id path required string
account_id path required string
optional

Responses

200 Returns a Registration.
GET /accounts/{account_id}/devices/registrations/{registration_id}

Request for information (rfi) 5 endpoints

GET /accounts/{account_id}/cloudforce-one/requests/constants

Retrieves constant values used in Cloudforce One requests, including valid statuses and types.

operationId: cloudforce-one-request-constants

Parameters

Name In Required Type Description
account_id path required

Responses

4XX Get request constants response failure.
200 Get request constants response.
GET /accounts/{account_id}/cloudforce-one/requests/constants
GET /accounts/{account_id}/cloudforce-one/requests/quota

Retrieves quota usage for Cloudforce One standard requests.

operationId: cloudforce-one-request-quota

Parameters

Name In Required Type Description
account_id path required

Responses

4XX Get request quota response failure.
200 Get request quota response.
GET /accounts/{account_id}/cloudforce-one/requests/quota
GET /accounts/{account_id}/cloudforce-one/requests/types

Lists available request types for Cloudforce One intelligence requests.

operationId: cloudforce-one-request-types

Parameters

Name In Required Type Description
account_id path required

Responses

4XX Get request types response failure.
200 Get request types response.
GET /accounts/{account_id}/cloudforce-one/requests/types
GET /accounts/{account_id}/cloudforce-one/requests/{request_id}

Retrieves details for a specific Cloudforce One intelligence request.

operationId: cloudforce-one-request-get

Parameters

Name In Required Type Description
account_id path required
request_id path required

Responses

4XX Get request response failure.
200 Get request response.
GET /accounts/{account_id}/cloudforce-one/requests/{request_id}
GET /accounts/{account_id}/cloudforce-one/requests/{request_id}/asset/{asset_id}

Retrieves an asset attached to a Cloudforce One intelligence request.

operationId: cloudforce-one-request-asset-get

Parameters

Name In Required Type Description
account_id path required
request_id path required
asset_id path required

Responses

4XX Get request asset response failure.
200 Get request asset response.
GET /accounts/{account_id}/cloudforce-one/requests/{request_id}/asset/{asset_id}

Resource sharing 7 endpoints

GET /accounts/{account_id}/shares

Lists all account shares.

operationId: shares-list

Parameters

Name In Required Type Description
account_id path required
optional
optional
optional
optional
optional
optional
optional
optional
optional
optional

Responses

4XX List account shares response failure.
5XX List account shares response failure.
200 List account shares response.
GET /accounts/{account_id}/shares
GET /accounts/{account_id}/shares/{share_id}

Fetches share by ID.

operationId: shares-get-by-id

Parameters

Name In Required Type Description
account_id path required
share_id path required
optional
optional

Responses

4XX Get account share response failure.
5XX Get account share response failure.
200 Get account share response.
GET /accounts/{account_id}/shares/{share_id}
GET /accounts/{account_id}/shares/{share_id}/recipients

List share recipients by share ID.

operationId: share-recipients-list

Parameters

Name In Required Type Description
account_id path required
share_id path required
optional
optional
optional

Responses

4XX List account share recipients response failure.
5XX List account share recipients response failure.
200 List account share recipients response.
GET /accounts/{account_id}/shares/{share_id}/recipients
GET /accounts/{account_id}/shares/{share_id}/recipients/{recipient_id}

Get share recipient by ID.

operationId: share-recipients-get-by-id

Parameters

Name In Required Type Description
account_id path required
share_id path required
recipient_id path required
optional

Responses

4XX Get account share recipient response failure.
5XX Get account share recipient response failure.
200 Get account share recipient response.
GET /accounts/{account_id}/shares/{share_id}/recipients/{recipient_id}
GET /accounts/{account_id}/shares/{share_id}/resources

List share resources by share ID.

operationId: share-resources-list

Parameters

Name In Required Type Description
account_id path required
share_id path required
optional
optional
optional
optional

Responses

4XX List account share resources response failure.
5XX List account share resources response failure.
200 List account share resources response.
GET /accounts/{account_id}/shares/{share_id}/resources
GET /accounts/{account_id}/shares/{share_id}/resources/{resource_id}

Get share resource by ID.

operationId: share-resources-get-by-id

Parameters

Name In Required Type Description
account_id path required
share_id path required
resource_id path required

Responses

4XX Get account share resource response failure.
5XX Get account share resource response failure.
200 Get account share resource response.
GET /accounts/{account_id}/shares/{share_id}/resources/{resource_id}
GET /organizations/{organization_id}/shares

Lists all organization shares.

operationId: organization-shares-list

Parameters

Name In Required Type Description
organization_id path required
optional
optional
optional
optional
optional
optional
optional
optional

Responses

4XX List organization shares response failure.
5XX List organization shares response failure.
200 List organization shares response.
GET /organizations/{organization_id}/shares

Resource tagging 5 endpoints

GET /accounts/{account_id}/tags

Retrieves tags for a specific account-level resource.

operationId: tags-get

Parameters

Name In Required Type Description
account_id path required
resource_id query required The ID of the resource to retrieve tags for.
resource_type query required The type of the resource.
worker_id query optional Worker identifier. Required for worker_version resources.

Responses

4XX Get tags for single resource response failure.
5XX Get tags for single resource response failure.
200 Get tags for single resource response.
GET /accounts/{account_id}/tags
GET /accounts/{account_id}/tags/keys

Lists all distinct tag keys used across resources in an account.

operationId: tags-list-keys

Parameters

Name In Required Type Description
account_id path required
optional

Responses

4XX List tag keys response failure.
5XX List tag keys response failure.
200 List tag keys response.
GET /accounts/{account_id}/tags/keys
GET /accounts/{account_id}/tags/resources

Lists all tagged resources for an account.

operationId: tags-list

Parameters

Name In Required Type Description
account_id path required
type query optional array Filter by resource type. Can be repeated to filter by multiple types (OR logic). Example: ?type=zone&type=worker
optional
optional

Responses

4XX List tagged resources response failure.
5XX List tagged resources response failure.
200 List tagged resources response.
GET /accounts/{account_id}/tags/resources
GET /accounts/{account_id}/tags/values/{tag_key}

Lists all distinct values for a given tag key, optionally filtered by resource type.

operationId: tags-list-values

Parameters

Name In Required Type Description
account_id path required
tag_key path required string The tag key to retrieve values for.
optional
optional

Responses

4XX List tag values response failure.
5XX List tag values response failure.
200 List tag values response.
GET /accounts/{account_id}/tags/values/{tag_key}
GET /zones/{zone_id}/tags

Retrieves tags for a specific zone-level resource.

operationId: tags-zone-get

Parameters

Name In Required Type Description
zone_id path required
resource_id query required The ID of the resource to retrieve tags for.
resource_type query required The type of the resource.
access_application_id query optional Access application ID identifier. Required for access_application_policy resources.

Responses

4XX Get tags for single resource response failure.
5XX Get tags for single resource response failure.
200 Get tags for single resource response.
GET /zones/{zone_id}/tags

Resources 3 endpoints

GET /accounts/{account_id}/magic/cloud/resources

List resources in the Resource Catalog (Closed Beta).

operationId: resources-catalog-list

Parameters

Name In Required Type Description
account_id path required
provider_id query optional string
resource_type query optional array
resource_id query optional array
region query optional string
resource_group query optional string
managed query optional boolean
search query optional array
order_by query optional string One of ["id", "resource_type", "region"].
desc query optional boolean
per_page query optional integer
page query optional integer
cloudflare query optional boolean
v2 query optional boolean

Responses

200 OK.
400 Bad Request.
401 Invalid Credentials.
403 Forbidden.
404 Not Found.
500 Internal Server Error.
GET /accounts/{account_id}/magic/cloud/resources
GET /accounts/{account_id}/magic/cloud/resources/export

Export resources in the Resource Catalog as a JSON file (Closed Beta).

operationId: resources-catalog-export

Parameters

Name In Required Type Description
account_id path required
provider_id query optional string
resource_type query optional array
resource_id query optional array
region query optional string
resource_group query optional string
search query optional array
order_by query optional string One of ["id", "resource_type", "region"].
desc query optional boolean
v2 query optional boolean

Responses

200 Exported file.
400 Bad Request.
401 Invalid Credentials.
403 Forbidden.
404 Not Found.
500 Internal Server Error.
GET /accounts/{account_id}/magic/cloud/resources/export
GET /accounts/{account_id}/magic/cloud/resources/{resource_id}

Read an resource from the Resource Catalog (Closed Beta).

operationId: resources-catalog-read

Parameters

Name In Required Type Description
account_id path required
resource_id path required
v2 query optional boolean

Responses

200 OK.
400 Bad Request.
401 Invalid Credentials.
403 Forbidden.
404 Not Found.
500 Internal Server Error.
GET /accounts/{account_id}/magic/cloud/resources/{resource_id}

Rules 4 endpoints

GET /accounts/{account_id}/cloudforce-one/rules

List all rules for an account with optional filtering.

operationId: cloudforce-one-list-rules

Parameters

Name In Required Type Description
optional
namespace query optional string
recursive query optional string
search query optional string
is_public query optional string Filter by public visibility.
limit query optional number
offset query optional number

Responses

200 List of rules.
401 Unauthorized.
GET /accounts/{account_id}/cloudforce-one/rules
GET /accounts/{account_id}/cloudforce-one/rules/stats

Get statistics about rules for the dashboard.

operationId: cloudforce-one-get-rule-stats

Parameters

Name In Required Type Description
optional

Responses

200 Dashboard statistics.
401 Unauthorized.
GET /accounts/{account_id}/cloudforce-one/rules/stats
GET /accounts/{account_id}/cloudforce-one/rules/tree

Get the folder tree structure for rules navigation.

operationId: cloudforce-one-get-rule-tree

Parameters

Name In Required Type Description
optional

Responses

200 Folder tree structure.
401 Unauthorized.
GET /accounts/{account_id}/cloudforce-one/rules/tree
GET /accounts/{account_id}/cloudforce-one/rules/{id}

Get a single rule by ID.

operationId: cloudforce-one-get-rule

Parameters

Name In Required Type Description
optional
id path required string The unique identifier for the rule.

Responses

200 Rule details.
401 Unauthorized.
404 Rule not found.
GET /accounts/{account_id}/cloudforce-one/rules/{id}

Scim discovery 5 endpoints

GET /accounts/{account_id}/scim/v2/ResourceTypes

Returns the list of SCIM resource types supported by the Cloudflare SCIM service (RFC 7643 Section 6, RFC 7644 Section 4). Clients use this to discover available resource categories (e.g. Users, Groups) and their associated schemas. Query parameters are not supported on this endpoint.

operationId: scim-resource-types-list

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List SCIM Resource Types response failure
200 List SCIM Resource Types response
GET /accounts/{account_id}/scim/v2/ResourceTypes
GET /accounts/{account_id}/scim/v2/ResourceTypes/{resource_type_id}

Returns a single SCIM resource type by ID (RFC 7643 Section 6). Valid IDs are `User` and `Group`.

operationId: scim-resource-types-get

Parameters

Name In Required Type Description
account_id path required
resource_type_id path required string

Responses

4XX Get SCIM Resource Type response failure
200 Get SCIM Resource Type response
GET /accounts/{account_id}/scim/v2/ResourceTypes/{resource_type_id}
GET /accounts/{account_id}/scim/v2/Schemas

Returns the list of SCIM schemas supported by the Cloudflare SCIM service (RFC 7643 Section 7, RFC 7644 Section 4). Clients use this to introspect the attributes of each resource type. Query parameters are not supported on this endpoint.

operationId: scim-schemas-list

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List SCIM Schemas response failure
200 List SCIM Schemas response
GET /accounts/{account_id}/scim/v2/Schemas
GET /accounts/{account_id}/scim/v2/Schemas/{schema_id}

Returns a single SCIM schema definition by schema URI ID (RFC 7643 Section 7). Valid IDs are `urn:ietf:params:scim:schemas:core:2.0:User` and `urn:ietf:params:scim:schemas:core:2.0:Group`.

operationId: scim-schemas-get

Parameters

Name In Required Type Description
account_id path required
schema_id path required string

Responses

4XX Get SCIM Schema response failure
200 Get SCIM Schema response
GET /accounts/{account_id}/scim/v2/Schemas/{schema_id}
GET /accounts/{account_id}/scim/v2/ServiceProviderConfig

Returns the SCIM 2.0 Service Provider configuration (RFC 7643 Section 5). IdPs use this endpoint to auto-configure their SCIM integration with Cloudflare, discovering which optional features (patch, bulk, filter, etc.) are supported.

operationId: scim-service-provider-config-get

Parameters

Name In Required Type Description
account_id path required

Responses

4XX Get SCIM Service Provider Config response failure
200 Get SCIM Service Provider Config response
GET /accounts/{account_id}/scim/v2/ServiceProviderConfig

Scim groups 2 endpoints

GET /accounts/{account_id}/scim/v2/Groups

Lists SCIM Group resources for the account. Returns both system groups (backed by Cloudflare permission groups, prefixed `cloudflare-v1-`) and custom user groups. Supports filtering by `displayName` using SCIM filter syntax.

operationId: scim-groups-list

Parameters

Name In Required Type Description
account_id path required
startIndex query optional integer
count query optional integer
filter query optional string

Responses

4XX List SCIM Groups response failure
200 List SCIM Groups response
GET /accounts/{account_id}/scim/v2/Groups
GET /accounts/{account_id}/scim/v2/Groups/{group_id}

Retrieves a single SCIM Group resource by group ID.

operationId: scim-groups-get

Parameters

Name In Required Type Description
account_id path required
group_id path required

Responses

4XX Get SCIM Group response failure
200 Get SCIM Group response
GET /accounts/{account_id}/scim/v2/Groups/{group_id}

Scim users 2 endpoints

GET /accounts/{account_id}/scim/v2/Users

Lists account members as SCIM User resources. Supports optional filtering by `userName` (email) using the SCIM filter syntax (e.g. `userName eq "user@example.com"`). Pagination is controlled via `startIndex` and `count` query parameters per RFC 7644 Section 3.4.2.4.

operationId: scim-users-list

Parameters

Name In Required Type Description
account_id path required
startIndex query optional integer
count query optional integer
filter query optional string

Responses

4XX List SCIM Users response failure
200 List SCIM Users response
GET /accounts/{account_id}/scim/v2/Users
GET /accounts/{account_id}/scim/v2/Users/{user_id}

Retrieves a single account member as a SCIM User resource by user tag.

operationId: scim-users-get

Parameters

Name In Required Type Description
account_id path required
user_id path required

Responses

4XX Get SCIM User response failure
200 Get SCIM User response
GET /accounts/{account_id}/scim/v2/Users/{user_id}

Ssl verification 1 endpoints

GET /zones/{zone_id}/ssl/verification

Get SSL Verification Info for a Zone.

operationId: ssl-verification-ssl-verification-details

Parameters

Name In Required Type Description
zone_id path required
retry query optional

Responses

4XX SSL Verification Details response failure
200 SSL Verification Details response
GET /zones/{zone_id}/ssl/verification

Sso 2 endpoints

GET /accounts/{account_id}/sso_connectors
operationId: get-all-sso-connectors

Parameters

Name In Required Type Description
account_id path required

Responses

4XX Get all SSO connectors response failure
200 Get all SSO connectors response
GET /accounts/{account_id}/sso_connectors
GET /accounts/{account_id}/sso_connectors/{sso_connector_id}
operationId: get-sso-connector

Parameters

Name In Required Type Description
account_id path required
sso_connector_id path required

Responses

4XX Get SSO connector response failure
200 Get SSO connector response
GET /accounts/{account_id}/sso_connectors/{sso_connector_id}

Saved queries 2 endpoints

GET /accounts/{account_id}/workers/observability/queries

List saved queries.

operationId: queries.list

Parameters

Name In Required Type Description
page query optional number
perPage query optional number
order query optional string
orderBy query optional string

Responses

200 Successful request
401 Unauthorized
404 Not found
500 Internal error
GET /accounts/{account_id}/workers/observability/queries
GET /accounts/{account_id}/workers/observability/queries/{queryId}

Retrieve a saved query.

operationId: queries.get

Parameters

Name In Required Type Description
queryId path required string

Responses

200 Successful request
401 Unauthorized
404 Not found
500 Internal error
GET /accounts/{account_id}/workers/observability/queries/{queryId}

Scans 4 endpoints

GET /accounts/{account_id}/cloudforce-one/scans/config
operationId: get_ConfigFetch

Parameters

Name In Required Type Description
account_id path required string Defines the Account ID.

Responses

4XX List Scan Configs failure.
200 Returns all Scan Configs.
GET /accounts/{account_id}/cloudforce-one/scans/config
GET /accounts/{account_id}/cloudforce-one/scans/results/{config_id}
operationId: get_GetOpenPorts

Parameters

Name In Required Type Description
account_id path required string Defines the Account ID.
config_id path required string Defines the Config ID.

Responses

4XX Get the Latest Scan Result failure.
200 Returns Current Open Ports.
GET /accounts/{account_id}/cloudforce-one/scans/results/{config_id}
GET /accounts/{account_id}/vuln_scanner/scans

Returns all scans for the account.

operationId: list-scans

Parameters

Name In Required Type Description
optional
optional

Responses

4XX
200 Successful response.
GET /accounts/{account_id}/vuln_scanner/scans
GET /accounts/{account_id}/vuln_scanner/scans/{scan_id}

Returns a single scan by ID.

operationId: get-scan

Responses

4XX
200 Successful response.
GET /accounts/{account_id}/vuln_scanner/scans/{scan_id}

Schema validation 4 endpoints

GET /zones/{zone_id}/schema_validation/schemas

Lists all OpenAPI schemas uploaded to API Shield with pagination support.

operationId: schema-validation-list-schemas-paginated

Parameters

Name In Required Type Description
optional
optional
optional
validation_enabled query optional boolean Filter for enabled schemas

Responses

4XX
200
GET /zones/{zone_id}/schema_validation/schemas
GET /zones/{zone_id}/schema_validation/schemas/hosts

Lists all unique hosts found in uploaded OpenAPI schemas for the zone.

operationId: schema-validation-list-schema-hosts

Parameters

Name In Required Type Description
optional
optional

Responses

4XX
200
GET /zones/{zone_id}/schema_validation/schemas/hosts
GET /zones/{zone_id}/schema_validation/schemas/{schema_id}

Gets the contents and metadata of a specific OpenAPI schema uploaded to API Shield.

operationId: schema-validation-get-schema

Parameters

Name In Required Type Description
optional

Responses

4XX
200
GET /zones/{zone_id}/schema_validation/schemas/{schema_id}
GET /zones/{zone_id}/schema_validation/schemas/{schema_id}/operations

Retrieves all operations from the schema. Operations that already exist in API Shield Endpoint Management will be returned as full operations.

operationId: schema-validation-extract-operations-from-schema

Parameters

Name In Required Type Description
optional
optional
optional
optional
optional
optional
operation_status query optional string 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.

Responses

4XX
200
GET /zones/{zone_id}/schema_validation/schemas/{schema_id}/operations

Schema validation settings 3 endpoints

GET /zones/{zone_id}/schema_validation/settings

Retrieves the current global schema validation settings for a zone.

operationId: schema-validation-get-settings

Responses

4XX
200
GET /zones/{zone_id}/schema_validation/settings
GET /zones/{zone_id}/schema_validation/settings/operations

Lists all per-operation schema validation settings configured for the zone.

operationId: schema-validation-list-per-operation-settings

Parameters

Name In Required Type Description
optional
optional

Responses

4XX
200
GET /zones/{zone_id}/schema_validation/settings/operations
GET /zones/{zone_id}/schema_validation/settings/operations/{operation_id}

Retrieves the schema validation settings configured for a specific API operation.

operationId: schema-validation-get-per-operation-setting

Responses

4XX
200
GET /zones/{zone_id}/schema_validation/settings/operations/{operation_id}

Secondary dns (acl) 2 endpoints

GET /accounts/{account_id}/secondary_dns/acls

List ACLs.

operationId: secondary-dns-(-acl)-list-ac-ls

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List ACLs response failure.
200 List ACLs response.
GET /accounts/{account_id}/secondary_dns/acls
GET /accounts/{account_id}/secondary_dns/acls/{acl_id}

Get ACL.

operationId: secondary-dns-(-acl)-acl-details

Parameters

Name In Required Type Description
acl_id path required
account_id path required

Responses

4XX ACL Details response failure.
200 ACL Details response.
GET /accounts/{account_id}/secondary_dns/acls/{acl_id}

Secondary dns (peer) 2 endpoints

GET /accounts/{account_id}/secondary_dns/peers

List Peers.

operationId: secondary-dns-(-peer)-list-peers

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List Peers response failure.
200 List Peers response.
GET /accounts/{account_id}/secondary_dns/peers
GET /accounts/{account_id}/secondary_dns/peers/{peer_id}

Get Peer.

operationId: secondary-dns-(-peer)-peer-details

Parameters

Name In Required Type Description
peer_id path required
account_id path required

Responses

4XX Peer Details response failure.
200 Peer Details response.
GET /accounts/{account_id}/secondary_dns/peers/{peer_id}

Secondary dns (primary zone) 2 endpoints

GET /zones/{zone_id}/secondary_dns/outgoing

Get primary zone configuration for outgoing zone transfers.

operationId: secondary-dns-(-primary-zone)-primary-zone-configuration-details

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Primary Zone Configuration Details response failure.
200 Primary Zone Configuration Details response.
GET /zones/{zone_id}/secondary_dns/outgoing
GET /zones/{zone_id}/secondary_dns/outgoing/status

Get primary zone transfer status.

operationId: secondary-dns-(-primary-zone)-get-outgoing-zone-transfer-status

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Get Outgoing Zone Transfer Status response failure.
200 Get Outgoing Zone Transfer Status response.
GET /zones/{zone_id}/secondary_dns/outgoing/status

Secondary dns (secondary zone) 1 endpoints

GET /zones/{zone_id}/secondary_dns/incoming

Get secondary zone configuration for incoming zone transfers.

operationId: secondary-dns-(-secondary-zone)-secondary-zone-configuration-details

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Secondary Zone Configuration Details response failure.
200 Secondary Zone Configuration Details response.
GET /zones/{zone_id}/secondary_dns/incoming

Secondary dns (tsig) 2 endpoints

GET /accounts/{account_id}/secondary_dns/tsigs

List TSIGs.

operationId: secondary-dns-(-tsig)-list-tsi-gs

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List TSIGs response failure.
200 List TSIGs response.
GET /accounts/{account_id}/secondary_dns/tsigs
GET /accounts/{account_id}/secondary_dns/tsigs/{tsig_id}

Get TSIG.

operationId: secondary-dns-(-tsig)-tsig-details

Parameters

Name In Required Type Description
tsig_id path required
account_id path required

Responses

4XX TSIG Details response failure.
200 TSIG Details response.
GET /accounts/{account_id}/secondary_dns/tsigs/{tsig_id}

Secrets store 9 endpoints

GET /accounts/{account_id}/secrets_store/quota

Lists the number of secrets used in the account.

operationId: secrets-store-quota

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List store secrets response failure
200 Usage and quota
GET /accounts/{account_id}/secrets_store/quota
GET /accounts/{account_id}/secrets_store/stores

Lists all the stores in an account

operationId: secrets-store-list

Parameters

Name In Required Type Description
account_id path required
optional
optional
optional
optional

Responses

4XX List account stores response failure
200 List account stores response
GET /accounts/{account_id}/secrets_store/stores
GET /accounts/{account_id}/secrets_store/stores/{store_id}

Returns details of a single store

operationId: secrets-store-get-store-by-id

Parameters

Name In Required Type Description
account_id path required
store_id path required

Responses

4XX failure
200 store details
GET /accounts/{account_id}/secrets_store/stores/{store_id}
GET /accounts/{account_id}/secrets_store/stores/{store_id}/secrets

Lists all store secrets

operationId: secrets-store-secrets-list

Parameters

Name In Required Type Description
account_id path required
store_id path required
optional
optional
optional
optional
optional
optional

Responses

4XX List store secrets response failure
200 List store secrets response
GET /accounts/{account_id}/secrets_store/stores/{store_id}/secrets
GET /accounts/{account_id}/secrets_store/stores/{store_id}/secrets/{secret_id}

Returns details of a single secret

operationId: secrets-store-get-by-id

Parameters

Name In Required Type Description
account_id path required
store_id path required
secret_id path required

Responses

4XX failure
200 secret detail
GET /accounts/{account_id}/secrets_store/stores/{store_id}/secrets/{secret_id}
GET /system/accounts/{account_tag}/stores

Lists all stores in an account that are managed by the calling service. Only returns stores where managed_by matches the authenticated service.

operationId: secrets-store-system-list

Parameters

Name In Required Type Description
optional
optional
optional
optional
optional

Responses

4XX List account stores response failure
200 List account stores response
GET /system/accounts/{account_tag}/stores
GET /system/accounts/{account_tag}/stores/{store_id}

Returns details of a single store managed by the calling service. Returns 404 if the store doesn't exist or is not managed by the authenticated service.

operationId: secrets-store-system-get-store-by-id

Parameters

Name In Required Type Description
optional
store_id path required

Responses

4XX Get store failure
200 Store details
GET /system/accounts/{account_tag}/stores/{store_id}
GET /system/accounts/{account_tag}/stores/{store_id}/secrets

Lists all secrets in a store managed by the calling service. Returns 404 if the store doesn't exist or is not managed by the authenticated service.

operationId: secrets-store-system-secrets-list

Parameters

Name In Required Type Description
optional
store_id path required
optional
optional
optional
optional
optional
optional

Responses

4XX List store secrets response failure
200 List store secrets response
GET /system/accounts/{account_tag}/stores/{store_id}/secrets
GET /system/accounts/{account_tag}/stores/{store_id}/secrets/{secret_id}

Returns details of a single secret from a store managed by the calling service. Returns 404 if the store doesn't exist or is not managed by the authenticated service.

operationId: secrets-store-system-get-by-id

Parameters

Name In Required Type Description
optional
store_id path required
secret_id path required

Responses

4XX Get secret failure
200 Secret detail
GET /system/accounts/{account_tag}/stores/{store_id}/secrets/{secret_id}

Security center insights 10 endpoints

GET /accounts/{account_id}/intel/attack-surface-report/issue-types

Lists all available issue types in Security Center, describing categories of security issues.

operationId: get-security-center-issue-types

Parameters

Name In Required Type Description
account_id path required

Responses

4XX A client error occurred.
200 The request was successful.
GET /accounts/{account_id}/intel/attack-surface-report/issue-types
GET /accounts/{account_id}/security-center/insights

Lists all Security Center insights for the account, showing security findings and recommendations.

operationId: get-security-center-insights

Parameters

Name In Required Type Description
account_id path required
dismissed query optional
issue_class query optional
issue_type query optional
product query optional
severity query optional
subject query optional
issue_class~neq query optional
issue_type~neq query optional
product~neq query optional
severity~neq query optional
subject~neq query optional
page query optional
per_page query optional

Responses

4XX A client error occurred.
200 The request was successful.
GET /accounts/{account_id}/security-center/insights
GET /accounts/{account_id}/security-center/insights/class

Retrieves Security Center insight counts aggregated by classification class.

operationId: get-security-center-insight-counts-by-class

Parameters

Name In Required Type Description
account_id path required
dismissed query optional
issue_class query optional
issue_type query optional
product query optional
severity query optional
subject query optional
issue_class~neq query optional
issue_type~neq query optional
product~neq query optional
severity~neq query optional
subject~neq query optional

Responses

4XX A client error occurred.
200 The request was successful.
GET /accounts/{account_id}/security-center/insights/class
GET /accounts/{account_id}/security-center/insights/severity

Retrieves Security Center insight counts aggregated by severity level (critical, high, medium, low).

operationId: get-security-center-insight-counts-by-severity

Parameters

Name In Required Type Description
account_id path required
dismissed query optional
issue_class query optional
issue_type query optional
product query optional
severity query optional
subject query optional
issue_class~neq query optional
issue_type~neq query optional
product~neq query optional
severity~neq query optional
subject~neq query optional

Responses

4XX A client error occurred.
200 The request was successful.
GET /accounts/{account_id}/security-center/insights/severity
GET /accounts/{account_id}/security-center/insights/type

Retrieves Security Center insight counts aggregated by insight type.

operationId: get-security-center-insight-counts-by-type

Parameters

Name In Required Type Description
account_id path required
dismissed query optional
issue_class query optional
issue_type query optional
product query optional
severity query optional
subject query optional
issue_class~neq query optional
issue_type~neq query optional
product~neq query optional
severity~neq query optional
subject~neq query optional

Responses

4XX A client error occurred.
200 The request was successful.
GET /accounts/{account_id}/security-center/insights/type
GET /accounts/{account_id}/security-center/insights/{issue_id}/context

Returns the full context payload for an insight. This endpoint is used for insights with large payloads that are not included inline in the list response.

operationId: get-security-center-insight-context

Parameters

Name In Required Type Description
account_id path required
issue_id path required string

Responses

4XX A client error occurred.
200 The request was successful.
GET /accounts/{account_id}/security-center/insights/{issue_id}/context
GET /zones/{zone_id}/security-center/insights

Lists Security Center insights for a specific zone, showing zone-level security findings.

operationId: get-zone-security-center-insights

Parameters

Name In Required Type Description
zone_id path required
dismissed query optional
issue_class query optional
issue_type query optional
product query optional
severity query optional
subject query optional
issue_class~neq query optional
issue_type~neq query optional
product~neq query optional
severity~neq query optional
subject~neq query optional
page query optional
per_page query optional

Responses

4XX A client error occurred.
200 The request was successful.
GET /zones/{zone_id}/security-center/insights
GET /zones/{zone_id}/security-center/insights/class

Retrieves zone-specific Security Center insight counts aggregated by classification class.

operationId: get-zone-security-center-insight-counts-by-class

Parameters

Name In Required Type Description
zone_id path required
dismissed query optional
issue_class query optional
issue_type query optional
product query optional
severity query optional
subject query optional
issue_class~neq query optional
issue_type~neq query optional
product~neq query optional
severity~neq query optional
subject~neq query optional

Responses

4XX A client error occurred.
200 The request was successful.
GET /zones/{zone_id}/security-center/insights/class
GET /zones/{zone_id}/security-center/insights/severity

Retrieves zone-specific Security Center insight counts aggregated by severity level.

operationId: get-zone-security-center-insight-counts-by-severity

Parameters

Name In Required Type Description
zone_id path required
dismissed query optional
issue_class query optional
issue_type query optional
product query optional
severity query optional
subject query optional
issue_class~neq query optional
issue_type~neq query optional
product~neq query optional
severity~neq query optional
subject~neq query optional

Responses

4XX A client error occurred.
200 The request was successful.
GET /zones/{zone_id}/security-center/insights/severity
GET /zones/{zone_id}/security-center/insights/type

Retrieves zone-specific Security Center insight counts aggregated by insight type.

operationId: get-zone-security-center-insight-counts-by-type

Parameters

Name In Required Type Description
zone_id path required
dismissed query optional
issue_class query optional
issue_type query optional
product query optional
severity query optional
subject query optional
issue_class~neq query optional
issue_type~neq query optional
product~neq query optional
severity~neq query optional
subject~neq query optional

Responses

4XX A client error occurred.
200 The request was successful.
GET /zones/{zone_id}/security-center/insights/type

Sessions 8 endpoints

GET /accounts/{account_id}/realtime/kit/{app_id}/sessions

Returns details of all sessions of an App.

operationId: GetSessions

Parameters

Name In Required Type Description
account_id path required
app_id path required
optional
optional
optional
optional
optional
optional
optional
optional
search query optional string Search string that matches sessions based on meeting title, meeting ID, and session ID
associated_id query optional string ID of the meeting that sessions should be associated with

Responses

200
GET /accounts/{account_id}/realtime/kit/{app_id}/sessions
GET /accounts/{account_id}/realtime/kit/{app_id}/sessions/peer-report/{peer_id}

Returns details of the given peer ID along with call statistics for the given session ID.

operationId: GetParticipantDataFromPeerId

Parameters

Name In Required Type Description
account_id path required
app_id path required
filters query optional string Comma separated list of filters to apply. Note that there must be no spaces between the filters.
peer_id path required string ID of the peer

Responses

200
GET /accounts/{account_id}/realtime/kit/{app_id}/sessions/peer-report/{peer_id}
GET /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}

Returns data of the given session ID including recording details.

operationId: GetSessionDetails

Parameters

Name In Required Type Description
account_id path required
app_id path required
include_breakout_rooms query optional boolean List all breakout rooms
session_id path required string ID of the session

Responses

200
GET /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}
GET /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}/chat

Returns a URL to download all chat messages of the session ID in CSV format.

operationId: GetSessionChat

Parameters

Name In Required Type Description
account_id path required
app_id path required
session_id path required string ID of the session

Responses

200
GET /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}/chat
GET /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}/participants

Returns a list of participants for the given session ID.

operationId: GetSessionParticipants

Parameters

Name In Required Type Description
account_id path required
app_id path required
optional
optional
optional
optional
optional
include_peer_events query optional boolean if true, response includes all the peer events of participants.
view query optional string 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.
session_id path required string ID of the session

Responses

200
GET /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}/participants
GET /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}/participants/{participant_id}

Returns details of the given participant ID along with call statistics for the given session ID.

operationId: GetParticipantDetails

Parameters

Name In Required Type Description
account_id path required
app_id path required
filters query optional string Comma separated list of filters to apply. Note that there must be no spaces between the filters.
include_peer_events query optional boolean if true, response includes all the peer events of participant.
participant_id path required string ID of the participant
session_id path required string ID of the session

Responses

200
GET /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}/participants/{participant_id}
GET /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}/summary

Returns a Summary URL to download the Summary of Transcripts for the session ID as plain text.

operationId: GetSessionSummary

Parameters

Name In Required Type Description
account_id path required
app_id path required
session_id path required string

Responses

200
GET /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}/summary
GET /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}/transcript

Returns a URL to download the transcript for the session ID in CSV format.

operationId: GetSessionTranscript

Parameters

Name In Required Type Description
account_id path required
app_id path required
session_id path required string ID of the session

Responses

200
GET /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}/transcript

Settings 1 endpoints

GET /accounts/{account_id}/cni/settings
operationId: get_settings

Parameters

Name In Required Type Description
account_id path required string Account tag to retrieve settings for

Responses

200 The active account settings values
400 Bad request
404 Account not found
500 Internal server error
GET /accounts/{account_id}/cni/settings

Sinkhole config 1 endpoints

GET /accounts/{account_id}/intel/sinkholes
operationId: sinkhole-config-get-sinkholes

Parameters

Name In Required Type Description
account_id path required

Responses

200 Successful Response
GET /accounts/{account_id}/intel/sinkholes

Slots 2 endpoints

GET /accounts/{account_id}/cni/slots
operationId: list_slots

Parameters

Name In Required Type Description
address_contains query optional string If specified, only show slots with the given text in their address field
site query optional string If specified, only show slots located at the given site
speed query optional string If specified, only show slots that support the given speed
occupied query optional boolean If specified, only show slots with a specific occupied/unoccupied state
cursor query optional integer
limit query optional integer
account_id path required

Responses

200 List of matching slots
400 Bad request
500 Internal server error
GET /accounts/{account_id}/cni/slots
GET /accounts/{account_id}/cni/slots/{slot}
operationId: get_slot

Parameters

Name In Required Type Description
slot path required string
account_id path required

Responses

200 Information about the specified slot
400 Bad request
404 Slot not found
500 Internal server error
GET /accounts/{account_id}/cni/slots/{slot}

Smart shield settings 1 endpoints

GET /zones/{zone_id}/smart_shield

Retrieve Smart Shield Settings.

operationId: smart-shield-get-settings

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Patch Smart Shield Settings response failure.
200 Smart Shield Settings response.
500 Get Smart Shield Settings response failure.
502 Get Smart Shield Settings response failure.
GET /zones/{zone_id}/smart_shield

Smart tiered cache 1 endpoints

GET /zones/{zone_id}/cache/tiered_cache_smart_topology_enable

Smart Tiered Cache dynamically selects the single closest upper tier for each of your website’s origins with no configuration required, using our in-house performance and routing data. Cloudflare collects latency data for each request to an origin, and uses the latency data to determine how well any upper-tier data center is connected with an origin. As a result, Cloudflare can select the data center with the lowest latency to be the upper-tier for an origin.

operationId: smart-tiered-cache-get-smart-tiered-cache-setting

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Get Smart Tiered Cache setting response failure.
200 Get Smart Tiered Cache setting response.
GET /zones/{zone_id}/cache/tiered_cache_smart_topology_enable

Spectrum analytics 3 endpoints

GET /zones/{zone_id}/spectrum/analytics/aggregate/current

Retrieves analytics aggregated from the last minute of usage on Spectrum applications underneath a given zone.

operationId: spectrum-aggregate-analytics-get-current-aggregated-analytics

Parameters

Name In Required Type Description
zone_id path required
appID query optional
colo_name query optional string

Responses

4xx Get current aggregated analytics response failure
200 Get current aggregated analytics response
GET /zones/{zone_id}/spectrum/analytics/aggregate/current
GET /zones/{zone_id}/spectrum/analytics/events/bytime

Retrieves a list of aggregate metrics grouped by time interval.

operationId: spectrum-analytics-(-by-time)-get-analytics-by-time

Parameters

Name In Required Type Description
zone_id path required
dimensions query optional
sort query optional
until query optional
metrics query optional
filters query optional
since query optional
time_delta query required string

Responses

4xx Get analytics by time response failure
200 Get analytics by time response
GET /zones/{zone_id}/spectrum/analytics/events/bytime
GET /zones/{zone_id}/spectrum/analytics/events/summary

Retrieves a list of summarised aggregate metrics over a given time period.

operationId: spectrum-analytics-(-summary)-get-analytics-summary

Parameters

Name In Required Type Description
zone_id path required
dimensions query optional
sort query optional
until query optional
metrics query optional
filters query optional
since query optional

Responses

4xx Get analytics summary response failure
200 Get analytics summary response
GET /zones/{zone_id}/spectrum/analytics/events/summary

Spectrum applications 2 endpoints

GET /zones/{zone_id}/spectrum/apps

Retrieves a list of currently existing Spectrum applications inside a zone.

operationId: spectrum-applications-list-spectrum-applications

Parameters

Name In Required Type Description
zone_id path required
page query optional number
per_page query optional number
direction query optional string
order query optional string

Responses

4XX List Spectrum applications response failure.
200 List Spectrum applications response.
GET /zones/{zone_id}/spectrum/apps
GET /zones/{zone_id}/spectrum/apps/{app_id}

Gets the application configuration of a specific application inside a zone.

operationId: spectrum-applications-get-spectrum-application-configuration

Parameters

Name In Required Type Description
app_id path required
zone_id path required

Responses

4XX Get Spectrum application configuration response failure.
200 Get Spectrum application configuration response.
GET /zones/{zone_id}/spectrum/apps/{app_id}

Stream audio tracks 1 endpoints

GET /accounts/{account_id}/stream/{identifier}/audio

Lists additional audio tracks on a video. Note this API will not return information for audio attached to the video upload.

operationId: list-audio-tracks

Parameters

Name In Required Type Description
account_id path required
identifier path required

Responses

4XX Lists additional audio tracks on a video response failure.
200 Lists additional audio tracks on a video.
GET /accounts/{account_id}/stream/{identifier}/audio

Stream live inputs 3 endpoints

GET /accounts/{account_id}/stream/live_inputs

Lists the live inputs created for an account. To get the credentials needed to stream to a specific live input, request a single live input.

operationId: stream-live-inputs-list-live-inputs

Parameters

Name In Required Type Description
account_id path required
include_counts query optional

Responses

4XX List live inputs response failure.
200 List live inputs response.
GET /accounts/{account_id}/stream/live_inputs
GET /accounts/{account_id}/stream/live_inputs/{live_input_identifier}

Retrieves details of an existing live input.

operationId: stream-live-inputs-retrieve-a-live-input

Parameters

Name In Required Type Description
live_input_identifier path required
account_id path required

Responses

4XX Retrieve a live input response failure.
200 Retrieve a live input response.
GET /accounts/{account_id}/stream/live_inputs/{live_input_identifier}
GET /accounts/{account_id}/stream/live_inputs/{live_input_identifier}/outputs

Retrieves all outputs associated with a specified live input.

operationId: stream-live-inputs-list-all-outputs-associated-with-a-specified-live-input

Parameters

Name In Required Type Description
live_input_identifier path required
account_id path required

Responses

4XX List all outputs associated with a specified live input response failure.
200 List all outputs associated with a specified live input response.
GET /accounts/{account_id}/stream/live_inputs/{live_input_identifier}/outputs

Stream mp4 downloads 1 endpoints

GET /accounts/{account_id}/stream/{identifier}/downloads

Lists the downloads created for a video.

operationId: stream-m-p-4-downloads-list-downloads

Parameters

Name In Required Type Description
identifier path required
account_id path required

Responses

4XX List downloads response failure.
200 List downloads response.
GET /accounts/{account_id}/stream/{identifier}/downloads

Stream signing keys 1 endpoints

GET /accounts/{account_id}/stream/keys

Lists the video ID and creation date and time when a signing key was created.

operationId: stream-signing-keys-list-signing-keys

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List signing keys response failure.
200 List signing keys response.
GET /accounts/{account_id}/stream/keys

Stream subtitles/captions 3 endpoints

GET /accounts/{account_id}/stream/{identifier}/captions

Lists the available captions or subtitles for a specific video.

operationId: stream-subtitles/-captions-list-captions-or-subtitles

Parameters

Name In Required Type Description
identifier path required
account_id path required

Responses

4XX List captions or subtitles response failure.
200 List captions or subtitles response.
GET /accounts/{account_id}/stream/{identifier}/captions
GET /accounts/{account_id}/stream/{identifier}/captions/{language}

Lists the captions or subtitles for provided language.

operationId: stream-subtitles/-captions-get-caption-or-subtitle-for-language

Parameters

Name In Required Type Description
language path required
identifier path required
account_id path required

Responses

4XX List captions or subtitles response for a provided language.
200 List captions or subtitles response for a provided language.
GET /accounts/{account_id}/stream/{identifier}/captions/{language}
GET /accounts/{account_id}/stream/{identifier}/captions/{language}/vtt

Return WebVTT captions for a provided language.

operationId: stream-subtitles/-captions-get-vtt-caption-or-subtitle

Parameters

Name In Required Type Description
language path required
identifier path required
account_id path required

Responses

4XX Return WebVTT caption or subtitle response failure.
200 Return WebVTT caption or subtitle response.
GET /accounts/{account_id}/stream/{identifier}/captions/{language}/vtt

Stream videos 4 endpoints

GET /accounts/{account_id}/stream

Lists up to 1000 videos from a single request. For a specific range, refer to the optional parameters.

operationId: stream-videos-list-videos

Parameters

Name In Required Type Description
account_id path required
status query optional
creator query optional
type query optional
asc query optional
video_name query optional
search query optional
start query optional
end query optional
include_counts query optional
id query optional string Filter by video ID(s). Can be a single ID or a comma-separated list of IDs.
name query optional string Filter by video name/UID(s). Can be a single name or a comma-separated list.
live_input_id query optional string Filter by live input ID to find videos associated with a specific live stream.
before query optional string Alias for 'end'. Returns videos created before this date/time (RFC 3339 format).
after query optional string Alias for 'start'. Returns videos created after this date/time (RFC 3339 format).
limit query optional integer Maximum number of videos to return (default 1000, max 1000).

Responses

4XX List videos response failure.
200 List videos response.
GET /accounts/{account_id}/stream
GET /accounts/{account_id}/stream/storage-usage

Returns information about an account's storage use.

operationId: stream-videos-storage-usage

Parameters

Name In Required Type Description
account_id path required
creator query optional

Responses

4XX Returns information about an account's storage use response failure.
200 Returns information about an account's storage use response.
GET /accounts/{account_id}/stream/storage-usage
GET /accounts/{account_id}/stream/{identifier}

Fetches details for a single video.

operationId: stream-videos-retrieve-video-details

Parameters

Name In Required Type Description
identifier path required
account_id path required

Responses

4XX Retrieve video details response failure.
200 Retrieve video details response.
GET /accounts/{account_id}/stream/{identifier}
GET /accounts/{account_id}/stream/{identifier}/embed

Fetches an HTML code snippet to embed a video in a web page delivered through Cloudflare. On success, returns an HTML fragment for use on web pages to display a video. On failure, returns a JSON response body.

operationId: stream-videos-retreieve-embed-code-html

Parameters

Name In Required Type Description
identifier path required
account_id path required

Responses

4XX Retreieve embed Code HTML response failure.
200 Retreieve embed Code HTML response.
GET /accounts/{account_id}/stream/{identifier}/embed

Stream watermark profile 2 endpoints

GET /accounts/{account_id}/stream/watermarks

Lists all watermark profiles for an account.

operationId: stream-watermark-profile-list-watermark-profiles

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List watermark profiles response failure.
200 List watermark profiles response.
GET /accounts/{account_id}/stream/watermarks
GET /accounts/{account_id}/stream/watermarks/{identifier}

Retrieves details for a single watermark profile.

operationId: stream-watermark-profile-watermark-profile-details

Parameters

Name In Required Type Description
identifier path required
account_id path required

Responses

4XX Watermark profile details response failure.
200 Watermark profile details response.
GET /accounts/{account_id}/stream/watermarks/{identifier}

Stream webhook 1 endpoints

GET /accounts/{account_id}/stream/webhook

Retrieves a list of webhooks.

operationId: stream-webhook-view-webhooks

Parameters

Name In Required Type Description
account_id path required

Responses

4XX View webhooks response failure.
200 View webhooks response.
GET /accounts/{account_id}/stream/webhook

Table maintenance configuration 1 endpoints

GET /accounts/{account_id}/r2-catalog/{bucket_name}/namespaces/{namespace}/tables/{table_name}/maintenance-configs

Retrieve the maintenance configuration for a specific table, including compaction settings.

operationId: get-table-maintenance-config

Parameters

Name In Required Type Description
account_id path required Identifies the account.
bucket_name path required Specifies the R2 bucket name.
namespace path required string The namespace identifier (use %1F as separator for nested namespaces).
table_name path required string The table name.

Responses

200 Table maintenance configuration retrieved successfully.
400 Bad request.
401 Authentication failed.
403 Forbidden.
404 Table not found.
500 Internal server error.
GET /accounts/{account_id}/r2-catalog/{bucket_name}/namespaces/{namespace}/tables/{table_name}/maintenance-configs

Table management 1 endpoints

GET /accounts/{account_id}/r2-catalog/{bucket_name}/namespaces/{namespace}/tables

Returns a list of tables in the specified namespace within an R2 catalog. Supports pagination for efficient traversal of large table collections.

operationId: list-tables

Parameters

Name In Required Type Description
account_id path required Identifies the account.
bucket_name path required Specifies the R2 bucket name.
namespace path required string The namespace identifier. For nested namespaces, use %1F as separator (e.g., "bronze%1Fanalytics").
page_token query optional string Opaque pagination token from a previous response. Use this to fetch the next page of results.
page_size query optional integer Maximum number of tables to return per page. Defaults to 100, maximum 1000.
return_uuids query optional boolean Whether to include table UUIDs in the response. Set to true to receive the table_uuids array.
return_details query optional boolean Whether to include additional metadata (timestamps, locations). When true, response includes created_at, updated_at, metadata_locations, and locations arrays.

Responses

200 List of tables retrieved successfully.
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.
GET /accounts/{account_id}/r2-catalog/{bucket_name}/namespaces/{namespace}/tables

Tag 2 endpoints

GET /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/tags/{tag_uuid}/indicators

Returns indicators associated with the provided tag UUID across all indicator datasets, with pagination.

operationId: get_TagIndicatorsList

Parameters

Name In Required Type Description
account_id path required string Account ID.
tag_uuid path required string Tag UUID.
dataset_id path required string Dataset UUID.
page query optional number
pageSize query optional number
indicatorType query optional string
relatedEvent query optional array Filter indicators by related event UUID(s). Multiple UUIDs can be provided by repeating the parameter.

Responses

200 Returns a paginated list of indicators.
400 Bad Request.
404 Bad Request.
500 Bad Request.
GET /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/tags/{tag_uuid}/indicators
GET /accounts/{account_id}/cloudforce-one/events/tags

Returns all Source-of-Truth tags for an account.

operationId: get_TagList

Parameters

Name In Required Type Description
account_id path required string Account ID.
page query optional number
pageSize query optional number
search query optional string
categoryUuid query optional string

Responses

200 Returns a paginated list of tags.
400 Bad Request.
GET /accounts/{account_id}/cloudforce-one/events/tags

Tagcategory 1 endpoints

GET /accounts/{account_id}/cloudforce-one/events/tags/categories

Returns all Source-of-Truth tag categories for an account.

operationId: get_TagCategoryList

Parameters

Name In Required Type Description
account_id path required string Account ID.
search query optional string

Responses

200 Returns a list of tag categories.
400 Bad Request.
GET /accounts/{account_id}/cloudforce-one/events/tags/categories

Target environments 2 endpoints

GET /accounts/{account_id}/vuln_scanner/target_environments

Returns all target environments for the account.

operationId: list-target-environments

Parameters

Name In Required Type Description
optional
optional

Responses

4XX
200 Successful response.
GET /accounts/{account_id}/vuln_scanner/target_environments
GET /accounts/{account_id}/vuln_scanner/target_environments/{target_environment_id}

Returns a single target environment by ID.

operationId: get-target-environment

Responses

4XX
200 Successful response.
GET /accounts/{account_id}/vuln_scanner/target_environments/{target_environment_id}

Target industry 3 endpoints

GET /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/targetIndustries
operationId: get_TargetIndustryListByDataset

Parameters

Name In Required Type Description
account_id path required string Account ID.
dataset_id path required string Dataset UUID.

Responses

200 Returns a list of target industries for the dataset.
400 Bad Request.
GET /accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/targetIndustries
GET /accounts/{account_id}/cloudforce-one/events/targetIndustries
operationId: get_TargetIndustryList

Parameters

Name In Required Type Description
account_id path required string Account ID.
datasetIds query optional array Array of dataset IDs to query target industries from. If not provided, uses the default dataset.

Responses

200 Returns a list of target industries.
400 Bad Request.
GET /accounts/{account_id}/cloudforce-one/events/targetIndustries
GET /accounts/{account_id}/cloudforce-one/events/targetIndustries/catalog
operationId: get_TargetIndustryListComplete

Parameters

Name In Required Type Description
account_id path required string Account ID.

Responses

200 Returns all target industries from industry map catalog.
400 Bad Request.
GET /accounts/{account_id}/cloudforce-one/events/targetIndustries/catalog

Tenants 5 endpoints

GET /tenants/{tenant_id}

Retrieves a Tenant by Tenant ID.

operationId: Tenants_retrieveTenant

Parameters

Name In Required Type Description
tenant_id path required string

Responses

4XX An unexpected error response.
200 The request has succeeded.
GET /tenants/{tenant_id}
GET /tenants/{tenant_id}/account_types

List of account types available for the Tenant to provision accounts.

operationId: Tenants_validAccountTypes

Parameters

Name In Required Type Description
tenant_id path required string

Responses

4XX An unexpected error response.
200 The request has succeeded.
GET /tenants/{tenant_id}/account_types
GET /tenants/{tenant_id}/accounts

List of accounts for the Tenant.

operationId: Tenants_listAccounts

Parameters

Name In Required Type Description
tenant_id path required string

Responses

4XX An unexpected error response.
200 The request has succeeded.
GET /tenants/{tenant_id}/accounts
GET /tenants/{tenant_id}/entitlements

List of innate entitlements available for the Tenant.

operationId: Tenants_listEntitlements

Parameters

Name In Required Type Description
tenant_id path required string

Responses

4XX An unexpected error response.
200 The request has succeeded.
GET /tenants/{tenant_id}/entitlements
GET /tenants/{tenant_id}/memberships

List of active members (Cloudflare users) for the Tenant.

operationId: Tenants_listMemberships

Parameters

Name In Required Type Description
tenant_id path required string

Responses

4XX An unexpected error response.
200 The request has succeeded.
GET /tenants/{tenant_id}/memberships

Tiered caching 1 endpoints

GET /zones/{zone_id}/argo/tiered_caching

Tiered Cache works by dividing Cloudflare's data centers into a hierarchy of lower-tiers and upper-tiers. If content is not cached in lower-tier data centers (generally the ones closest to a visitor), the lower-tier must ask an upper-tier to see if it has the content. If the upper-tier does not have the content, only the upper-tier can ask the origin for content. This practice improves bandwidth efficiency by limiting the number of data centers that can ask the origin for content, which reduces origin load and makes websites more cost-effective to operate. Additionally, Tiered Cache concentrates connections to origin servers so they come from a small number of data centers rather than the full set of network locations. This results in fewer open connections using server resources.

operationId: tiered-caching-get-tiered-caching-setting

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Get Tiered Caching setting response failure.
200 Get Tiered Caching setting response.
GET /zones/{zone_id}/argo/tiered_caching

Token validation token configuration 2 endpoints

GET /zones/{zone_id}/token_validation/config

Lists all token validation configurations for this zone

operationId: token-validation-config-list

Parameters

Name In Required Type Description
optional
optional

Responses

4XX
200
GET /zones/{zone_id}/token_validation/config
GET /zones/{zone_id}/token_validation/config/{config_id}

Get a single Token Configuration

operationId: token-validation-config-get

Responses

4XX
200
GET /zones/{zone_id}/token_validation/config/{config_id}

Token validation token rules 2 endpoints

GET /zones/{zone_id}/token_validation/rules

List token validation rules

operationId: token-validation-rules-list

Parameters

Name In Required Type Description
optional
optional
token_configuration query optional array Select rules using any of these token configurations.
action query optional
enabled query optional
id query optional Select rules with these IDs.
rule_id query optional Select rules with these IDs.
host query optional Select rules with this host in `include`.
hostname query optional Select rules with this host in `include`.

Responses

4XX
200
GET /zones/{zone_id}/token_validation/rules
GET /zones/{zone_id}/token_validation/rules/{rule_id}

Get a zone token validation rule.

operationId: token-validation-rules-get

Responses

4XX
200
GET /zones/{zone_id}/token_validation/rules/{rule_id}

Total tls 1 endpoints

GET /zones/{zone_id}/acm/total_tls

Get Total TLS Settings for a Zone.

operationId: total-tls-total-tls-settings-details

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Total TLS Settings Details response failure
200 Total TLS Settings Details response
GET /zones/{zone_id}/acm/total_tls

Tunnel routing 3 endpoints

GET /accounts/{account_id}/teamnet/routes

Lists and filters private network routes in an account.

operationId: tunnel-route-list-tunnel-routes

Parameters

Name In Required Type Description
account_id path required
comment query optional
is_deleted query optional boolean
network_subset query optional
network_superset query optional
existed_at query optional
tunnel_id query optional
route_id query optional
tun_types query optional
virtual_network_id query optional
per_page query optional
page query optional

Responses

4XX List tunnel routes response failure
200 List tunnel routes response
GET /accounts/{account_id}/teamnet/routes
GET /accounts/{account_id}/teamnet/routes/ip/{ip}

Fetches routes that contain the given IP address.

operationId: tunnel-route-get-tunnel-route-by-ip

Parameters

Name In Required Type Description
ip path required
account_id path required
virtual_network_id query optional
default_virtual_network_fallback query optional boolean 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.

Responses

4XX Get tunnel route by IP response failure
200 Get tunnel route by IP response
GET /accounts/{account_id}/teamnet/routes/ip/{ip}
GET /accounts/{account_id}/teamnet/routes/{route_id}

Get a private network route in an account.

operationId: tunnel-route-get-tunnel-route

Parameters

Name In Required Type Description
account_id path required
route_id path required

Responses

4XX Get a tunnel route response failure
200 Get a tunnel route response
GET /accounts/{account_id}/teamnet/routes/{route_id}

Tunnel virtual network 2 endpoints

GET /accounts/{account_id}/teamnet/virtual_networks

Lists and filters virtual networks in an account.

operationId: tunnel-virtual-network-list-virtual-networks

Parameters

Name In Required Type Description
account_id path required
id query optional
name query optional
is_default query optional boolean
is_default_network query optional boolean
is_deleted query optional boolean

Responses

4XX List virtual networks response failure
200 List virtual networks response
GET /accounts/{account_id}/teamnet/virtual_networks
GET /accounts/{account_id}/teamnet/virtual_networks/{virtual_network_id}

Get a virtual network.

operationId: tunnel-virtual-network-get

Parameters

Name In Required Type Description
account_id path required
virtual_network_id path required

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "type": "object",
        "properties": {
          "name": {
            "$ref": "#/components/schemas/tunnel_virtual_network_name"
          },
          "comment": {
            "$ref": "#/components/schemas/tunnel_virtual_network_comment"
          },
          "is_default_network": {
            "$ref": "#/components/schemas/tunnel_is_default_network"
          }
        }
      }
    }
  },
  "required": true
}

Responses

4XX A virtual network response failure
200 A virtual network response
GET /accounts/{account_id}/teamnet/virtual_networks/{virtual_network_id}

Turnstile 2 endpoints

GET /accounts/{account_id}/challenges/widgets

Lists all turnstile widgets of an account.

operationId: accounts-turnstile-widgets-list

Responses

4XX List Turnstile Widgets Error
200 List Turnstile Widgets
GET /accounts/{account_id}/challenges/widgets
GET /accounts/{account_id}/challenges/widgets/{sitekey}

Show a single challenge widget configuration.

operationId: accounts-turnstile-widget-get

Responses

4XX Turnstile Widget Details Response Error
200 Turnstile Widget Details Response
GET /accounts/{account_id}/challenges/widgets/{sitekey}

Url normalization 1 endpoints

GET /zones/{zone_id}/url_normalization

Fetches the current URL Normalization settings.

operationId: getUrlNormalization

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX
200
GET /zones/{zone_id}/url_normalization

Url scanner 6 endpoints

GET /accounts/{account_id}/urlscanner/v2/dom/{scan_id}

Returns a plain text response, with the scan's DOM content as rendered by Chrome.

operationId: urlscanner-get-scan-dom-v2

Parameters

Name In Required Type Description
scan_id path required string Scan UUID.
account_id path required string Account ID.

Responses

200 Returns a plain text response, with the scan's DOM content as rendered by Chrome.
400 Invalid input.
404 Scan not found or in progress.
GET /accounts/{account_id}/urlscanner/v2/dom/{scan_id}
GET /accounts/{account_id}/urlscanner/v2/har/{scan_id}

Get a URL scan's HAR file. See HAR spec at http://www.softwareishard.com/blog/har-12-spec/.

operationId: urlscanner-get-scan-har-v2

Parameters

Name In Required Type Description
scan_id path required string Scan UUID.
account_id path required string Account ID.

Responses

200 Returns the scan's har.
400 Invalid input.
404 Scan not found or in progress.
GET /accounts/{account_id}/urlscanner/v2/har/{scan_id}
GET /accounts/{account_id}/urlscanner/v2/responses/{response_id}

Returns the raw response of the network request. Find the `response_id` in the `data.requests.response.hash`.

operationId: urlscanner-get-response-v2

Parameters

Name In Required Type Description
response_id path required string Response hash.
account_id path required string Account ID.

Responses

200 Get the raw response by its hash.
400 Invalid input.
GET /accounts/{account_id}/urlscanner/v2/responses/{response_id}
GET /accounts/{account_id}/urlscanner/v2/result/{scan_id}

Get URL scan by uuid

operationId: urlscanner-get-scan-v2

Parameters

Name In Required Type Description
scan_id path required string Scan UUID.
account_id path required string Account ID.

Responses

200 Scan has finished. It may or may not have been successful.
400 Invalid input.
404 Scan not found or in progress.
GET /accounts/{account_id}/urlscanner/v2/result/{scan_id}
GET /accounts/{account_id}/urlscanner/v2/screenshots/{scan_id}.png

Get scan's screenshot by resolution (desktop/mobile/tablet).

operationId: urlscanner-get-scan-screenshot-v2

Parameters

Name In Required Type Description
scan_id path required string Scan UUID.
account_id path required string Account ID.
resolution query optional string Target device type.

Responses

200 Returns the scan's requested screenshot.
400 Invalid input.
404 Scan not found or in progress.
GET /accounts/{account_id}/urlscanner/v2/screenshots/{scan_id}.png
GET /accounts/{account_id}/urlscanner/v2/search

Use a subset of ElasticSearch Query syntax to filter scans. Some example queries:<br/> <br/>- 'path:"/bundles/jquery.js"': Searches for scans who requested resources with the given path.<br/>- 'page.asn:AS24940 AND hash:xxx': Websites hosted in AS24940 where a resource with the given hash was downloaded.<br/>- 'page.domain:microsoft* AND verdicts.malicious:true AND NOT page.domain:microsoft.com': malicious scans whose hostname starts with "microsoft".<br/>- 'apikey:me AND date:[2025-01 TO 2025-02]': my scans from 2025 January to 2025 February.

operationId: urlscanner-search-scans-v2

Parameters

Name In Required Type Description
account_id path required string Account ID.
size query optional integer Limit the number of objects in the response.
q query optional string Filter scans

Responses

200 Search results
400 Invalid input.
GET /accounts/{account_id}/urlscanner/v2/search

Universal ssl settings for a zone 1 endpoints

GET /zones/{zone_id}/ssl/universal/settings

Get Universal SSL Settings for a Zone.

operationId: universal-ssl-settings-for-a-zone-universal-ssl-settings-details

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Universal SSL Settings Details response failure
200 Universal SSL Settings Details response
GET /zones/{zone_id}/ssl/universal/settings

User 2 endpoints

GET /user
operationId: user-user-details

Responses

4XX User Details response failure
200 User Details response
GET /user
GET /users/tenants

Retrieves list of tenants the authenticated user / method has access to.

operationId: User_listUserTenants

Responses

4XX An unexpected error response.
200 The request has succeeded.
GET /users/tenants

User api tokens 4 endpoints

GET /user/tokens

List all access tokens you created.

operationId: user-api-tokens-list-tokens

Parameters

Name In Required Type Description
page query optional number
per_page query optional number
direction query optional string

Responses

4XX List Tokens response failure
200 List Tokens response
GET /user/tokens
GET /user/tokens/permission_groups

Find all available permission groups for API Tokens.

operationId: permission-groups-list-permission-groups

Parameters

Name In Required Type Description
name query optional string Filter by the name of the permission group. The value must be URL-encoded.
scope query optional string Filter by the scope of the permission group. The value must be URL-encoded.

Responses

4XX List Token Permission Groups response failure
200 List Token Permission Groups response
GET /user/tokens/permission_groups
GET /user/tokens/verify

Test whether a token works.

operationId: user-api-tokens-verify-token

Responses

4XX Verify Token response failure
200 Verify Token response
GET /user/tokens/verify
GET /user/tokens/{token_id}

Get information about a specific token.

operationId: user-api-tokens-token-details

Parameters

Name In Required Type Description
token_id path required

Responses

4XX Token Details response failure
200 Token Details response
GET /user/tokens/{token_id}

User agent blocking rules 2 endpoints

GET /zones/{zone_id}/firewall/ua_rules

Fetches User Agent Blocking rules in a zone. You can filter the results using several optional parameters.

operationId: user-agent-blocking-rules-list-user-agent-blocking-rules

Parameters

Name In Required Type Description
zone_id path required
page query optional number
description query optional
per_page query optional number
user_agent query optional string
paused query optional boolean

Responses

4XX List User Agent Blocking rules response failure
200 List User Agent Blocking rules response
GET /zones/{zone_id}/firewall/ua_rules
GET /zones/{zone_id}/firewall/ua_rules/{ua_rule_id}

Fetches the details of a User Agent Blocking rule.

operationId: user-agent-blocking-rules-get-a-user-agent-blocking-rule

Parameters

Name In Required Type Description
ua_rule_id path required
zone_id path required

Responses

4XX Get a User Agent Blocking rule response failure
200 Get a User Agent Blocking rule response
GET /zones/{zone_id}/firewall/ua_rules/{ua_rule_id}

User subscription 1 endpoints

GET /user/subscriptions

Lists all of a user's subscriptions.

operationId: user-subscription-get-user-subscriptions

Responses

4XX Get User Subscriptions response failure
200 Get User Subscriptions response
GET /user/subscriptions

User's account memberships 2 endpoints

GET /memberships

List memberships of accounts the user can access.

operationId: user'-s-account-memberships-list-memberships

Parameters

Name In Required Type Description
account.name query optional
page query optional number
per_page query optional number
order query optional string
direction query optional string
name query optional
status query optional string

Responses

4XX List Memberships response failure
200 List Memberships response
GET /memberships
GET /memberships/{membership_id}

Get a specific membership.

operationId: user'-s-account-memberships-membership-details

Parameters

Name In Required Type Description
membership_id path required

Responses

4XX Membership Details response failure
200 Membership Details response
GET /memberships/{membership_id}

User's invites 2 endpoints

GET /user/invites

Lists all invitations associated with my user.

operationId: user'-s-invites-list-invitations

Responses

4XX List Invitations response failure
200 List Invitations response
GET /user/invites
GET /user/invites/{invite_id}

Gets the details of an invitation.

operationId: user'-s-invites-invitation-details

Parameters

Name In Required Type Description
invite_id path required

Responses

4XX Invitation Details response failure
200 Invitation Details response
GET /user/invites/{invite_id}

Vectorize 5 endpoints

GET /accounts/{account_id}/vectorize/v2/indexes

Returns a list of Vectorize Indexes

operationId: vectorize-list-vectorize-indexes

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List Vectorize Index Failure Response
200 List Vectorize Index Response
GET /accounts/{account_id}/vectorize/v2/indexes
GET /accounts/{account_id}/vectorize/v2/indexes/{index_name}

Returns the specified Vectorize Index.

operationId: vectorize-get-vectorize-index

Parameters

Name In Required Type Description
account_id path required
index_name path required

Responses

4XX Get Vectorize Index Failure
200 Get Vectorize Index Response
GET /accounts/{account_id}/vectorize/v2/indexes/{index_name}
GET /accounts/{account_id}/vectorize/v2/indexes/{index_name}/info

Get information about a vectorize index.

operationId: vectorize-index-info

Parameters

Name In Required Type Description
account_id path required
index_name path required

Responses

4XX Get Vectorize Index Info Failure Response
200 Get Vectorize Index Info Response
GET /accounts/{account_id}/vectorize/v2/indexes/{index_name}/info
GET /accounts/{account_id}/vectorize/v2/indexes/{index_name}/list

Returns a paginated list of vector identifiers from the specified index.

operationId: vectorize-list-vectors

Parameters

Name In Required Type Description
account_id path required
index_name path required
count query optional integer
cursor query optional string

Responses

4XX List Vectors Failure Response
200 List Vectors Response
GET /accounts/{account_id}/vectorize/v2/indexes/{index_name}/list
GET /accounts/{account_id}/vectorize/v2/indexes/{index_name}/metadata_index/list

List Metadata Indexes for the specified Vectorize Index.

operationId: vectorize-list-metadata-indexes

Parameters

Name In Required Type Description
account_id path required
index_name path required

Responses

4XX List Metadata Index Failure Response
200 List Metadata Index Response
GET /accounts/{account_id}/vectorize/v2/indexes/{index_name}/metadata_index/list

Versions 2 endpoints

GET /accounts/{account_id}/workers/workers/{worker_id}/versions

List all versions for a Worker.

operationId: listWorkerVersions

Parameters

Name In Required Type Description
account_id path required
worker_id path required string
page query optional integer Current page.
per_page query optional integer Items per-page.

Responses

4XX List versions failure.
200 List versions success.
GET /accounts/{account_id}/workers/workers/{worker_id}/versions
GET /accounts/{account_id}/workers/workers/{worker_id}/versions/{version_id}

Get details about a specific version.

operationId: getWorkerVersion

Parameters

Name In Required Type Description
account_id path required
worker_id path required string
version_id path required string
include query optional string

Responses

4XX Get version failure.
200 Get version success.
GET /accounts/{account_id}/workers/workers/{worker_id}/versions/{version_id}

Warp change events 1 endpoints

GET /accounts/{account_id}/dex/warp-change-events

List WARP configuration and enablement toggle change events by device.

operationId: list-warp-change-events

Parameters

Name In Required Type Description
account_id path required unique identifier linked to an account in the API request path
page query required number Page number of paginated results
per_page query required number Number of items per page
from query required string Start time for the query in ISO (RFC3339 - ISO 8601) format
to query required string End time for the query in ISO (RFC3339 - ISO 8601) format
type query optional string Filter events by type 'config' or 'toggle'
toggle query optional string Filter events by type toggle value. Applicable to type='toggle' events only.
config_name query optional string Filter events by WARP configuration name changed from or to. Applicable to type='config' events only.
account_name query optional string Filter events by account name.
sort_order query optional string Sort response by event timestamp.

Responses

4XX List WARP change events failure response
200 success response
GET /accounts/{account_id}/dex/warp-change-events

Whois record 1 endpoints

GET /accounts/{account_id}/intel/whois

Retrieves WHOIS registration data for a domain, including registrant and nameserver information.

operationId: whois-record-get-whois-record

Parameters

Name In Required Type Description
account_id path required
domain query optional string

Responses

4XX Get WHOIS Record response failure.
200 Get WHOIS Record response.
GET /accounts/{account_id}/intel/whois

Waiting room 9 endpoints

GET /accounts/{account_id}/waiting_rooms

Lists waiting rooms for account.

operationId: waiting-room-list-waiting-rooms-account

Parameters

Name In Required Type Description
account_id path required
optional
optional

Responses

4XX List waiting rooms for account response failure
200 List waiting rooms for account response
GET /accounts/{account_id}/waiting_rooms
GET /zones/{zone_id}/waiting_rooms

Lists waiting rooms for zone.

operationId: waiting-room-list-waiting-rooms

Parameters

Name In Required Type Description
zone_id path required
optional
optional

Responses

4XX List waiting rooms for zone response failure
200 List waiting rooms for zone response
GET /zones/{zone_id}/waiting_rooms
GET /zones/{zone_id}/waiting_rooms/settings

Gets the zone-level Waiting Room settings that apply as defaults to all waiting rooms on the zone.

operationId: waiting-room-get-zone-settings

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX The current zone-level Waiting Room settings response failure
200 The current zone-level Waiting Room settings
GET /zones/{zone_id}/waiting_rooms/settings
GET /zones/{zone_id}/waiting_rooms/{waiting_room_id}

Fetches a single configured waiting room.

operationId: waiting-room-waiting-room-details

Parameters

Name In Required Type Description
waiting_room_id path required
zone_id path required

Responses

4XX Waiting room details response failure
200 Waiting room details response
GET /zones/{zone_id}/waiting_rooms/{waiting_room_id}
GET /zones/{zone_id}/waiting_rooms/{waiting_room_id}/events

Lists events for a waiting room.

operationId: waiting-room-list-events

Parameters

Name In Required Type Description
waiting_room_id path required
zone_id path required
optional
optional

Responses

4XX List events response failure
200 List events response
GET /zones/{zone_id}/waiting_rooms/{waiting_room_id}/events
GET /zones/{zone_id}/waiting_rooms/{waiting_room_id}/events/{event_id}

Fetches a single configured event for a waiting room.

operationId: waiting-room-event-details

Parameters

Name In Required Type Description
event_id path required
waiting_room_id path required
zone_id path required

Responses

4XX Event details response failure
200 Event details response
GET /zones/{zone_id}/waiting_rooms/{waiting_room_id}/events/{event_id}
GET /zones/{zone_id}/waiting_rooms/{waiting_room_id}/events/{event_id}/details

Previews an event's configuration as if it was active. Inherited fields from the waiting room will be displayed with their current values.

operationId: waiting-room-preview-active-event-details

Parameters

Name In Required Type Description
event_id path required
waiting_room_id path required
zone_id path required

Responses

4XX Preview active event details response failure
200 Preview active event details response
GET /zones/{zone_id}/waiting_rooms/{waiting_room_id}/events/{event_id}/details
GET /zones/{zone_id}/waiting_rooms/{waiting_room_id}/rules

Lists rules for a waiting room.

operationId: waiting-room-list-waiting-room-rules

Parameters

Name In Required Type Description
waiting_room_id path required
zone_id path required

Responses

4XX List Waiting Room Rules response failure
200 List Waiting Room Rules response
GET /zones/{zone_id}/waiting_rooms/{waiting_room_id}/rules
GET /zones/{zone_id}/waiting_rooms/{waiting_room_id}/status

Fetches the status of a configured waiting room. Response fields include: 1. `status`: String indicating the status of the waiting room. The possible status are: - **not_queueing** indicates that the configured thresholds have not been met and all users are going through to the origin. - **queueing** indicates that the thresholds have been met and some users are held in the waiting room. - **event_prequeueing** indicates that an event is active and is currently prequeueing users before it starts. - **suspended** indicates that the room is suspended. 2. `event_id`: String of the current event's `id` if an event is active, otherwise an empty string. 3. `estimated_queued_users`: Integer of the estimated number of users currently waiting in the queue. 4. `estimated_total_active_users`: Integer of the estimated number of users currently active on the origin. 5. `max_estimated_time_minutes`: Integer of the maximum estimated time currently presented to the users.

operationId: waiting-room-get-waiting-room-status

Parameters

Name In Required Type Description
waiting_room_id path required
zone_id path required

Responses

4XX Get waiting room status response failure
200 Get waiting room status response
GET /zones/{zone_id}/waiting_rooms/{waiting_room_id}/status

Web analytics 4 endpoints

GET /accounts/{account_id}/rum/site_info/list

Lists all Web Analytics sites of an account.

operationId: web-analytics-list-sites

Parameters

Name In Required Type Description
account_id path required
per_page query optional
page query optional
order_by query optional

Responses

4XX Failure response.
200 List of Web Analytics sites.
GET /accounts/{account_id}/rum/site_info/list
GET /accounts/{account_id}/rum/site_info/{site_id}

Retrieves a Web Analytics site.

operationId: web-analytics-get-site

Parameters

Name In Required Type Description
account_id path required
site_id path required

Responses

4XX Failure response.
200 Web Analytics site.
GET /accounts/{account_id}/rum/site_info/{site_id}
GET /accounts/{account_id}/rum/v2/{ruleset_id}/rules

Lists all the rules in a Web Analytics ruleset.

operationId: web-analytics-list-rules

Parameters

Name In Required Type Description
account_id path required
ruleset_id path required

Responses

4XX Failure response.
200 List of Web Analytics rules in the ruleset.
GET /accounts/{account_id}/rum/v2/{ruleset_id}/rules
GET /zones/{zone_id}/settings/rum

Retrieves RUM status for a zone.

operationId: web-analytics-get-rum-status

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Failure response.
200 Rum Status.
GET /zones/{zone_id}/settings/rum

Web3 hostname 5 endpoints

GET /zones/{zone_id}/web3/hostnames
operationId: web3-hostname-list-web3-hostnames

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX List Web3 Hostnames error response (4XX).
5XX List Web3 Hostnames response failure.
200 List Web3 Hostnames response.
GET /zones/{zone_id}/web3/hostnames
GET /zones/{zone_id}/web3/hostnames/{identifier}
operationId: web3-hostname-web3-hostname-details

Parameters

Name In Required Type Description
identifier path required
zone_id path required

Responses

4XX Web3 Hostname Details error response (4XX).
5XX Web3 Hostname Details response failure.
200 Web3 Hostname Details response.
GET /zones/{zone_id}/web3/hostnames/{identifier}
GET /zones/{zone_id}/web3/hostnames/{identifier}/ipfs_universal_path/content_list
operationId: web3-hostname-ipfs-universal-path-gateway-content-list-details

Parameters

Name In Required Type Description
identifier path required
zone_id path required

Responses

4XX IPFS Universal Path Gateway Content List Details error response (4XX).
5XX IPFS Universal Path Gateway Content List Details response failure.
200 IPFS Universal Path Gateway Content List Details response.
GET /zones/{zone_id}/web3/hostnames/{identifier}/ipfs_universal_path/content_list
GET /zones/{zone_id}/web3/hostnames/{identifier}/ipfs_universal_path/content_list/entries
operationId: web3-hostname-list-ipfs-universal-path-gateway-content-list-entries

Parameters

Name In Required Type Description
identifier path required
zone_id path required

Responses

4XX List IPFS Universal Path Gateway Content List Entries error response (4XX).
5XX List IPFS Universal Path Gateway Content List Entries response failure.
200 List IPFS Universal Path Gateway Content List Entries response.
GET /zones/{zone_id}/web3/hostnames/{identifier}/ipfs_universal_path/content_list/entries
GET /zones/{zone_id}/web3/hostnames/{identifier}/ipfs_universal_path/content_list/entries/{content_list_entry_identifier}
operationId: web3-hostname-ipfs-universal-path-gateway-content-list-entry-details

Parameters

Name In Required Type Description
content_list_entry_identifier path required
identifier path required
zone_id path required

Responses

4XX IPFS Universal Path Gateway Content List Entry Details error response (4XX).
5XX IPFS Universal Path Gateway Content List Entry Details response failure.
200 IPFS Universal Path Gateway Content List Entry Details response.
GET /zones/{zone_id}/web3/hostnames/{identifier}/ipfs_universal_path/content_list/entries/{content_list_entry_identifier}

Webhooks 2 endpoints

GET /accounts/{account_id}/realtime/kit/{app_id}/webhooks

Returns details of all webhooks for an App.

operationId: getAllWebhooks

Parameters

Name In Required Type Description
account_id path required
app_id path required

Responses

200 Operation successful
401 Invalid credentials
GET /accounts/{account_id}/realtime/kit/{app_id}/webhooks
GET /accounts/{account_id}/realtime/kit/{app_id}/webhooks/{webhook_id}

Returns webhook details for the given webhook ID.

operationId: getWebhook

Parameters

Name In Required Type Description
account_id path required
app_id path required
webhook_id path required string ID of the webhook

Responses

200 Operation successful
400 Error - malformed request
401 Invalid credentials
GET /accounts/{account_id}/realtime/kit/{app_id}/webhooks/{webhook_id}

Worker account settings 1 endpoints

GET /accounts/{account_id}/workers/account-settings

Fetches Worker account settings for an account.

operationId: worker-account-settings-fetch-worker-account-settings

Parameters

Name In Required Type Description
account_id path required

Responses

4XX Fetch Worker Account Settings response failure.
200 Fetch Worker Account Settings response.
GET /accounts/{account_id}/workers/account-settings

Worker cron trigger 1 endpoints

GET /accounts/{account_id}/workers/scripts/{script_name}/schedules

Fetches Cron Triggers for a Worker.

operationId: worker-cron-trigger-get-cron-triggers

Parameters

Name In Required Type Description
account_id path required
script_name path required

Responses

4XX Get Cron Triggers response failure.
200 Get Cron Triggers response.
GET /accounts/{account_id}/workers/scripts/{script_name}/schedules

Worker deployments 2 endpoints

GET /accounts/{account_id}/workers/scripts/{script_name}/deployments

List of Worker Deployments. The first deployment in the list is the latest deployment actively serving traffic.

operationId: worker-deployments-list-deployments

Parameters

Name In Required Type Description
account_id path required
script_name path required

Responses

4XX List Deployments response failure.
200 List Deployments response.
GET /accounts/{account_id}/workers/scripts/{script_name}/deployments
GET /accounts/{account_id}/workers/scripts/{script_name}/deployments/{deployment_id}

Get information about a Worker Deployment.

operationId: worker-deployments-get-deployment

Parameters

Name In Required Type Description
account_id path required
script_name path required
deployment_id path required string

Responses

4XX Get Deployment response failure.
200 Get Deployment response.
GET /accounts/{account_id}/workers/scripts/{script_name}/deployments/{deployment_id}

Worker environment 2 endpoints

GET /accounts/{account_id}/workers/services/{service_name}/environments/{environment_name}/content

Get script content from a worker with an environment.

operationId: worker-environment-get-script-content

Parameters

Name In Required Type Description
account_id path required
service_name path required
environment_name path required

Responses

4XX Get script content failure.
200 Get script content.
GET /accounts/{account_id}/workers/services/{service_name}/environments/{environment_name}/content
GET /accounts/{account_id}/workers/services/{service_name}/environments/{environment_name}/settings

Get script settings from a worker with an environment.

operationId: worker-script-environment-get-settings

Parameters

Name In Required Type Description
account_id path required
service_name path required
environment_name path required

Responses

4XX Fetch script settings failure.
200 Fetch script settings.
GET /accounts/{account_id}/workers/services/{service_name}/environments/{environment_name}/settings

Worker placement 1 endpoints

GET /accounts/{account_id}/workers/placement/regions

Returns a list of available placement regions organized by cloud provider. These regions can be used to configure Smart Placement for Workers.

operationId: worker-placement-list-regions

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List Placement Regions response failure.
200 List Placement Regions response.
GET /accounts/{account_id}/workers/placement/regions

Worker routes 2 endpoints

GET /zones/{zone_id}/workers/routes

Returns routes for a zone.

operationId: worker-routes-list-routes

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX List Routes response failure.
200 List Routes response.
GET /zones/{zone_id}/workers/routes
GET /zones/{zone_id}/workers/routes/{route_id}

Returns information about a route, including URL pattern and Worker.

operationId: worker-routes-get-route

Parameters

Name In Required Type Description
route_id path required
zone_id path required

Responses

4XX Get Route response failure.
200 Get Route response.
GET /zones/{zone_id}/workers/routes/{route_id}

Worker script 10 endpoints

GET /accounts/{account_id}/workers/scripts

Fetch a list of uploaded workers.

operationId: worker-script-list-workers

Parameters

Name In Required Type Description
account_id path required
tags query optional string Filter scripts by tags. Format: comma-separated list of tag:allowed pairs where allowed is 'yes' or 'no'.

Responses

4XX List Workers response failure.
200 List Workers response.
GET /accounts/{account_id}/workers/scripts
GET /accounts/{account_id}/workers/scripts-search

Search for Workers in an account.

operationId: worker-script-search-workers

Parameters

Name In Required Type Description
account_id path required
name query optional string
id query optional string
order_by query optional string
page query optional integer Current page.
per_page query optional integer Items per page.

Responses

4XX Search Workers failure.
200 Search Workers success.
GET /accounts/{account_id}/workers/scripts-search
GET /accounts/{account_id}/workers/scripts/{script_name}

Fetch raw script content for your worker. Note this is the original script content, not JSON encoded.

operationId: worker-script-download-worker

Parameters

Name In Required Type Description
account_id path required
script_name path required

Responses

4XX Download Worker response failure.
200 Worker successfully downloaded. Returns script content as a multipart form, with no metadata part and no JSON encoding applied.
GET /accounts/{account_id}/workers/scripts/{script_name}
GET /accounts/{account_id}/workers/scripts/{script_name}/content/v2

Fetch script content only.

operationId: worker-script-get-content

Parameters

Name In Required Type Description
account_id path required
script_name path required

Responses

4XX Fetch script content failure.
200 Fetch script content.
GET /accounts/{account_id}/workers/scripts/{script_name}/content/v2
GET /accounts/{account_id}/workers/scripts/{script_name}/script-settings

Get script-level settings when using [Worker Versions](https://developers.cloudflare.com/api/operations/worker-versions-list-versions). Includes Logpush and Tail Consumers.

operationId: worker-script-settings-get-settings

Parameters

Name In Required Type Description
account_id path required
script_name path required

Responses

4XX Fetch script settings failure.
200 Fetch script settings.
GET /accounts/{account_id}/workers/scripts/{script_name}/script-settings
GET /accounts/{account_id}/workers/scripts/{script_name}/secrets

List secrets bound to a script.

operationId: worker-list-script-secrets

Parameters

Name In Required Type Description
account_id path required
script_name path required

Responses

4XX List script secrets failure.
200 List script secrets.
GET /accounts/{account_id}/workers/scripts/{script_name}/secrets
GET /accounts/{account_id}/workers/scripts/{script_name}/secrets/{secret_name}

Get a given secret binding (value omitted) on a script.

operationId: worker-get-script-secret

Parameters

Name In Required Type Description
account_id path required
script_name path required
secret_name path required
url_encoded query optional

Responses

4XX Get script secret failure.
200 Get script secret binding.
GET /accounts/{account_id}/workers/scripts/{script_name}/secrets/{secret_name}
GET /accounts/{account_id}/workers/scripts/{script_name}/settings

Get metadata and config, such as bindings or usage model.

operationId: worker-script-get-settings

Parameters

Name In Required Type Description
account_id path required
script_name path required

Responses

4XX Fetch settings failure.
200 Fetch settings.
GET /accounts/{account_id}/workers/scripts/{script_name}/settings
GET /accounts/{account_id}/workers/scripts/{script_name}/subdomain

Get if the Worker is available on the workers.dev subdomain.

operationId: worker-script-get-subdomain

Parameters

Name In Required Type Description
account_id path required
script_name path required

Responses

4XX Get subdomain response failure.
200 Get subdomain response.
GET /accounts/{account_id}/workers/scripts/{script_name}/subdomain
GET /accounts/{account_id}/workers/scripts/{script_name}/usage-model

Fetches the Usage Model for a given Worker.

operationId: worker-script-fetch-usage-model

Parameters

Name In Required Type Description
account_id path required
script_name path required

Responses

4XX Fetch Usage Model response failure.
200 Fetch Usage Model response.
GET /accounts/{account_id}/workers/scripts/{script_name}/usage-model

Worker subdomain 1 endpoints

GET /accounts/{account_id}/workers/subdomain

Returns a Workers subdomain for an account.

operationId: worker-subdomain-get-subdomain

Parameters

Name In Required Type Description
account_id path required

Responses

4XX Get Subdomain response failure.
200 Get Subdomain response.
GET /accounts/{account_id}/workers/subdomain

Worker tail logs 1 endpoints

GET /accounts/{account_id}/workers/scripts/{script_name}/tails

Get list of tails currently deployed on a Worker.

Parameters

Name In Required Type Description
account_id path required
script_name path required

Responses

4XX List Tails response failure.
200 List Tails response.
GET /accounts/{account_id}/workers/scripts/{script_name}/tails

Worker versions 2 endpoints

GET /accounts/{account_id}/workers/scripts/{script_name}/versions

List of Worker Versions. The first version in the list is the latest version.

operationId: worker-versions-list-versions

Parameters

Name In Required Type Description
account_id path required
script_name path required
deployable query optional boolean Only return versions that can be used in a deployment. Ignores pagination.
page query optional integer Current page.
per_page query optional integer Items per-page.

Responses

4XX List Versions response failure.
200 List Versions response.
GET /accounts/{account_id}/workers/scripts/{script_name}/versions
GET /accounts/{account_id}/workers/scripts/{script_name}/versions/{version_id}

Retrieves detailed information about a specific version of a Workers script.

operationId: worker-versions-get-version-detail

Parameters

Name In Required Type Description
account_id path required
script_name path required
version_id path required

Responses

4XX Get Version Detail response failure.
200 Get Version Detail response.
GET /accounts/{account_id}/workers/scripts/{script_name}/versions/{version_id}

Workers 4 endpoints

GET /accounts/{account_id}/builds/workers/{external_script_id}/builds

Get all builds for a specific worker script with pagination

operationId: listBuildsByScript

Parameters

Name In Required Type Description
optional
external_script_id path required
optional
optional

Responses

200 Builds retrieved successfully
GET /accounts/{account_id}/builds/workers/{external_script_id}/builds
GET /accounts/{account_id}/builds/workers/{external_script_id}/triggers

Get all triggers for a specific worker script

operationId: listTriggersByScript

Parameters

Name In Required Type Description
optional
external_script_id path required

Responses

200 Triggers retrieved successfully
GET /accounts/{account_id}/builds/workers/{external_script_id}/triggers
GET /accounts/{account_id}/workers/workers

List all Workers for an account.

operationId: listWorkers

Parameters

Name In Required Type Description
account_id path required
page query optional integer Current page.
per_page query optional integer Items per-page.
order_by query optional string Property to sort results by.
order query optional string Sort direction.

Responses

200 List Workers success.
401
500
GET /accounts/{account_id}/workers/workers
GET /accounts/{account_id}/workers/workers/{worker_id}

Get details about a specific Worker.

operationId: getWorker

Parameters

Name In Required Type Description
account_id path required
worker_id path required string

Responses

200 Get Worker success.
400 Bad Request - Missing or invalid parameters.
404
500
GET /accounts/{account_id}/workers/workers/{worker_id}

Workers ai 5 endpoints

GET /accounts/{account_id}/ai/authors/search

Searches Workers AI models by author or organization name.

operationId: workers-ai-search-author

Parameters

Name In Required Type Description
account_id path required string

Responses

200 Returns a list of authors
400 Bad Request
GET /accounts/{account_id}/ai/authors/search
GET /accounts/{account_id}/ai/models/schema

Retrieves the input and output JSON schema definition for a Workers AI model.

operationId: workers-ai-get-model-schema

Parameters

Name In Required Type Description
account_id path required string
model query required string Model Name

Responses

200 Model Schema
400 Bad Request
GET /accounts/{account_id}/ai/models/schema
GET /accounts/{account_id}/ai/models/search

Searches Workers AI models by name or description.

operationId: workers-ai-search-model

Parameters

Name In Required Type Description
account_id path required string
per_page query optional integer
page query optional integer
task query optional string Filter by Task Name
author query optional string Filter by Author
source query optional number Filter by Source Id
hide_experimental query optional boolean Filter to hide experimental models
search query optional string Search

Responses

200 Returns a list of models
404 Object not found
GET /accounts/{account_id}/ai/models/search
GET /accounts/{account_id}/ai/tasks/search

Searches Workers AI models by task type (e.g., text-generation, embeddings).

operationId: workers-ai-search-task

Parameters

Name In Required Type Description
account_id path required string

Responses

200 Returns a list of tasks
404 Object not found
GET /accounts/{account_id}/ai/tasks/search
GET /accounts/{account_id}/ai/tomarkdown/supported

Lists all file formats supported for conversion to Markdown.

operationId: workers-ai-get-to-markdown-supported

Parameters

Name In Required Type Description
account_id path required string

Responses

200 Successful response
400 Bad Request
GET /accounts/{account_id}/ai/tomarkdown/supported

Workers ai automatic speech recognition 4 endpoints

GET /accounts/{account_id}/ai/run/@cf/deepgram/flux

Opens a WebSocket connection to stream inference results from the @cf/deepgram/flux model.

operationId: workers-ai-post-websocket-run-cf-deepgram-flux

Parameters

Name In Required Type Description
account_id path required string

Responses

101 Returns a websocket connection
400 Bad Request
GET /accounts/{account_id}/ai/run/@cf/deepgram/flux
GET /accounts/{account_id}/ai/run/@cf/deepgram/nova-3

Opens a WebSocket connection to stream inference results from the @cf/deepgram/nova-3 model.

operationId: workers-ai-post-websocket-run-cf-deepgram-nova-3

Parameters

Name In Required Type Description
account_id path required string

Responses

101 Returns a websocket connection
400 Bad Request
GET /accounts/{account_id}/ai/run/@cf/deepgram/nova-3
GET /accounts/{account_id}/ai/run/@cf/deepgram/nova-3-internal

Opens a WebSocket connection to stream inference results from the @cf/deepgram/nova-3-internal model.

operationId: workers-ai-post-websocket-run-cf-deepgram-nova-3-internal

Parameters

Name In Required Type Description
account_id path required string

Responses

101 Returns a websocket connection
400 Bad Request
GET /accounts/{account_id}/ai/run/@cf/deepgram/nova-3-internal
GET /accounts/{account_id}/ai/run/@cf/deepgram/nova-3-ws

Opens a WebSocket connection to stream inference results from the @cf/deepgram/nova-3-ws model.

operationId: workers-ai-post-websocket-run-cf-deepgram-nova-3-ws

Parameters

Name In Required Type Description
account_id path required string

Responses

101 Returns a websocket connection
400 Bad Request
GET /accounts/{account_id}/ai/run/@cf/deepgram/nova-3-ws

Workers ai dumb pipe 3 endpoints

GET /accounts/{account_id}/ai/run/@cf/pipecat-ai/smart-turn-v2

Opens a WebSocket connection to stream inference results from the @cf/pipecat-ai/smart-turn-v2 model.

operationId: workers-ai-post-websocket-run-cf-pipecat-ai-smart-turn-v2

Parameters

Name In Required Type Description
account_id path required string

Responses

101 Returns a websocket connection
400 Bad Request
GET /accounts/{account_id}/ai/run/@cf/pipecat-ai/smart-turn-v2
GET /accounts/{account_id}/ai/run/@cf/pipecat-ai/smart-turn-v3

Opens a WebSocket connection to stream inference results from the @cf/pipecat-ai/smart-turn-v3 model.

operationId: workers-ai-post-websocket-run-cf-pipecat-ai-smart-turn-v3

Parameters

Name In Required Type Description
account_id path required string

Responses

101 Returns a websocket connection
400 Bad Request
GET /accounts/{account_id}/ai/run/@cf/pipecat-ai/smart-turn-v3
GET /accounts/{account_id}/ai/run/@cf/test/hello-world-cog

Opens a WebSocket connection to stream inference results from the @cf/test/hello-world-cog model.

operationId: workers-ai-post-websocket-run-cf-test-hello-world-cog

Parameters

Name In Required Type Description
account_id path required string

Responses

101 Returns a websocket connection
400 Bad Request
GET /accounts/{account_id}/ai/run/@cf/test/hello-world-cog

Workers ai finetune 2 endpoints

GET /accounts/{account_id}/ai/finetunes

Lists all fine-tuning jobs created by the account, including status and metrics.

operationId: workers-ai-list-finetunes

Parameters

Name In Required Type Description
account_id path required string

Responses

200 Returns all finetunes
400 Bad Request
GET /accounts/{account_id}/ai/finetunes
GET /accounts/{account_id}/ai/finetunes/public

Lists publicly available fine-tuned models that can be used with Workers AI.

operationId: workers-ai-list-public-finetunes

Parameters

Name In Required Type Description
account_id path required string
limit query optional number Pagination Limit
offset query optional number Pagination Offset
orderBy query optional string Order By Column Name

Responses

200 Returns all public finetunes
400 Bad Request
GET /accounts/{account_id}/ai/finetunes/public

Workers ai text to image 1 endpoints

GET /accounts/{account_id}/ai/run/@cf/sven/test-pipe-http

Opens a WebSocket connection to stream inference results from the @cf/sven/test-pipe-http model.

operationId: workers-ai-post-websocket-run-cf-sven-test-pipe-http

Parameters

Name In Required Type Description
account_id path required string

Responses

101 Returns a websocket connection
400 Bad Request
GET /accounts/{account_id}/ai/run/@cf/sven/test-pipe-http

Workers ai text to speech 6 endpoints

GET /accounts/{account_id}/ai/run/@cf/deepgram/aura

Opens a WebSocket connection to stream inference results from the @cf/deepgram/aura model.

operationId: workers-ai-post-websocket-run-cf-deepgram-aura

Parameters

Name In Required Type Description
account_id path required string

Responses

101 Returns a websocket connection
400 Bad Request
GET /accounts/{account_id}/ai/run/@cf/deepgram/aura
GET /accounts/{account_id}/ai/run/@cf/deepgram/aura-1

Opens a WebSocket connection to stream inference results from the @cf/deepgram/aura-1 model.

operationId: workers-ai-post-websocket-run-cf-deepgram-aura-1

Parameters

Name In Required Type Description
account_id path required string

Responses

101 Returns a websocket connection
400 Bad Request
GET /accounts/{account_id}/ai/run/@cf/deepgram/aura-1
GET /accounts/{account_id}/ai/run/@cf/deepgram/aura-1-internal

Opens a WebSocket connection to stream inference results from the @cf/deepgram/aura-1-internal model.

operationId: workers-ai-post-websocket-run-cf-deepgram-aura-1-internal

Parameters

Name In Required Type Description
account_id path required string

Responses

101 Returns a websocket connection
400 Bad Request
GET /accounts/{account_id}/ai/run/@cf/deepgram/aura-1-internal
GET /accounts/{account_id}/ai/run/@cf/deepgram/aura-2

Opens a WebSocket connection to stream inference results from the @cf/deepgram/aura-2 model.

operationId: workers-ai-post-websocket-run-cf-deepgram-aura-2

Parameters

Name In Required Type Description
account_id path required string

Responses

101 Returns a websocket connection
400 Bad Request
GET /accounts/{account_id}/ai/run/@cf/deepgram/aura-2
GET /accounts/{account_id}/ai/run/@cf/deepgram/aura-2-en

Opens a WebSocket connection to stream inference results from the @cf/deepgram/aura-2-en model.

operationId: workers-ai-post-websocket-run-cf-deepgram-aura-2-en

Parameters

Name In Required Type Description
account_id path required string

Responses

101 Returns a websocket connection
400 Bad Request
GET /accounts/{account_id}/ai/run/@cf/deepgram/aura-2-en
GET /accounts/{account_id}/ai/run/@cf/deepgram/aura-2-es

Opens a WebSocket connection to stream inference results from the @cf/deepgram/aura-2-es model.

operationId: workers-ai-post-websocket-run-cf-deepgram-aura-2-es

Parameters

Name In Required Type Description
account_id path required string

Responses

101 Returns a websocket connection
400 Bad Request
GET /accounts/{account_id}/ai/run/@cf/deepgram/aura-2-es

Workers kv namespace 5 endpoints

GET /accounts/{account_id}/storage/kv/namespaces

Returns the namespaces owned by an account.

operationId: workers-kv-namespace-list-namespaces

Parameters

Name In Required Type Description
account_id path required
page query optional number
per_page query optional number
order query optional string
direction query optional string

Responses

4XX List Namespaces response failure.
200 List Namespaces response.
GET /accounts/{account_id}/storage/kv/namespaces
GET /accounts/{account_id}/storage/kv/namespaces/{namespace_id}

Get the namespace corresponding to the given ID.

operationId: workers-kv-namespace-get-a-namespace

Parameters

Name In Required Type Description
namespace_id path required
account_id path required

Responses

4XX Get a Namespace response failure.
200 Get a Namespace response.
GET /accounts/{account_id}/storage/kv/namespaces/{namespace_id}
GET /accounts/{account_id}/storage/kv/namespaces/{namespace_id}/keys

Lists a namespace's keys.

operationId: workers-kv-namespace-list-a-namespace'-s-keys

Parameters

Name In Required Type Description
namespace_id path required
account_id path required
limit query optional number
prefix query optional string
cursor query optional string

Responses

4XX List a Namespace's Keys response failure.
200 List a Namespace's Keys response.
GET /accounts/{account_id}/storage/kv/namespaces/{namespace_id}/keys
GET /accounts/{account_id}/storage/kv/namespaces/{namespace_id}/metadata/{key_name}

Returns the metadata associated with the given key in the given namespace. Use URL-encoding to use special characters (for example, `:`, `!`, `%`) in the key name.

operationId: workers-kv-namespace-read-the-metadata-for-a-key

Parameters

Name In Required Type Description
key_name path required
namespace_id path required
account_id path required

Responses

4XX Read the metadata for a key response failure.
200 Read the metadata for a key response.
GET /accounts/{account_id}/storage/kv/namespaces/{namespace_id}/metadata/{key_name}
GET /accounts/{account_id}/storage/kv/namespaces/{namespace_id}/values/{key_name}

Returns the value associated with the given key in the given namespace. Use URL-encoding to use special characters (for example, `:`, `!`, `%`) in the key name. If the KV-pair is set to expire at some point, the expiration time as measured in seconds since the UNIX epoch will be returned in the `expiration` response header.

operationId: workers-kv-namespace-read-key-value-pair

Parameters

Name In Required Type Description
key_name path required
namespace_id path required
account_id path required

Responses

4XX Read key-value pair response failure.
200 Read key-value pair response.
GET /accounts/{account_id}/storage/kv/namespaces/{namespace_id}/values/{key_name}

Workers for platforms 10 endpoints

GET /accounts/{account_id}/workers/dispatch/namespaces

Fetch a list of Workers for Platforms namespaces.

operationId: namespace-worker-list

Parameters

Name In Required Type Description
account_id path required

Responses

4XX Failure to get list of Workers for Platforms namespaces.
200 Fetch a list of Workers for Platforms namespaces.
GET /accounts/{account_id}/workers/dispatch/namespaces
GET /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}

Get a Workers for Platforms namespace.

operationId: namespace-worker-get-namespace

Parameters

Name In Required Type Description
account_id path required
dispatch_namespace path required

Responses

4XX Failure to get Workers for Platforms namespace.
200 Get a Workers for Platforms namespace.
GET /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}
GET /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts

Fetch a list of scripts uploaded to a Workers for Platforms namespace.

operationId: namespace-worker-list-scripts

Parameters

Name In Required Type Description
account_id path required
dispatch_namespace path required
tags query optional string Filter scripts by tags. Format: comma-separated list of tag:allowed pairs where allowed is 'yes' or 'no'.

Responses

4XX List scripts in namespace response failure.
200 List scripts in namespace response.
GET /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts
GET /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}

Fetch information about a script uploaded to a Workers for Platforms namespace.

operationId: namespace-worker-script-worker-details

Parameters

Name In Required Type Description
account_id path required
dispatch_namespace path required
script_name path required

Responses

4XX Worker Details Failure (Workers for Platforms).
200 Worker Details Response (Workers for Platforms).
GET /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}
GET /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/bindings

Fetch script bindings from a script uploaded to a Workers for Platforms namespace.

operationId: namespace-worker-get-script-bindings

Parameters

Name In Required Type Description
account_id path required
dispatch_namespace path required
script_name path required

Responses

4XX Fetch script bindings failure (Workers for Platforms).
200 Fetch script bindings (Workers for Platforms).
GET /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/bindings
GET /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/content

Fetch script content from a script uploaded to a Workers for Platforms namespace.

operationId: namespace-worker-get-script-content

Parameters

Name In Required Type Description
account_id path required
dispatch_namespace path required
script_name path required

Responses

4XX Get script content failure.
200 Get script content.
GET /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/content
GET /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/secrets

List secrets bound to a script uploaded to a Workers for Platforms namespace.

operationId: namespace-worker-list-script-secrets

Parameters

Name In Required Type Description
account_id path required
dispatch_namespace path required
script_name path required

Responses

4XX List script secrets failure.
200 List script secrets.
GET /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/secrets
GET /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/secrets/{secret_name}

Get a given secret binding (value omitted) on a script uploaded to a Workers for Platforms namespace.

operationId: namespace-worker-get-script-secrets

Parameters

Name In Required Type Description
account_id path required
dispatch_namespace path required
script_name path required
secret_name path required
url_encoded query optional

Responses

4XX Get script secret failure (Workers for Platforms).
200 Get script secret (Workers for Platforms).
GET /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/secrets/{secret_name}
GET /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/settings

Get script settings from a script uploaded to a Workers for Platforms namespace.

operationId: namespace-worker-get-script-settings

Parameters

Name In Required Type Description
account_id path required
dispatch_namespace path required
script_name path required

Responses

4XX Fetch script settings failure.
200 Fetch script settings.
GET /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/settings
GET /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/tags

Fetch tags from a script uploaded to a Workers for Platforms namespace.

operationId: namespace-worker-get-script-tags

Parameters

Name In Required Type Description
account_id path required
dispatch_namespace path required
script_name path required

Responses

4XX Fetch script tags failure.
200 Fetch script tags.
GET /accounts/{account_id}/workers/dispatch/namespaces/{dispatch_namespace}/scripts/{script_name}/tags

Workflows 9 endpoints

GET /accounts/{account_id}/workflows

Lists all workflows configured for the account.

operationId: wor-list-workflows

Parameters

Name In Required Type Description
per_page query optional number
page query optional number
search query optional string Allows filtering workflows` name.
account_id path required string

Responses

200 List of all Workflows belonging to a account.
400 Input Validation Error.
GET /accounts/{account_id}/workflows
GET /accounts/{account_id}/workflows/{workflow_name}

Retrieves configuration and metadata for a specific workflow.

operationId: wor-get-workflow-details

Parameters

Name In Required Type Description
workflow_name path required string
account_id path required string

Responses

200 Get Workflow details.
400 Workflow has no deployed versions.
404 Workflow not found.
GET /accounts/{account_id}/workflows/{workflow_name}
GET /accounts/{account_id}/workflows/{workflow_name}/instances

Lists all instances of a workflow with their execution status.

operationId: wor-list-workflow-instances

Parameters

Name In Required Type Description
workflow_name path required string
page query optional number
per_page query optional number
cursor query optional string Opaque token for cursor-based pagination. Mutually exclusive with `page`.
direction query optional string Defines the direction for cursor-based pagination.
status query optional string
date_start query optional string Accepts ISO 8601 with no timezone offsets and in UTC.
date_end query optional string Accepts ISO 8601 with no timezone offsets and in UTC.
account_id path required string

Responses

200 List of workflow instances.
400 Input Validation Error.
404 Workflow Name not found.
GET /accounts/{account_id}/workflows/{workflow_name}/instances
GET /accounts/{account_id}/workflows/{workflow_name}/instances/terminate

Gets the status of a bulk workflow instance termination job.

operationId: wor-status-terminate-workflow-instances

Parameters

Name In Required Type Description
workflow_name path required string
account_id path required string

Responses

200 Get status of the job responsible for terminate all instances of a workflow.
400 Input Validation Error.
404 Workflow Name not found.
GET /accounts/{account_id}/workflows/{workflow_name}/instances/terminate
GET /accounts/{account_id}/workflows/{workflow_name}/instances/{instance_id}

Retrieves logs and execution status for a specific workflow instance.

operationId: wor-describe-workflow-instance

Parameters

Name In Required Type Description
workflow_name path required string
instance_id path required string
simple query optional string When true, omits step details and returns only metadata with step_count.
order query optional string Step ordering: "asc" (default, oldest first) or "desc" (newest first).
account_id path required string

Responses

200 Get all logs and status from the instance.
400 Bad Request.
404 Instance not found.
GET /accounts/{account_id}/workflows/{workflow_name}/instances/{instance_id}
GET /accounts/{account_id}/workflows/{workflow_name}/versions

Lists all deployed versions of a workflow.

operationId: wor-list-workflow-versions

Parameters

Name In Required Type Description
workflow_name path required string
per_page query optional number
page query optional number
account_id path required string

Responses

200 List deployed workflow versions.
400 Bad Request.
GET /accounts/{account_id}/workflows/{workflow_name}/versions
GET /accounts/{account_id}/workflows/{workflow_name}/versions/{version_id}

Retrieves details for a specific deployed workflow version.

operationId: wor-describe-workflow-versions

Parameters

Name In Required Type Description
workflow_name path required string
version_id path required string
account_id path required string

Responses

200 Get specific version details.
400 Bad Request.
404 Version not found.
GET /accounts/{account_id}/workflows/{workflow_name}/versions/{version_id}
GET /accounts/{account_id}/workflows/{workflow_name}/versions/{version_id}/dag

Retrieves the directed acyclic graph (DAG) representation of a workflow version.

operationId: wor-describe-workflow-versions-dag

Parameters

Name In Required Type Description
workflow_name path required string
version_id path required string
account_id path required string

Responses

200 Get the parsed DAG for a specific workflow version.
404 Version not found.
GET /accounts/{account_id}/workflows/{workflow_name}/versions/{version_id}/dag
GET /accounts/{account_id}/workflows/{workflow_name}/versions/{version_id}/graph

Retrieves the graph visualization of a workflow version.

operationId: wor-describe-workflow-versions-graph

Parameters

Name In Required Type Description
workflow_name path required string
version_id path required string
account_id path required string

Responses

200 Get the parsed graph for a specific workflow version.
404 Version not found.
GET /accounts/{account_id}/workflows/{workflow_name}/versions/{version_id}/graph

Zaraz 6 endpoints

GET /zones/{zone_id}/settings/zaraz/config

Gets latest Zaraz configuration for a zone. It can be preview or published configuration, whichever was the last updated. Secret variables values will not be included.

operationId: get-zones-zone_identifier-zaraz-config

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Get Zaraz configuration response failure.
200 Get Zaraz configuration response.
GET /zones/{zone_id}/settings/zaraz/config
GET /zones/{zone_id}/settings/zaraz/default

Gets default Zaraz configuration for a zone.

operationId: get-zones-zone_identifier-zaraz-default

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Get Zaraz default configuration response failure.
200 Get Zaraz default configuration response.
GET /zones/{zone_id}/settings/zaraz/default
GET /zones/{zone_id}/settings/zaraz/export

Exports full current published Zaraz configuration for a zone, secret variables included.

operationId: get-zones-zone_identifier-zaraz-export

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Get Zaraz configuration response failure.
200 Get Zaraz configuration response.
GET /zones/{zone_id}/settings/zaraz/export
GET /zones/{zone_id}/settings/zaraz/history

Lists a history of published Zaraz configuration records for a zone.

operationId: get-zones-zone_identifier-zaraz-history

Parameters

Name In Required Type Description
zone_id path required
offset query optional integer Ordinal number to start listing the results with. Default value is 0.
limit query optional integer Maximum amount of results to list. Default value is 10.
sortField query optional string The field to sort by. Default is updated_at.
sortOrder query optional string Sorting order. Default is DESC.

Responses

4XX List Zaraz historical configuration records failure.
200 List Zaraz historical configuration records response.
GET /zones/{zone_id}/settings/zaraz/history
GET /zones/{zone_id}/settings/zaraz/history/configs

Gets a history of published Zaraz configurations by ID(s) for a zone.

operationId: get-zones-zone_identifier-zaraz-config-history

Parameters

Name In Required Type Description
zone_id path required
ids query required array Comma separated list of Zaraz configuration IDs.

Responses

4XX Get Zaraz historical configurations by ID(s) failure.
200 Get Zaraz historical configurations by ID(s) response.
GET /zones/{zone_id}/settings/zaraz/history/configs
GET /zones/{zone_id}/settings/zaraz/workflow

Gets Zaraz workflow for a zone.

operationId: get-zones-zone_identifier-zaraz-workflow

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Get Zaraz workflow response failure.
200 Get Zaraz workflow response.
GET /zones/{zone_id}/settings/zaraz/workflow

Zero trust connectivity settings 1 endpoints

GET /accounts/{account_id}/zerotrust/connectivity_settings

Gets the Zero Trust Connectivity Settings for the given account.

operationId: zero-trust-accounts-get-connectivity-settings

Parameters

Name In Required Type Description
account_id path required

Responses

4XX Get Zero Trust Connectivity Settings response failure
200 Get Zero Trust Connectivity Settings response
GET /accounts/{account_id}/zerotrust/connectivity_settings

Zero trust gateway pac files 2 endpoints

GET /accounts/{account_id}/gateway/pacfiles

List all Zero Trust Gateway PAC files for an account.

operationId: zero-trust-gateway-pacfiles-list

Parameters

Name In Required Type Description
account_id path required

Responses

4XX Returns a list of PAC files response failure.
200 Returns a list of PAC files response.
GET /accounts/{account_id}/gateway/pacfiles
GET /accounts/{account_id}/gateway/pacfiles/{pacfile_id}

Get a single Zero Trust Gateway PAC file.

operationId: zero-trust-gateway-pacfiles-details

Parameters

Name In Required Type Description
pacfile_id path required
account_id path required

Responses

4XX Returns a PAC file response failure.
200 Returns a PAC file response.
GET /accounts/{account_id}/gateway/pacfiles/{pacfile_id}

Zero trust gateway application and application type mappings 1 endpoints

GET /accounts/{account_id}/gateway/app_types

List all application and application type mappings.

operationId: zero-trust-gateway-application-and-application-type-mappings-list-application-and-application-type-mappings

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List application and application type mappings response failure.
200 List application and application type mappings response.
GET /accounts/{account_id}/gateway/app_types

Zero trust gateway categories 1 endpoints

GET /accounts/{account_id}/gateway/categories

List all categories.

operationId: zero-trust-gateway-categories-list-categories

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List categories response failure.
200 List categories response.
GET /accounts/{account_id}/gateway/categories

Zero trust gateway locations 2 endpoints

GET /accounts/{account_id}/gateway/locations

List Zero Trust Gateway locations for an account.

operationId: zero-trust-gateway-locations-list-zero-trust-gateway-locations

Parameters

Name In Required Type Description
account_id path required

Responses

4XX Lists Zero Trust Gateway locations response failure.
200 Lists Zero Trust Gateway locations response.
GET /accounts/{account_id}/gateway/locations
GET /accounts/{account_id}/gateway/locations/{location_id}

Get a single Zero Trust Gateway location.

operationId: zero-trust-gateway-locations-zero-trust-gateway-location-details

Parameters

Name In Required Type Description
location_id path required
account_id path required

Responses

4XX Gets Zero Trust Gateway location details response failure.
200 Gets Zero Trust Gateway location details response.
GET /accounts/{account_id}/gateway/locations/{location_id}

Zero trust gateway proxy endpoints 2 endpoints

GET /accounts/{account_id}/gateway/proxy_endpoints

List all Zero Trust Gateway proxy endpoints for an account.

operationId: zero-trust-gateway-proxy-endpoints-list-proxy-endpoints

Parameters

Name In Required Type Description
account_id path required

Responses

4XX Returns a list of proxy endpoints response failure.
200 Returns a list of proxy endpoints response.
GET /accounts/{account_id}/gateway/proxy_endpoints
GET /accounts/{account_id}/gateway/proxy_endpoints/{proxy_endpoint_id}

Get a single Zero Trust Gateway proxy endpoint.

operationId: zero-trust-gateway-proxy-endpoints-proxy-endpoint-details

Parameters

Name In Required Type Description
proxy_endpoint_id path required
account_id path required

Responses

4XX Returns a proxy endpoint response failure.
200 Returns a proxy endpoint response.
GET /accounts/{account_id}/gateway/proxy_endpoints/{proxy_endpoint_id}

Zero trust gateway rules 3 endpoints

GET /accounts/{account_id}/gateway/rules

List Zero Trust Gateway rules for an account.

operationId: zero-trust-gateway-rules-list-zero-trust-gateway-rules

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List Zero Trust Gateway rules response failure.
200 List Zero Trust Gateway rules response.
GET /accounts/{account_id}/gateway/rules
GET /accounts/{account_id}/gateway/rules/tenant

List Zero Trust Gateway rules for the parent account of an account in the MSP configuration.

operationId: zero-trust-gateway-rules-list-zero-trust-gateway-rules-tenant

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List Zero Trust Gateway rules response failure.
200 List Zero Trust Gateway rules response.
GET /accounts/{account_id}/gateway/rules/tenant
GET /accounts/{account_id}/gateway/rules/{rule_id}

Get a single Zero Trust Gateway rule.

operationId: zero-trust-gateway-rules-zero-trust-gateway-rule-details

Parameters

Name In Required Type Description
rule_id path required
account_id path required

Responses

4XX Get Zero Trust Gateway rule details response failure.
200 Get Zero Trust Gateway rule details response.
GET /accounts/{account_id}/gateway/rules/{rule_id}

Zero trust hostname route 2 endpoints

GET /accounts/{account_id}/zerotrust/routes/hostname

Lists and filters hostname routes in an account.

operationId: zero-trust-networks-route-hostname-list

Parameters

Name In Required Type Description
account_id path required
id query optional
hostname query optional If set, only list hostname routes that contain a substring of the given value, the filter is case-insensitive.
tunnel_id query optional If set, only list hostname routes that point to a specific tunnel.
comment query optional
existed_at query optional
is_deleted query optional boolean
per_page query optional
page query optional

Responses

4XX List hostname routes failure
200 List hostname routes response
GET /accounts/{account_id}/zerotrust/routes/hostname
GET /accounts/{account_id}/zerotrust/routes/hostname/{hostname_route_id}

Get a hostname route.

operationId: zero-trust-networks-route-hostname-get

Parameters

Name In Required Type Description
account_id path required
hostname_route_id path required

Responses

4XX Get hostname route response failure
200 Get hostname route response
GET /accounts/{account_id}/zerotrust/routes/hostname/{hostname_route_id}

Zero trust risk scoring 3 endpoints

GET /accounts/{account_id}/zt_risk_scoring/behaviors

Retrieves configured risk score behaviors that define how user actions affect their overall risk score.

operationId: dlp-risk-score-behaviors-get

Parameters

Name In Required Type Description
account_id path required string

Responses

4XX Failed to get risk scoring behaviors.
200 Risk scoring behaviors.
GET /accounts/{account_id}/zt_risk_scoring/behaviors
GET /accounts/{account_id}/zt_risk_scoring/summary

Gets an aggregate summary of risk scores across the account, including distribution and trends.

operationId: dlp-risk-score-summary-get

Parameters

Name In Required Type Description
account_id path required string

Responses

4XX Failed to get risk scores.
200 Risk score for all users in the account.
GET /accounts/{account_id}/zt_risk_scoring/summary
GET /accounts/{account_id}/zt_risk_scoring/{user_id}

Retrieves the detailed risk score breakdown for a specific user, including contributing factors.

operationId: dlp-risk-score-summary-get-for-user

Parameters

Name In Required Type Description
account_id path required string
user_id path required string

Responses

4XX Failed to get risk events.
200 Risk events.
GET /accounts/{account_id}/zt_risk_scoring/{user_id}

Zero trust risk scoring integrations 3 endpoints

GET /accounts/{account_id}/zt_risk_scoring/integrations

Lists all configured Zero Trust risk score integrations for the account.

operationId: dlp-zt-risk-score-integration-list

Parameters

Name In Required Type Description
account_id path required string

Responses

4XX List failure response.
200 List response.
GET /accounts/{account_id}/zt_risk_scoring/integrations
GET /accounts/{account_id}/zt_risk_scoring/integrations/reference_id/{reference_id}

Retrieves a Zero Trust risk score integration using its external reference ID.

operationId: dlp-zt-risk-score-integration-get-by-reference-id

Parameters

Name In Required Type Description
account_id path required string
reference_id path required string

Responses

4XX Get failure response.
200 Get response.
GET /accounts/{account_id}/zt_risk_scoring/integrations/reference_id/{reference_id}
GET /accounts/{account_id}/zt_risk_scoring/integrations/{integration_id}
operationId: dlp-zt-risk-score-integration-get

Parameters

Name In Required Type Description
account_id path required string
integration_id path required string

Responses

4XX Get failure response.
200 Get response.
GET /accounts/{account_id}/zt_risk_scoring/integrations/{integration_id}

Zero trust ssh settings 1 endpoints

GET /accounts/{account_id}/gateway/audit_ssh_settings

Retrieve all Zero Trust Audit SSH and SSH with Access for Infrastructure settings for an account.

operationId: zero-trust-get-audit-ssh-settings

Parameters

Name In Required Type Description
account_id path required

Responses

4XX Get Zero Trust SSH settings response failure.
200 Get Zero Trust SSH settings response.
GET /accounts/{account_id}/gateway/audit_ssh_settings

Zero trust subnets 2 endpoints

GET /accounts/{account_id}/zerotrust/subnets

Lists and filters subnets in an account.

operationId: zero-trust-networks-subnets-list

Parameters

Name In Required Type Description
account_id path required
name query optional If set, only list subnets with the given name
comment query optional
network query optional
existed_at query optional
address_family query optional If set, only include subnets in the given address family - `v4` or `v6`
is_default_network query optional boolean
is_deleted query optional boolean
sort_order query optional string
subnet_types query optional string
per_page query optional
page query optional

Responses

4XX List subnets response failure
200 List subnets response
GET /accounts/{account_id}/zerotrust/subnets
GET /accounts/{account_id}/zerotrust/subnets/warp/{subnet_id}

Get a WARP IP assignment subnet.

operationId: zero-trust-networks-subnet-get-warp

Parameters

Name In Required Type Description
account_id path required
subnet_id path required

Responses

4XX Get subnet response failure
200 Get subnet response
GET /accounts/{account_id}/zerotrust/subnets/warp/{subnet_id}

Zero trust accounts 4 endpoints

GET /accounts/{account_id}/devices/settings

Describes the current device settings for a Zero Trust account.

operationId: zero-trust-accounts-get-device-settings-for-zero-trust-account

Parameters

Name In Required Type Description
account_id path required

Responses

4XX Get device settings for a Zero Trust account response failure.
200 Get device settings for a Zero Trust account response.
GET /accounts/{account_id}/devices/settings
GET /accounts/{account_id}/gateway

Retrieve information about the current Zero Trust account.

operationId: zero-trust-accounts-get-zero-trust-account-information

Parameters

Name In Required Type Description
account_id path required

Responses

4XX Zero Trust account information response failure.
200 Zero Trust account information response.
GET /accounts/{account_id}/gateway
GET /accounts/{account_id}/gateway/configuration

Retrieve the current Zero Trust account configuration.

operationId: zero-trust-accounts-get-zero-trust-account-configuration

Parameters

Name In Required Type Description
account_id path required

Responses

4XX Zero Trust account configuration response failure.
200 Zero Trust account configuration response.
GET /accounts/{account_id}/gateway/configuration
GET /accounts/{account_id}/gateway/logging

Retrieve the current logging settings for the Zero Trust account.

operationId: zero-trust-accounts-get-logging-settings-for-the-zero-trust-account

Parameters

Name In Required Type Description
account_id path required

Responses

4XX Logging settings retrieval response failure.
200 Logging settings retrieval response.
GET /accounts/{account_id}/gateway/logging

Zero trust applications review status 1 endpoints

GET /accounts/{account_id}/gateway/apps/review_status

Retrieve the statuses of your applications.

operationId: zero-trust-applications-review-status-list

Parameters

Name In Required Type Description
account_id path required

Responses

4XX List applications review status failure response.
200 List applications review status response.
GET /accounts/{account_id}/gateway/apps/review_status

Zero trust certificates 2 endpoints

GET /accounts/{account_id}/gateway/certificates

List all Zero Trust certificates for an account.

operationId: zero-trust-certificates-list-zero-trust-certificates

Parameters

Name In Required Type Description
account_id path required

Responses

4XX Lists Zero Trust certificates response failure.
200 Lists Zero Trust certificates response.
GET /accounts/{account_id}/gateway/certificates
GET /accounts/{account_id}/gateway/certificates/{certificate_id}

Get a single Zero Trust certificate.

operationId: zero-trust-certificates-zero-trust-certificate-details

Parameters

Name In Required Type Description
certificate_id path required
account_id path required

Responses

4XX Gets Zero Trust certificate details response failure.
200 Gets Zero Trust certificate details response.
GET /accounts/{account_id}/gateway/certificates/{certificate_id}

Zero trust lists 3 endpoints

GET /accounts/{account_id}/gateway/lists

Fetch all Zero Trust lists for an account.

operationId: zero-trust-lists-list-zero-trust-lists

Parameters

Name In Required Type Description
account_id path required
type query optional

Responses

4XX List Zero Trust lists response failure.
200 List Zero Trust lists response.
GET /accounts/{account_id}/gateway/lists
GET /accounts/{account_id}/gateway/lists/{list_id}

Fetch a single Zero Trust list.

operationId: zero-trust-lists-zero-trust-list-details

Parameters

Name In Required Type Description
list_id path required
account_id path required

Responses

4XX Get Zero Trust list details response failure.
200 Get Zero Trust list details response.
GET /accounts/{account_id}/gateway/lists/{list_id}
GET /accounts/{account_id}/gateway/lists/{list_id}/items

Fetch all items in a single Zero Trust list.

operationId: zero-trust-lists-zero-trust-list-items

Parameters

Name In Required Type Description
list_id path required
account_id path required

Responses

4XX Get Zero Trust list items response failure.
200 Get Zero Trust list items response.
GET /accounts/{account_id}/gateway/lists/{list_id}/items

Zero trust organization 2 endpoints

GET /accounts/{account_id}/access/organizations

Returns the configuration for your Zero Trust organization.

operationId: zero-trust-organization-get-your-zero-trust-organization

Parameters

Name In Required Type Description
account_id path required

Responses

4XX Get your Zero Trust organization response failure
200 Get your Zero Trust organization response
GET /accounts/{account_id}/access/organizations
GET /accounts/{account_id}/access/organizations/doh

Returns the DoH settings for your Zero Trust organization.

operationId: zero-trust-organization-get-your-zero-trust-organization-doh-settings

Parameters

Name In Required Type Description
account_id path required

Responses

4XX Get your Zero Trust organization DoH settings response failure
200 Get your Zero Trust organization DoH settings response
GET /accounts/{account_id}/access/organizations/doh

Zero trust users 6 endpoints

GET /accounts/{account_id}/access/users

Gets a list of users for an account.

operationId: zero-trust-users-get-users

Parameters

Name In Required Type Description
account_id path required
name query optional string
email query optional string
search query optional string
optional
optional

Responses

4XX Get users response failure
200 Get users response
GET /accounts/{account_id}/access/users
GET /accounts/{account_id}/access/users/{user_id}

Gets a specific user for an account.

operationId: zero-trust-users-get-user

Parameters

Name In Required Type Description
user_id path required
account_id path required

Responses

4XX Get user response failure
200 Get user response
GET /accounts/{account_id}/access/users/{user_id}
GET /accounts/{account_id}/access/users/{user_id}/active_sessions

Get active sessions for a single user.

operationId: zero-trust-users-get-active-sessions

Parameters

Name In Required Type Description
user_id path required
account_id path required

Responses

4XX Get active sessions response failure
200 Get active sessions response
GET /accounts/{account_id}/access/users/{user_id}/active_sessions
GET /accounts/{account_id}/access/users/{user_id}/active_sessions/{nonce}

Get an active session for a single user.

operationId: zero-trust-users-get-active-session

Parameters

Name In Required Type Description
user_id path required
account_id path required
nonce path required

Responses

4XX Get active session response failure
200 Get active session response
GET /accounts/{account_id}/access/users/{user_id}/active_sessions/{nonce}
GET /accounts/{account_id}/access/users/{user_id}/failed_logins

Get all failed login attempts for a single user.

operationId: zero-trust-users-get-failed-logins

Parameters

Name In Required Type Description
user_id path required
account_id path required

Responses

4XX Get failed logins response failure
200 Get failed logins response
GET /accounts/{account_id}/access/users/{user_id}/failed_logins
GET /accounts/{account_id}/access/users/{user_id}/last_seen_identity

Get last seen identity for a single user.

operationId: zero-trust-users-get-last-seen-identity

Parameters

Name In Required Type Description
user_id path required
account_id path required

Responses

4XX Get active session response failure
200 Get active session response
GET /accounts/{account_id}/access/users/{user_id}/last_seen_identity

Zone 2 endpoints

GET /zones

Lists, searches, sorts, and filters your zones. Listing zones across more than 500 accounts is currently not allowed.

operationId: zones-get

Parameters

Name In Required Type Description
name query optional string
status query optional string
account.id query optional string
account.name query optional string
page query optional number
per_page query optional number
order query optional string
direction query optional string
match query optional string

Responses

4XX List Zones response failure.
200 List Zones response.
GET /zones
GET /zones/{zone_id}
operationId: zones-0-get

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Zone Details response failure.
200 Zone Details response.
GET /zones/{zone_id}

Zone cache settings 4 endpoints

GET /zones/{zone_id}/cache/cache_reserve

Increase cache lifetimes by automatically storing all cacheable files into Cloudflare's persistent object storage buckets. Requires Cache Reserve subscription. Note: using Tiered Cache with Cache Reserve is highly recommended to reduce Reserve operations costs. See the [developer docs](https://developers.cloudflare.com/cache/about/cache-reserve) for more information.

operationId: zone-cache-settings-get-cache-reserve-setting

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Get Cache Reserve setting response failure.
200 Get Cache Reserve setting response.
GET /zones/{zone_id}/cache/cache_reserve
GET /zones/{zone_id}/cache/cache_reserve_clear

You can use Cache Reserve Clear to clear your Cache Reserve, but you must first disable Cache Reserve. In most cases, this will be accomplished within 24 hours. You cannot re-enable Cache Reserve while this process is ongoing. Keep in mind that you cannot undo or cancel this operation.

operationId: zone-cache-settings-get-cache-reserve-clear

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Get Cache Reserve Clear failure response.
200 Get Cache Reserve Clear response.
GET /zones/{zone_id}/cache/cache_reserve_clear
GET /zones/{zone_id}/cache/regional_tiered_cache

Instructs Cloudflare to check a regional hub data center on the way to your upper tier. This can help improve performance for smart and custom tiered cache topologies.

operationId: zone-cache-settings-get-regional-tiered-cache-setting

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Get Regional Tiered Cache setting response failure.
200 Get Regional Tiered Cache setting response.
GET /zones/{zone_id}/cache/regional_tiered_cache
GET /zones/{zone_id}/cache/variants

Variant support enables caching variants of images with certain file extensions in addition to the original. This only applies when the origin server sends the 'Vary: Accept' response header. If the origin server sends 'Vary: Accept' but does not serve the variant requested, the response will not be cached. This will be indicated with BYPASS cache status in the response headers.

operationId: zone-cache-settings-get-variants-setting

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Get variants setting response failure.
200 Get variants setting response.
GET /zones/{zone_id}/cache/variants

Zone cloud connector rules get 1 endpoints

GET /zones/{zone_id}/cloud_connector/rules
operationId: zone-cloud-connector-rules

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Cloud Connector response failure
5XX Cloud Connector response failure
200 Cloud Connector rules response
GET /zones/{zone_id}/cloud_connector/rules

Zone environments 1 endpoints

GET /zones/{zone_id}/environments
operationId: zonesEnvironmentsList

Responses

4XX
200 Successfully listed zone environments.
GET /zones/{zone_id}/environments

Zone holds 1 endpoints

GET /zones/{zone_id}/hold

Retrieve whether the zone is subject to a zone hold, and metadata about the hold.

operationId: zones-0-hold-get

Parameters

Name In Required Type Description
zone_id path required Zone ID

Responses

4XX Client Error
200 Successful Response
GET /zones/{zone_id}/hold

Zone lockdown 2 endpoints

GET /zones/{zone_id}/firewall/lockdowns

Fetches Zone Lockdown rules. You can filter the results using several optional parameters.

operationId: zone-lockdown-list-zone-lockdown-rules

Parameters

Name In Required Type Description
zone_id path required
page query optional number
description query optional
modified_on query optional
ip query optional
priority query optional
uri_search query optional
ip_range_search query optional
per_page query optional number
created_on query optional string
description_search query optional string
ip_search query optional string

Responses

4XX List Zone Lockdown rules response failure
200 List Zone Lockdown rules response
GET /zones/{zone_id}/firewall/lockdowns
GET /zones/{zone_id}/firewall/lockdowns/{lock_downs_id}

Fetches the details of a Zone Lockdown rule.

operationId: zone-lockdown-get-a-zone-lockdown-rule

Parameters

Name In Required Type Description
lock_downs_id path required
zone_id path required

Responses

4XX Get a Zone Lockdown rule response failure
200 Get a Zone Lockdown rule response
GET /zones/{zone_id}/firewall/lockdowns/{lock_downs_id}

Zone rate plan 3 endpoints

GET /zones/{zone_id}/available_plans

Lists available plans the zone can subscribe to.

operationId: zone-rate-plan-list-available-plans

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX List Available Plans response failure
200 List Available Plans response
GET /zones/{zone_id}/available_plans
GET /zones/{zone_id}/available_plans/{plan_identifier}

Details of the available plan that the zone can subscribe to.

operationId: zone-rate-plan-available-plan-details

Parameters

Name In Required Type Description
plan_identifier path required
zone_id path required

Responses

4XX Available Plan Details response failure
200 Available Plan Details response
GET /zones/{zone_id}/available_plans/{plan_identifier}
GET /zones/{zone_id}/available_rate_plans

Lists all rate plans the zone can subscribe to.

operationId: zone-rate-plan-list-available-rate-plans

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX List Available Rate Plans response failure
200 List Available Rate Plans response
GET /zones/{zone_id}/available_rate_plans

Zone rulesets 8 endpoints

GET /zones/{zone_id}/rulesets

Fetches all rulesets at the zone level.

operationId: listZoneRulesets

Parameters

Name In Required Type Description
zone_id path required
cursor query optional
per_page query optional

Responses

4XX
200
GET /zones/{zone_id}/rulesets
GET /zones/{zone_id}/rulesets/phases/{ruleset_phase}/entrypoint

Fetches the latest version of the zone entry point ruleset for a given phase.

operationId: getZoneEntrypointRuleset

Parameters

Name In Required Type Description
ruleset_phase path required
zone_id path required

Responses

4XX
200
GET /zones/{zone_id}/rulesets/phases/{ruleset_phase}/entrypoint
GET /zones/{zone_id}/rulesets/phases/{ruleset_phase}/entrypoint/versions

Fetches the versions of a zone entry point ruleset.

operationId: listZoneEntrypointRulesetVersions

Parameters

Name In Required Type Description
ruleset_phase path required
zone_id path required

Responses

4XX
200
GET /zones/{zone_id}/rulesets/phases/{ruleset_phase}/entrypoint/versions
GET /zones/{zone_id}/rulesets/phases/{ruleset_phase}/entrypoint/versions/{ruleset_version}

Fetches a specific version of a zone entry point ruleset.

operationId: getZoneEntrypointRulesetVersion

Parameters

Name In Required Type Description
ruleset_version path required
ruleset_phase path required
zone_id path required

Responses

4XX
200
GET /zones/{zone_id}/rulesets/phases/{ruleset_phase}/entrypoint/versions/{ruleset_version}
GET /zones/{zone_id}/rulesets/{ruleset_id}

Fetches the latest version of a zone ruleset.

operationId: getZoneRuleset

Parameters

Name In Required Type Description
ruleset_id path required
zone_id path required

Responses

4XX
200
GET /zones/{zone_id}/rulesets/{ruleset_id}
GET /zones/{zone_id}/rulesets/{ruleset_id}/versions

Fetches the versions of a zone ruleset.

operationId: listZoneRulesetVersions

Parameters

Name In Required Type Description
ruleset_id path required
zone_id path required

Responses

4XX
200
GET /zones/{zone_id}/rulesets/{ruleset_id}/versions
GET /zones/{zone_id}/rulesets/{ruleset_id}/versions/{ruleset_version}

Fetches a specific version of a zone ruleset.

operationId: getZoneRulesetVersion

Parameters

Name In Required Type Description
ruleset_version path required
ruleset_id path required
zone_id path required

Responses

4XX
200
GET /zones/{zone_id}/rulesets/{ruleset_id}/versions/{ruleset_version}
GET /zones/{zone_id}/rulesets/{ruleset_id}/versions/{ruleset_version}/by_tag/{rule_tag}

Fetches the rules of a managed zone ruleset version for a given tag.

operationId: listZoneRulesetVersionRulesByTag

Parameters

Name In Required Type Description
rule_tag path required
ruleset_version path required
ruleset_id path required
zone_id path required

Responses

4XX
200
GET /zones/{zone_id}/rulesets/{ruleset_id}/versions/{ruleset_version}/by_tag/{rule_tag}

Zone settings 6 endpoints

GET /zones/{zone_id}/settings/aegis

Aegis provides dedicated egress IPs (from Cloudflare to your origin) for your layer 7 WAF and CDN services. The egress IPs are reserved exclusively for your account so that you can increase your origin security by only allowing traffic from a small list of IP addresses.

operationId: zone-cache-settings-get-aegis-setting

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Get aegis setting response failure.
200 Get aegis setting response.
GET /zones/{zone_id}/settings/aegis
GET /zones/{zone_id}/settings/fonts

Enhance your website's font delivery with Cloudflare Fonts. Deliver Google Hosted fonts from your own domain, boost performance, and enhance user privacy. Refer to the Cloudflare Fonts documentation for more information.

operationId: zone-settings-get-fonts-setting

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Get Cloudflare Fonts setting response failure.
200 Get Cloudflare Fonts setting response.
GET /zones/{zone_id}/settings/fonts
GET /zones/{zone_id}/settings/origin_h2_max_streams

Origin H2 Max Streams configures the max number of concurrent requests that Cloudflare will send within the same connection when communicating with the origin server, if the origin supports it. Note that if your origin does not support H2 multiplexing, 5xx errors may be observed, particularly 520s. Also note that the default value is `100` for all plan types except Enterprise where it is `1`. `1` means that H2 multiplexing is disabled.

operationId: zone-cache-settings-get-origin-h2-max-streams-setting

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Get Origin H2 Max Streams setting response failure.
200 Get Origin H2 Max Streams setting response.
GET /zones/{zone_id}/settings/origin_h2_max_streams
GET /zones/{zone_id}/settings/origin_max_http_version

Origin Max HTTP Setting Version sets the highest HTTP version Cloudflare will attempt to use with your origin. This setting allows Cloudflare to make HTTP/2 requests to your origin. (Refer to [Enable HTTP/2 to Origin](https://developers.cloudflare.com/cache/how-to/enable-http2-to-origin/), for more information.). The default value is "2" for all plan types except Enterprise where it is "1".

operationId: zone-cache-settings-get-origin-max-http-version-setting

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Get Origin Max HTTP Version setting response failure.
200 Get Origin Max HTTP Version setting response.
GET /zones/{zone_id}/settings/origin_max_http_version
GET /zones/{zone_id}/settings/speed_brain

Speed Brain lets compatible browsers speculate on content which can be prefetched or preloaded, making website navigation faster. Refer to the Cloudflare Speed Brain documentation for more information.

operationId: zone-settings-get-speed-brain-setting

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Get Cloudflare Speed Brain setting response failure.
200 Get Cloudflare Speed Brain setting response.
GET /zones/{zone_id}/settings/speed_brain
GET /zones/{zone_id}/settings/{setting_id}

Fetch a single zone setting by name

operationId: zone-settings-get-single-setting

Parameters

Name In Required Type Description
zone_id path required
setting_id path required

Responses

4XX Get zone setting response failure
200 Get zone setting response
GET /zones/{zone_id}/settings/{setting_id}

Zone snippets 4 endpoints

GET /zones/{zone_id}/snippets

Fetches all snippets belonging to the zone.

operationId: listZoneSnippets

Parameters

Name In Required Type Description
zone_id path required
page query optional
per_page query optional

Responses

4XX
5XX
200
GET /zones/{zone_id}/snippets
GET /zones/{zone_id}/snippets/snippet_rules

Fetches all snippet rules belonging to the zone.

operationId: listZoneSnippetRules

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX
5XX
200
GET /zones/{zone_id}/snippets/snippet_rules
GET /zones/{zone_id}/snippets/{snippet_name}

Fetches a snippet belonging to the zone.

operationId: getZoneSnippet

Parameters

Name In Required Type Description
zone_id path required
snippet_name path required

Responses

4XX
5XX
200
GET /zones/{zone_id}/snippets/{snippet_name}
GET /zones/{zone_id}/snippets/{snippet_name}/content

Fetches the content of a snippet belonging to the zone.

operationId: getZoneSnippetContent

Parameters

Name In Required Type Description
zone_id path required
snippet_name path required

Responses

4XX
5XX
200
GET /zones/{zone_id}/snippets/{snippet_name}/content

Zone subscription 1 endpoints

GET /zones/{zone_id}/subscription

Lists zone subscription details.

operationId: zone-subscription-zone-subscription-details

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Zone Subscription Details response failure
200 Zone Subscription Details response
GET /zones/{zone_id}/subscription

Zone-level access applications 3 endpoints

GET /zones/{zone_id}/access/apps

List all Access Applications in a zone.

operationId: zone-level-access-applications-list-access-applications

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX List Access Applications response failure
200 List Access Applications response
GET /zones/{zone_id}/access/apps
GET /zones/{zone_id}/access/apps/{app_id}

Fetches information about an Access application.

operationId: zone-level-access-applications-get-an-access-application

Parameters

Name In Required Type Description
app_id path required
zone_id path required

Responses

4XX Get an Access application response failure
200 Get an Access application response
GET /zones/{zone_id}/access/apps/{app_id}
GET /zones/{zone_id}/access/apps/{app_id}/user_policy_checks

Tests if a specific user has permission to access an application.

operationId: zone-level-access-applications-test-access-policies

Parameters

Name In Required Type Description
app_id path required
zone_id path required

Responses

4XX Test Access policies response failure
200 Test Access policies response
GET /zones/{zone_id}/access/apps/{app_id}/user_policy_checks

Zone-level access groups 2 endpoints

GET /zones/{zone_id}/access/groups

Lists all Access groups.

operationId: zone-level-access-groups-list-access-groups

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX List Access groups response failure
200 List Access groups response
GET /zones/{zone_id}/access/groups
GET /zones/{zone_id}/access/groups/{group_id}

Fetches a single Access group.

operationId: zone-level-access-groups-get-an-access-group

Parameters

Name In Required Type Description
group_id path required
zone_id path required

Responses

4XX Get an Access group response failure
200 Get an Access group response
GET /zones/{zone_id}/access/groups/{group_id}

Zone-level access identity providers 2 endpoints

GET /zones/{zone_id}/access/identity_providers

Lists all configured identity providers.

operationId: zone-level-access-identity-providers-list-access-identity-providers

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX List Access identity providers response failure
200 List Access identity providers response
GET /zones/{zone_id}/access/identity_providers
GET /zones/{zone_id}/access/identity_providers/{identity_provider_id}

Fetches a configured identity provider.

operationId: zone-level-access-identity-providers-get-an-access-identity-provider

Parameters

Name In Required Type Description
identity_provider_id path required
zone_id path required

Responses

4XX Get an Access identity provider response failure
200 Get an Access identity provider response
GET /zones/{zone_id}/access/identity_providers/{identity_provider_id}

Zone-level access mtls authentication 3 endpoints

GET /zones/{zone_id}/access/certificates

Lists all mTLS certificates.

operationId: zone-level-access-mtls-authentication-list-mtls-certificates

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX List mTLS certificates response failure
200 List mTLS certificates response
GET /zones/{zone_id}/access/certificates
GET /zones/{zone_id}/access/certificates/settings

List all mTLS hostname settings for this zone.

operationId: zone-level-access-mtls-authentication-list-mtls-certificates-hostname-settings

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX List mTLS hostname settings response failure
200 List mTLS hostname settings response
GET /zones/{zone_id}/access/certificates/settings
GET /zones/{zone_id}/access/certificates/{certificate_id}

Fetches a single mTLS certificate.

operationId: zone-level-access-mtls-authentication-get-an-mtls-certificate

Parameters

Name In Required Type Description
certificate_id path required
zone_id path required

Responses

4XX Get an mTLS certificate response failure
200 Get an mTLS certificate response
GET /zones/{zone_id}/access/certificates/{certificate_id}

Zone-level access policies 2 endpoints

GET /zones/{zone_id}/access/apps/{app_id}/policies

Lists Access policies configured for an application.

operationId: zone-level-access-policies-list-access-policies

Parameters

Name In Required Type Description
app_id path required
zone_id path required

Responses

4XX List Access policies response failure
200 List Access policies response
GET /zones/{zone_id}/access/apps/{app_id}/policies
GET /zones/{zone_id}/access/apps/{app_id}/policies/{policy_id}

Fetches a single Access policy.

operationId: zone-level-access-policies-get-an-access-policy

Parameters

Name In Required Type Description
policy_id path required
app_id path required
zone_id path required

Responses

4XX Get an Access policy response failure
200 Get an Access policy response
GET /zones/{zone_id}/access/apps/{app_id}/policies/{policy_id}

Zone-level access service tokens 2 endpoints

GET /zones/{zone_id}/access/service_tokens

Lists all service tokens.

operationId: zone-level-access-service-tokens-list-service-tokens

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX List service tokens response failure
200 List service tokens response
GET /zones/{zone_id}/access/service_tokens
GET /zones/{zone_id}/access/service_tokens/{service_token_id}

Fetches a single service token.

operationId: zone-level-access-service-tokens-get-a-service-token

Parameters

Name In Required Type Description
service_token_id path required
zone_id path required

Responses

4XX Get a service token response failure
200 Get a service token response
GET /zones/{zone_id}/access/service_tokens/{service_token_id}

Zone-level access short-lived certificate cas 2 endpoints

GET /zones/{zone_id}/access/apps/ca

Lists short-lived certificate CAs and their public keys.

operationId: zone-level-access-short-lived-certificate-c-as-list-short-lived-certificate-c-as

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX List short-lived certificate CAs response failure
200 List short-lived certificate CAs response
GET /zones/{zone_id}/access/apps/ca
GET /zones/{zone_id}/access/apps/{app_id}/ca

Fetches a short-lived certificate CA and its public key.

operationId: zone-level-access-short-lived-certificate-c-as-get-a-short-lived-certificate-ca

Parameters

Name In Required Type Description
app_id path required
zone_id path required

Responses

4XX Get a short-lived certificate CA response failure
200 Get a short-lived certificate CA response
GET /zones/{zone_id}/access/apps/{app_id}/ca

Zone-level authenticated origin pulls 3 endpoints

GET /zones/{zone_id}/origin_tls_client_auth

Lists all client certificates configured for zone-level authenticated origin pulls.

operationId: zone-level-authenticated-origin-pulls-list-certificates

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX List Certificates response failure
200 List Certificates response
GET /zones/{zone_id}/origin_tls_client_auth
GET /zones/{zone_id}/origin_tls_client_auth/settings

Get whether zone-level authenticated origin pulls is enabled or not. It is false by default.

operationId: zone-level-authenticated-origin-pulls-get-enablement-setting-for-zone

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Get Enablement Setting for Zone response failure
200 Get Enablement Setting for Zone response
GET /zones/{zone_id}/origin_tls_client_auth/settings
GET /zones/{zone_id}/origin_tls_client_auth/{certificate_id}

Retrieves details for a specific client certificate used in zone-level authenticated origin pulls.

operationId: zone-level-authenticated-origin-pulls-get-certificate-details

Parameters

Name In Required Type Description
certificate_id path required
zone_id path required

Responses

4XX Get Certificate Details response failure
200 Get Certificate Details response
GET /zones/{zone_id}/origin_tls_client_auth/{certificate_id}

Zone-level zero trust organization 1 endpoints

GET /zones/{zone_id}/access/organizations

Returns the configuration for your Zero Trust organization.

operationId: zone-level-zero-trust-organization-get-your-zero-trust-organization

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX Get your Zero Trust organization response failure
200 Get your Zero Trust organization response
GET /zones/{zone_id}/access/organizations

Brand protection 10 endpoints

GET /accounts/{account_id}/brand-protection/alerts

Return all alerts on submitted domains

Responses

default
GET /accounts/{account_id}/brand-protection/alerts
GET /accounts/{account_id}/brand-protection/brands

Return all brands

Responses

default
GET /accounts/{account_id}/brand-protection/brands
GET /accounts/{account_id}/brand-protection/brands/patterns

Return patterns for brands based on ID

Responses

default
GET /accounts/{account_id}/brand-protection/brands/patterns
GET /accounts/{account_id}/brand-protection/domain-info

Return submitted domains based on ID

Responses

default
GET /accounts/{account_id}/brand-protection/domain-info
GET /accounts/{account_id}/brand-protection/recent-submissions

Return recent URL submissions

Responses

default
GET /accounts/{account_id}/brand-protection/recent-submissions
GET /accounts/{account_id}/brand-protection/submission-info

Return URL submissions based on ID

Responses

default
GET /accounts/{account_id}/brand-protection/submission-info
GET /accounts/{account_id}/brand-protection/tracked-domains

Return submitted domains based on pattern

Responses

default
GET /accounts/{account_id}/brand-protection/tracked-domains
GET /accounts/{account_id}/brand-protection/url-info

Return submitted URLs based on ID

Responses

default
200 OK
GET /accounts/{account_id}/brand-protection/url-info
GET /live

Return a success message after running liveness checks

Responses

default
GET /live
GET /ready

Return a success message after running readiness checks

Responses

default
GET /ready

Brapi 12 endpoints

GET /accounts/{account_id}/browser-rendering/crawl/{job_id}

Returns the result of a crawl job.

operationId: brapi-get_CrawlResult

Parameters

Name In Required Type Description
account_id path required string Account ID.
job_id path required string Crawl job ID.
cacheTTL query optional number Cache TTL default is 5s. Set to 0 to disable.
status query optional string Filter by URL status.
cursor query optional number Cursor for pagination.
limit query optional number Limit for pagination.

Responses

200 Returns the result of a crawl job.
400 The request contains errors or didn't properly encode content.
500 Internal server error.
GET /accounts/{account_id}/browser-rendering/crawl/{job_id}
GET /accounts/{account_id}/browser-rendering/devtools/browser

Acquires and establishes a WebSocket connection to a browser session.

operationId: brapi-get_DevtoolsBrowserAcquire

Parameters

Name In Required Type Description
account_id path required string Account ID.
keep_alive query optional number Keep-alive time in ms (only valid when acquiring new session).
lab query optional boolean Use experimental browser.
recording query optional boolean

Responses

101 WebSocket connection established successfully.
400 Bad request.
429 Request failed due to rate limiting.
500 Internal server error.
GET /accounts/{account_id}/browser-rendering/devtools/browser
GET /accounts/{account_id}/browser-rendering/devtools/browser/{session_id}

Establishes a WebSocket connection to an existing browser session.

operationId: brapi-get_DevtoolsBrowser

Parameters

Name In Required Type Description
account_id path required string Account ID.
session_id path required string Browser session ID to connect to.
keep_alive query optional number Keep-alive time in ms (only valid when acquiring new session).
lab query optional boolean Use experimental browser.
recording query optional boolean

Responses

101 WebSocket connection established successfully.
400 Bad request.
429 Request failed due to rate limiting.
500 Internal server error.
GET /accounts/{account_id}/browser-rendering/devtools/browser/{session_id}
GET /accounts/{account_id}/browser-rendering/devtools/browser/{session_id}/json

Returns a list of all debuggable targets including tabs, pages, service workers, and other browser contexts.

operationId: brapi-get_DevtoolsJson

Parameters

Name In Required Type Description
account_id path required string Account ID.
session_id path required string Browser session ID.

Responses

200 List of targets.
400 Bad request.
500 Internal server error.
GET /accounts/{account_id}/browser-rendering/devtools/browser/{session_id}/json
GET /accounts/{account_id}/browser-rendering/devtools/browser/{session_id}/json/activate/{target_id}

Activates (brings to front) a specific browser target by its ID.

operationId: brapi-get_DevtoolsJsonActivate

Parameters

Name In Required Type Description
session_id path required string Browser session ID.
account_id path required string Account ID.
target_id path required string Target ID to activate.

Responses

200 Target activated successfully.
400 Bad request.
404 Target not found.
500 Internal server error.
GET /accounts/{account_id}/browser-rendering/devtools/browser/{session_id}/json/activate/{target_id}
GET /accounts/{account_id}/browser-rendering/devtools/browser/{session_id}/json/list

Returns a list of all debuggable targets including tabs, pages, service workers, and other browser contexts.

operationId: brapi-get_DevtoolsJsonList

Parameters

Name In Required Type Description
account_id path required string Account ID.
session_id path required string Browser session ID.

Responses

200 List of targets.
400 Bad request.
500 Internal server error.
GET /accounts/{account_id}/browser-rendering/devtools/browser/{session_id}/json/list
GET /accounts/{account_id}/browser-rendering/devtools/browser/{session_id}/json/list/{target_id}

Returns the debuggable target with the given ID.

operationId: brapi-get_DevtoolsJsonTarget

Parameters

Name In Required Type Description
account_id path required string Account ID.
session_id path required string Browser session ID.
target_id path required string Target ID.

Responses

200 The target with the given ID.
400 Bad request.
404 Target not found.
500 Internal server error.
GET /accounts/{account_id}/browser-rendering/devtools/browser/{session_id}/json/list/{target_id}
GET /accounts/{account_id}/browser-rendering/devtools/browser/{session_id}/json/protocol

Returns the complete Chrome DevTools Protocol schema including all domains, commands, events, and types. This schema describes the entire CDP API surface.

operationId: brapi-get_DevtoolsJsonProtocol

Parameters

Name In Required Type Description
account_id path required string Account ID.
session_id path required string Browser session ID.

Responses

200 Chrome DevTools Protocol schema.
400 Bad request.
500 Internal server error.
GET /accounts/{account_id}/browser-rendering/devtools/browser/{session_id}/json/protocol
GET /accounts/{account_id}/browser-rendering/devtools/browser/{session_id}/json/version

Get browser version metadata.

operationId: brapi-get_DevtoolsJsonVersion

Parameters

Name In Required Type Description
account_id path required string Account ID.
session_id path required string Browser session ID.

Responses

200 Browser version information.
400 Bad request.
500 Internal server error.
GET /accounts/{account_id}/browser-rendering/devtools/browser/{session_id}/json/version
GET /accounts/{account_id}/browser-rendering/devtools/browser/{session_id}/page/{target_id}

Establishes a WebSocket connection to a specific Chrome DevTools target or page.

operationId: brapi-get_DevtoolsPage

Parameters

Name In Required Type Description
account_id path required string Account ID.
session_id path required string Browser session ID.
target_id path required string Target ID, e.g. page ID.

Responses

101 WebSocket connection established successfully.
400 Bad request.
500 Internal server error.
GET /accounts/{account_id}/browser-rendering/devtools/browser/{session_id}/page/{target_id}
GET /accounts/{account_id}/browser-rendering/devtools/session

List active browser sessions.

operationId: brapi-get_DevtoolsSessionList

Parameters

Name In Required Type Description
account_id path required string Account ID.
limit query optional number
offset query optional number

Responses

200 Returns the account's sessions.
500 Internal server error.
GET /accounts/{account_id}/browser-rendering/devtools/session
GET /accounts/{account_id}/browser-rendering/devtools/session/{session_id}

Get details for a specific browser session.

operationId: brapi-get_DevtoolsSessionDetails

Parameters

Name In Required Type Description
account_id path required string Account ID.
session_id path required string Session ID.

Responses

200 Returns the session details.
404 Session not found.
GET /accounts/{account_id}/browser-rendering/devtools/session/{session_id}

Dos-flowtrackd-api other 15 endpoints

GET /accounts/{account_id}/magic/advanced_dns_protection/configs/dns_protection/rules

List all DNS Protection rules for an account.

operationId: listDnsProtectionRulesForAccount

Parameters

Name In Required Type Description
account_id path required The ID of the account.
page query optional integer The page number for pagination. Defaults to 1.
per_page query optional integer The number of items per page. Must be between 10 and 1000. Defaults to 25.
order query optional string The field to order by. Defaults to 'prefix'.
direction query optional string The direction of ordering (ASC or DESC). Defaults to 'ASC'.

Responses

4XX List all DNS Protection rules failure.
200 List all DNS Protection rules response.
GET /accounts/{account_id}/magic/advanced_dns_protection/configs/dns_protection/rules
GET /accounts/{account_id}/magic/advanced_dns_protection/configs/dns_protection/rules/{rule_id}

Get a DNS Protection rule specified by the given UUID.

operationId: getDnsProtectionRule

Parameters

Name In Required Type Description
account_id path required The ID of the account.
rule_id path required The UUID of the DNS Protection rule.

Responses

4XX Get DNS Protection rule failure.
200 Get DNS Protection rule response.
GET /accounts/{account_id}/magic/advanced_dns_protection/configs/dns_protection/rules/{rule_id}
GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/allowlist

List all allowlist prefixes for an account.

operationId: listAllowlistPrefixesForAccount

Parameters

Name In Required Type Description
account_id path required The ID of the account.
page query optional integer The page number for pagination. Defaults to 1.
per_page query optional integer The number of items per page. Must be between 10 and 1000. Defaults to 25.
order query optional string The field to order by. Defaults to 'prefix'.
direction query optional string The direction of ordering (ASC or DESC). Defaults to 'ASC'.

Responses

4XX List all allowlist prefixes failure.
200 List all allowlist prefixes response.
GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/allowlist
GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/allowlist/{prefix_id}

Get an allowlist prefix specified by the given UUID.

operationId: getAllowlistPrefix

Parameters

Name In Required Type Description
account_id path required The ID of the account.
prefix_id path required The UUID of the allowlist prefix.

Responses

4XX Get allowlist prefix failure.
200 Get allowlist prefix response.
GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/allowlist/{prefix_id}
GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/prefixes

List all prefixes for an account.

operationId: listPrefixesForAccount

Parameters

Name In Required Type Description
account_id path required The ID of the account.
page query optional integer The page number for pagination. Defaults to 1.
per_page query optional integer The number of items per page. Must be between 10 and 1000. Defaults to 25.
order query optional string The field to order by. Defaults to 'prefix'.
direction query optional string The direction of ordering (ASC or DESC). Defaults to 'ASC'.

Responses

4XX List all allowlist prefixes failure.
200 List all prefixes response.
GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/prefixes
GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/prefixes/{prefix_id}

Get a prefix specified by the given UUID.

operationId: getPrefix

Parameters

Name In Required Type Description
account_id path required The ID of the account.
prefix_id path required The UUID of the prefix.

Responses

4XX Get prefix failure.
200 Get prefix response.
GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/prefixes/{prefix_id}
GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/syn_protection/filters

List all SYN Protection filters for an account.

operationId: listSynProtectionFiltersForAccount

Parameters

Name In Required Type Description
account_id path required The ID of the account.
mode query optional string The mode of the filters to get. Optional. Valid values: 'enabled', 'disabled', 'monitoring'.
page query optional integer The page number for pagination. Defaults to 1.
per_page query optional integer The number of items per page. Must be between 10 and 1000. Defaults to 25.
order query optional string The field to order by. Defaults to 'prefix'.
direction query optional string The direction of ordering (ASC or DESC). Defaults to 'ASC'.

Responses

4XX List all SYN Protection filters failure.
200 List all SYN Protection filters response.
GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/syn_protection/filters
GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/syn_protection/filters/{filter_id}

Get a SYN Protection filter specified by the given UUID.

operationId: getSynProtectionFilter

Parameters

Name In Required Type Description
account_id path required The ID of the account.
filter_id path required The UUID of the filter to retrieve.

Responses

4XX Get SYN Protection filter failure.
200 Get SYN Protection filter response.
GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/syn_protection/filters/{filter_id}
GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/syn_protection/rules

List all SYN Protection rules for an account.

operationId: listSynProtectionRulesForAccount

Parameters

Name In Required Type Description
account_id path required The ID of the account.
page query optional integer The page number for pagination. Defaults to 1.
per_page query optional integer The number of items per page. Must be between 10 and 1000. Defaults to 25.
order query optional string The field to order by. Defaults to 'prefix'.
direction query optional string The direction of ordering (ASC or DESC). Defaults to 'ASC'.

Responses

4XX List all SYN Protection rules failure.
200 List all SYN Protection rules response.
GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/syn_protection/rules
GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/syn_protection/rules/{rule_id}

Get a SYN Protection rule specified by the given UUID.

operationId: getSynProtectionRule

Parameters

Name In Required Type Description
account_id path required The ID of the account.
rule_id path required The UUID of the SYN Protection rule.

Responses

4XX Get SYN Protection rule failure.
200 Get SYN Protection rule response.
GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/syn_protection/rules/{rule_id}
GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/tcp_flow_protection/filters

List all TCP Flow Protection filters for an account.

operationId: listTcpFlowProtectionFiltersForAccount

Parameters

Name In Required Type Description
account_id path required The ID of the account.
mode query optional string The mode of the filters to get. Optional. Valid values: 'enabled', 'disabled', 'monitoring'.
page query optional integer The page number for pagination. Defaults to 1.
per_page query optional integer The number of items per page. Must be between 10 and 1000. Defaults to 25.
order query optional string The field to order by. Defaults to 'prefix'.
direction query optional string The direction of ordering (ASC or DESC). Defaults to 'ASC'.

Responses

4XX List all TCP Flow Protection filters failure.
200 List all TCP Flow Protection filters response.
GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/tcp_flow_protection/filters
GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/tcp_flow_protection/filters/{filter_id}

Get a TCP Flow Protection filter specified by the given UUID.

operationId: getTcpFlowProtectionFilter

Parameters

Name In Required Type Description
account_id path required The ID of the account.
filter_id path required The UUID of the filter to retrieve.

Responses

4XX Get TCP Flow Protection filter failure.
200 Get TCP Flow Protection filter response.
GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/tcp_flow_protection/filters/{filter_id}
GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/tcp_flow_protection/rules

List all TCP Flow Protection rules for an account.

operationId: listTcpFlowProtectionRulesForAccount

Parameters

Name In Required Type Description
account_id path required The ID of the account.
page query optional integer The page number for pagination. Defaults to 1.
per_page query optional integer The number of items per page. Must be between 10 and 1000. Defaults to 25.
order query optional string The field to order by. Defaults to 'prefix'.
direction query optional string The direction of ordering (ASC or DESC). Defaults to 'ASC'.

Responses

4XX List all TCP Flow Protection rules failure.
200 List all TCP Flow Protection rules response.
GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/tcp_flow_protection/rules
GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/tcp_flow_protection/rules/{rule_id}

Get a TCP Flow Protection rule specified by the given UUID.

operationId: getTcpFlowProtectionRule

Parameters

Name In Required Type Description
account_id path required The ID of the account.
rule_id path required The UUID of the TCP Flow Protection rule.

Responses

4XX Get TCP Flow Protection rule failure.
200 Get TCP Flow Protection rule response.
GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/tcp_flow_protection/rules/{rule_id}
GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/tcp_protection_status

Get the protection status of the account.

operationId: getProtectionStatus

Parameters

Name In Required Type Description
account_id path required The account ID.

Responses

4XX Get protection status failure.
200 Get protection status response.
GET /accounts/{account_id}/magic/advanced_tcp_protection/configs/tcp_protection_status

Logo match 5 endpoints

GET /accounts/{account_id}/brand-protection/logo-matches

Return matches for logo queries based on ID

Parameters

Name In Required Type Description
logo_id query optional array
offset query optional string
limit query optional string

Responses

default
200 OK
422
GET /accounts/{account_id}/brand-protection/logo-matches
GET /accounts/{account_id}/brand-protection/logo-matches/download

Return matches as CSV for logo queries based on ID

Parameters

Name In Required Type Description
logo_id query optional array
offset query optional string
limit query optional string

Responses

default
200 OK
422
GET /accounts/{account_id}/brand-protection/logo-matches/download
GET /accounts/{account_id}/brand-protection/logos

Return all saved logo queries

Responses

default
GET /accounts/{account_id}/brand-protection/logos
GET /accounts/{account_id}/brand-protection/logos/{logo_id}

Return saved logo queries based on ID

Responses

default
GET /accounts/{account_id}/brand-protection/logos/{logo_id}
GET /signed-url

Responses

default
GET /signed-url

Mtls certificate management 3 endpoints

GET /accounts/{account_id}/mtls_certificates

Lists all mTLS certificates uploaded to your account, such as Bring Your Own CA (BYO-CA) for mTLS. To list certificates issued by the Cloudflare managed CA, use the [List Client Certificates endpoint](/api/resources/client_certificates/methods/list/).

operationId: m-tls-certificate-management-list-m-tls-certificates

Parameters

Name In Required Type Description
account_id path required
type query optional array Filters results by certificate type. Multiple types can be comma-separated.

Responses

4XX List mTLS certificates response failure
200 List mTLS certificates response
GET /accounts/{account_id}/mtls_certificates
GET /accounts/{account_id}/mtls_certificates/{mtls_certificate_id}

Fetches a single mTLS certificate uploaded to your account. To get a certificate issued by the Cloudflare managed CA, use the [Client Certificate Details endpoint](/api/resources/client_certificates/methods/get/).

operationId: m-tls-certificate-management-get-m-tls-certificate

Parameters

Name In Required Type Description
mtls_certificate_id path required
account_id path required

Responses

4XX Get mTLS certificate response failure
200 Get mTLS certificate response
GET /accounts/{account_id}/mtls_certificates/{mtls_certificate_id}
GET /accounts/{account_id}/mtls_certificates/{mtls_certificate_id}/associations

Lists all active associations between the certificate and Cloudflare services.

operationId: m-tls-certificate-management-list-m-tls-certificate-associations

Parameters

Name In Required Type Description
mtls_certificate_id path required
account_id path required

Responses

4XX List mTLS certificate associations response failure
200 List mTLS certificate associations response
GET /accounts/{account_id}/mtls_certificates/{mtls_certificate_id}/associations

Ppc config 1 endpoints

GET /zones/{zone_id}/pay-per-crawl/configuration

Gets the pay-per-crawl config for a zone including the bot configuration.

operationId: pay-per-crawl.getConfig

Parameters

Name In Required Type Description
zone_id path required string zone id

Responses

200 OK
400 Bad Request
GET /zones/{zone_id}/pay-per-crawl/configuration

Ppc stripe 2 endpoints

GET /accounts/{account_id}/pay-per-crawl/crawler/stripe

Gets the stripe config for a crawler.

operationId: pay-per-crawl.crawlerGetStripeConfig

Parameters

Name In Required Type Description
account_id path required string account id

Responses

200 OK
400 Bad Request
GET /accounts/{account_id}/pay-per-crawl/crawler/stripe
GET /accounts/{account_id}/pay-per-crawl/publisher/stripe

Gets the stripe config for a publisher.

operationId: pay-per-crawl.publisherGetStripeConfig

Parameters

Name In Required Type Description
account_id path required string account id

Responses

200 OK
400 Bad Request
GET /accounts/{account_id}/pay-per-crawl/publisher/stripe

Security.txt 1 endpoints

GET /zones/{zone_id}/security-center/securitytxt

Retrieves the current security.txt file configuration for a zone, used for security vulnerability reporting.

operationId: get-security-txt

Parameters

Name In Required Type Description
zone_id path required

Responses

4XX A client error occurred.
200 The request was successful.
GET /zones/{zone_id}/security-center/securitytxt

Tseng-abuse-complaint-processor other 4 endpoints

GET /accounts/{account_id}/abuse-reports

List the abuse reports for a given account

operationId: ListAbuseReports

Parameters

Name In Required Type Description
account_id path required string Cloudflare Account ID
page query optional integer Where in pagination to start listing abuse reports
per_page query optional integer How many abuse reports per page to list
sort query optional string A property to sort by, followed by the order (id, cdate, domain, type, status)
domain query optional string Filter by domain name related to the abuse report
created_before query optional string Returns reports created before the specified date
created_after query optional string Returns reports created after the specified date
status query optional Filter by the status of the report.
type query optional Filter by the type of the report.
mitigation_status query optional Filter reports that have any mitigations in the given status.

Responses

200 Abuse report list successful
500 Failed to retrieve abuse reports
GET /accounts/{account_id}/abuse-reports
GET /accounts/{account_id}/abuse-reports/{report_id}/emails

List emails sent to the customer for an abuse report. Returns all successful customer emails sent for the specified abuse report. Does not include emails sent to hosts or submitters.

operationId: ListEmails

Parameters

Name In Required Type Description
account_id path required string Cloudflare Account ID
report_id path required string Abuse Report ID
page query optional integer Page number to retrieve (default 1)
per_page query optional integer Number of emails per page (default 20, max 100)

Responses

200 List abuse report emails successful
400 Bad request - invalid parameters or report not found
500 Failed to list abuse report emails
GET /accounts/{account_id}/abuse-reports/{report_id}/emails
GET /accounts/{account_id}/abuse-reports/{report_id}/mitigations

List mitigations done to remediate the abuse report.

operationId: ListMitigations

Parameters

Name In Required Type Description
account_id path required string Cloudflare Account ID
report_id path required string Abuse Report ID
page query optional integer Where in pagination to start listing abuse reports
per_page query optional integer How many abuse reports per page to list
sort query optional string A property to sort by, followed by the order
type query optional 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 query optional string Returns mitigations that were dispatched before the given date
effective_after query optional string Returns mitigation that were dispatched after the given date
status query optional Filter by the status of the mitigation.
entity_type query optional Filter by the type of entity the mitigation impacts.

Responses

200 List abuse report mitigations successful
500 Failed to list abuse report mitigations
GET /accounts/{account_id}/abuse-reports/{report_id}/mitigations
GET /accounts/{account_id}/abuse-reports/{report_param}

Retrieve the details of an abuse report.

operationId: GetAbuseReport

Parameters

Name In Required Type Description
account_id path required string Cloudflare Account ID
report_param path required string Identifier of the abuse report

Responses

200 Report submitted successfully
400 Report submitted with an error
500 Report submitted with an error
GET /accounts/{account_id}/abuse-reports/{report_param}

Warp-teams-device-api other 1 endpoints

GET /accounts/{account_id}/devices/registrations/{registration_id}/override_codes

Fetches one-time use admin override codes for a registration. This relies on the **Admin Override** setting being enabled in your device configuration.

operationId: get-registration-override-codes

Parameters

Name In Required Type Description
account_id path required string
registration_id path required string

Responses

200 Get admin override codes for a registration response.
GET /accounts/{account_id}/devices/registrations/{registration_id}/override_codes

Workers pipelines other 6 endpoints

GET /accounts/{account_id}/pipelines/v1/pipelines

List/Filter Pipelines in Account.

operationId: getV4AccountsByAccount_idPipelinesV1Pipelines

Parameters

Name In Required Type Description
account_id path required
page query optional number
per_page query optional number

Responses

4XX Indicates an error in listing Pipelines.
200 Indicates a successfully listed Pipelines.
GET /accounts/{account_id}/pipelines/v1/pipelines
GET /accounts/{account_id}/pipelines/v1/pipelines/{pipeline_id}

Get Pipelines Details.

operationId: getV4AccountsByAccount_idPipelinesV1PipelinesByPipeline_id

Parameters

Name In Required Type Description
account_id path required
pipeline_id path required

Responses

4XX Indicates an error in retrieving Pipelines.
200 Indicates a successfully retrieved Pipeline.
GET /accounts/{account_id}/pipelines/v1/pipelines/{pipeline_id}
GET /accounts/{account_id}/pipelines/v1/sinks

List/Filter Sinks in Account.

operationId: getV4AccountsByAccount_idPipelinesV1Sinks

Parameters

Name In Required Type Description
account_id path required
pipeline_id query optional string
page query optional number
per_page query optional number

Responses

4XX Indicates an error in listing Sinks.
200 Indicates successfully listed Sinks.
GET /accounts/{account_id}/pipelines/v1/sinks
GET /accounts/{account_id}/pipelines/v1/sinks/{sink_id}

Get Sink Details.

operationId: getV4AccountsByAccount_idPipelinesV1SinksBySink_id

Parameters

Name In Required Type Description
account_id path required
sink_id path required

Responses

4XX Indicates an error in listing Sinks.
200 Indicates that Sink was retrieved.
GET /accounts/{account_id}/pipelines/v1/sinks/{sink_id}
GET /accounts/{account_id}/pipelines/v1/streams

List/Filter Streams in Account.

operationId: getV4AccountsByAccount_idPipelinesV1Streams

Parameters

Name In Required Type Description
account_id path required
pipeline_id query optional
page query optional number
per_page query optional number

Responses

4XX Indicates an error in listing Streams.
200 Indicates a successfully created Stream.
GET /accounts/{account_id}/pipelines/v1/streams
GET /accounts/{account_id}/pipelines/v1/streams/{stream_id}

Get Stream Details.

operationId: getV4AccountsByAccount_idPipelinesV1StreamsByStream_id

Parameters

Name In Required Type Description
account_id path required
stream_id path required

Responses

4XX Indicates an error in retrieving Stream.
200 Indicates a successfully retrieved Stream.
GET /accounts/{account_id}/pipelines/v1/streams/{stream_id}

Schemas

string aaa_account-id
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "readOnly": true,
  "maxLength": 32,
  "description": "The account id",
  "x-auditable": true
}
object aaa_alert-types
{
  "type": "object",
  "properties": {
    "type": {
      "$ref": "#/components/schemas/aaa_type"
    },
    "description": {
      "$ref": "#/components/schemas/aaa_description"
    },
    "display_name": {
      "$ref": "#/components/schemas/aaa_display_name"
    },
    "filter_options": {
      "$ref": "#/components/schemas/aaa_filter_options"
    }
  }
}
string aaa_alert_body
{
  "type": "string",
  "example": "SSL certificate has expired",
  "description": "Message body included in the notification sent."
}
string aaa_alert_interval
{
  "type": "string",
  "example": "30m",
  "description": "Optional specification of how often to re-alert from the same incident, not support on all alert types.",
  "x-auditable": true
}
string aaa_alert_type
{
  "enum": [
    "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"
  ],
  "type": "string",
  "example": "universal_ssl_event_type",
  "description": "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.",
  "x-auditable": true
}
object aaa_alerts-response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/aaa_schemas-api-response-common"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "example": {
            "Origin Monitoring": [
              {
                "type": "http_alert_origin_error",
                "description": "High levels of 5xx HTTP errors at your origin.",
                "display_name": "Origin Error Rate Alert",
                "filter_options": [
                  {
                    "Key": "zones",
                    "Range": "1-n",
                    "AvailableValues": null,
                    "ComparisonOperator": "=="
                  },
                  {
                    "Key": "slo",
                    "Range": "0-1",
                    "AvailableValues": [
                      {
                        "ID": "99.7",
                        "Description": "Service-Level Objective of 99.7"
                      },
                      {
                        "ID": "99.8",
                        "Description": "Service-Level Objective of 99.8"
                      }
                    ],
                    "ComparisonOperator": ">="
                  }
                ]
              }
            ]
          },
          "additionalProperties": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/aaa_alert-types"
            }
          }
        }
      }
    }
  ]
}
object aaa_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/aaa_schemas-api-response-common"
    },
    {
      "properties": {
        "result_info": {
          "$ref": "#/components/schemas/aaa_schemas-result_info"
        }
      }
    }
  ]
}
object aaa_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/aaa_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful"
    },
    "messages": {
      "$ref": "#/components/schemas/aaa_messages"
    }
  }
}
object aaa_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/aaa_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful"
    },
    "messages": {
      "$ref": "#/components/schemas/aaa_messages"
    }
  }
}
object aaa_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/aaa_schemas-api-response-common"
    }
  ]
}
object aaa_audit-log-action
{
  "type": "object",
  "properties": {
    "time": {
      "type": "string",
      "format": "date-time",
      "example": "2024-04-26T17:31:07Z",
      "description": "A timestamp indicating when the action was logged."
    },
    "type": {
      "type": "string",
      "example": "create",
      "description": "A short string that describes the action that was performed."
    },
    "result": {
      "type": "string",
      "example": "success",
      "description": "The result of the action, indicating success or failure."
    },
    "description": {
      "type": "string",
      "example": "Add Member",
      "description": "A short description of the action performed."
    }
  },
  "description": "Provides information about the action performed."
}
object aaa_audit-log-actor-base
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "example": "f6b5de0326bb5182b8a4840ee01ec774",
      "description": "The ID of the actor who performed the action. If a user performed the action, this will be their User ID."
    },
    "email": {
      "type": "string",
      "format": "email",
      "example": "alice@example.com",
      "description": "The email of the actor who performed the action."
    },
    "context": {
      "enum": [
        "api_key",
        "api_token",
        "dash",
        "oauth",
        "origin_ca_key"
      ],
      "type": "string",
      "example": "dash"
    },
    "token_id": {
      "type": "string",
      "description": "The API token ID when the actor context is an api_token or oauth."
    },
    "ip_address": {
      "type": "string",
      "example": "198.41.129.166",
      "description": "The IP address of the request that performed the action."
    },
    "token_name": {
      "type": "string",
      "description": "The API token name when the actor context is an api_token or oauth."
    }
  },
  "description": "Provides details about the actor who performed the action."
}
object aaa_audit-log-raw
{
  "type": "object",
  "properties": {
    "uri": {
      "type": "string",
      "example": "/accounts/4bb334f7c94c4a29a045f03944f072e5/members",
      "description": "The URI of the request."
    },
    "method": {
      "type": "string",
      "example": "POST",
      "description": "The HTTP method of the request."
    },
    "cf_ray_id": {
      "type": "string",
      "example": "8e9b1c60ef9e1c9a",
      "description": "The Cloudflare Ray ID for the request."
    },
    "user_agent": {
      "type": "string",
      "example": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) Safari/605.1.15",
      "description": "The client's user agent string sent with the request."
    },
    "status_code": {
      "type": "integer",
      "example": 200,
      "description": "The HTTP response status code returned by the API."
    }
  },
  "description": "Provides raw information about the request and response."
}
object aaa_audit-logs
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "example": "d5b0f326-1232-4452-8858-1089bd7168ef",
      "description": "A string that uniquely identifies the audit log."
    },
    "when": {
      "type": "string",
      "format": "date-time",
      "example": "2017-04-26T17:31:07Z",
      "description": "A UTC RFC3339 timestamp that specifies when the action being logged occured."
    },
    "actor": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "example": "f6b5de0326bb5182b8a4840ee01ec774",
          "description": "The ID of the actor that performed the action. If a user performed the action, this will be their User ID."
        },
        "ip": {
          "type": "string",
          "example": "198.41.129.166",
          "description": "The IP address of the request that performed the action."
        },
        "type": {
          "enum": [
            "user",
            "admin",
            "Cloudflare"
          ],
          "type": "string",
          "example": "user",
          "description": "The type of actor, whether a User, Cloudflare Admin, or an Automated System."
        },
        "email": {
          "type": "string",
          "format": "email",
          "example": "michelle@example.com",
          "description": "The email of the user that performed the action."
        }
      }
    },
    "owner": {
      "type": "object",
      "properties": {
        "id": {
          "$ref": "#/components/schemas/aaa_identifier"
        }
      }
    },
    "action": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "example": "change_setting",
          "description": "A short string that describes the action that was performed."
        },
        "result": {
          "type": "boolean",
          "example": true,
          "description": "A boolean that indicates if the action attempted was successful."
        }
      }
    },
    "metadata": {
      "type": "object",
      "example": {
        "name": "security_level",
        "type": "firewall",
        "value": "high",
        "zone_name": "example.com"
      },
      "description": "An object which can lend more context to the action being logged. This is a flexible value and varies between different actions."
    },
    "newValue": {
      "type": "string",
      "example": "low",
      "description": "The new value of the resource that was modified."
    },
    "oldValue": {
      "type": "string",
      "example": "high",
      "description": "The value of the resource before it was modified."
    },
    "resource": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "example": "023e105f4ecef8ad9ca31a8372d0c353",
          "description": "An identifier for the resource that was affected by the action."
        },
        "type": {
          "type": "string",
          "example": "zone",
          "description": "A short string that describes the resource that was affected by the action."
        }
      }
    },
    "interface": {
      "type": "string",
      "example": "API",
      "description": "The source of the event."
    }
  }
}
object aaa_audit-logs-response-collection
{
  "type": "object",
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/aaa_schemas-messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Indicates whether the API call was successful"
    },
    "result_info": {
      "$ref": "#/components/schemas/aaa_result_info"
    }
  }
}
object aaa_audit-logs-v2
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/aaa_schemas-identifier"
    },
    "raw": {
      "$ref": "#/components/schemas/aaa_audit-log-raw"
    },
    "zone": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "description": "A string that identifies the zone id."
        },
        "name": {
          "type": "string",
          "example": "example.com",
          "description": "A string that identifies the zone name."
        }
      },
      "description": "Provides details about the zone affected by the action."
    },
    "actor": {
      "allOf": [
        {
          "$ref": "#/components/schemas/aaa_audit-log-actor-base"
        },
        {
          "type": "object",
          "properties": {
            "type": {
              "enum": [
                "account",
                "cloudflare_admin",
                "system",
                "user"
              ],
              "type": "string",
              "example": "user",
              "description": "The type of actor."
            }
          }
        }
      ]
    },
    "action": {
      "$ref": "#/components/schemas/aaa_audit-log-action"
    },
    "account": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "example": "4bb334f7c94c4a29a045f03944f072e5",
          "description": "A unique identifier for the account."
        },
        "name": {
          "type": "string",
          "example": "Example Account",
          "description": "A string that identifies the account name."
        }
      },
      "description": "Contains account related information."
    },
    "resource": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "description": "The unique identifier for the affected resource."
        },
        "type": {
          "type": "string",
          "description": "The type of the resource."
        },
        "scope": {
          "type": "object",
          "example": "accounts",
          "description": "The scope of the resource."
        },
        "product": {
          "type": "string",
          "example": "members",
          "description": "The Cloudflare product associated with the resource."
        },
        "request": {
          "type": "object"
        },
        "response": {
          "type": "object"
        }
      },
      "description": "Provides details about the affected resource."
    }
  }
}
object aaa_audit-logs-v2-org
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/aaa_schemas-identifier"
    },
    "raw": {
      "$ref": "#/components/schemas/aaa_audit-log-raw"
    },
    "actor": {
      "allOf": [
        {
          "$ref": "#/components/schemas/aaa_audit-log-actor-base"
        },
        {
          "type": "object",
          "properties": {
            "type": {
              "enum": [
                "cloudflare_admin",
                "system",
                "user"
              ],
              "type": "string",
              "example": "user",
              "description": "The type of actor."
            }
          }
        }
      ]
    },
    "action": {
      "$ref": "#/components/schemas/aaa_audit-log-action"
    },
    "resource": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "description": "The unique identifier for the affected resource."
        },
        "type": {
          "type": "string",
          "description": "The type of the resource."
        },
        "scope": {
          "type": "object",
          "example": "organizations",
          "description": "The scope of the resource."
        },
        "product": {
          "type": "string",
          "example": "organizations",
          "description": "The Cloudflare product associated with the resource."
        },
        "request": {
          "type": "object"
        },
        "response": {
          "type": "object"
        }
      },
      "description": "Provides details about the affected resource."
    },
    "organization": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "example": "019c4f65e7607d8c9f6f6b58aa3aff50",
          "description": "A unique identifier for the organization."
        }
      },
      "description": "Contains organization related information."
    }
  }
}
object aaa_audit-logs-v2-org-response-collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/aaa_audit-logs-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/aaa_audit-logs-v2-org"
          }
        }
      }
    }
  ]
}
object aaa_audit-logs-v2-response-collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/aaa_audit-logs-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/aaa_audit-logs-v2"
          }
        }
      }
    }
  ]
}
object aaa_audit_logs_response_collection
{
  "oneOf": [
    {
      "properties": {
        "errors": {
          "$ref": "#/components/schemas/aaa_messages"
        },
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/aaa_audit-logs"
          }
        },
        "success": {
          "type": "boolean",
          "example": true
        },
        "messages": {
          "$ref": "#/components/schemas/aaa_messages"
        }
      }
    },
    {
      "$ref": "#/components/schemas/aaa_api-response-common"
    }
  ]
}
string aaa_before
{
  "type": "string",
  "format": "date-time",
  "example": "2022-05-20T20:29:58.679897Z",
  "description": "Limit the returned results to history records older than the specified date. This must be a timestamp that conforms to RFC3339."
}
object aaa_components-schemas-api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/aaa_components-schemas-messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful"
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/aaa_components-schemas-messages"
        }
      ],
      "example": []
    }
  }
}
string aaa_components-schemas-description
{
  "type": "string",
  "example": "Universal Certificate validation status, issuance, renewal, and expiration notices",
  "description": "Description of the notification policy (if present)."
}
array aaa_components-schemas-messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "message": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string aaa_components-schemas-name
{
  "type": "string",
  "example": "Slack Webhook",
  "description": "The name of the webhook destination. This will be included in the request body when you receive a webhook notification.",
  "x-auditable": true
}
object aaa_components-schemas-response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/aaa_schemas-api-response-common"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/aaa_pagerduty"
          }
        }
      }
    }
  ]
}
string aaa_components-schemas-type
{
  "enum": [
    "datadog",
    "discord",
    "feishu",
    "gchat",
    "generic",
    "opsgenie",
    "slack",
    "splunk"
  ],
  "type": "string",
  "example": "slack",
  "description": "Type of webhook endpoint.",
  "x-auditable": true
}
string aaa_created_at
{
  "type": "string",
  "format": "date-time",
  "example": "2020-10-26T18:25:04.532316Z",
  "readOnly": true,
  "description": "Timestamp of when the webhook destination was created.",
  "x-auditable": true
}
string aaa_description
{
  "type": "string",
  "example": "High levels of 5xx HTTP errors at your origin",
  "description": "Describes the alert type.",
  "x-auditable": true
}
string aaa_display_name
{
  "type": "string",
  "example": "Origin Error Rate Alert",
  "description": "Alert type name.",
  "x-auditable": true
}
object aaa_eligibility
{
  "type": "object",
  "properties": {
    "type": {
      "$ref": "#/components/schemas/aaa_schemas-type"
    },
    "ready": {
      "$ref": "#/components/schemas/aaa_ready"
    },
    "eligible": {
      "$ref": "#/components/schemas/aaa_eligible"
    }
  }
}
boolean aaa_eligible
{
  "type": "boolean",
  "example": true,
  "description": "Determines whether or not the account is eligible for the delivery mechanism.",
  "x-auditable": true
}
boolean aaa_enabled
{
  "type": "boolean",
  "default": true,
  "example": true,
  "description": "Whether or not the Notification policy is enabled.",
  "x-auditable": true
}
array aaa_filter_options
{
  "type": "array",
  "items": {},
  "example": [
    {
      "Key": "zones",
      "Range": "1-n",
      "AvailableValues": null,
      "ComparisonOperator": "=="
    },
    {
      "Key": "slo",
      "Range": "0-1",
      "AvailableValues": [
        {
          "ID": "99.7",
          "Description": "Service-Level Objective of 99.7"
        },
        {
          "ID": "99.8",
          "Description": "Service-Level Objective of 99.8"
        }
      ],
      "ComparisonOperator": ">="
    }
  ],
  "description": "Format of additional configuration options (filters) for the alert type. Data type of filters during policy creation: Array of strings."
}
object aaa_filters
{
  "type": "object",
  "example": {
    "slo": [
      "99.9"
    ]
  },
  "properties": {
    "slo": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "description": "Usage depends on specific alert type"
    },
    "type": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "description": "Usage depends on specific alert type"
    },
    "event": {
      "type": "array",
      "items": {
        "type": "string",
        "minItems": 1,
        "x-auditable": true
      },
      "description": "Used for configuring pages_event_alert"
    },
    "limit": {
      "type": "array",
      "items": {
        "type": "string",
        "minItems": 1,
        "x-auditable": true
      },
      "description": "Used for configuring billing_usage_alert"
    },
    "where": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "description": "Usage depends on specific alert type"
    },
    "zones": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "description": "Usage depends on specific alert type"
    },
    "status": {
      "type": "array",
      "items": {
        "type": "string",
        "minItems": 1,
        "x-auditable": true
      },
      "description": "Used for configuring health_check_status_notification"
    },
    "actions": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "description": "Usage depends on specific alert type"
    },
    "enabled": {
      "type": "array",
      "items": {
        "type": "string",
        "minItems": 1,
        "x-auditable": true
      },
      "description": "Used for configuring load_balancing_pool_enablement_alert"
    },
    "pool_id": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "description": "Usage depends on specific alert type"
    },
    "product": {
      "type": "array",
      "items": {
        "type": "string",
        "minItems": 1,
        "x-auditable": true
      },
      "description": "Used for configuring billing_usage_alert"
    },
    "group_by": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "description": "Usage depends on specific alert type"
    },
    "input_id": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "description": "Used for configuring stream_live_notifications"
    },
    "logo_tag": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "description": "Used for configuring logo_match_alert"
    },
    "protocol": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "description": "Used for configuring advanced_ddos_attack_l4_alert"
    },
    "services": {
      "type": "array",
      "items": {
        "type": "string",
        "minItems": 1,
        "x-auditable": true
      },
      "description": "Used for configuring clickhouse_alert_fw_ent_anomaly"
    },
    "pop_names": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "description": "Usage depends on specific alert type"
    },
    "query_tag": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "description": "Usage depends on specific alert type"
    },
    "selectors": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "description": "Usage depends on specific alert type"
    },
    "target_ip": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "description": "Used for configuring advanced_ddos_attack_l4_alert"
    },
    "tunnel_id": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "description": "Used for configuring tunnel_health_event"
    },
    "event_type": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "description": "Usage depends on specific alert type"
    },
    "new_health": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "description": "Used for configuring load_balancing_health_alert"
    },
    "new_status": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "description": "Used for configuring tunnel_health_event"
    },
    "project_id": {
      "type": "array",
      "items": {
        "type": "string",
        "minItems": 1,
        "x-auditable": true
      },
      "description": "Used for configuring pages_event_alert"
    },
    "environment": {
      "type": "array",
      "items": {
        "type": "string",
        "minItems": 1,
        "x-auditable": true
      },
      "description": "Used for configuring pages_event_alert"
    },
    "tunnel_name": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "description": "Usage depends on specific alert type"
    },
    "airport_code": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "description": "Used for configuring maintenance_event_notification"
    },
    "event_source": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "description": "Used for configuring load_balancing_health_alert"
    },
    "affected_asns": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "description": "Used for configuring radar_notification"
    },
    "insight_class": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "description": "Used for configuring security_insights_alert"
    },
    "health_check_id": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "description": "Used for configuring health_check_status_notification"
    },
    "incident_impact": {
      "type": "array",
      "items": {
        "enum": [
          "INCIDENT_IMPACT_NONE",
          "INCIDENT_IMPACT_MINOR",
          "INCIDENT_IMPACT_MAJOR",
          "INCIDENT_IMPACT_CRITICAL"
        ],
        "type": "string",
        "x-auditable": true
      },
      "description": "Used for configuring incident_alert"
    },
    "target_hostname": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "description": "Used for configuring advanced_ddos_attack_l7_alert"
    },
    "target_zone_name": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "description": "Used for configuring advanced_ddos_attack_l7_alert"
    },
    "affected_locations": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "description": "Used for configuring radar_notification"
    },
    "packets_per_second": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "description": "Used for configuring advanced_ddos_attack_l4_alert"
    },
    "traffic_exclusions": {
      "type": "array",
      "items": {
        "enum": [
          "security_events"
        ],
        "type": "string",
        "maxItems": 1,
        "x-auditable": true
      },
      "description": "Used for configuring traffic_anomalies_alert"
    },
    "affected_components": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "example": "4c231tkdlpcl",
      "description": "Used for configuring incident_alert"
    },
    "megabits_per_second": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "description": "Used for configuring advanced_ddos_attack_l4_alert"
    },
    "requests_per_second": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "description": "Used for configuring advanced_ddos_attack_l7_alert"
    },
    "alert_trigger_preferences": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "description": "Usage depends on specific alert type"
    },
    "alert_trigger_preferences_value": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "description": "Usage depends on specific alert type"
    }
  },
  "description": "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."
}
object aaa_history
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/aaa_uuid"
    },
    "name": {
      "$ref": "#/components/schemas/aaa_schemas-name"
    },
    "sent": {
      "$ref": "#/components/schemas/aaa_sent"
    },
    "mechanism": {
      "$ref": "#/components/schemas/aaa_mechanism"
    },
    "policy_id": {
      "$ref": "#/components/schemas/aaa_policy-id"
    },
    "alert_body": {
      "$ref": "#/components/schemas/aaa_alert_body"
    },
    "alert_type": {
      "$ref": "#/components/schemas/aaa_schemas-alert_type"
    },
    "description": {
      "$ref": "#/components/schemas/aaa_components-schemas-description"
    },
    "mechanism_type": {
      "$ref": "#/components/schemas/aaa_mechanism_type"
    }
  }
}
object aaa_history_components-schemas-response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/aaa_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/aaa_history"
          },
          "example": [
            {
              "id": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
              "name": "SSL Notification Event Policy",
              "sent": "2021-10-08T17:52:17.571336Z",
              "mechanism": "test@example.com",
              "policy_id": "35040955-3102-4710-938c-0f4eaf736e25",
              "alert_body": {
                "data": {
                  "id": "11111111111",
                  "type": "",
                  "hosts": [],
                  "issuer": "",
                  "method": "txt",
                  "status": "",
                  "settings": null,
                  "signature": "",
                  "expires_on": null,
                  "uploaded_on": null,
                  "custom_csr_id": "",
                  "serial_number": "",
                  "validation_errors": [],
                  "validation_records": [
                    {
                      "cname": "",
                      "emails": [],
                      "http_url": "",
                      "txt_name": "_acme-challenge.example.com",
                      "http_body": "",
                      "txt_value": "11111111111",
                      "cname_target": ""
                    }
                  ]
                },
                "metadata": {
                  "zone": {
                    "id": "11111111111"
                  },
                  "event": {
                    "id": "",
                    "type": "ssl.certificate.validation.failed",
                    "created_at": null
                  },
                  "account": null
                }
              },
              "alert_type": "universal_ssl_event_type",
              "description": "Universal Certificate validation status, issuance, renewal, and expiration notices.",
              "mechanism_type": "email"
            }
          ]
        },
        "result_info": {
          "type": "object",
          "example": {
            "page": 1,
            "count": 1,
            "per_page": 20
          }
        }
      }
    }
  ]
}
object aaa_id_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/aaa_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "id": {
              "$ref": "#/components/schemas/aaa_uuid"
            }
          }
        }
      }
    }
  ]
}
string aaa_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "readOnly": true,
  "maxLength": 32,
  "description": "Identifier"
}
string aaa_integration-token
{
  "type": "string",
  "example": "8c71e667571b4f61b94d9e4b12158038",
  "readOnly": true,
  "maxLength": 32,
  "description": "The token integration key"
}
string aaa_last_failure
{
  "type": "string",
  "format": "date-time",
  "example": "2020-10-26T18:25:04.532316Z",
  "readOnly": true,
  "description": "Timestamp of the last time an attempt to dispatch a notification to this webhook failed.",
  "x-auditable": true
}
string aaa_last_success
{
  "type": "string",
  "format": "date-time",
  "example": "2020-10-26T18:25:04.532316Z",
  "readOnly": true,
  "description": "Timestamp of the last time Cloudflare was able to successfully dispatch a notification using this webhook.",
  "x-auditable": true
}
string aaa_mechanism
{
  "type": "string",
  "example": "test@example.com",
  "description": "The mechanism to which the notification has been dispatched.",
  "x-auditable": true
}
string aaa_mechanism_type
{
  "enum": [
    "email",
    "pagerduty",
    "webhook"
  ],
  "type": "string",
  "example": "email",
  "description": "The type of mechanism to which the notification has been dispatched. This can be email/pagerduty/webhook based on the mechanism configured."
}
object aaa_mechanisms
{
  "type": "object",
  "example": {
    "email": [
      {
        "id": "test@example.com"
      }
    ],
    "webhooks": [
      {
        "id": "14cc1190-5d2b-4b98-a696-c424cb2ad05f"
      }
    ],
    "pagerduty": [
      {
        "id": "e8133a15-00a4-4d69-aec1-32f70c51f6e5"
      }
    ]
  },
  "properties": {
    "email": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The email address",
            "x-auditable": true
          }
        }
      }
    },
    "webhooks": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/aaa_uuid"
          }
        }
      }
    },
    "pagerduty": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/aaa_uuid"
          }
        }
      }
    }
  },
  "description": "List of IDs that will be used when dispatching a notification. IDs for email type will be the email address."
}
array aaa_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "message": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string aaa_name
{
  "type": "string",
  "example": "My PagerDuty Service",
  "description": "The name of the pagerduty service.",
  "x-auditable": true
}
object aaa_pagerduty
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/aaa_uuid"
    },
    "name": {
      "$ref": "#/components/schemas/aaa_name"
    }
  }
}
number aaa_per_page
{
  "type": "number",
  "default": 25,
  "maximum": 1000,
  "minimum": 5,
  "description": "Number of items per page."
}
object aaa_policies
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/aaa_policy-id"
    },
    "name": {
      "$ref": "#/components/schemas/aaa_schemas-name"
    },
    "created": {
      "$ref": "#/components/schemas/aaa_timestamp"
    },
    "enabled": {
      "$ref": "#/components/schemas/aaa_enabled"
    },
    "filters": {
      "$ref": "#/components/schemas/aaa_filters"
    },
    "modified": {
      "$ref": "#/components/schemas/aaa_timestamp"
    },
    "alert_type": {
      "$ref": "#/components/schemas/aaa_alert_type"
    },
    "mechanisms": {
      "$ref": "#/components/schemas/aaa_mechanisms"
    },
    "description": {
      "$ref": "#/components/schemas/aaa_schemas-description"
    },
    "alert_interval": {
      "$ref": "#/components/schemas/aaa_alert_interval"
    }
  }
}
object aaa_policies_components-schemas-response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/aaa_schemas-api-response-common"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/aaa_policies"
          }
        }
      }
    }
  ]
}
string aaa_policy-id
{
  "type": "string",
  "example": "0da2b59ef118439d8097bdfb215203c9",
  "maxLength": 32,
  "description": "The unique identifier of a notification policy",
  "x-auditable": true
}
boolean aaa_ready
{
  "type": "boolean",
  "example": true,
  "description": "Beta flag. Users can create a policy with a mechanism that is not ready, but we cannot guarantee successful delivery of notifications.",
  "x-auditable": true
}
object aaa_result_info
{
  "type": "object",
  "properties": {
    "count": {
      "type": "string",
      "example": 1,
      "description": "The number of records returned in the response."
    },
    "cursor": {
      "type": "string",
      "example": "ASqdKd7dKgxh-aZ8bm0mZos1BtW4BdEqifCzNkEeGRzi_5SN_-362Y8sF-C1TRn60_6rd3z2dIajf9EAPyQ_NmIeAMkacmaJPXipqvP7PLU4t72wyqBeJfjmjdE=",
      "description": "The cursor token used for pagination."
    }
  },
  "description": "Provides information about the result of the request, including count and cursor."
}
string aaa_schemas-alert_type
{
  "type": "string",
  "example": "universal_ssl_event_type",
  "description": "Type of notification that has been dispatched."
}
object aaa_schemas-api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/aaa_components-schemas-messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful"
    },
    "messages": {
      "$ref": "#/components/schemas/aaa_components-schemas-messages"
    }
  }
}
object aaa_schemas-api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors"
  ],
  "properties": {
    "errors": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "message"
        ],
        "properties": {
          "message": {
            "type": "string",
            "example": "No route for the URI",
            "description": "A text description of this message."
          }
        },
        "uniqueItems": true
      },
      "description": "A list of error messages."
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Indicates whether the API call was failed"
    },
    "messages": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "message": {
            "type": "string"
          }
        },
        "uniqueItems": true
      },
      "example": []
    }
  }
}
string aaa_schemas-description
{
  "type": "string",
  "example": "Something describing the policy.",
  "description": "Optional description for the Notification policy.",
  "x-auditable": true
}
string aaa_schemas-identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "readOnly": true,
  "maxLength": 32,
  "description": "A unique identifier for the audit log entry."
}
array aaa_schemas-messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "message"
    ],
    "properties": {
      "message": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string aaa_schemas-name
{
  "type": "string",
  "example": "SSL Notification Event Policy",
  "description": "Name of the policy.",
  "x-auditable": true
}
object aaa_schemas-response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/aaa_schemas-api-response-common"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "example": {
            "email": {
              "type": "email",
              "ready": true,
              "eligible": true
            }
          },
          "additionalProperties": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/aaa_eligibility"
            }
          }
        }
      }
    }
  ]
}
object aaa_schemas-result_info
{
  "type": "object",
  "properties": {
    "page": {
      "type": "number",
      "example": 1,
      "description": "Current page within paginated list of results"
    },
    "count": {
      "type": "number",
      "example": 1,
      "description": "Total number of results for the requested service"
    },
    "per_page": {
      "type": "number",
      "example": 20,
      "description": "Number of results per page of results"
    },
    "total_count": {
      "type": "number",
      "example": 2000,
      "description": "Total results available without any search parameters"
    }
  }
}
object aaa_schemas-single_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/aaa_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/aaa_webhooks"
        }
      }
    }
  ]
}
string aaa_schemas-type
{
  "enum": [
    "email",
    "pagerduty",
    "webhook"
  ],
  "type": "string",
  "example": "email",
  "description": "Determines type of delivery mechanism.",
  "x-auditable": true
}
string aaa_secret
{
  "type": "string",
  "writeOnly": true,
  "description": "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.",
  "x-sensitive": true
}
object aaa_sensitive_id_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/aaa_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "id": {
              "$ref": "#/components/schemas/aaa_token"
            }
          }
        }
      }
    }
  ]
}
string aaa_sent
{
  "type": "string",
  "format": "date-time",
  "example": "2021-10-08T17:52:17.571336Z",
  "description": "Timestamp of when the notification was dispatched in ISO 8601 format."
}
object aaa_silence
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/aaa_silence-id"
    },
    "end_time": {
      "type": "string",
      "example": "2022-01-01T00:00:00Z",
      "description": "When the silence ends.",
      "x-auditable": true
    },
    "policy_id": {
      "$ref": "#/components/schemas/aaa_policy-id"
    },
    "created_at": {
      "type": "string",
      "example": "2022-01-01T00:00:00Z",
      "description": "When the silence was created.",
      "x-auditable": true
    },
    "start_time": {
      "type": "string",
      "example": "2022-01-01T00:00:00Z",
      "description": "When the silence starts.",
      "x-auditable": true
    },
    "updated_at": {
      "type": "string",
      "example": "2022-01-01T00:00:00Z",
      "description": "When the silence was modified.",
      "x-auditable": true
    }
  }
}
string aaa_silence-id
{
  "type": "string",
  "example": "f878e90c23f44126ae3cfc399f646977",
  "maxLength": 32,
  "description": "Silence ID",
  "x-auditable": true
}
object aaa_silence_components-schemas-response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/aaa_schemas-api-response-common"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/aaa_silence"
        }
      }
    }
  ]
}
object aaa_silence_create_request
{
  "type": "object",
  "properties": {
    "end_time": {
      "type": "string",
      "example": "2022-01-01T00:00:00Z",
      "description": "When the silence ends.",
      "x-auditable": true
    },
    "policy_id": {
      "$ref": "#/components/schemas/aaa_policy-id"
    },
    "start_time": {
      "type": "string",
      "example": "2022-01-01T00:00:00Z",
      "description": "When the silence starts.",
      "x-auditable": true
    }
  }
}
object aaa_silence_update_request
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/aaa_silence-id"
    },
    "end_time": {
      "type": "string",
      "example": "2022-01-01T00:00:00Z",
      "description": "When the silence ends.",
      "x-auditable": true
    },
    "start_time": {
      "type": "string",
      "example": "2022-01-01T00:00:00Z",
      "description": "When the silence starts.",
      "x-auditable": true
    }
  }
}
object aaa_silences_components-schemas-response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/aaa_schemas-api-response-common"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/aaa_silence"
          }
        }
      }
    }
  ]
}
object aaa_single_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/aaa_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/aaa_policies"
        }
      }
    }
  ]
}
string aaa_timestamp
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-01T05:20:00.12345Z",
  "readOnly": true,
  "x-auditable": true
}
string aaa_token
{
  "type": "string",
  "example": "a313ba7d3e464c0ea40808fafbc3816a",
  "maxLength": 32,
  "description": "token in form of UUID",
  "x-sensitive": true
}
string aaa_type
{
  "type": "string",
  "example": "http_alert_origin_error",
  "description": "Use this value when creating and updating a notification policy.",
  "x-auditable": true
}
string aaa_url
{
  "type": "string",
  "example": "https://hooks.slack.com/services/Ds3fdBFbV/456464Gdd",
  "description": "The POST endpoint to call when dispatching a notification."
}
string aaa_uuid
{
  "type": "string",
  "example": "f174e90afafe4643bbbc4a0ed4fc8415",
  "maxLength": 32,
  "description": "UUID",
  "x-auditable": true
}
string aaa_webhook-id
{
  "type": "string",
  "example": "b115d5ec15c641ee8b7692c449b5227b",
  "maxLength": 32,
  "description": "The unique identifier of a webhook",
  "x-auditable": true
}
object aaa_webhooks
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/aaa_webhook-id"
    },
    "url": {
      "$ref": "#/components/schemas/aaa_url"
    },
    "name": {
      "$ref": "#/components/schemas/aaa_components-schemas-name"
    },
    "type": {
      "$ref": "#/components/schemas/aaa_components-schemas-type"
    },
    "secret": {
      "$ref": "#/components/schemas/aaa_secret"
    },
    "created_at": {
      "$ref": "#/components/schemas/aaa_created_at"
    },
    "last_failure": {
      "$ref": "#/components/schemas/aaa_last_failure"
    },
    "last_success": {
      "$ref": "#/components/schemas/aaa_last_success"
    }
  }
}
object aaa_webhooks_components-schemas-response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/aaa_schemas-api-response-common"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/aaa_webhooks"
          }
        }
      }
    }
  ]
}
object abuse-reports_AbuseReport
{
  "type": "object",
  "required": [
    "id",
    "cdate",
    "domain",
    "type",
    "status",
    "mitigation_summary"
  ],
  "properties": {
    "id": {
      "type": "string",
      "description": "Public facing ID of abuse report, aka abuse_rand."
    },
    "type": {
      "$ref": "#/components/schemas/abuse-reports_ReportType"
    },
    "urls": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "cdate": {
      "type": "string",
      "example": "2009-11-10T23:00:00Z",
      "description": "Creation date of report. Time in RFC 3339 format (https://www.rfc-editor.org/rfc/rfc3339.html)"
    },
    "domain": {
      "type": "string",
      "description": "Domain that relates to the report."
    },
    "status": {
      "$ref": "#/components/schemas/abuse-reports_ReportStatus"
    },
    "submitter": {
      "$ref": "#/components/schemas/abuse-reports_SubmitterDetails"
    },
    "justification": {
      "type": "string",
      "description": "Justification for the report."
    },
    "original_work": {
      "type": "string",
      "description": "Original work / Targeted brand in the alleged abuse."
    },
    "mitigation_summary": {
      "$ref": "#/components/schemas/abuse-reports_MitigationSummary"
    }
  }
}
string abuse-reports_AppealReason
{
  "enum": [
    "removed",
    "misclassified"
  ],
  "type": "string",
  "example": "misclassified",
  "description": "Reason why the customer is appealing."
}
string abuse-reports_BadActError
{
  "type": "string",
  "description": "Report has invalid type"
}
string abuse-reports_BadAddressError
{
  "type": "string",
  "description": "Provided value has invalid size"
}
string abuse-reports_BadAgentNameError
{
  "type": "string",
  "description": "Provided value has invalid size"
}
string abuse-reports_BadCityError
{
  "type": "string",
  "description": "Provided value has invalid size"
}
string abuse-reports_BadCommentsError
{
  "type": "string",
  "description": "Comment maximum length of 2000 characters exceeded"
}
string abuse-reports_BadCountryError
{
  "type": "string",
  "description": "Provided value has invalid size"
}
string abuse-reports_BadEmailError
{
  "type": "string",
  "description": "Provided email was invalid"
}
string abuse-reports_BadIPError
{
  "type": "string",
  "description": "Invalid IP passed to api"
}
string abuse-reports_BadJustError
{
  "type": "string",
  "description": "Please provide a more detailed description of the infringement between 1 and 5000 characters"
}
string abuse-reports_BadNameError
{
  "type": "string",
  "description": "Missing a required field"
}
string abuse-reports_BadPortsProtocolError
{
  "type": "string",
  "description": "Invalid Port and Protocol passed to api"
}
string abuse-reports_BadStateError
{
  "type": "string",
  "description": "Provided value has invalid size"
}
string abuse-reports_BadUrlsError
{
  "type": "string",
  "description": "Invalid URL (http://example.com/) Invalid URL Scheme (http or https) Missing hostname in url Missing a required field Could not determine encoding of field\n"
}
object abuse-reports_BaseReportFields
{
  "type": "object",
  "required": [
    "act",
    "email",
    "email2",
    "name",
    "urls"
  ],
  "properties": {
    "act": {
      "$ref": "#/components/schemas/abuse-reports_SubmissionReportType"
    },
    "name": {
      "type": "string",
      "maxLength": 255,
      "minLength": 1,
      "description": "Text not exceeding 255 characters. This field may be released by Cloudflare to third parties such as the Lumen Database (https://lumendatabase.org/)."
    },
    "tele": {
      "type": "string",
      "maxLength": 20,
      "minLength": 1,
      "description": "Text not exceeding 20 characters. This field may be released by Cloudflare to third parties such as the Lumen Database (https://lumendatabase.org/)."
    },
    "urls": {
      "type": "string",
      "description": "A list of valid URLs separated by ‘\\n’ (new line character). The list of the URLs should not exceed 250 URLs. All URLs should have the same hostname. Each URL should be unique. This field may be released by Cloudflare to third parties such as the Lumen Database (https://lumendatabase.org/)."
    },
    "email": {
      "type": "string",
      "description": "A valid email of the abuse reporter. This field may be released by Cloudflare to third parties such as the Lumen Database (https://lumendatabase.org/)."
    },
    "title": {
      "type": "string",
      "maxLength": 255,
      "minLength": 1,
      "description": "Text not exceeding 255 characters"
    },
    "email2": {
      "type": "string",
      "description": "Should match the value provided in `email`"
    },
    "company": {
      "type": "string",
      "maxLength": 100,
      "minLength": 1,
      "description": "Text not exceeding 100 characters. This field may be released by Cloudflare to third parties such as the Lumen Database (https://lumendatabase.org/)."
    },
    "comments": {
      "type": "string",
      "maxLength": 2000,
      "minLength": 1,
      "description": "Any additional comments about the infringement not exceeding 2000 characters"
    },
    "reported_country": {
      "type": "string",
      "maxLength": 2,
      "minLength": 2,
      "description": "Text containing 2 characters"
    },
    "reported_user_agent": {
      "type": "string",
      "maxLength": 255,
      "minLength": 1,
      "description": "Text not exceeding 255 characters"
    }
  }
}
object abuse-reports_CSAMReport
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/abuse-reports_BaseReportFields"
    },
    {
      "title": "Children Abuse Report",
      "required": [
        "host_notification",
        "justification",
        "ncmec_notification",
        "owner_notification"
      ],
      "properties": {
        "act": {
          "enum": [
            "abuse_children"
          ]
        },
        "country": {
          "type": "string",
          "maxLength": 255,
          "minLength": 1,
          "description": "Text not exceeding 255 characters. This field may be released by Cloudflare to third parties such as the Lumen Database (https://lumendatabase.org/).\n"
        },
        "justification": {
          "type": "string",
          "maxLength": 5000,
          "minLength": 1,
          "description": "A detailed description of the infringement, including any necessary access details and the exact steps needed to view the content, not exceeding 5000 characters.\n"
        },
        "host_notification": {
          "enum": [
            "send",
            "send-anon"
          ],
          "type": "string",
          "description": "Notification type based on the abuse type. NOTE: Copyright (DMCA) and Trademark reports cannot be anonymous.\n"
        },
        "ncmec_notification": {
          "enum": [
            "send",
            "send-anon"
          ],
          "type": "string",
          "description": "Notification type based on the abuse type. NOTE: Copyright (DMCA) and Trademark reports cannot be anonymous.\n"
        },
        "owner_notification": {
          "enum": [
            "send",
            "send-anon",
            "none"
          ],
          "type": "string",
          "description": "Notification type based on the abuse type. NOTE: Copyright (DMCA) and Trademark reports cannot be anonymous.\n"
        }
      }
    }
  ]
}
string abuse-reports_DBError
{
  "type": "string",
  "description": "Failed while reading from database Failed while writing to the database This service error will trigger an alert for Cloudflare engineers to investigate the cause resolve it.\n"
}
object abuse-reports_DMCAReport
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/abuse-reports_BaseReportFields"
    },
    {
      "title": "DMCA Report",
      "required": [
        "address1",
        "agent_name",
        "agree",
        "city",
        "country",
        "host_notification",
        "original_work",
        "owner_notification",
        "signature",
        "state"
      ],
      "properties": {
        "act": {
          "enum": [
            "abuse_dmca"
          ]
        },
        "city": {
          "type": "string",
          "maxLength": 255,
          "minLength": 1,
          "description": "Text not exceeding 255 characters. This field may be released by Cloudflare to third parties such as the Lumen Database (https://lumendatabase.org/)."
        },
        "agree": {
          "enum": [
            1
          ],
          "type": "integer",
          "description": "Can be `0` for false or `1` for true. Must be value: 1 for DMCA reports"
        },
        "state": {
          "type": "string",
          "maxLength": 255,
          "minLength": 1,
          "description": "Text not exceeding 255 characters. This field may be released by Cloudflare to third parties such as the Lumen Database (https://lumendatabase.org/)."
        },
        "country": {
          "type": "string",
          "maxLength": 255,
          "minLength": 1,
          "description": "Text not exceeding 255 characters. This field may be released by Cloudflare to third parties such as the Lumen Database (https://lumendatabase.org/).\n"
        },
        "address1": {
          "type": "string",
          "maxLength": 100,
          "minLength": 1,
          "description": "Text not exceeding 100 characters. This field may be released by Cloudflare to third parties such as the Lumen Database (https://lumendatabase.org/)."
        },
        "signature": {
          "type": "string",
          "description": "Required for DMCA reports, should be same as Name. An affirmation that all information in the report is true and accurate while agreeing to the policies of Cloudflare's abuse reports"
        },
        "agent_name": {
          "type": "string",
          "maxLength": 60,
          "minLength": 1,
          "description": "The name of the copyright holder. Text not exceeding 60 characters. This field may be released by Cloudflare to third parties such as the Lumen Database (https://lumendatabase.org/)."
        },
        "original_work": {
          "type": "string",
          "maxLength": 255,
          "minLength": 1,
          "description": "Text not exceeding 255 characters. This field may be released by Cloudflare to third parties such as the Lumen Database (https://lumendatabase.org/).\n"
        },
        "host_notification": {
          "enum": [
            "send"
          ],
          "type": "string",
          "description": "Notification type based on the abuse type. NOTE: Copyright (DMCA) and Trademark reports cannot be anonymous.\n"
        },
        "owner_notification": {
          "enum": [
            "send"
          ],
          "type": "string",
          "description": "Notification type based on the abuse type. NOTE: Copyright (DMCA) and Trademark reports cannot be anonymous.\n"
        }
      }
    }
  ]
}
string abuse-reports_DedupeError
{
  "type": "string",
  "description": "You have already submitted this URL in the last 7 days"
}
string abuse-reports_DiffEmailError
{
  "type": "string",
  "description": "Provided emails did not match"
}
string abuse-reports_EmailError
{
  "type": "string",
  "description": "Failed to send confirmation email"
}
object abuse-reports_EmailListItem
{
  "type": "object",
  "required": [
    "id",
    "subject",
    "body",
    "recipient",
    "sent_at"
  ],
  "properties": {
    "id": {
      "type": "string",
      "description": "Unique identifier of the email."
    },
    "body": {
      "type": "string",
      "description": "Body content of the email."
    },
    "sent_at": {
      "type": "string",
      "example": "2009-11-10T23:00:00Z",
      "description": "When the email was sent. Time in RFC 3339 format (https://www.rfc-editor.org/rfc/rfc3339.html)"
    },
    "subject": {
      "type": "string",
      "description": "Subject line of the email."
    },
    "recipient": {
      "type": "string",
      "description": "Email address of the recipient."
    }
  },
  "description": "An email sent to the customer for an abuse report."
}
string abuse-reports_ErrorCode
{
  "type": "string",
  "oneOf": [
    {
      "$ref": "#/components/schemas/abuse-reports_BadActError"
    },
    {
      "$ref": "#/components/schemas/abuse-reports_BadAddressError"
    },
    {
      "$ref": "#/components/schemas/abuse-reports_BadAgentNameError"
    },
    {
      "$ref": "#/components/schemas/abuse-reports_BadCityError"
    },
    {
      "$ref": "#/components/schemas/abuse-reports_BadCountryError"
    },
    {
      "$ref": "#/components/schemas/abuse-reports_BadPortsProtocolError"
    },
    {
      "$ref": "#/components/schemas/abuse-reports_BadStateError"
    },
    {
      "$ref": "#/components/schemas/abuse-reports_MaxIPsError"
    },
    {
      "$ref": "#/components/schemas/abuse-reports_PortsProtocolError"
    },
    {
      "$ref": "#/components/schemas/abuse-reports_BadCommentsError"
    },
    {
      "$ref": "#/components/schemas/abuse-reports_BadEmailError"
    },
    {
      "$ref": "#/components/schemas/abuse-reports_BadIPError"
    },
    {
      "$ref": "#/components/schemas/abuse-reports_BadJustError"
    },
    {
      "$ref": "#/components/schemas/abuse-reports_BadNameError"
    },
    {
      "$ref": "#/components/schemas/abuse-reports_BadUrlsError"
    },
    {
      "$ref": "#/components/schemas/abuse-reports_DBError"
    },
    {
      "$ref": "#/components/schemas/abuse-reports_DedupeError"
    },
    {
      "$ref": "#/components/schemas/abuse-reports_DiffEmailError"
    },
    {
      "$ref": "#/components/schemas/abuse-reports_EmailError"
    },
    {
      "$ref": "#/components/schemas/abuse-reports_InternalError"
    },
    {
      "$ref": "#/components/schemas/abuse-reports_InvalidNotifyError"
    },
    {
      "$ref": "#/components/schemas/abuse-reports_MustNotifyError"
    },
    {
      "$ref": "#/components/schemas/abuse-reports_NoAgreeError"
    },
    {
      "$ref": "#/components/schemas/abuse-reports_NoOriginalWorkError"
    },
    {
      "$ref": "#/components/schemas/abuse-reports_NoSigError"
    },
    {
      "$ref": "#/components/schemas/abuse-reports_UnexpectedActError"
    },
    {
      "$ref": "#/components/schemas/abuse-reports_UnknownError"
    },
    {
      "$ref": "#/components/schemas/abuse-reports_UrlNotOrangeError"
    },
    {
      "$ref": "#/components/schemas/abuse-reports_UrlNotvalidError"
    }
  ]
}
object abuse-reports_ErrorMessage
{
  "type": "object",
  "required": [
    "message"
  ],
  "properties": {
    "code": {
      "oneOf": [
        {
          "type": "string"
        },
        {
          "type": "number"
        }
      ]
    },
    "message": {
      "type": "string"
    }
  }
}
object abuse-reports_GeneralReport
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/abuse-reports_BaseReportFields"
    },
    {
      "title": "General Report",
      "required": [
        "host_notification",
        "justification",
        "owner_notification"
      ],
      "properties": {
        "act": {
          "enum": [
            "abuse_general"
          ]
        },
        "source_ips": {
          "type": "string",
          "description": "A list of IP addresses separated by ‘\\n’ (new line character). The list of source IPs should not exceed 30 IP addresses. Each one of the IP addresses ought to be unique."
        },
        "justification": {
          "type": "string",
          "maxLength": 5000,
          "minLength": 1,
          "description": "A detailed description of the infringement, including any necessary access details and the exact steps needed to view the content, not exceeding 5000 characters.\n"
        },
        "destination_ips": {
          "type": "string",
          "description": "A list of IP addresses separated by ‘\\n’ (new line character). The list of destination IPs should not exceed 30 IP addresses. Each one of the IP addresses ought to be unique."
        },
        "ports_protocols": {
          "type": "string",
          "description": "A comma separated list of ports and protocols e.g. 80/TCP, 22/UDP. The total size of the field should not exceed 2000 characters. Each individual port/protocol should not exceed 100 characters. The list should not have more than 30 unique ports and protocols."
        },
        "host_notification": {
          "enum": [
            "send",
            "send-anon"
          ],
          "type": "string",
          "description": "Notification type based on the abuse type. NOTE: Copyright (DMCA) and Trademark reports cannot be anonymous.\n"
        },
        "owner_notification": {
          "enum": [
            "send",
            "send-anon"
          ],
          "type": "string",
          "description": "Notification type based on the abuse type. NOTE: Copyright (DMCA) and Trademark reports cannot be anonymous.\n"
        }
      }
    }
  ]
}
string abuse-reports_InternalError
{
  "type": "string",
  "description": "Failed to translate email"
}
string abuse-reports_InvalidNotifyError
{
  "type": "string",
  "description": "Invalid value for notification preference"
}
string abuse-reports_MaxIPsError
{
  "type": "string",
  "description": "Provided value has invalid size"
}
object abuse-reports_Message
{
  "type": "object",
  "required": [
    "message"
  ],
  "properties": {
    "message": {
      "type": "string"
    }
  }
}
string abuse-reports_MitigatedEntityType
{
  "enum": [
    "url_pattern",
    "account",
    "zone"
  ],
  "type": "string"
}
object abuse-reports_MitigationAppeal
{
  "type": "object",
  "required": [
    "id",
    "reason"
  ],
  "properties": {
    "id": {
      "type": "string",
      "description": "ID of the mitigation to appeal."
    },
    "reason": {
      "$ref": "#/components/schemas/abuse-reports_AppealReason"
    }
  }
}
object abuse-reports_MitigationAppealRequest
{
  "type": "object",
  "required": [
    "appeals"
  ],
  "properties": {
    "appeals": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/abuse-reports_MitigationAppeal"
      },
      "description": "List of mitigations to appeal."
    }
  }
}
object abuse-reports_MitigationAppealResult
{
  "type": "object",
  "required": [
    "success",
    "result_info"
  ],
  "properties": {
    "errors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/abuse-reports_Message"
      }
    },
    "result": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/abuse-reports_MitigationListItem"
      }
    },
    "success": {
      "type": "boolean"
    },
    "messages": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/abuse-reports_Message"
      }
    },
    "result_info": {
      "type": "object",
      "required": [
        "page",
        "per_page",
        "count",
        "total_count",
        "total_pages"
      ],
      "properties": {
        "page": {
          "type": "number"
        },
        "count": {
          "type": "number"
        },
        "per_page": {
          "type": "number"
        },
        "total_count": {
          "type": "number"
        },
        "total_pages": {
          "type": "number"
        }
      }
    }
  }
}
object abuse-reports_MitigationListItem
{
  "type": "object",
  "required": [
    "id",
    "type",
    "effective_date",
    "status",
    "entity_type",
    "entity_id"
  ],
  "properties": {
    "id": {
      "type": "string",
      "description": "ID of remediation."
    },
    "type": {
      "$ref": "#/components/schemas/abuse-reports_MitigationType"
    },
    "status": {
      "$ref": "#/components/schemas/abuse-reports_MitigationStatus"
    },
    "entity_id": {
      "type": "string"
    },
    "entity_type": {
      "$ref": "#/components/schemas/abuse-reports_MitigatedEntityType"
    },
    "effective_date": {
      "type": "string",
      "example": "2009-11-10T23:00:00Z",
      "description": "Date when the mitigation will become active. Time in RFC 3339 format (https://www.rfc-editor.org/rfc/rfc3339.html)"
    }
  }
}
string abuse-reports_MitigationStatus
{
  "enum": [
    "pending",
    "active",
    "in_review",
    "cancelled",
    "removed"
  ],
  "type": "string",
  "description": "The status of a mitigation"
}
object abuse-reports_MitigationSummary
{
  "type": "object",
  "required": [
    "accepted_url_count",
    "pending_count",
    "active_count",
    "in_review_count",
    "external_host_notified"
  ],
  "properties": {
    "active_count": {
      "type": "integer",
      "description": "How many mitigations are active."
    },
    "pending_count": {
      "type": "integer",
      "description": "How many mitigations are pending their effective date."
    },
    "in_review_count": {
      "type": "integer",
      "description": "How many mitigations are under review."
    },
    "accepted_url_count": {
      "type": "integer",
      "description": "How many of the reported URLs were confirmed as abusive."
    },
    "external_host_notified": {
      "type": "boolean",
      "description": "Whether the report has been forwarded to an external hosting provider."
    }
  },
  "description": "A summary of the mitigations related to this report."
}
string abuse-reports_MitigationType
{
  "enum": [
    "legal_block",
    "misleading_interstitial",
    "phishing_interstitial",
    "network_block",
    "rate_limit_cache",
    "account_suspend",
    "redirect_video_stream"
  ],
  "type": "string",
  "description": "The type of mitigation"
}
string abuse-reports_MustNotifyError
{
  "type": "string",
  "description": "Please pick one party to notify about this report"
}
object abuse-reports_NCSEIReport
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/abuse-reports_BaseReportFields"
    },
    {
      "title": "NCSEI Report",
      "required": [
        "host_notification",
        "ncsei_subject_representation",
        "owner_notification"
      ],
      "properties": {
        "act": {
          "enum": [
            "abuse_ncsei"
          ]
        },
        "country": {
          "type": "string",
          "maxLength": 255,
          "minLength": 1,
          "description": "Text not exceeding 255 characters. This field may be released by Cloudflare to third parties such as the Lumen Database (https://lumendatabase.org/).\n"
        },
        "host_notification": {
          "enum": [
            "send",
            "send-anon"
          ],
          "type": "string",
          "description": "Notification type based on the abuse type. NOTE: Copyright (DMCA) and Trademark reports cannot be anonymous.\n"
        },
        "owner_notification": {
          "enum": [
            "send",
            "send-anon",
            "none"
          ],
          "type": "string",
          "description": "Notification type based on the abuse type. NOTE: Copyright (DMCA) and Trademark reports cannot be anonymous.\n"
        },
        "ncsei_subject_representation": {
          "type": "boolean",
          "description": "If the submitter is the target of NCSEI in the URLs of the abuse report."
        }
      }
    }
  ]
}
string abuse-reports_NoAgreeError
{
  "type": "string",
  "description": "Must acknowledge that you are bound by 512(f), that you have a good faith belief about the material, and that you have the authority to act"
}
string abuse-reports_NoOriginalWorkError
{
  "type": "string",
  "description": "Original Work section must be between 1 and 2000 characters"
}
string abuse-reports_NoSigError
{
  "type": "string",
  "description": "Signature must match your name"
}
object abuse-reports_PhishingReport
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/abuse-reports_BaseReportFields"
    },
    {
      "title": "Phishing Report",
      "required": [
        "host_notification",
        "justification",
        "owner_notification"
      ],
      "properties": {
        "act": {
          "enum": [
            "abuse_phishing"
          ]
        },
        "justification": {
          "type": "string",
          "maxLength": 5000,
          "minLength": 20,
          "description": "A detailed description of the infringement, including any necessary access details and the exact steps needed to view the content, not exceeding 5000 characters.\n"
        },
        "original_work": {
          "type": "string",
          "maxLength": 255,
          "minLength": 1,
          "description": "Text not exceeding 255 characters. This field may be released by Cloudflare to third parties such as the Lumen Database (https://lumendatabase.org/).\n"
        },
        "host_notification": {
          "enum": [
            "send",
            "send-anon"
          ],
          "type": "string",
          "description": "Notification type based on the abuse type. NOTE: Copyright (DMCA) and Trademark reports cannot be anonymous.\n"
        },
        "owner_notification": {
          "enum": [
            "send",
            "send-anon"
          ],
          "type": "string",
          "description": "Notification type based on the abuse type. NOTE: Copyright (DMCA) and Trademark reports cannot be anonymous.\n"
        }
      }
    }
  ]
}
string abuse-reports_PortsProtocolError
{
  "type": "string",
  "description": "Provided value has invalid size"
}
object abuse-reports_RegistrarWhoIsFields
{
  "type": "object",
  "required": [
    "reg_who_request_type",
    "reg_who_requested_data_elements",
    "reg_who_legal_basis",
    "reg_who_good_faith_affirmation",
    "reg_who_lawful_processing_agreement"
  ],
  "properties": {
    "reg_who_legal_basis": {
      "type": "string",
      "maxLength": 5000,
      "description": "Legal rights and rationale for the request per RDP 10.2.3. Required for all WHOIS requests."
    },
    "reg_who_request_type": {
      "enum": [
        "disclosure",
        "invalid_whois"
      ],
      "type": "string",
      "description": "The type of WHOIS data request per RDP procedure."
    },
    "reg_who_requestor_type": {
      "enum": [
        "government",
        "corporation",
        "individual"
      ],
      "type": "string",
      "description": "The nature of the requestor per RDP 10.2.1.2."
    },
    "reg_who_good_faith_affirmation": {
      "type": "boolean",
      "description": "Affirmation that the request is made in good faith per RDP 10.2.4. Must be true."
    },
    "reg_who_authorization_statement": {
      "type": "string",
      "maxLength": 5000,
      "description": "Optional authorization statement or power of attorney per RDP 10.2.1.3."
    },
    "reg_who_requested_data_elements": {
      "type": "array",
      "items": {
        "enum": [
          "registrant_name",
          "registrant_organization",
          "registrant_email",
          "registrant_phone",
          "registrant_address",
          "registrant_address_country",
          "registrant_address_postal_code",
          "admin_name",
          "admin_organization",
          "admin_email",
          "admin_phone",
          "admin_address",
          "tech_name",
          "tech_organization",
          "tech_email",
          "tech_phone",
          "tech_address"
        ],
        "type": "string"
      },
      "maxItems": 17,
      "minItems": 1,
      "description": "The specific WHOIS data elements being requested per RDP 10.2.2. Required for all WHOIS requests."
    },
    "reg_who_lawful_processing_agreement": {
      "type": "boolean",
      "description": "Agreement to process data lawfully per RDP 10.2.5. Must be true."
    }
  },
  "description": "RDP-mandated fields for registrar WHOIS data disclosure requests."
}
object abuse-reports_RegistrarWhoisReport
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/abuse-reports_BaseReportFields"
    },
    {
      "title": "Registrar Whois Report",
      "required": [
        "owner_notification"
      ],
      "properties": {
        "act": {
          "enum": [
            "abuse_registrar_whois"
          ]
        },
        "reg_who_request": {
          "$ref": "#/components/schemas/abuse-reports_RegistrarWhoIsFields"
        },
        "owner_notification": {
          "enum": [
            "send",
            "send-anon",
            "none"
          ],
          "type": "string",
          "description": "Notification type based on the abuse type. NOTE: Copyright (DMCA) and Trademark reports cannot be anonymous.\n"
        }
      }
    }
  ]
}
string abuse-reports_ReportStatus
{
  "enum": [
    "accepted",
    "in_review"
  ],
  "type": "string",
  "description": "An enum value that represents the status of an abuse record"
}
string abuse-reports_ReportType
{
  "enum": [
    "PHISH",
    "GEN",
    "THREAT",
    "DMCA",
    "EMER",
    "TM",
    "REG_WHO",
    "NCSEI",
    "NETWORK"
  ],
  "type": "string",
  "description": "The abuse report type"
}
string abuse-reports_SubmissionReportType
{
  "type": "string",
  "description": "The report type for submitted reports."
}
object abuse-reports_SubmitErrorResponse
{
  "type": "object",
  "required": [
    "request",
    "result",
    "msg",
    "error_code"
  ],
  "properties": {
    "msg": {
      "type": "string",
      "description": "The error message for the error"
    },
    "result": {
      "type": "string",
      "description": "The result should be 'error' for successful response"
    },
    "request": {
      "type": "object",
      "required": [
        "act"
      ],
      "properties": {
        "act": {
          "$ref": "#/components/schemas/abuse-reports_SubmissionReportType"
        }
      }
    },
    "error_code": {
      "$ref": "#/components/schemas/abuse-reports_ErrorCode"
    }
  }
}
object abuse-reports_SubmitReportRequest
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/abuse-reports_DMCAReport"
    },
    {
      "$ref": "#/components/schemas/abuse-reports_TrademarkReport"
    },
    {
      "$ref": "#/components/schemas/abuse-reports_GeneralReport"
    },
    {
      "$ref": "#/components/schemas/abuse-reports_PhishingReport"
    },
    {
      "$ref": "#/components/schemas/abuse-reports_CSAMReport"
    },
    {
      "$ref": "#/components/schemas/abuse-reports_ThreatReport"
    },
    {
      "$ref": "#/components/schemas/abuse-reports_RegistrarWhoisReport"
    },
    {
      "$ref": "#/components/schemas/abuse-reports_NCSEIReport"
    }
  ],
  "discriminator": {
    "mapping": {
      "abuse_dmca": "#/components/schemas/abuse-reports_DMCAReport",
      "abuse_ncsei": "#/components/schemas/abuse-reports_NCSEIReport",
      "abuse_threat": "#/components/schemas/abuse-reports_ThreatReport",
      "abuse_general": "#/components/schemas/abuse-reports_GeneralReport",
      "abuse_children": "#/components/schemas/abuse-reports_CSAMReport",
      "abuse_phishing": "#/components/schemas/abuse-reports_PhishingReport",
      "abuse_trademark": "#/components/schemas/abuse-reports_TrademarkReport",
      "abuse_registrar_whois": "#/components/schemas/abuse-reports_RegistrarWhoisReport"
    },
    "propertyName": "act"
  }
}
object abuse-reports_SubmitReportResponse
{
  "type": "object",
  "required": [
    "request",
    "result",
    "abuse_rand"
  ],
  "properties": {
    "result": {
      "type": "string",
      "description": "The result should be 'success' for successful response"
    },
    "request": {
      "type": "object",
      "required": [
        "act"
      ],
      "properties": {
        "act": {
          "$ref": "#/components/schemas/abuse-reports_SubmissionReportType"
        }
      }
    },
    "abuse_rand": {
      "type": "string",
      "description": "The identifier for the submitted abuse report."
    }
  }
}
object abuse-reports_SubmitterDetails
{
  "type": "object",
  "properties": {
    "name": {
      "type": "string"
    },
    "email": {
      "type": "string"
    },
    "company": {
      "type": "string"
    },
    "telephone": {
      "type": "string"
    }
  },
  "description": "Information about the submitter of the report."
}
object abuse-reports_ThreatReport
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/abuse-reports_BaseReportFields"
    },
    {
      "title": "Threat Report",
      "required": [
        "host_notification",
        "justification",
        "owner_notification"
      ],
      "properties": {
        "act": {
          "enum": [
            "abuse_threat"
          ]
        },
        "justification": {
          "type": "string",
          "maxLength": 5000,
          "minLength": 1,
          "description": "A detailed description of the infringement, including any necessary access details and the exact steps needed to view the content, not exceeding 5000 characters.\n"
        },
        "host_notification": {
          "enum": [
            "send",
            "send-anon"
          ],
          "type": "string",
          "description": "Notification type based on the abuse type. NOTE: Copyright (DMCA) and Trademark reports cannot be anonymous.\n"
        },
        "owner_notification": {
          "enum": [
            "send",
            "send-anon"
          ],
          "type": "string",
          "description": "Notification type based on the abuse type. NOTE: Copyright (DMCA) and Trademark reports cannot be anonymous.\n"
        }
      }
    }
  ]
}
object abuse-reports_TrademarkReport
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/abuse-reports_BaseReportFields"
    },
    {
      "title": "Trademark Report",
      "required": [
        "host_notification",
        "justification",
        "owner_notification",
        "trademark_number",
        "trademark_office",
        "trademark_symbol"
      ],
      "properties": {
        "act": {
          "enum": [
            "abuse_trademark"
          ]
        },
        "justification": {
          "type": "string",
          "maxLength": 5000,
          "minLength": 1,
          "description": "A detailed description of the infringement, including any necessary access details and the exact steps needed to view the content, not exceeding 5000 characters.\n"
        },
        "trademark_number": {
          "type": "string",
          "maxLength": 1000,
          "minLength": 1,
          "description": "Text not exceeding 1000 characters"
        },
        "trademark_office": {
          "type": "string",
          "maxLength": 1000,
          "minLength": 1,
          "description": "Text not exceeding 1000 characters"
        },
        "trademark_symbol": {
          "type": "string",
          "maxLength": 1000,
          "minLength": 1,
          "description": "Text not exceeding 1000 characters"
        },
        "host_notification": {
          "enum": [
            "send"
          ],
          "type": "string",
          "description": "Notification type based on the abuse type. NOTE: Copyright (DMCA) and Trademark reports cannot be anonymous.\n"
        },
        "owner_notification": {
          "enum": [
            "send"
          ],
          "type": "string",
          "description": "Notification type based on the abuse type. NOTE: Copyright (DMCA) and Trademark reports cannot be anonymous.\n"
        }
      }
    }
  ]
}
string abuse-reports_UnexpectedActError
{
  "type": "string",
  "description": "Report has the wrong type"
}
string abuse-reports_UnknownError
{
  "type": "string",
  "description": "An unexpected error occurred"
}
string abuse-reports_UrlNotOrangeError
{
  "type": "string",
  "description": "A URL contains a domain that is not active on Cloudflare"
}
string abuse-reports_UrlNotvalidError
{
  "type": "string",
  "description": "You have entered URLs that contain more than 1 unique hostname. A single report may only include 1 unique hostname (i.e, www.example.com). To report URLs related to another hostname (i.e. other.example.com) you'll need to file a separate report."
}
string access_aaguid
{
  "type": "string",
  "format": "uuid",
  "example": "2fc0579f-8113-47ea-b116-bb5a8db9202a",
  "description": "The Authenticator Attestation GUID (AAGUID) uniquely identifying a FIDO2 authenticator model"
}
object access_access-requests
{
  "type": "object",
  "properties": {
    "action": {
      "$ref": "#/components/schemas/access_action"
    },
    "ray_id": {
      "$ref": "#/components/schemas/access_ray_id"
    },
    "allowed": {
      "$ref": "#/components/schemas/access_allowed"
    },
    "app_uid": {
      "$ref": "#/components/schemas/access_app_uid"
    },
    "app_domain": {
      "$ref": "#/components/schemas/access_app_domain"
    },
    "connection": {
      "$ref": "#/components/schemas/access_connection"
    },
    "created_at": {
      "$ref": "#/components/schemas/access_timestamp"
    },
    "ip_address": {
      "$ref": "#/components/schemas/access_ip"
    },
    "user_email": {
      "$ref": "#/components/schemas/access_components-schemas-email"
    }
  }
}
object access_access-requests_components-schemas-response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-common"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/access_access-requests"
          }
        }
      }
    }
  ]
}
object access_access_group_rule
{
  "type": "object",
  "title": "Access groups",
  "required": [
    "group"
  ],
  "properties": {
    "group": {
      "type": "object",
      "required": [
        "id"
      ],
      "properties": {
        "id": {
          "type": "string",
          "example": "aa0a4aab-672b-4bdb-bc33-a59f1130a11f",
          "description": "The ID of a previously created Access group."
        }
      }
    }
  },
  "description": "Matches an Access group."
}
boolean access_access_seat
{
  "type": "boolean",
  "example": false,
  "description": "True if the seat is part of Access.",
  "x-auditable": true
}
string access_action
{
  "type": "string",
  "example": "login",
  "description": "The event that occurred, such as a login attempt."
}
number access_active_device_count
{
  "type": "number",
  "example": 2,
  "description": "The number of active devices registered to the user."
}
object access_active_session_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "allOf": [
            {
              "$ref": "#/components/schemas/access_identity"
            },
            {
              "type": "object",
              "properties": {
                "isActive": {
                  "type": "boolean",
                  "example": true
                }
              }
            }
          ]
        }
      }
    }
  ]
}
object access_active_sessions_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string"
              },
              "metadata": {
                "type": "object",
                "properties": {
                  "iat": {
                    "type": "integer",
                    "example": 1694791905
                  },
                  "ttl": {
                    "type": "integer",
                    "example": 21600
                  },
                  "apps": {
                    "type": "object",
                    "additionalProperties": {
                      "type": "object",
                      "properties": {
                        "uid": {
                          "type": "string",
                          "example": "cc2a8145-0128-4429-87f3-872c4d380c4e"
                        },
                        "name": {
                          "type": "string",
                          "example": "app name"
                        },
                        "type": {
                          "type": "string",
                          "example": "self_hosted"
                        },
                        "hostname": {
                          "type": "string",
                          "example": "test.example.com"
                        }
                      }
                    }
                  },
                  "nonce": {
                    "type": "string",
                    "example": "X1aXj1lFVcqqyoXF"
                  },
                  "expires": {
                    "type": "integer",
                    "example": 1694813506
                  }
                }
              },
              "expiration": {
                "type": "integer",
                "example": 1694813506
              }
            }
          }
        }
      }
    }
  ]
}
boolean access_allow_all_headers
{
  "type": "boolean",
  "example": true,
  "description": "Allows all HTTP request headers."
}
boolean access_allow_all_methods
{
  "type": "boolean",
  "description": "Allows all HTTP request methods."
}
boolean access_allow_all_origins
{
  "type": "boolean",
  "description": "Allows all origins."
}
boolean access_allow_authenticate_via_warp
{
  "type": "boolean",
  "default": false,
  "example": "false",
  "description": "When set to true, users can authenticate via WARP for any application in your organization. Application settings will take precedence over this value.",
  "x-auditable": true
}
boolean access_allow_credentials
{
  "type": "boolean",
  "description": "When set to `true`, includes credentials (cookies, authorization headers, or TLS client certificates) with requests."
}
boolean access_allow_email_alias
{
  "type": "boolean",
  "description": "Enables using Identity Provider email alias as SSH username.",
  "x-auditable": true
}
boolean access_allow_iframe
{
  "type": "boolean",
  "example": true,
  "description": "Enables loading application content in an iFrame."
}
boolean access_allowed
{
  "type": "boolean",
  "default": false,
  "description": "The result of the authentication event."
}
array access_allowed_clipboard_local_to_remote_formats
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/access_rdp_clipboard_format"
  },
  "example": [
    "text"
  ],
  "description": "Clipboard formats allowed when copying from local machine to remote RDP session."
}
array access_allowed_clipboard_remote_to_local_formats
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/access_rdp_clipboard_format"
  },
  "example": [
    "text"
  ],
  "description": "Clipboard formats allowed when copying from remote RDP session to local machine."
}
array access_allowed_headers
{
  "type": "array",
  "items": {
    "type": "string"
  },
  "description": "Allowed HTTP request headers."
}
array access_allowed_idps
{
  "type": "array",
  "items": {
    "type": "string",
    "example": "699d98642c564d2e855e9661899b7252",
    "description": "The identity providers selected for application."
  },
  "description": "The identity providers your users can select when connecting to this application. Defaults to all IdPs configured in your account."
}
array access_allowed_methods
{
  "type": "array",
  "items": {
    "enum": [
      "GET",
      "POST",
      "HEAD",
      "PUT",
      "DELETE",
      "CONNECT",
      "OPTIONS",
      "TRACE",
      "PATCH"
    ],
    "type": "string"
  },
  "example": [
    "GET"
  ],
  "description": "Allowed HTTP request methods."
}
array access_allowed_origins
{
  "type": "array",
  "items": {
    "type": "string"
  },
  "example": [
    "https://example.com"
  ],
  "description": "Allowed origins."
}
object access_any_valid_service_token_rule
{
  "type": "object",
  "title": "Any Valid Service Token",
  "required": [
    "any_valid_service_token"
  ],
  "properties": {
    "any_valid_service_token": {
      "type": "object",
      "example": {},
      "description": "An empty object which matches on all service tokens.",
      "x-stainless-empty-object": true
    }
  },
  "description": "Matches any valid Access Service Token"
}
object access_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result_info": {
          "type": "object",
          "properties": {
            "page": {
              "type": "number",
              "example": 1,
              "description": "Current page within paginated list of results."
            },
            "count": {
              "type": "number",
              "example": 1,
              "description": "Total number of results for the requested service."
            },
            "per_page": {
              "type": "number",
              "example": 20,
              "description": "Number of results per page of results."
            },
            "total_count": {
              "type": "number",
              "example": 2000,
              "description": "Total results available without any search parameters."
            },
            "total_pages": {
              "type": "number",
              "example": 100,
              "description": "The number of total pages in the entire result set."
            }
          }
        }
      }
    }
  ]
}
object access_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/access_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/access_messages"
    }
  }
}
object access_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/access_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/access_messages"
        }
      ],
      "example": []
    }
  }
}
object access_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-common"
    }
  ]
}
object access_app-policies_components-schemas-id_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "id": {
              "$ref": "#/components/schemas/access_uuid"
            }
          }
        }
      }
    }
  ]
}
object access_app-policies_components-schemas-response_collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/access_app_policy_response"
          }
        }
      }
    }
  ]
}
object access_app-policies_components-schemas-single_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/access_app_policy_response"
        }
      }
    }
  ]
}
integer access_app_count
{
  "type": "integer",
  "example": 2,
  "description": "Number of access applications currently using this policy.",
  "x-auditable": true
}
string access_app_domain
{
  "type": "string",
  "example": "test.example.com/admin",
  "description": "The URL of the Access application."
}
object access_app_id
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/access_identifier"
    },
    {
      "$ref": "#/components/schemas/access_uuid"
    }
  ]
}
string access_app_launcher_logo_url
{
  "type": "string",
  "example": "https://www.cloudflare.com/img/logo-web-badges/cf-logo-on-white-bg.svg",
  "description": "The image URL of the logo shown in the App Launcher header."
}
object access_app_launcher_props
{
  "allOf": [
    {
      "$ref": "#/components/schemas/access_feature_app_props"
    },
    {
      "properties": {
        "name": {
          "default": "App Launcher",
          "example": "App Launcher",
          "readOnly": true
        },
        "type": {
          "allOf": [
            {
              "$ref": "#/components/schemas/access_type"
            },
            {
              "example": "app_launcher"
            }
          ]
        },
        "domain": {
          "example": "authdomain.cloudflareaccess.com",
          "readOnly": true
        },
        "bg_color": {
          "$ref": "#/components/schemas/access_bg_color"
        },
        "footer_links": {
          "$ref": "#/components/schemas/access_footer_links"
        },
        "header_bg_color": {
          "$ref": "#/components/schemas/access_header_bg_color"
        },
        "landing_page_design": {
          "$ref": "#/components/schemas/access_landing_page_design"
        },
        "app_launcher_logo_url": {
          "$ref": "#/components/schemas/access_app_launcher_logo_url"
        },
        "skip_app_launcher_login_page": {
          "$ref": "#/components/schemas/access_skip_app_launcher_login_page"
        }
      }
    }
  ]
}
boolean access_app_launcher_visible
{
  "type": "boolean",
  "default": true,
  "example": true,
  "description": "Displays the application in the App Launcher."
}
object access_app_policy_link
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/access_schemas-uuid"
    },
    "precedence": {
      "$ref": "#/components/schemas/access_precedence"
    }
  },
  "description": "A JSON that links a reusable policy to an application."
}
object access_app_policy_request
{
  "type": "object",
  "allOf": [
    {
      "type": "object",
      "properties": {
        "precedence": {
          "$ref": "#/components/schemas/access_precedence"
        }
      }
    },
    {
      "$ref": "#/components/schemas/access_policy_req"
    }
  ]
}
object access_app_policy_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_policy_resp"
    },
    {
      "type": "object",
      "properties": {
        "precedence": {
          "$ref": "#/components/schemas/access_precedence"
        }
      }
    }
  ]
}
object access_app_req_embedded_policies
{
  "type": "object",
  "properties": {
    "policies": {
      "type": "array",
      "items": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/access_app_policy_link"
          },
          {
            "allOf": [
              {
                "description": "A policy UID to link to this application."
              },
              {
                "$ref": "#/components/schemas/access_schemas-uuid"
              }
            ]
          },
          {
            "allOf": [
              {
                "type": "object"
              },
              {
                "properties": {
                  "id": {
                    "$ref": "#/components/schemas/access_schemas-uuid"
                  }
                },
                "description": "An application-scoped policy JSON. If the policy does not yet exist, it will be created."
              },
              {
                "$ref": "#/components/schemas/access_app_policy_request"
              }
            ]
          }
        ]
      },
      "description": "The policies that Access applies to the application, in ascending order of precedence. Items can reference existing policies or create new policies exclusive to the application. Reusable and inline policies are mutually exclusive."
    }
  }
}
object access_app_req_embedded_scim_config
{
  "type": "object",
  "properties": {
    "scim_config": {
      "$ref": "#/components/schemas/access_scim_config"
    }
  }
}
object access_app_request
{
  "anyOf": [
    {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/access_self_hosted_props"
        },
        {
          "$ref": "#/components/schemas/access_app_req_embedded_policies"
        },
        {
          "$ref": "#/components/schemas/access_app_req_embedded_scim_config"
        }
      ],
      "title": "Self Hosted Application"
    },
    {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/access_saas_props"
        },
        {
          "$ref": "#/components/schemas/access_app_req_embedded_policies"
        },
        {
          "$ref": "#/components/schemas/access_app_req_embedded_scim_config"
        }
      ],
      "title": "SaaS Application"
    },
    {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/access_ssh_props"
        },
        {
          "$ref": "#/components/schemas/access_app_req_embedded_policies"
        },
        {
          "$ref": "#/components/schemas/access_app_req_embedded_scim_config"
        }
      ],
      "title": "Browser SSH Application"
    },
    {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/access_vnc_props"
        },
        {
          "$ref": "#/components/schemas/access_app_req_embedded_policies"
        },
        {
          "$ref": "#/components/schemas/access_app_req_embedded_scim_config"
        }
      ],
      "title": "Browser VNC Application"
    },
    {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/access_app_launcher_props"
        },
        {
          "$ref": "#/components/schemas/access_app_req_embedded_policies"
        }
      ],
      "title": "App Launcher Application"
    },
    {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/access_warp_props"
        },
        {
          "$ref": "#/components/schemas/access_app_req_embedded_policies"
        }
      ],
      "title": "Device Enrollment Permissions Application"
    },
    {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/access_biso_props"
        },
        {
          "$ref": "#/components/schemas/access_app_req_embedded_policies"
        }
      ],
      "title": "Browser Isolation Permissions Application"
    },
    {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/access_proxy_endpoint_props"
        },
        {
          "$ref": "#/components/schemas/access_app_req_embedded_policies"
        }
      ],
      "title": "Gateway Identity Proxy Endpoint Application"
    },
    {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/access_bookmark_props"
        },
        {
          "$ref": "#/components/schemas/access_app_req_embedded_policies"
        }
      ],
      "title": "Bookmark application"
    },
    {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/access_infra_props"
        },
        {
          "$ref": "#/components/schemas/access_infra_app_req_embedded_policies"
        }
      ],
      "title": "Infrastructure application"
    },
    {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/access_rdp_props"
        },
        {
          "$ref": "#/components/schemas/access_app_req_embedded_policies"
        }
      ],
      "title": "Browser RDP Application"
    },
    {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/access_mcp_props"
        },
        {
          "$ref": "#/components/schemas/access_app_req_embedded_policies"
        }
      ],
      "title": "MCP Server Application"
    },
    {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/access_mcp_portal_props"
        },
        {
          "$ref": "#/components/schemas/access_app_req_embedded_policies"
        }
      ],
      "title": "MCP Server Portal Application"
    }
  ]
}
object access_app_resp_embedded_policies
{
  "type": "object",
  "properties": {
    "policies": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/access_app_policy_response"
      }
    }
  },
  "description": "The policies that Access applies to the application."
}
object access_app_resp_embedded_target_criteria_infra
{
  "type": "object",
  "properties": {
    "target_criteria": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/access_target_criteria_infra_app"
      }
    }
  },
  "description": "Contains the targets secured by the application."
}
object access_app_resp_embedded_target_criteria_self_hosted
{
  "type": "object",
  "properties": {
    "target_criteria": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/access_target_criteria_self_hosted_app"
      }
    }
  },
  "description": "Contains the targets secured by the application."
}
object access_app_response
{
  "anyOf": [
    {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/access_basic_app_response_props"
        },
        {
          "$ref": "#/components/schemas/access_self_hosted_props"
        },
        {
          "$ref": "#/components/schemas/access_app_resp_embedded_policies"
        }
      ],
      "title": "Self Hosted Application"
    },
    {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/access_basic_app_response_props"
        },
        {
          "$ref": "#/components/schemas/access_saas_props"
        },
        {
          "$ref": "#/components/schemas/access_app_resp_embedded_policies"
        }
      ],
      "title": "SaaS Application"
    },
    {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/access_basic_app_response_props"
        },
        {
          "$ref": "#/components/schemas/access_ssh_props"
        },
        {
          "$ref": "#/components/schemas/access_app_resp_embedded_policies"
        }
      ],
      "title": "Browser SSH Application"
    },
    {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/access_basic_app_response_props"
        },
        {
          "$ref": "#/components/schemas/access_vnc_props"
        },
        {
          "$ref": "#/components/schemas/access_app_resp_embedded_policies"
        }
      ],
      "title": "Browser VNC Application"
    },
    {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/access_basic_app_response_props"
        },
        {
          "$ref": "#/components/schemas/access_app_launcher_props"
        },
        {
          "$ref": "#/components/schemas/access_app_resp_embedded_policies"
        }
      ],
      "title": "App Launcher Application"
    },
    {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/access_basic_app_response_props"
        },
        {
          "$ref": "#/components/schemas/access_warp_props"
        },
        {
          "$ref": "#/components/schemas/access_app_resp_embedded_policies"
        }
      ],
      "title": "Device Enrollment Permissions Application"
    },
    {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/access_basic_app_response_props"
        },
        {
          "$ref": "#/components/schemas/access_biso_props"
        },
        {
          "$ref": "#/components/schemas/access_app_resp_embedded_policies"
        }
      ],
      "title": "Browser Isolation Permissions Application"
    },
    {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/access_basic_app_response_props"
        },
        {
          "$ref": "#/components/schemas/access_proxy_endpoint_props"
        },
        {
          "$ref": "#/components/schemas/access_app_resp_embedded_policies"
        }
      ],
      "title": "Gateway Identity Proxy Endpoint Application"
    },
    {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/access_basic_app_response_props"
        },
        {
          "$ref": "#/components/schemas/access_bookmark_props"
        },
        {
          "$ref": "#/components/schemas/access_app_resp_embedded_policies"
        }
      ],
      "title": "Bookmark application"
    },
    {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/access_basic_app_response_props"
        },
        {
          "$ref": "#/components/schemas/access_infra_props"
        },
        {
          "$ref": "#/components/schemas/access_infra_app_resp_embedded_policies"
        }
      ],
      "title": "Infrastructure application"
    },
    {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/access_basic_app_response_props"
        },
        {
          "$ref": "#/components/schemas/access_rdp_props"
        },
        {
          "$ref": "#/components/schemas/access_app_resp_embedded_policies"
        }
      ],
      "title": "Browser RDP Application"
    },
    {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/access_basic_app_response_props"
        },
        {
          "$ref": "#/components/schemas/access_mcp_props"
        },
        {
          "$ref": "#/components/schemas/access_app_resp_embedded_policies"
        }
      ],
      "title": "MCP Server Application"
    },
    {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/access_basic_app_response_props"
        },
        {
          "$ref": "#/components/schemas/access_mcp_portal_props"
        },
        {
          "$ref": "#/components/schemas/access_app_resp_embedded_policies"
        }
      ],
      "title": "MCP Server Portal Application"
    }
  ]
}
object access_app_settings_request
{
  "type": "object",
  "properties": {
    "allow_iframe": {
      "$ref": "#/components/schemas/access_allow_iframe"
    },
    "skip_interstitial": {
      "$ref": "#/components/schemas/access_skip_interstitial"
    }
  }
}
object access_app_settings_response
{
  "type": "object",
  "properties": {
    "allow_iframe": {
      "$ref": "#/components/schemas/access_allow_iframe"
    },
    "skip_interstitial": {
      "$ref": "#/components/schemas/access_skip_interstitial"
    }
  }
}
string access_app_uid
{
  "type": "string",
  "example": "df7e2w5f-02b7-4d9d-af26-8d1988fca630",
  "description": "The unique identifier for the Access application."
}
object access_approval_group
{
  "type": "object",
  "required": [
    "approvals_needed"
  ],
  "properties": {
    "email_addresses": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "test@cloudflare.com",
        "test2@cloudflare.com"
      ],
      "description": "A list of emails that can approve the access request."
    },
    "email_list_uuid": {
      "type": "string",
      "description": "The UUID of an re-usable email list."
    },
    "approvals_needed": {
      "type": "number",
      "example": 1,
      "minimum": 0,
      "description": "The number of approvals needed to obtain access."
    }
  },
  "description": "A group of email addresses that can approve a temporary authentication request."
}
array access_approval_groups
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/access_approval_group"
  },
  "example": [
    {
      "email_addresses": [
        "test1@cloudflare.com",
        "test2@cloudflare.com"
      ],
      "approvals_needed": 1
    },
    {
      "email_list_uuid": "597147a1-976b-4ef2-9af0-81d5d007fc34",
      "approvals_needed": 3
    }
  ],
  "description": "Administrators who can approve a temporary authentication request.",
  "x-stainless-collection-type": "set"
}
boolean access_approval_required
{
  "type": "boolean",
  "example": true,
  "description": "Requires the user to request access from an administrator at the start of each session."
}
object access_apps
{
  "type": "object",
  "anyOf": [
    {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/access_schemas-basic_app_response_props"
        },
        {
          "$ref": "#/components/schemas/access_schemas-self_hosted_props"
        }
      ],
      "title": "Self Hosted Application"
    },
    {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/access_schemas-basic_app_response_props"
        },
        {
          "$ref": "#/components/schemas/access_schemas-saas_props"
        }
      ],
      "title": "SaaS Application"
    },
    {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/access_schemas-basic_app_response_props"
        },
        {
          "$ref": "#/components/schemas/access_schemas-ssh_props"
        }
      ],
      "title": "Browser SSH Application"
    },
    {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/access_schemas-basic_app_response_props"
        },
        {
          "$ref": "#/components/schemas/access_schemas-vnc_props"
        }
      ],
      "title": "Browser VNC Application"
    },
    {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/access_schemas-basic_app_response_props"
        },
        {
          "$ref": "#/components/schemas/access_schemas-app_launcher_props"
        }
      ],
      "title": "App Launcher Application"
    },
    {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/access_schemas-basic_app_response_props"
        },
        {
          "$ref": "#/components/schemas/access_schemas-warp_props"
        }
      ],
      "title": "Device Enrollment Permissions Application"
    },
    {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/access_schemas-basic_app_response_props"
        },
        {
          "$ref": "#/components/schemas/access_schemas-biso_props"
        }
      ],
      "title": "Browser Isolation Permissions Application"
    },
    {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/access_schemas-basic_app_response_props"
        },
        {
          "$ref": "#/components/schemas/access_schemas-bookmark_props"
        }
      ],
      "title": "Bookmark application"
    }
  ]
}
string access_apps_components-schemas-name
{
  "type": "string",
  "example": "Admin Site",
  "description": "The name of the application."
}
object access_apps_components-schemas-response_collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/access_app_response"
          }
        }
      }
    }
  ]
}
object access_apps_components-schemas-response_collection-2
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/access_apps"
          }
        }
      }
    }
  ]
}
string access_apps_components-schemas-session_duration
{
  "type": "string",
  "default": "24h",
  "example": "24h",
  "description": "The amount of time that tokens issued for this application will be valid. Must be in the format `300ms` or `2h45m`. Valid time units are: ns, us (or µs), ms, s, m, h."
}
object access_apps_components-schemas-single_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/access_app_response"
        }
      }
    }
  ]
}
object access_apps_components-schemas-single_response-2
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/access_apps"
        }
      }
    }
  ]
}
array access_associated_hostnames
{
  "type": "array",
  "items": {
    "type": "string",
    "example": "admin.example.com",
    "description": "A fully-qualified domain name (FQDN).",
    "x-auditable": true
  },
  "description": "The hostnames of the applications that will use this certificate."
}
string access_aud
{
  "type": "string",
  "example": "737646a56ab1df6ec9bddc7e5ca84eaf3b0768850f3ffb5d74f1534911fe3893",
  "readOnly": true,
  "maxLength": 64,
  "description": "The Application Audience (AUD) tag. Identifies the application associated with the CA.",
  "x-auditable": true
}
object access_auth_context_rule
{
  "type": "object",
  "title": "Authentication Context",
  "required": [
    "auth_context"
  ],
  "properties": {
    "auth_context": {
      "type": "object",
      "required": [
        "id",
        "identity_provider_id",
        "ac_id"
      ],
      "properties": {
        "id": {
          "type": "string",
          "example": "aa0a4aab-672b-4bdb-bc33-a59f1130a11f",
          "description": "The ID of an Authentication context."
        },
        "ac_id": {
          "type": "string",
          "example": "ea85612a-29c8-46c2-bacb-669d65136971",
          "description": "The ACID of an Authentication context."
        },
        "identity_provider_id": {
          "type": "string",
          "example": "ea85612a-29c8-46c2-bacb-669d65136971",
          "description": "The ID of your Azure identity provider."
        }
      }
    }
  },
  "description": "Matches an Azure Authentication Context.\nRequires an Azure identity provider."
}
string access_auth_domain
{
  "type": "string",
  "example": "test.cloudflareaccess.com",
  "description": "The unique subdomain assigned to your Zero Trust organization.",
  "x-auditable": true
}
object access_authentication_method_rule
{
  "type": "object",
  "title": "Authentication method",
  "required": [
    "auth_method"
  ],
  "properties": {
    "auth_method": {
      "type": "object",
      "required": [
        "auth_method"
      ],
      "properties": {
        "auth_method": {
          "type": "string",
          "example": "mfa",
          "description": "The type of authentication method https://datatracker.ietf.org/doc/html/rfc8176#section-2."
        }
      }
    }
  },
  "description": "Enforce different MFA options"
}
string access_authenticator-device-aaguids_components-schemas-name
{
  "type": "string",
  "example": "YubiKey 5 NFC",
  "description": "The human-readable name of the FIDO2 authenticator"
}
object access_authenticator-device-aaguids_components-schemas-response_collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/access_authenticator_device_aaguid"
          },
          "example": [
            {
              "name": "YubiKey 5 NFC",
              "aaguid": "2fc0579f-8113-47ea-b116-bb5a8db9202a"
            },
            {
              "name": "Ledger Nano X FIDO2 Authenticator",
              "aaguid": "fcb1bcb4-f370-078c-6993-bc24d0ae3fbe"
            }
          ]
        }
      }
    }
  ]
}
object access_authenticator_device_aaguid
{
  "type": "object",
  "required": [
    "aaguid",
    "name"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/access_authenticator-device-aaguids_components-schemas-name"
    },
    "aaguid": {
      "$ref": "#/components/schemas/access_aaguid"
    }
  },
  "description": "A FIDO2 authenticator device AAGUID entry"
}
string access_authenticator_id
{
  "type": "string",
  "example": "test-authenticator-id-123",
  "description": "The unique identifier for the MFA device."
}
boolean access_auto_redirect_to_identity
{
  "type": "boolean",
  "default": false,
  "description": "When set to `true`, users skip the identity provider selection step during login.",
  "x-auditable": true
}
object access_azureAD
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_identity-provider"
    },
    {
      "type": "object",
      "properties": {
        "config": {
          "type": "object",
          "allOf": [
            {
              "$ref": "#/components/schemas/access_generic-oauth-config"
            },
            {
              "$ref": "#/components/schemas/access_custom-claims-support"
            },
            {
              "type": "object",
              "properties": {
                "prompt": {
                  "enum": [
                    "login",
                    "select_account",
                    "none"
                  ],
                  "type": "string",
                  "description": "Indicates the type of user interaction that is required. prompt=login forces the user to enter their credentials on that request, negating single-sign on. prompt=none is the opposite. It ensures that the user isn't presented with any interactive prompt. If the request can't be completed silently by using single-sign on, the Microsoft identity platform returns an interaction_required error. prompt=select_account interrupts single sign-on providing account selection experience listing all the accounts either in session or any remembered account or an option to choose to use a different account altogether.",
                  "x-auditable": true
                },
                "directory_id": {
                  "type": "string",
                  "example": "<your azure directory uuid>",
                  "description": "Your Azure directory uuid",
                  "x-auditable": true
                },
                "support_groups": {
                  "type": "boolean",
                  "description": "Should Cloudflare try to load groups from your account",
                  "x-auditable": true
                },
                "conditional_access_enabled": {
                  "type": "boolean",
                  "description": "Should Cloudflare try to load authentication contexts from your account",
                  "x-auditable": true
                }
              }
            }
          ]
        }
      }
    }
  ],
  "title": "Azure AD"
}
object access_azure_group_rule
{
  "type": "object",
  "title": "Azure group",
  "required": [
    "azureAD"
  ],
  "properties": {
    "azureAD": {
      "type": "object",
      "required": [
        "id",
        "identity_provider_id"
      ],
      "properties": {
        "id": {
          "type": "string",
          "example": "aa0a4aab-672b-4bdb-bc33-a59f1130a11f",
          "description": "The ID of an Azure group."
        },
        "identity_provider_id": {
          "type": "string",
          "example": "ea85612a-29c8-46c2-bacb-669d65136971",
          "description": "The ID of your Azure identity provider."
        }
      }
    }
  },
  "description": "Matches an Azure group.\nRequires an Azure identity provider."
}
object access_base_policy_req
{
  "type": "object",
  "required": [
    "name",
    "decision",
    "include"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/access_policy_components-schemas-name"
    },
    "exclude": {
      "$ref": "#/components/schemas/access_schemas-exclude"
    },
    "include": {
      "$ref": "#/components/schemas/access_schemas-include"
    },
    "require": {
      "$ref": "#/components/schemas/access_schemas-require"
    },
    "decision": {
      "$ref": "#/components/schemas/access_decision"
    }
  }
}
object access_base_policy_resp
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/access_schemas-uuid"
    },
    "name": {
      "$ref": "#/components/schemas/access_policy_components-schemas-name"
    },
    "exclude": {
      "$ref": "#/components/schemas/access_schemas-exclude"
    },
    "include": {
      "$ref": "#/components/schemas/access_schemas-include"
    },
    "require": {
      "$ref": "#/components/schemas/access_schemas-require"
    },
    "decision": {
      "$ref": "#/components/schemas/access_decision"
    },
    "created_at": {
      "$ref": "#/components/schemas/access_timestamp"
    },
    "updated_at": {
      "$ref": "#/components/schemas/access_timestamp"
    }
  }
}
object access_basic_app_response_props
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/access_uuid"
    },
    "aud": {
      "$ref": "#/components/schemas/access_schemas-aud"
    },
    "created_at": {
      "$ref": "#/components/schemas/access_created_at"
    },
    "updated_at": {
      "$ref": "#/components/schemas/access_updated_at"
    }
  }
}
string access_bg_color
{
  "type": "string",
  "example": "#ff0000",
  "description": "The background color of the App Launcher page."
}
object access_biso_props
{
  "allOf": [
    {
      "$ref": "#/components/schemas/access_feature_app_props"
    },
    {
      "properties": {
        "name": {
          "default": "Clientless Web Isolation",
          "example": "Clientless Web Isolation",
          "readOnly": true
        },
        "type": {
          "allOf": [
            {
              "$ref": "#/components/schemas/access_type"
            },
            {
              "example": "biso"
            }
          ]
        },
        "domain": {
          "example": "authdomain.cloudflareaccess.com/browser",
          "readOnly": true
        }
      }
    }
  ]
}
object access_bookmark_props
{
  "type": "object",
  "title": "Bookmark application",
  "properties": {
    "name": {
      "$ref": "#/components/schemas/access_apps_components-schemas-name"
    },
    "tags": {
      "$ref": "#/components/schemas/access_tags"
    },
    "type": {
      "allOf": [
        {
          "$ref": "#/components/schemas/access_type"
        },
        {
          "example": "bookmark"
        }
      ]
    },
    "domain": {
      "type": "string",
      "example": "https://mybookmark.com",
      "description": "The URL or domain of the bookmark."
    },
    "logo_url": {
      "$ref": "#/components/schemas/access_logo_url"
    },
    "app_launcher_visible": {
      "$ref": "#/components/schemas/access_app_launcher_visible"
    }
  }
}
object access_bookmarks
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "The unique identifier for the Bookmark application."
    },
    "name": {
      "$ref": "#/components/schemas/access_bookmarks_components-schemas-name"
    },
    "domain": {
      "$ref": "#/components/schemas/access_schemas-domain"
    },
    "logo_url": {
      "$ref": "#/components/schemas/access_schemas-logo_url"
    },
    "created_at": {
      "$ref": "#/components/schemas/access_created_at"
    },
    "updated_at": {
      "$ref": "#/components/schemas/access_updated_at"
    },
    "app_launcher_visible": {
      "$ref": "#/components/schemas/access_schemas-app_launcher_visible"
    }
  }
}
string access_bookmarks_components-schemas-name
{
  "type": "string",
  "example": "My Website",
  "description": "The name of the Bookmark application.",
  "x-auditable": true
}
object access_bookmarks_components-schemas-response_collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/access_bookmarks"
          }
        }
      }
    }
  ]
}
object access_bookmarks_components-schemas-single_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/access_bookmarks"
        }
      }
    }
  ]
}
string access_button_color
{
  "type": "string",
  "example": "#ff0000",
  "description": "The background color of the log in button on the landing page."
}
string access_button_text_color
{
  "type": "string",
  "example": "#ff0000",
  "description": "The color of the text in the log in button on the landing page."
}
object access_ca
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/access_schemas-id"
    },
    "aud": {
      "$ref": "#/components/schemas/access_aud"
    },
    "public_key": {
      "$ref": "#/components/schemas/access_public_key"
    }
  }
}
object access_ca_components-schemas-id_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "id": {
              "$ref": "#/components/schemas/access_components-schemas-id"
            }
          }
        }
      }
    }
  ]
}
object access_ca_components-schemas-response_collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/access_ca"
          }
        }
      }
    }
  ]
}
object access_ca_components-schemas-response_collection-2
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/access_schemas-ca"
          }
        }
      }
    }
  ]
}
object access_ca_components-schemas-single_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/access_ca"
        }
      }
    }
  ]
}
object access_ca_components-schemas-single_response-2
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/access_schemas-ca"
        }
      }
    }
  ]
}
object access_centrify
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_identity-provider"
    },
    {
      "type": "object",
      "properties": {
        "config": {
          "allOf": [
            {
              "$ref": "#/components/schemas/access_generic-oauth-config"
            },
            {
              "$ref": "#/components/schemas/access_custom-claims-support"
            },
            {
              "type": "object",
              "properties": {
                "centrify_app_id": {
                  "type": "string",
                  "example": "exampleapp",
                  "description": "Your centrify app id",
                  "x-auditable": true
                },
                "centrify_account": {
                  "type": "string",
                  "example": "https://abc123.my.centrify.com/",
                  "description": "Your centrify account url",
                  "x-auditable": true
                }
              }
            }
          ]
        }
      }
    }
  ],
  "title": "Centrify"
}
object access_certificate_rule
{
  "type": "object",
  "title": "Valid certificate",
  "example": {
    "certificate": {}
  },
  "required": [
    "certificate"
  ],
  "properties": {
    "certificate": {
      "type": "object",
      "example": {},
      "x-stainless-empty-object": true
    }
  },
  "description": "Matches any valid client certificate."
}
object access_certificates
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "The ID of the application that will use this certificate.",
      "x-auditable": true
    },
    "name": {
      "$ref": "#/components/schemas/access_certificates_components-schemas-name"
    },
    "created_at": {
      "$ref": "#/components/schemas/access_created_at"
    },
    "expires_on": {
      "$ref": "#/components/schemas/access_timestamp"
    },
    "updated_at": {
      "$ref": "#/components/schemas/access_updated_at"
    },
    "fingerprint": {
      "$ref": "#/components/schemas/access_fingerprint"
    },
    "associated_hostnames": {
      "$ref": "#/components/schemas/access_associated_hostnames"
    }
  }
}
string access_certificates_components-schemas-name
{
  "type": "string",
  "example": "Allow devs",
  "description": "The name of the certificate.",
  "x-auditable": true
}
string access_certificates_components-schemas-name-2
{
  "type": "string",
  "example": "Allow devs",
  "description": "The name of the certificate."
}
object access_certificates_components-schemas-response_collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/access_certificates"
          }
        }
      }
    }
  ]
}
object access_certificates_components-schemas-response_collection-2
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/access_components-schemas-certificates"
          }
        }
      }
    }
  ]
}
object access_certificates_components-schemas-single_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/access_certificates"
        }
      }
    }
  ]
}
object access_certificates_components-schemas-single_response-2
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/access_components-schemas-certificates"
        }
      }
    }
  ]
}
string access_cf_resource_id
{
  "type": "string",
  "example": "a2abeb50-59c9-4c01-8c5c-963d3bf5700f",
  "description": "The unique Cloudflare-generated Id of the SCIM Group resource; also known as the \"Id\"."
}
string access_client_id
{
  "type": "string",
  "example": "88bf3b6d86161464f6509f7219099e57.access.example.com",
  "description": "The Client ID for the service token. Access will check for this value in the `CF-Access-Client-ID` request header."
}
string access_client_secret
{
  "type": "string",
  "example": "bdd31cbc4dec990953e39163fbbb194c93313ca9f0a6e420346af9d326b1d2a5",
  "description": "The Client Secret for the service token. Access will check for this value in the `CF-Access-Client-Secret` request header.",
  "x-sensitive": true
}
number access_client_secret_version
{
  "type": "number",
  "default": 1,
  "description": "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`.",
  "x-auditable": true
}
object access_common_name_rule
{
  "type": "object",
  "title": "Common Name",
  "required": [
    "common_name"
  ],
  "properties": {
    "common_name": {
      "type": "object",
      "required": [
        "common_name"
      ],
      "properties": {
        "common_name": {
          "type": "string",
          "example": "james@example.com",
          "description": "The common name to match."
        }
      }
    }
  },
  "description": "Matches a specific common name."
}
string access_components-schemas-aud
{
  "type": "string",
  "example": "737646a56ab1df6ec9bddc7e5ca84eaf3b0768850f3ffb5d74f1534911fe3893",
  "readOnly": true,
  "maxLength": 64,
  "description": "The Application Audience (AUD) tag. Identifies the application associated with the CA."
}
object access_components-schemas-certificates
{
  "type": "object",
  "properties": {
    "id": {
      "description": "The ID of the application that will use this certificate."
    },
    "name": {
      "$ref": "#/components/schemas/access_certificates_components-schemas-name-2"
    },
    "created_at": {
      "$ref": "#/components/schemas/access_timestamp"
    },
    "expires_on": {
      "$ref": "#/components/schemas/access_timestamp"
    },
    "updated_at": {
      "$ref": "#/components/schemas/access_timestamp"
    },
    "fingerprint": {
      "$ref": "#/components/schemas/access_fingerprint"
    },
    "associated_hostnames": {
      "$ref": "#/components/schemas/access_schemas-associated_hostnames"
    }
  }
}
string access_components-schemas-domain
{
  "type": "string",
  "example": "test.example.com/admin",
  "description": "The domain and path that Access will secure."
}
string access_components-schemas-email
{
  "type": "string",
  "format": "email",
  "example": "user@example.com",
  "description": "The email address of the authenticating user."
}
array access_components-schemas-exclude
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/access_rule"
  },
  "description": "Rules evaluated with a NOT logical operator. To match the policy, a user cannot meet any of the Exclude rules."
}
object access_components-schemas-groups
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/access_uuid"
    },
    "name": {
      "$ref": "#/components/schemas/access_groups_components-schemas-name-2"
    },
    "exclude": {
      "$ref": "#/components/schemas/access_exclude"
    },
    "include": {
      "$ref": "#/components/schemas/access_include"
    },
    "require": {
      "$ref": "#/components/schemas/access_require"
    },
    "created_at": {
      "$ref": "#/components/schemas/access_timestamp"
    },
    "updated_at": {
      "$ref": "#/components/schemas/access_timestamp"
    }
  }
}
string access_components-schemas-id
{
  "type": "string",
  "example": "7eddae4619b50ab1361ba8ae9bd72269a432fea041529ed9",
  "readOnly": true,
  "maxLength": 48,
  "description": "The ID of the CA."
}
object access_components-schemas-id_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-common"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "id": {
              "$ref": "#/components/schemas/access_uuid"
            }
          }
        }
      }
    }
  ]
}
string access_components-schemas-identifier
{
  "type": "string",
  "example": "699d98642c564d2e855e9661899b7252",
  "x-auditable": true
}
string access_components-schemas-name
{
  "type": "string",
  "example": "Widget Corps IDP",
  "description": "The name of the identity provider, shown to users on the login page."
}
array access_components-schemas-require
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/access_rule"
  },
  "description": "Rules evaluated with an AND logical operator. To match the policy, a user must meet all of the Require rules."
}
object access_components-schemas-response_collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/access_service-tokens"
          }
        }
      }
    }
  ]
}
string access_components-schemas-session_duration
{
  "type": "string",
  "default": "24h",
  "example": "24h",
  "description": "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."
}
object access_components-schemas-single_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/access_identity-providers"
        }
      }
    }
  ]
}
string access_components-schemas-type
{
  "enum": [
    "self_hosted",
    "saas",
    "ssh",
    "vnc",
    "app_launcher",
    "warp",
    "biso",
    "bookmark",
    "dash_sso"
  ],
  "type": "string",
  "example": "self_hosted",
  "description": "The application type."
}
string access_connection
{
  "type": "string",
  "example": "saml",
  "description": "The IdP used to authenticate."
}
object access_connection_rules
{
  "type": "object",
  "title": "Connection Rules",
  "properties": {
    "rdp": {
      "$ref": "#/components/schemas/access_connection_rules_rdp"
    }
  },
  "description": "The rules that define how users may connect to targets secured by your application."
}
object access_connection_rules_infra
{
  "type": "object",
  "title": "Connection Rules",
  "properties": {
    "ssh": {
      "$ref": "#/components/schemas/access_connection_rules_ssh"
    }
  },
  "description": "The rules that define how users may connect to the targets secured by your application."
}
object access_connection_rules_rdp
{
  "type": "object",
  "title": "RDP Connection Rules",
  "properties": {
    "allowed_clipboard_local_to_remote_formats": {
      "$ref": "#/components/schemas/access_allowed_clipboard_local_to_remote_formats"
    },
    "allowed_clipboard_remote_to_local_formats": {
      "$ref": "#/components/schemas/access_allowed_clipboard_remote_to_local_formats"
    }
  },
  "description": "The RDP-specific rules that define clipboard behavior for RDP connections."
}
object access_connection_rules_ssh
{
  "type": "object",
  "title": "SSH Connection Rules",
  "required": [
    "usernames"
  ],
  "properties": {
    "usernames": {
      "$ref": "#/components/schemas/access_usernames"
    },
    "allow_email_alias": {
      "$ref": "#/components/schemas/access_allow_email_alias"
    }
  },
  "description": "The SSH-specific rules that define how users may connect to the targets secured by your application."
}
object access_cors_headers
{
  "type": "object",
  "properties": {
    "max_age": {
      "$ref": "#/components/schemas/access_max_age"
    },
    "allowed_headers": {
      "$ref": "#/components/schemas/access_allowed_headers"
    },
    "allowed_methods": {
      "$ref": "#/components/schemas/access_allowed_methods"
    },
    "allowed_origins": {
      "$ref": "#/components/schemas/access_allowed_origins"
    },
    "allow_all_headers": {
      "$ref": "#/components/schemas/access_allow_all_headers"
    },
    "allow_all_methods": {
      "$ref": "#/components/schemas/access_allow_all_methods"
    },
    "allow_all_origins": {
      "$ref": "#/components/schemas/access_allow_all_origins"
    },
    "allow_credentials": {
      "$ref": "#/components/schemas/access_allow_credentials"
    }
  }
}
object access_country_rule
{
  "type": "object",
  "title": "Country",
  "required": [
    "geo"
  ],
  "properties": {
    "geo": {
      "type": "object",
      "required": [
        "country_code"
      ],
      "properties": {
        "country_code": {
          "type": "string",
          "example": "US",
          "description": "The country code that should be matched."
        }
      }
    }
  },
  "description": "Matches a specific country"
}
object access_create_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "id": {
              "type": "string",
              "description": "The ID of the service token."
            },
            "name": {
              "$ref": "#/components/schemas/access_schemas-name"
            },
            "duration": {
              "$ref": "#/components/schemas/access_duration"
            },
            "client_id": {
              "$ref": "#/components/schemas/access_client_id"
            },
            "created_at": {
              "$ref": "#/components/schemas/access_created_at"
            },
            "updated_at": {
              "$ref": "#/components/schemas/access_updated_at"
            },
            "client_secret": {
              "$ref": "#/components/schemas/access_client_secret"
            }
          }
        }
      }
    }
  ]
}
object access_created_at
{
  "allOf": [
    {
      "x-stainless-skip": true
    },
    {
      "$ref": "#/components/schemas/access_timestamp"
    }
  ]
}
object access_custom-claims-support
{
  "type": "object",
  "properties": {
    "claims": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "email_verified",
        "preferred_username",
        "custom_claim_name"
      ],
      "description": "Custom claims",
      "x-auditable": true
    },
    "email_claim_name": {
      "type": "string",
      "example": "custom_claim_name",
      "description": "The claim name for email in the id_token response.",
      "x-auditable": true
    }
  }
}
string access_custom-pages_components-schemas-name
{
  "type": "string",
  "description": "Custom page name.",
  "x-auditable": true
}
object access_custom-pages_components-schemas-response_collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/access_custom_page_without_html"
          }
        }
      }
    }
  ]
}
object access_custom-pages_components-schemas-single_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/access_custom_page"
        }
      }
    }
  ]
}
string access_custom_deny_message
{
  "type": "string",
  "description": "The custom error message shown to a user when they are denied access to the application."
}
string access_custom_deny_url
{
  "type": "string",
  "description": "The custom URL a user is redirected to when they are denied access to the application when failing identity-based rules."
}
string access_custom_non_identity_deny_url
{
  "type": "string",
  "description": "The custom URL a user is redirected to when they are denied access to the application when failing non-identity rules."
}
object access_custom_page
{
  "type": "object",
  "required": [
    "name",
    "custom_html",
    "type"
  ],
  "properties": {
    "uid": {
      "$ref": "#/components/schemas/access_uuid"
    },
    "name": {
      "$ref": "#/components/schemas/access_custom-pages_components-schemas-name"
    },
    "type": {
      "$ref": "#/components/schemas/access_schemas-type"
    },
    "app_count": {
      "$ref": "#/components/schemas/access_schemas-app_count"
    },
    "created_at": {
      "$ref": "#/components/schemas/access_created_at"
    },
    "updated_at": {
      "$ref": "#/components/schemas/access_updated_at"
    },
    "custom_html": {
      "type": "string",
      "example": "<html><body><h1>Access Denied</h1></body></html>",
      "description": "Custom page HTML.",
      "x-auditable": true
    }
  }
}
object access_custom_page_without_html
{
  "type": "object",
  "required": [
    "name",
    "type"
  ],
  "properties": {
    "uid": {
      "$ref": "#/components/schemas/access_uuid"
    },
    "name": {
      "$ref": "#/components/schemas/access_custom-pages_components-schemas-name"
    },
    "type": {
      "$ref": "#/components/schemas/access_schemas-type"
    },
    "app_count": {
      "$ref": "#/components/schemas/access_schemas-app_count"
    },
    "created_at": {
      "$ref": "#/components/schemas/access_created_at"
    },
    "updated_at": {
      "$ref": "#/components/schemas/access_updated_at"
    }
  }
}
object access_custom_pages
{
  "type": "object",
  "properties": {
    "forbidden": {
      "type": "string",
      "example": "699d98642c564d2e855e9661899b7252",
      "description": "The uid of the custom page to use when a user is denied access after failing a non-identity rule."
    },
    "identity_denied": {
      "type": "string",
      "example": "699d98642c564d2e855e9661899b7252",
      "description": "The uid of the custom page to use when a user is denied access."
    }
  }
}
number access_days_until_next_rotation
{
  "type": "number",
  "example": 1,
  "readOnly": true,
  "description": "The number of days until the next key rotation.",
  "x-auditable": true
}
string access_decision
{
  "enum": [
    "allow",
    "deny",
    "non_identity",
    "bypass"
  ],
  "type": "string",
  "example": "allow",
  "description": "The action Access will take if a user matches this policy. Infrastructure application policies can only use the Allow action."
}
object access_delete_authenticator_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "nullable": true
        }
      }
    }
  ]
}
object access_delete_user_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "nullable": true
        }
      }
    }
  ]
}
boolean access_deny_unmatched_requests
{
  "type": "boolean",
  "example": "true",
  "description": "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.",
  "x-auditable": true
}
array access_deny_unmatched_requests_exempted_zone_names
{
  "type": "array",
  "items": {
    "type": "string"
  },
  "example": [
    "example.com"
  ],
  "description": "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.",
  "x-auditable": true
}
array access_destinations
{
  "type": "array",
  "items": {
    "oneOf": [
      {
        "type": "object",
        "title": "Public destination",
        "properties": {
          "uri": {
            "type": "string",
            "description": "The URI of the destination. Public destinations' URIs can include a domain and path with [wildcards](https://developers.cloudflare.com/cloudflare-one/policies/access/app-paths/).\n"
          },
          "type": {
            "enum": [
              "public"
            ],
            "type": "string"
          }
        },
        "description": "A public hostname that Access will secure. Public destinations support sub-domain and path. Wildcard '*' can be used in the definition.\n"
      },
      {
        "type": "object",
        "title": "Private destination",
        "properties": {
          "cidr": {
            "type": "string",
            "description": "The CIDR range of the destination. Single IPs will be computed as /32."
          },
          "type": {
            "enum": [
              "private"
            ],
            "type": "string"
          },
          "vnet_id": {
            "type": "string",
            "description": "The VNET ID to match the destination. When omitted, all VNETs will match."
          },
          "hostname": {
            "type": "string",
            "description": "The hostname of the destination. Matches a valid SNI served by an HTTPS origin."
          },
          "port_range": {
            "type": "string",
            "description": "The port range of the destination. Can be a single port or a range of ports. When omitted, all ports will match.\n"
          },
          "l4_protocol": {
            "enum": [
              "tcp",
              "udp"
            ],
            "type": "string",
            "description": "The L4 protocol of the destination. When omitted, both UDP and TCP traffic will match."
          }
        }
      },
      {
        "type": "object",
        "title": "Via MCP Server Portal destination",
        "properties": {
          "type": {
            "enum": [
              "via_mcp_server_portal"
            ],
            "type": "string"
          },
          "mcp_server_id": {
            "type": "string",
            "description": "The MCP server id configured in ai-controls."
          }
        },
        "description": "A MCP server id configured in ai-controls. Access will secure the MCP server if accessed through a MCP portal.\n"
      }
    ]
  },
  "default": [],
  "example": [
    {
      "uri": "test.example.com/admin",
      "type": "public"
    },
    {
      "uri": "test.anotherexample.com/staff",
      "type": "public"
    },
    {
      "cidr": "10.5.0.0/24",
      "type": "private",
      "port_range": "80-90"
    },
    {
      "cidr": "10.5.0.3/32",
      "type": "private",
      "port_range": "80"
    },
    {
      "type": "private",
      "hostname": "private-sni.example.com"
    },
    {
      "type": "via_mcp_server_portal",
      "mcp_server_id": "mcp-server-1"
    }
  ],
  "description": "List of destinations secured by Access. This supersedes `self_hosted_domains` to allow for more flexibility in defining different types of domains. If `destinations` are provided, then `self_hosted_domains` will be ignored.\n"
}
object access_device_posture_check
{
  "type": "object",
  "properties": {
    "path": {
      "type": "string",
      "x-auditable": true
    },
    "exists": {
      "type": "boolean",
      "x-auditable": true
    }
  }
}
object access_device_posture_rule
{
  "type": "object",
  "title": "Device Posture",
  "required": [
    "device_posture"
  ],
  "properties": {
    "device_posture": {
      "type": "object",
      "required": [
        "integration_uid"
      ],
      "properties": {
        "integration_uid": {
          "type": "string",
          "example": "aa0a4aab-672b-4bdb-bc33-a59f1130a11f",
          "description": "The ID of a device posture integration."
        }
      }
    }
  },
  "description": "Enforces a device posture rule has run successfully"
}
object access_device_session
{
  "type": "object",
  "example": {
    "last_authenticated": 1638832687
  },
  "properties": {
    "last_authenticated": {
      "type": "number",
      "x-auditable": true
    }
  }
}
string access_direction
{
  "enum": [
    "desc",
    "asc"
  ],
  "type": "string",
  "default": "desc",
  "example": "desc",
  "description": "The chronological order used to sort the logs."
}
string access_doh_jwt_duration
{
  "type": "string",
  "example": "800h",
  "description": "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",
  "x-auditable": true
}
string access_domain
{
  "type": "string",
  "example": "test.example.com/admin",
  "description": "The primary hostname and path secured by Access. This domain will be displayed if the app is visible in the App Launcher."
}
object access_domain_rule
{
  "type": "object",
  "title": "Email domain",
  "required": [
    "email_domain"
  ],
  "properties": {
    "email_domain": {
      "type": "object",
      "required": [
        "domain"
      ],
      "properties": {
        "domain": {
          "type": "string",
          "example": "example.com",
          "description": "The email domain to match."
        }
      }
    }
  },
  "description": "Match an entire email domain."
}
string access_duration
{
  "type": "string",
  "default": "8760h",
  "example": "60m",
  "description": "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).",
  "x-auditable": true
}
string access_email
{
  "type": "string",
  "example": "john.smith@example.com",
  "description": "The email address of the SCIM User resource."
}
object access_email_list_rule
{
  "type": "object",
  "title": "Email list",
  "required": [
    "email_list"
  ],
  "properties": {
    "email_list": {
      "type": "object",
      "required": [
        "id"
      ],
      "properties": {
        "id": {
          "type": "string",
          "example": "aa0a4aab-672b-4bdb-bc33-a59f1130a11f",
          "description": "The ID of a previously created email list."
        }
      }
    }
  },
  "description": "Matches an email address from a list."
}
object access_email_rule
{
  "type": "object",
  "title": "Email",
  "required": [
    "email"
  ],
  "properties": {
    "email": {
      "type": "object",
      "required": [
        "email"
      ],
      "properties": {
        "email": {
          "type": "string",
          "format": "email",
          "example": "test@example.com",
          "description": "The email of the user."
        }
      }
    }
  },
  "description": "Matches a specific email."
}
object access_empty_response
{
  "type": "object",
  "allOf": [
    {
      "properties": {
        "result": {
          "enum": [
            true,
            false
          ],
          "type": "boolean",
          "example": true
        },
        "success": {
          "enum": [
            true,
            false
          ],
          "type": "boolean",
          "example": true
        }
      }
    }
  ]
}
boolean access_enable_binding_cookie
{
  "type": "boolean",
  "default": false,
  "description": "Enables the binding cookie, which increases security against compromised authorization tokens and CSRF attacks."
}
object access_everyone_rule
{
  "type": "object",
  "title": "Everyone",
  "required": [
    "everyone"
  ],
  "properties": {
    "everyone": {
      "type": "object",
      "example": {},
      "description": "An empty object which matches on all users.",
      "x-stainless-empty-object": true
    }
  },
  "description": "Matches everyone."
}
array access_exclude
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/access_rule"
  },
  "description": "Rules evaluated with a NOT logical operator. To match a policy, a user cannot meet any of the Exclude rules."
}
string access_externalId
{
  "type": "string",
  "example": "all_employees",
  "description": "The IdP-generated Id of the SCIM resource."
}
object access_external_evaluation_rule
{
  "type": "object",
  "title": "External Evaluation",
  "required": [
    "external_evaluation"
  ],
  "properties": {
    "external_evaluation": {
      "type": "object",
      "required": [
        "evaluate_url",
        "keys_url"
      ],
      "properties": {
        "keys_url": {
          "type": "string",
          "example": "https://eval.example.com/keys",
          "description": "The API endpoint containing the key that Access uses to verify that the response came from your API."
        },
        "evaluate_url": {
          "type": "string",
          "example": "https://eval.example.com",
          "description": "The API endpoint containing your business logic."
        }
      }
    }
  },
  "description": "Create Allow or Block policies which evaluate the user based on custom criteria."
}
object access_facebook
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_identity-provider"
    },
    {
      "type": "object",
      "properties": {
        "config": {
          "$ref": "#/components/schemas/access_generic-oauth-config"
        }
      }
    }
  ],
  "title": "Facebook"
}
object access_failed_login_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "metadata": {
                "type": "object",
                "example": {
                  "aud": "39691c1480a2352a18ece567debc2b32552686cbd38eec0887aa18d5d3f00c04",
                  "ray_id": "6d76a8a42ead4133",
                  "app_name": "Test App",
                  "datetime": "2022-02-02T21:54:34.914Z",
                  "user_uuid": "57171132-e453-4ee8-b2a5-8cbaad333207",
                  "user_email": "test@cloudflare.com"
                }
              },
              "expiration": {
                "type": "integer"
              }
            }
          }
        }
      }
    }
  ]
}
object access_feature_app_props
{
  "type": "object",
  "required": [
    "type"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/access_apps_components-schemas-name"
    },
    "type": {
      "$ref": "#/components/schemas/access_type"
    },
    "domain": {
      "$ref": "#/components/schemas/access_domain"
    },
    "allowed_idps": {
      "$ref": "#/components/schemas/access_allowed_idps"
    },
    "custom_pages": {
      "$ref": "#/components/schemas/access_schemas-custom_pages"
    },
    "custom_deny_url": {
      "$ref": "#/components/schemas/access_custom_deny_url"
    },
    "session_duration": {
      "$ref": "#/components/schemas/access_schemas-session_duration"
    },
    "auto_redirect_to_identity": {
      "$ref": "#/components/schemas/access_schemas-auto_redirect_to_identity"
    },
    "custom_non_identity_deny_url": {
      "$ref": "#/components/schemas/access_custom_non_identity_deny_url"
    }
  }
}
string access_fingerprint
{
  "type": "string",
  "example": "MD5 Fingerprint=1E:80:0F:7A:FD:31:55:96:DE:D5:CB:E2:F0:91:F6:91",
  "description": "The MD5 fingerprint of the certificate."
}
array access_footer_links
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "name",
      "url"
    ],
    "properties": {
      "url": {
        "type": "string",
        "example": "https://www.cloudflare.com/privacypolicy/",
        "description": "the hyperlink in the footer link."
      },
      "name": {
        "type": "string",
        "example": "Cloudflare's Privacy Policy",
        "description": "The hypertext in the footer link."
      }
    }
  },
  "example": [
    {
      "url": "https://www.cloudflare.com/privacypolicy/",
      "name": "Cloudflare's Privacy Policy"
    }
  ],
  "description": "The links in the App Launcher footer."
}
object access_gateway_ca_components-schemas-response_collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/access_schemas-certificates"
          }
        }
      }
    }
  ]
}
object access_gateway_ca_components-schemas-single_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/access_schemas-certificates"
        }
      }
    }
  ]
}
boolean access_gateway_seat
{
  "type": "boolean",
  "example": false,
  "description": "True if the seat is part of Gateway.",
  "x-auditable": true
}
object access_generic-oauth-config
{
  "type": "object",
  "properties": {
    "client_id": {
      "type": "string",
      "example": "<your client id>",
      "description": "Your OAuth Client ID"
    },
    "client_secret": {
      "type": "string",
      "example": "<your client secret>",
      "description": "Your OAuth Client Secret",
      "x-sensitive": true
    }
  }
}
object access_geo
{
  "type": "object",
  "example": {
    "country": "US"
  },
  "properties": {
    "country": {
      "type": "string",
      "x-auditable": true
    }
  }
}
object access_github
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_identity-provider"
    },
    {
      "type": "object",
      "properties": {
        "config": {
          "$ref": "#/components/schemas/access_generic-oauth-config"
        }
      }
    }
  ],
  "title": "GitHub"
}
object access_github_organization_rule
{
  "type": "object",
  "title": "Github organization",
  "required": [
    "github-organization"
  ],
  "properties": {
    "github-organization": {
      "type": "object",
      "required": [
        "name",
        "identity_provider_id"
      ],
      "properties": {
        "name": {
          "type": "string",
          "example": "cloudflare",
          "description": "The name of the organization."
        },
        "team": {
          "type": "string",
          "example": "api-team",
          "description": "The name of the team"
        },
        "identity_provider_id": {
          "type": "string",
          "example": "ea85612a-29c8-46c2-bacb-669d65136971",
          "description": "The ID of your Github identity provider."
        }
      }
    }
  },
  "description": "Matches a Github organization.\nRequires a Github identity provider."
}
object access_google
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_identity-provider"
    },
    {
      "type": "object",
      "properties": {
        "config": {
          "allOf": [
            {
              "$ref": "#/components/schemas/access_generic-oauth-config"
            },
            {
              "$ref": "#/components/schemas/access_custom-claims-support"
            }
          ]
        }
      }
    }
  ],
  "title": "Google"
}
object access_google-apps
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_identity-provider"
    },
    {
      "type": "object",
      "properties": {
        "config": {
          "allOf": [
            {
              "$ref": "#/components/schemas/access_generic-oauth-config"
            },
            {
              "$ref": "#/components/schemas/access_custom-claims-support"
            },
            {
              "type": "object",
              "properties": {
                "apps_domain": {
                  "type": "string",
                  "example": "mycompany.com",
                  "description": "Your companies TLD"
                }
              }
            }
          ]
        }
      }
    }
  ],
  "title": "Google Workspace"
}
object access_groups
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/access_id"
    },
    "meta": {
      "$ref": "#/components/schemas/access_meta"
    },
    "schemas": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "urn:ietf:params:scim:schemas:core:2.0:Group"
      ],
      "description": "The list of URIs which indicate the attributes contained within a SCIM resource."
    },
    "externalId": {
      "$ref": "#/components/schemas/access_externalId"
    },
    "displayName": {
      "type": "string",
      "example": "ALL EMPLOYEES",
      "description": "The display name of the SCIM Group resource."
    }
  }
}
string access_groups-name
{
  "type": "string",
  "example": "ALL_EMPLOYEES",
  "description": "The display name of the SCIM Group resource."
}
string access_groups_components-schemas-name
{
  "type": "string",
  "example": "Allow devs",
  "description": "The name of the Access group.",
  "x-auditable": true
}
string access_groups_components-schemas-name-2
{
  "type": "string",
  "example": "Allow devs",
  "description": "The name of the Access group."
}
object access_groups_components-schemas-response_collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/access_components-schemas-groups"
          }
        }
      }
    }
  ]
}
object access_groups_components-schemas-single_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/access_schemas-groups"
        }
      }
    }
  ]
}
object access_groups_components-schemas-single_response-2
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/access_components-schemas-groups"
        }
      }
    }
  ]
}
object access_gsuite_group_rule
{
  "type": "object",
  "title": "Google Workspace group",
  "required": [
    "gsuite"
  ],
  "properties": {
    "gsuite": {
      "type": "object",
      "required": [
        "email",
        "identity_provider_id"
      ],
      "properties": {
        "email": {
          "type": "string",
          "example": "devs@cloudflare.com",
          "description": "The email of the Google Workspace group."
        },
        "identity_provider_id": {
          "type": "string",
          "example": "ea85612a-29c8-46c2-bacb-669d65136971",
          "description": "The ID of your Google Workspace identity provider."
        }
      }
    }
  },
  "description": "Matches a group in Google Workspace.\nRequires a Google Workspace identity provider."
}
string access_header_bg_color
{
  "type": "string",
  "example": "#ff0000",
  "description": "The background color of the App Launcher header."
}
boolean access_http_only_cookie_attribute
{
  "type": "boolean",
  "default": true,
  "example": true,
  "description": "Enables the HttpOnly cookie attribute, which increases security against XSS attacks."
}
string access_id
{
  "type": "string",
  "example": "bd97ef8d-7986-43e3-9ee0-c25dda33e4b0",
  "description": "The unique Cloudflare-generated Id of the SCIM resource."
}
object access_id_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "id": {
              "$ref": "#/components/schemas/access_uuid"
            }
          }
        }
      }
    }
  ]
}
string access_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Identifier.",
  "x-auditable": true
}
object access_identity
{
  "type": "object",
  "properties": {
    "ip": {
      "type": "string",
      "example": "127.0.0.0"
    },
    "geo": {
      "$ref": "#/components/schemas/access_geo"
    },
    "iat": {
      "type": "number",
      "example": 1694791905
    },
    "idp": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string"
        },
        "type": {
          "type": "string"
        }
      }
    },
    "email": {
      "type": "string",
      "example": "test@cloudflare.com"
    },
    "is_warp": {
      "type": "boolean",
      "example": false
    },
    "version": {
      "type": "number",
      "example": 2
    },
    "device_id": {
      "type": "string",
      "example": ""
    },
    "mtls_auth": {
      "type": "object",
      "properties": {
        "auth_status": {
          "type": "string"
        },
        "cert_serial": {
          "type": "string"
        },
        "cert_issuer_dn": {
          "type": "string"
        },
        "cert_presented": {
          "type": "boolean"
        },
        "cert_issuer_ski": {
          "type": "string"
        }
      }
    },
    "user_uuid": {
      "type": "string",
      "example": "57cf8cf2-f55a-4588-9ac9-f5e41e9f09b4"
    },
    "account_id": {
      "type": "string",
      "example": "1234567890",
      "x-auditable": true
    },
    "is_gateway": {
      "type": "boolean",
      "example": false
    },
    "auth_status": {
      "type": "string",
      "example": "NONE",
      "x-auditable": true
    },
    "common_name": {
      "type": "string",
      "example": ""
    },
    "devicePosture": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/access_schemas-device_posture_rule"
      }
    },
    "device_sessions": {
      "$ref": "#/components/schemas/access_string_key_map_device_session"
    },
    "service_token_id": {
      "type": "string",
      "example": ""
    },
    "service_token_status": {
      "type": "boolean",
      "example": false
    }
  }
}
object access_identity-provider
{
  "type": "object",
  "required": [
    "name",
    "type",
    "config"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/access_uuid"
    },
    "name": {
      "$ref": "#/components/schemas/access_components-schemas-name"
    },
    "type": {
      "enum": [
        "onetimepin",
        "azureAD",
        "saml",
        "centrify",
        "facebook",
        "github",
        "google-apps",
        "google",
        "linkedin",
        "oidc",
        "okta",
        "onelogin",
        "pingone",
        "yandex"
      ],
      "type": "string",
      "example": "onetimepin",
      "description": "The type of identity provider. To determine the value for a specific provider, refer to our [developer documentation](https://developers.cloudflare.com/cloudflare-one/identity/idp-integration/)."
    },
    "config": {
      "type": "object",
      "description": "The configuration parameters for the identity provider. To view the required parameters for a specific provider, refer to our [developer documentation](https://developers.cloudflare.com/cloudflare-one/identity/idp-integration/)."
    },
    "scim_config": {
      "type": "object",
      "properties": {
        "secret": {
          "type": "string",
          "readOnly": true,
          "description": "A read-only token generated when the SCIM integration is enabled for the first time.  It is redacted on subsequent requests.  If you lose this you will need to refresh it at /access/identity_providers/:idpID/refresh_scim_secret.",
          "x-sensitive": true
        },
        "enabled": {
          "type": "boolean",
          "default": false,
          "description": "A flag to enable or disable SCIM for the identity provider.",
          "x-auditable": true,
          "x-stainless-terraform-configurability": "computed_optional"
        },
        "scim_base_url": {
          "type": "string",
          "readOnly": true,
          "description": "The base URL of Cloudflare's SCIM V2.0 API endpoint.",
          "x-auditable": true
        },
        "seat_deprovision": {
          "type": "boolean",
          "default": false,
          "description": "A flag to remove a user's seat in Zero Trust when they have been deprovisioned in the Identity Provider.  This cannot be enabled unless user_deprovision is also enabled.",
          "x-auditable": true,
          "x-stainless-terraform-configurability": "computed_optional"
        },
        "user_deprovision": {
          "type": "boolean",
          "default": false,
          "description": "A flag to enable revoking a user's session in Access and Gateway when they have been deprovisioned in the Identity Provider.",
          "x-auditable": true,
          "x-stainless-terraform-configurability": "computed_optional"
        },
        "identity_update_behavior": {
          "enum": [
            "automatic",
            "reauth",
            "no_action"
          ],
          "type": "string",
          "default": "no_action",
          "description": "Indicates how a SCIM event updates a user identity used for policy evaluation. Use \"automatic\" to automatically update a user's identity and augment it with fields from the SCIM user resource. Use \"reauth\" to force re-authentication on group membership updates, user identity update will only occur after successful re-authentication. With \"reauth\" identities will not contain fields from the SCIM user resource. With \"no_action\" identities will not be changed by SCIM updates in any way and users will not be prompted to reauthenticate.",
          "x-auditable": true,
          "x-stainless-terraform-configurability": "computed_optional"
        }
      },
      "description": "The configuration settings for enabling a System for Cross-Domain Identity Management (SCIM) with the identity provider."
    }
  }
}
object access_identity-providers
{
  "type": "object",
  "anyOf": [
    {
      "$ref": "#/components/schemas/access_azureAD"
    },
    {
      "$ref": "#/components/schemas/access_centrify"
    },
    {
      "$ref": "#/components/schemas/access_facebook"
    },
    {
      "$ref": "#/components/schemas/access_github"
    },
    {
      "$ref": "#/components/schemas/access_google"
    },
    {
      "$ref": "#/components/schemas/access_google-apps"
    },
    {
      "$ref": "#/components/schemas/access_linkedin"
    },
    {
      "$ref": "#/components/schemas/access_oidc"
    },
    {
      "$ref": "#/components/schemas/access_okta"
    },
    {
      "$ref": "#/components/schemas/access_onelogin"
    },
    {
      "$ref": "#/components/schemas/access_pingone"
    },
    {
      "$ref": "#/components/schemas/access_saml"
    },
    {
      "$ref": "#/components/schemas/access_yandex"
    },
    {
      "$ref": "#/components/schemas/access_onetimepin"
    }
  ]
}
object access_identity-providers_components-schemas-response_collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/access_schemas-azureAD"
              },
              {
                "$ref": "#/components/schemas/access_schemas-centrify"
              },
              {
                "$ref": "#/components/schemas/access_schemas-facebook"
              },
              {
                "$ref": "#/components/schemas/access_schemas-github"
              },
              {
                "$ref": "#/components/schemas/access_schemas-google"
              },
              {
                "$ref": "#/components/schemas/access_schemas-google-apps"
              },
              {
                "$ref": "#/components/schemas/access_schemas-linkedin"
              },
              {
                "$ref": "#/components/schemas/access_schemas-oidc"
              },
              {
                "$ref": "#/components/schemas/access_schemas-okta"
              },
              {
                "$ref": "#/components/schemas/access_schemas-onelogin"
              },
              {
                "$ref": "#/components/schemas/access_schemas-pingone"
              },
              {
                "$ref": "#/components/schemas/access_schemas-saml"
              },
              {
                "$ref": "#/components/schemas/access_schemas-yandex"
              },
              {
                "$ref": "#/components/schemas/access_schemas-onetimepin"
              }
            ]
          }
        }
      }
    }
  ]
}
object access_identity-providers_components-schemas-single_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/access_schemas-identity-providers"
        }
      }
    }
  ]
}
array access_idp_id
{
  "type": "array",
  "items": {
    "type": "string"
  },
  "example": [
    "df7e2w5f-02b7-4d9d-af26-8d1988fca630",
    "0194ae2c-efcf-7cfb-8884-055f1a161fa5"
  ],
  "description": "The unique Id of the IdP that has SCIM enabled."
}
string access_idp_resource_id
{
  "type": "string",
  "example": "all_employees",
  "description": "The IdP-generated Id of the SCIM Group resource; also known as the \"external Id\"."
}
string access_image_url
{
  "type": "string",
  "example": "https://www.cloudflare.com/img/logo-web-badges/cf-logo-on-white-bg.svg",
  "description": "The URL of the image shown on the landing page."
}
array access_include
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/access_rule"
  },
  "description": "Rules evaluated with an OR logical operator. A user needs to meet only one of the Include rules."
}
object access_infra_app_req_embedded_policies
{
  "type": "object",
  "properties": {
    "policies": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/access_infra_policy_req"
      },
      "description": "The policies that Access applies to the application."
    }
  }
}
object access_infra_app_resp_embedded_policies
{
  "type": "object",
  "properties": {
    "policies": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/access_infra_policy_resp"
      }
    }
  },
  "description": "The policies that Access applies to the application."
}
object access_infra_mfa_config
{
  "type": "object",
  "properties": {
    "mfa_disabled": {
      "type": "boolean",
      "example": false,
      "description": "Indicates whether to disable MFA for this resource. This option is available at the application and policy level."
    },
    "session_duration": {
      "type": "string",
      "example": "24h",
      "description": "Defines the duration of an MFA session. Must be in minutes (m) or hours (h). Minimum: 0m. Maximum: 720h (30 days). Examples: `5m` or `24h`."
    },
    "allowed_authenticators": {
      "type": "array",
      "items": {
        "enum": [
          "ssh_piv_key"
        ],
        "type": "string"
      },
      "example": [
        "ssh_piv_key"
      ],
      "description": "Lists the MFA methods that users can authenticate with. For infrastructure applications, only `ssh_piv_key` is supported."
    }
  },
  "description": "Configures multi-factor authentication (MFA) settings for infrastructure applications.",
  "x-auditable": true
}
object access_infra_policy_req
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_base_policy_req"
    }
  ],
  "properties": {
    "mfa_config": {
      "$ref": "#/components/schemas/access_infra_mfa_config"
    },
    "connection_rules": {
      "$ref": "#/components/schemas/access_connection_rules_infra"
    }
  }
}
object access_infra_policy_resp
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_base_policy_resp"
    }
  ],
  "properties": {
    "mfa_config": {
      "$ref": "#/components/schemas/access_infra_mfa_config"
    },
    "connection_rules": {
      "$ref": "#/components/schemas/access_connection_rules_infra"
    }
  }
}
object access_infra_props
{
  "type": "object",
  "allOf": [
    {
      "properties": {
        "name": {
          "$ref": "#/components/schemas/access_apps_components-schemas-name"
        },
        "type": {
          "allOf": [
            {
              "$ref": "#/components/schemas/access_type"
            },
            {
              "example": "infrastructure"
            }
          ]
        }
      }
    },
    {
      "$ref": "#/components/schemas/access_app_resp_embedded_target_criteria_infra"
    }
  ],
  "title": "Infrastructure Application",
  "required": [
    "type",
    "target_criteria"
  ]
}
string access_ip
{
  "type": "string",
  "example": "198.41.129.166",
  "description": "The IP address of the authenticating user."
}
object access_ip_list_rule
{
  "type": "object",
  "title": "IP list",
  "required": [
    "ip_list"
  ],
  "properties": {
    "ip_list": {
      "type": "object",
      "required": [
        "id"
      ],
      "properties": {
        "id": {
          "type": "string",
          "example": "aa0a4aab-672b-4bdb-bc33-a59f1130a11f",
          "description": "The ID of a previously created IP list."
        }
      }
    }
  },
  "description": "Matches an IP address from a list."
}
object access_ip_rule
{
  "type": "object",
  "title": "IP ranges",
  "required": [
    "ip"
  ],
  "properties": {
    "ip": {
      "type": "object",
      "required": [
        "ip"
      ],
      "properties": {
        "ip": {
          "type": "string",
          "example": "2400:cb00:21:10a::/64",
          "description": "An IPv4 or IPv6 CIDR block."
        }
      }
    }
  },
  "description": "Matches an IP address block."
}
boolean access_is_default
{
  "type": "boolean",
  "description": "Whether this is the default group",
  "x-auditable": true
}
boolean access_is_ui_read_only
{
  "type": "boolean",
  "default": false,
  "example": "false",
  "description": "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.",
  "x-auditable": true
}
boolean access_isolation_required
{
  "type": "boolean",
  "example": false,
  "description": "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."
}
object access_key_config
{
  "type": "object",
  "properties": {
    "last_key_rotation_at": {
      "$ref": "#/components/schemas/access_last_key_rotation_at"
    },
    "days_until_next_rotation": {
      "$ref": "#/components/schemas/access_days_until_next_rotation"
    },
    "key_rotation_interval_days": {
      "$ref": "#/components/schemas/access_key_rotation_interval_days"
    }
  }
}
number access_key_rotation_interval_days
{
  "type": "number",
  "example": 30,
  "maximum": 365,
  "minimum": 21,
  "description": "The number of days between key rotations.",
  "x-auditable": true
}
object access_keys_components-schemas-single_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/access_key_config"
        }
      }
    }
  ]
}
object access_landing_page_design
{
  "type": "object",
  "properties": {
    "title": {
      "$ref": "#/components/schemas/access_title"
    },
    "message": {
      "$ref": "#/components/schemas/access_message"
    },
    "image_url": {
      "$ref": "#/components/schemas/access_image_url"
    },
    "button_color": {
      "$ref": "#/components/schemas/access_button_color"
    },
    "button_text_color": {
      "$ref": "#/components/schemas/access_button_text_color"
    }
  },
  "description": "The design of the App Launcher landing page shown to users when they log in."
}
string access_last_key_rotation_at
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-01T05:20:00.12345Z",
  "description": "The timestamp of the previous key rotation.",
  "x-auditable": true
}
object access_last_seen_identity_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "allOf": [
            {
              "$ref": "#/components/schemas/access_identity"
            }
          ]
        }
      }
    }
  ]
}
string access_last_successful_login
{
  "type": "string",
  "format": "date-time",
  "example": "2020-07-01T05:20:00Z",
  "description": "The time at which the user last successfully logged in."
}
integer access_limit
{
  "type": "integer",
  "default": 20,
  "example": 10,
  "description": "The maximum number of update logs to retrieve."
}
object access_linked_app_token_rule
{
  "type": "object",
  "title": "Linked App Token",
  "required": [
    "linked_app_token"
  ],
  "properties": {
    "linked_app_token": {
      "type": "object",
      "required": [
        "app_uid"
      ],
      "properties": {
        "app_uid": {
          "type": "string",
          "example": "aa0a4aab-672b-4bdb-bc33-a59f1130a11f",
          "description": "The ID of an Access OIDC SaaS application"
        }
      }
    }
  },
  "description": "Matches OAuth 2.0 access tokens issued by the specified Access OIDC SaaS application. Only compatible with non_identity and bypass decisions."
}
object access_linkedin
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_identity-provider"
    },
    {
      "type": "object",
      "properties": {
        "config": {
          "$ref": "#/components/schemas/access_generic-oauth-config"
        }
      }
    }
  ],
  "title": "LinkedIn"
}
object access_login_design
{
  "type": "object",
  "properties": {
    "logo_path": {
      "type": "string",
      "example": "https://example.com/logo.png",
      "description": "The URL of the logo on your login page."
    },
    "text_color": {
      "type": "string",
      "example": "#c5ed1b",
      "description": "The text color on your login page."
    },
    "footer_text": {
      "type": "string",
      "example": "This is an example description.",
      "description": "The text at the bottom of your login page."
    },
    "header_text": {
      "type": "string",
      "example": "This is an example description.",
      "description": "The text at the top of your login page."
    },
    "background_color": {
      "type": "string",
      "example": "#c5ed1b",
      "description": "The background color on your login page."
    }
  }
}
object access_login_method_rule
{
  "type": "object",
  "title": "Login Method",
  "required": [
    "login_method"
  ],
  "properties": {
    "login_method": {
      "type": "object",
      "required": [
        "id"
      ],
      "properties": {
        "id": {
          "type": "string",
          "example": "aa0a4aab-672b-4bdb-bc33-a59f1130a11f",
          "description": "The ID of an identity provider."
        }
      }
    }
  },
  "description": "Matches a specific identity provider id."
}
string access_logo_url
{
  "type": "string",
  "example": "https://www.cloudflare.com/img/logo-web-badges/cf-logo-on-white-bg.svg",
  "description": "The image URL for the logo shown in the App Launcher dashboard."
}
number access_max_age
{
  "type": "number",
  "example": -1,
  "maximum": 86400,
  "minimum": -1,
  "description": "The maximum number of seconds the results of a preflight request can be cached."
}
object access_mcp_portal_props
{
  "type": "object",
  "title": "MCP Server Portal Application",
  "required": [
    "type"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/access_apps_components-schemas-name"
    },
    "tags": {
      "$ref": "#/components/schemas/access_tags"
    },
    "type": {
      "allOf": [
        {
          "$ref": "#/components/schemas/access_type"
        },
        {
          "example": "mcp_portal"
        }
      ]
    },
    "domain": {
      "$ref": "#/components/schemas/access_domain"
    },
    "logo_url": {
      "$ref": "#/components/schemas/access_logo_url"
    },
    "scim_config": {
      "$ref": "#/components/schemas/access_scim_config"
    },
    "allowed_idps": {
      "$ref": "#/components/schemas/access_allowed_idps"
    },
    "custom_pages": {
      "$ref": "#/components/schemas/access_schemas-custom_pages"
    },
    "destinations": {
      "$ref": "#/components/schemas/access_destinations"
    },
    "custom_deny_url": {
      "$ref": "#/components/schemas/access_custom_deny_url"
    },
    "session_duration": {
      "$ref": "#/components/schemas/access_schemas-session_duration"
    },
    "custom_deny_message": {
      "$ref": "#/components/schemas/access_custom_deny_message"
    },
    "oauth_configuration": {
      "$ref": "#/components/schemas/access_oauth_configuration"
    },
    "options_preflight_bypass": {
      "$ref": "#/components/schemas/access_options_preflight_bypass"
    },
    "auto_redirect_to_identity": {
      "$ref": "#/components/schemas/access_schemas-auto_redirect_to_identity"
    },
    "http_only_cookie_attribute": {
      "$ref": "#/components/schemas/access_http_only_cookie_attribute"
    },
    "same_site_cookie_attribute": {
      "$ref": "#/components/schemas/access_same_site_cookie_attribute"
    },
    "allow_authenticate_via_warp": {
      "$ref": "#/components/schemas/access_schemas-allow_authenticate_via_warp"
    },
    "custom_non_identity_deny_url": {
      "$ref": "#/components/schemas/access_custom_non_identity_deny_url"
    }
  }
}
object access_mcp_props
{
  "type": "object",
  "title": "MCP Server Application",
  "required": [
    "type"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/access_apps_components-schemas-name"
    },
    "tags": {
      "$ref": "#/components/schemas/access_tags"
    },
    "type": {
      "allOf": [
        {
          "$ref": "#/components/schemas/access_type"
        },
        {
          "example": "mcp"
        }
      ]
    },
    "logo_url": {
      "$ref": "#/components/schemas/access_logo_url"
    },
    "scim_config": {
      "$ref": "#/components/schemas/access_scim_config"
    },
    "allowed_idps": {
      "$ref": "#/components/schemas/access_allowed_idps"
    },
    "custom_pages": {
      "$ref": "#/components/schemas/access_schemas-custom_pages"
    },
    "destinations": {
      "$ref": "#/components/schemas/access_destinations"
    },
    "custom_deny_url": {
      "$ref": "#/components/schemas/access_custom_deny_url"
    },
    "session_duration": {
      "$ref": "#/components/schemas/access_schemas-session_duration"
    },
    "custom_deny_message": {
      "$ref": "#/components/schemas/access_custom_deny_message"
    },
    "oauth_configuration": {
      "$ref": "#/components/schemas/access_oauth_configuration"
    },
    "options_preflight_bypass": {
      "$ref": "#/components/schemas/access_options_preflight_bypass"
    },
    "auto_redirect_to_identity": {
      "$ref": "#/components/schemas/access_schemas-auto_redirect_to_identity"
    },
    "http_only_cookie_attribute": {
      "$ref": "#/components/schemas/access_http_only_cookie_attribute"
    },
    "same_site_cookie_attribute": {
      "$ref": "#/components/schemas/access_same_site_cookie_attribute"
    },
    "allow_authenticate_via_warp": {
      "$ref": "#/components/schemas/access_schemas-allow_authenticate_via_warp"
    },
    "custom_non_identity_deny_url": {
      "$ref": "#/components/schemas/access_custom_non_identity_deny_url"
    }
  }
}
string access_message
{
  "type": "string",
  "example": "Log in below to reach your applications behind Access.",
  "description": "The message shown on the landing page."
}
array access_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
object access_meta
{
  "type": "object",
  "properties": {
    "created": {
      "type": "string",
      "format": "date-time",
      "example": "2025-01-01T00:00:00Z",
      "description": "The timestamp of when the SCIM resource was created."
    },
    "lastModified": {
      "type": "string",
      "format": "date-time",
      "example": "2025-01-02T00:00:00Z",
      "description": "The timestamp of when the SCIM resource was last modified."
    }
  },
  "description": "The metadata of the SCIM resource."
}
object access_mfa_config
{
  "type": "object",
  "properties": {
    "mfa_disabled": {
      "type": "boolean",
      "example": false,
      "description": "Indicates whether to disable MFA for this resource. This option is available at the application and policy level."
    },
    "session_duration": {
      "type": "string",
      "example": "24h",
      "description": "Defines the duration of an MFA session. Must be in minutes (m) or hours (h). Minimum: 0m. Maximum: 720h (30 days). Examples:`5m` or `24h`."
    },
    "allowed_authenticators": {
      "type": "array",
      "items": {
        "enum": [
          "totp",
          "biometrics",
          "security_key"
        ],
        "type": "string"
      },
      "example": [
        "totp",
        "biometrics",
        "security_key"
      ],
      "description": "Lists the MFA methods that users can authenticate with."
    }
  },
  "description": "Configures multi-factor authentication (MFA) settings.",
  "x-auditable": true
}
boolean access_mfa_required_for_all_apps
{
  "type": "boolean",
  "default": false,
  "example": false,
  "description": "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.",
  "x-auditable": true
}
object access_mfa_ssh_piv_key_requirements
{
  "type": "object",
  "properties": {
    "pin_policy": {
      "enum": [
        "never",
        "once",
        "always"
      ],
      "type": "string",
      "example": "always",
      "description": "Defines when a PIN is required to use the SSH key. Valid values: `never` (no PIN required), `once` (PIN required once per session), `always` (PIN required for each use)."
    },
    "ssh_key_size": {
      "type": "array",
      "items": {
        "enum": [
          256,
          384,
          521,
          2048,
          3072,
          4096
        ],
        "type": "integer"
      },
      "example": [
        256,
        2048
      ],
      "description": "Specifies the allowed SSH key sizes in bits. Valid sizes depend on key type. Ed25519 has a fixed key size and does not accept this parameter."
    },
    "ssh_key_type": {
      "type": "array",
      "items": {
        "enum": [
          "ecdsa",
          "ed25519",
          "rsa"
        ],
        "type": "string"
      },
      "example": [
        "ecdsa",
        "rsa"
      ],
      "description": "Specifies the allowed SSH key types. Valid values are `ecdsa`, `ed25519`, and `rsa`."
    },
    "touch_policy": {
      "enum": [
        "never",
        "always",
        "cached"
      ],
      "type": "string",
      "example": "always",
      "description": "Defines when physical touch is required to use the SSH key. Valid values: `never` (no touch required), `always` (touch required for each use), `cached` (touch cached for 15 seconds)."
    },
    "require_fips_device": {
      "type": "boolean",
      "example": true,
      "description": "Requires the SSH PIV key to be stored on a FIPS 140-2 Level 1 or higher validated device."
    }
  },
  "description": "Configures SSH PIV key requirements for MFA using hardware security keys.",
  "x-auditable": true
}
string access_name
{
  "type": "string",
  "example": "Widget Corps Internal Applications",
  "description": "The name of your Zero Trust organization.",
  "x-auditable": true
}
object access_name_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "name": {
              "$ref": "#/components/schemas/access_tags_components-schemas-name"
            }
          }
        }
      }
    }
  ]
}
string access_nonce
{
  "type": "string",
  "example": "X1aXj1lFVcqqyoXF"
}
object access_oauth_configuration
{
  "type": "object",
  "properties": {
    "grant": {
      "type": "object",
      "properties": {
        "session_duration": {
          "type": "string",
          "example": "24h",
          "description": "The duration of the OAuth session. Must be in the format `300ms` or `2h45m`. Valid time units are ns, us (or µs), ms, s, m, h."
        },
        "access_token_lifetime": {
          "type": "string",
          "example": "5m",
          "description": "The lifetime of the access token. Must be in the format `300ms` or `2h45m`. Valid time units are ns, us (or µs), ms, s, m, h."
        }
      },
      "description": "Settings for OAuth grant behavior."
    },
    "enabled": {
      "type": "boolean",
      "default": true,
      "description": "Whether the OAuth configuration is enabled for this application. When set to `false`, Access will not handle OAuth for this application. Defaults to `true` if omitted.\n"
    },
    "dynamic_client_registration": {
      "type": "object",
      "properties": {
        "enabled": {
          "type": "boolean",
          "description": "Whether dynamic client registration is enabled."
        },
        "allowed_uris": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "example": [
            "https://example.com/callback"
          ],
          "description": "The URIs that are allowed as redirect URIs for dynamically registered clients. Must use the `https` protocol. Paths may end in `/*` to match all sub-paths.\n"
        },
        "allow_any_on_loopback": {
          "type": "boolean",
          "description": "Allows any client with redirect URIs on 127.0.0.1."
        },
        "allow_any_on_localhost": {
          "type": "boolean",
          "description": "Allows any client with redirect URIs on localhost."
        }
      },
      "description": "Settings for OAuth dynamic client registration."
    }
  },
  "description": "**Beta:** Optional configuration for managing an OAuth authorization flow controlled by Access. When set, Access will act as the OAuth authorization server for this application. Only compatible with OAuth clients that support [RFC 8707](https://datatracker.ietf.org/doc/html/rfc8707) (Resource Indicators for OAuth 2.0). This feature is currently in beta.\n"
}
object access_oidc
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_identity-provider"
    },
    {
      "type": "object",
      "properties": {
        "config": {
          "allOf": [
            {
              "$ref": "#/components/schemas/access_generic-oauth-config"
            },
            {
              "$ref": "#/components/schemas/access_custom-claims-support"
            },
            {
              "type": "object",
              "properties": {
                "scopes": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "example": [
                    "openid",
                    "email",
                    "profile"
                  ],
                  "description": "OAuth scopes"
                },
                "auth_url": {
                  "type": "string",
                  "example": "https://accounts.google.com/o/oauth2/auth",
                  "description": "The authorization_endpoint URL of your IdP"
                },
                "certs_url": {
                  "type": "string",
                  "example": "https://www.googleapis.com/oauth2/v3/certs",
                  "description": "The jwks_uri endpoint of your IdP to allow the IdP keys to sign the tokens"
                },
                "token_url": {
                  "type": "string",
                  "example": "https://accounts.google.com/o/oauth2/token",
                  "description": "The token_endpoint URL of your IdP"
                },
                "pkce_enabled": {
                  "type": "boolean",
                  "description": "Enable Proof Key for Code Exchange (PKCE)"
                }
              }
            }
          ]
        }
      }
    }
  ],
  "title": "Generic OAuth"
}
object access_oidc_claim_rule
{
  "type": "object",
  "title": "OIDC claim",
  "required": [
    "oidc"
  ],
  "properties": {
    "oidc": {
      "type": "object",
      "required": [
        "claim_name",
        "claim_value",
        "identity_provider_id"
      ],
      "properties": {
        "claim_name": {
          "type": "string",
          "example": "group",
          "description": "The name of the OIDC claim."
        },
        "claim_value": {
          "type": "string",
          "example": "devs@cloudflare.com",
          "description": "The OIDC claim value to look for."
        },
        "identity_provider_id": {
          "type": "string",
          "example": "ea85612a-29c8-46c2-bacb-669d65136971",
          "description": "The ID of your OIDC identity provider."
        }
      }
    }
  },
  "description": "Matches an OIDC claim.\nRequires an OIDC identity provider."
}
object access_oidc_saas_app
{
  "type": "object",
  "title": "OIDC SaaS App",
  "properties": {
    "scopes": {
      "type": "array",
      "items": {
        "enum": [
          "openid",
          "groups",
          "email",
          "profile"
        ],
        "type": "string"
      },
      "example": [
        "openid",
        "groups",
        "email",
        "profile"
      ],
      "description": "Define the user information shared with access, \"offline_access\" scope will be automatically enabled if refresh tokens are enabled"
    },
    "auth_type": {
      "enum": [
        "saml",
        "oidc"
      ],
      "type": "string",
      "example": "oidc",
      "description": "Identifier of the authentication protocol used for the saas app. Required for OIDC."
    },
    "client_id": {
      "type": "string",
      "example": "oidc client id",
      "description": "The application client id"
    },
    "created_at": {
      "$ref": "#/components/schemas/access_created_at"
    },
    "public_key": {
      "type": "string",
      "example": "example unique name",
      "description": "The Access public certificate that will be used to verify your identity."
    },
    "updated_at": {
      "$ref": "#/components/schemas/access_updated_at"
    },
    "grant_types": {
      "type": "array",
      "items": {
        "enum": [
          "authorization_code",
          "authorization_code_with_pkce",
          "refresh_tokens",
          "hybrid",
          "implicit"
        ],
        "type": "string"
      },
      "example": [
        "authorization_code"
      ],
      "description": "The OIDC flows supported by this application"
    },
    "client_secret": {
      "type": "string",
      "example": "oidc client secret",
      "description": "The application client secret, only returned on POST request.",
      "x-sensitive": true
    },
    "custom_claims": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "example": "family_name",
            "description": "The name of the claim."
          },
          "scope": {
            "enum": [
              "groups",
              "profile",
              "email",
              "openid"
            ],
            "type": "string",
            "example": "profile",
            "description": "The scope of the claim."
          },
          "source": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "example": "last_name",
                "description": "The name of the IdP claim."
              },
              "name_by_idp": {
                "type": "object",
                "example": {
                  "exampleIdPID1": "ClaimName1",
                  "exampleIdPID2": "ClaimName2"
                },
                "description": "A mapping from IdP ID to claim name.",
                "additionalProperties": {
                  "type": "string"
                }
              }
            }
          },
          "required": {
            "type": "boolean",
            "example": true,
            "description": "If the claim is required when building an OIDC token."
          }
        }
      }
    },
    "redirect_uris": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "https://example.com"
      ],
      "description": "The permitted URL's for Cloudflare to return Authorization codes and Access/ID tokens"
    },
    "app_launcher_url": {
      "type": "string",
      "example": "https://example.com/login",
      "description": "The URL where this applications tile redirects users"
    },
    "group_filter_regex": {
      "type": "string",
      "example": "^GROUP_FILTER-*$",
      "description": "A regex to filter Cloudflare groups returned in ID token and userinfo endpoint"
    },
    "access_token_lifetime": {
      "type": "string",
      "example": "5m",
      "description": "The lifetime of the OIDC Access Token after creation. Valid units are m,h. Must be greater than or equal to 1m and less than or equal to 24h."
    },
    "refresh_token_options": {
      "type": "object",
      "properties": {
        "lifetime": {
          "type": "string",
          "example": "30d",
          "description": "How long a refresh token will be valid for after creation. Valid units are m,h,d. Must be longer than 1m."
        }
      }
    },
    "hybrid_and_implicit_options": {
      "type": "object",
      "properties": {
        "return_id_token_from_authorization_endpoint": {
          "type": "boolean",
          "description": "If an ID Token should be returned from the OIDC Authorization endpoint"
        },
        "return_access_token_from_authorization_endpoint": {
          "type": "boolean",
          "description": "If an Access Token should be returned from the OIDC Authorization endpoint"
        }
      }
    },
    "allow_pkce_without_client_secret": {
      "type": "boolean",
      "example": true,
      "description": "If client secret should be required on the token endpoint when authorization_code_with_pkce grant is used."
    }
  }
}
object access_okta
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_identity-provider"
    },
    {
      "type": "object",
      "properties": {
        "config": {
          "allOf": [
            {
              "$ref": "#/components/schemas/access_generic-oauth-config"
            },
            {
              "$ref": "#/components/schemas/access_custom-claims-support"
            },
            {
              "type": "object",
              "properties": {
                "okta_account": {
                  "type": "string",
                  "example": "https://dev-abc123.oktapreview.com",
                  "description": "Your okta account url",
                  "x-auditable": true
                },
                "authorization_server_id": {
                  "type": "string",
                  "example": "aus9o8wzkhckw9TLa0h7z",
                  "description": "Your okta authorization server id"
                }
              }
            }
          ]
        }
      }
    }
  ],
  "title": "Okta"
}
object access_okta_group_rule
{
  "type": "object",
  "title": "Okta group",
  "required": [
    "okta"
  ],
  "properties": {
    "okta": {
      "type": "object",
      "required": [
        "name",
        "identity_provider_id"
      ],
      "properties": {
        "name": {
          "type": "string",
          "example": "devs",
          "description": "The name of the Okta group."
        },
        "identity_provider_id": {
          "type": "string",
          "example": "ea85612a-29c8-46c2-bacb-669d65136971",
          "description": "The ID of your Okta identity provider."
        }
      }
    }
  },
  "description": "Matches an Okta group.\nRequires an Okta identity provider."
}
object access_onelogin
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_identity-provider"
    },
    {
      "type": "object",
      "properties": {
        "config": {
          "allOf": [
            {
              "$ref": "#/components/schemas/access_generic-oauth-config"
            },
            {
              "$ref": "#/components/schemas/access_custom-claims-support"
            },
            {
              "type": "object",
              "properties": {
                "onelogin_account": {
                  "type": "string",
                  "example": "https://mycompany.onelogin.com",
                  "description": "Your OneLogin account url",
                  "x-auditable": true
                }
              }
            }
          ]
        }
      }
    }
  ],
  "title": "OneLogin"
}
object access_onetimepin
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_identity-provider"
    },
    {
      "properties": {
        "type": {
          "enum": [
            "onetimepin"
          ],
          "type": "string"
        },
        "config": {
          "type": "object",
          "properties": {
            "redirect_url": {
              "type": "string",
              "readOnly": true
            }
          }
        }
      }
    }
  ],
  "title": "One Time Pin"
}
boolean access_options_preflight_bypass
{
  "type": "boolean",
  "example": true,
  "description": "Allows options preflight requests to bypass Access authentication and go directly to the origin. Cannot turn on if cors_headers is set."
}
object access_org_mfa_config
{
  "type": "object",
  "properties": {
    "required_aaguids": {
      "type": "string",
      "format": "uuid",
      "example": "2fc0579f-8113-47ea-b116-bb5a8db9202a",
      "description": "Specifies a Cloudflare List of required FIDO2 authenticator device AAGUIDs."
    },
    "session_duration": {
      "type": "string",
      "example": "24h",
      "description": "Defines the duration of an MFA session. Must be in minutes (m) or hours (h). Minimum: 0m. Maximum: 720h (30 days). Examples:`5m` or `24h`."
    },
    "allowed_authenticators": {
      "type": "array",
      "items": {
        "enum": [
          "totp",
          "biometrics",
          "security_key",
          "ssh_piv_key"
        ],
        "type": "string"
      },
      "example": [
        "totp",
        "biometrics",
        "security_key"
      ],
      "description": "Lists the MFA methods that users can authenticate with."
    },
    "amr_matching_session_duration": {
      "type": "string",
      "example": "12h",
      "description": "Allows a user to skip MFA via Authentication Method Reference (AMR) matching when the AMR claim provided by the IdP the user used to authenticate contains \"mfa\". Must be in minutes (m) or hours (h). Minimum: 0m. Maximum: 720h (30 days)."
    }
  },
  "description": "Configures multi-factor authentication (MFA) settings for an organization.",
  "x-auditable": true
}
object access_organizations
{
  "type": "object",
  "properties": {
    "name": {
      "$ref": "#/components/schemas/access_name"
    },
    "created_at": {
      "$ref": "#/components/schemas/access_created_at"
    },
    "mfa_config": {
      "$ref": "#/components/schemas/access_org_mfa_config"
    },
    "updated_at": {
      "$ref": "#/components/schemas/access_updated_at"
    },
    "auth_domain": {
      "$ref": "#/components/schemas/access_auth_domain"
    },
    "custom_pages": {
      "$ref": "#/components/schemas/access_custom_pages"
    },
    "login_design": {
      "$ref": "#/components/schemas/access_login_design"
    },
    "is_ui_read_only": {
      "$ref": "#/components/schemas/access_is_ui_read_only"
    },
    "session_duration": {
      "$ref": "#/components/schemas/access_session_duration"
    },
    "deny_unmatched_requests": {
      "$ref": "#/components/schemas/access_deny_unmatched_requests"
    },
    "auto_redirect_to_identity": {
      "$ref": "#/components/schemas/access_auto_redirect_to_identity"
    },
    "mfa_required_for_all_apps": {
      "$ref": "#/components/schemas/access_mfa_required_for_all_apps"
    },
    "ui_read_only_toggle_reason": {
      "$ref": "#/components/schemas/access_ui_read_only_toggle_reason"
    },
    "warp_auth_session_duration": {
      "$ref": "#/components/schemas/access_warp_auth_session_duration"
    },
    "allow_authenticate_via_warp": {
      "$ref": "#/components/schemas/access_allow_authenticate_via_warp"
    },
    "mfa_ssh_piv_key_requirements": {
      "$ref": "#/components/schemas/access_mfa_ssh_piv_key_requirements"
    },
    "user_seat_expiration_inactive_time": {
      "$ref": "#/components/schemas/access_user_seat_expiration_inactive_time"
    },
    "deny_unmatched_requests_exempted_zone_names": {
      "$ref": "#/components/schemas/access_deny_unmatched_requests_exempted_zone_names"
    }
  }
}
object access_organizations_components-schemas-identifier
{
  "example": "699d98642c564d2e855e9661899b7252"
}
string access_organizations_components-schemas-name
{
  "type": "string",
  "example": "Widget Corps Internal Applications",
  "description": "The name of your Zero Trust organization."
}
object access_organizations_components-schemas-single_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/access_schemas-organizations"
        }
      }
    }
  ]
}
boolean access_path_cookie_attribute
{
  "type": "boolean",
  "default": false,
  "example": true,
  "description": "Enables cookie paths to scope an application's JWT to the application path. If disabled, the JWT will scope to the hostname by default"
}
integer access_percent_approved
{
  "type": "integer",
  "example": 25,
  "description": "The percentage of (processed) users approved based on policy evaluation results.",
  "x-auditable": true
}
integer access_percent_blocked
{
  "type": "integer",
  "example": 25,
  "description": "The percentage of (processed) users blocked based on policy evaluation results.",
  "x-auditable": true
}
integer access_percent_errored
{
  "type": "integer",
  "example": 25,
  "description": "The percentage of (processed) users errored based on policy evaluation results.",
  "x-auditable": true
}
integer access_percent_users_processed
{
  "type": "integer",
  "example": 50,
  "description": "The percentage of users processed so far (of the entire user base)."
}
object access_pingone
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_identity-provider"
    },
    {
      "type": "object",
      "properties": {
        "config": {
          "allOf": [
            {
              "$ref": "#/components/schemas/access_generic-oauth-config"
            },
            {
              "$ref": "#/components/schemas/access_custom-claims-support"
            },
            {
              "type": "object",
              "properties": {
                "ping_env_id": {
                  "type": "string",
                  "example": "342b5660-0c32-4936-a5a4-ce21fae57b0a",
                  "description": "Your PingOne environment identifier",
                  "x-auditable": true
                }
              }
            }
          ]
        }
      }
    }
  ],
  "title": "PingOne"
}
object access_policies
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/access_uuid"
    },
    "name": {
      "$ref": "#/components/schemas/access_policies_components-schemas-name"
    },
    "exclude": {
      "$ref": "#/components/schemas/access_components-schemas-exclude"
    },
    "include": {
      "$ref": "#/components/schemas/access_include"
    },
    "require": {
      "$ref": "#/components/schemas/access_components-schemas-require"
    },
    "decision": {
      "$ref": "#/components/schemas/access_schemas-decision"
    },
    "created_at": {
      "$ref": "#/components/schemas/access_timestamp"
    },
    "precedence": {
      "$ref": "#/components/schemas/access_schemas-precedence"
    },
    "updated_at": {
      "$ref": "#/components/schemas/access_timestamp"
    },
    "approval_groups": {
      "$ref": "#/components/schemas/access_schemas-approval_groups"
    },
    "approval_required": {
      "$ref": "#/components/schemas/access_schemas-approval_required"
    },
    "isolation_required": {
      "$ref": "#/components/schemas/access_schemas-isolation_required"
    },
    "purpose_justification_prompt": {
      "$ref": "#/components/schemas/access_purpose_justification_prompt"
    },
    "purpose_justification_required": {
      "$ref": "#/components/schemas/access_schemas-purpose_justification_required"
    }
  }
}
string access_policies_components-schemas-name
{
  "type": "string",
  "example": "Allow devs",
  "description": "The name of the Access policy."
}
object access_policies_components-schemas-response_collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/access_policies"
          }
        }
      }
    }
  ]
}
object access_policies_components-schemas-single_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/access_policies"
        }
      }
    }
  ]
}
object access_policy_check_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "app_state": {
              "type": "object",
              "properties": {
                "aud": {
                  "type": "string",
                  "example": "737646a56ab1df6ec9bddc7e5ca84eaf3b0768850f3ffb5d74f1534911fe389"
                },
                "name": {
                  "type": "string",
                  "example": "Test App"
                },
                "status": {
                  "type": "string",
                  "example": "Success"
                },
                "app_uid": {
                  "$ref": "#/components/schemas/access_uuid"
                },
                "hostname": {
                  "type": "string",
                  "example": "test.com"
                },
                "policies": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  },
                  "example": [
                    {
                      "status": "Success",
                      "exclude": [],
                      "include": [
                        {
                          "_type": "email",
                          "email": "testuser@gmail.com"
                        }
                      ],
                      "require": [],
                      "decision": "allow",
                      "precedence": 1
                    }
                  ]
                }
              }
            },
            "user_identity": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "example": "1164449231815010287495"
                },
                "geo": {
                  "type": "object",
                  "properties": {
                    "country": {
                      "type": "string",
                      "example": "US"
                    }
                  }
                },
                "iat": {
                  "type": "integer"
                },
                "name": {
                  "type": "string",
                  "example": "Test User"
                },
                "email": {
                  "type": "string",
                  "example": "testuser@gmail.com"
                },
                "is_warp": {
                  "type": "boolean",
                  "example": false
                },
                "version": {
                  "type": "integer"
                },
                "user_uuid": {
                  "$ref": "#/components/schemas/access_uuid"
                },
                "account_id": {
                  "type": "string",
                  "example": "41ecfbb341f033e52b46742756aabb8b"
                },
                "is_gateway": {
                  "type": "boolean",
                  "example": false
                },
                "device_sessions": {
                  "type": "object",
                  "example": {}
                }
              }
            }
          }
        }
      }
    }
  ]
}
string access_policy_components-schemas-name
{
  "type": "string",
  "example": "Allow devs",
  "description": "The name of the Access policy."
}
object access_policy_init_req
{
  "type": "object",
  "properties": {
    "policies": {
      "type": "array",
      "items": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/access_policy_req"
          },
          {
            "type": "string",
            "example": "f1a8b3c9d4e5f6789a0b1c2d3e4f5678a9b0c1d2e3f4a5b67890c1d2e3f4b5a6",
            "description": "The UUID of the reusable policy you wish to test"
          }
        ]
      }
    }
  }
}
object access_policy_init_resp
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "id": {
              "$ref": "#/components/schemas/access_policy_test_id"
            },
            "status": {
              "$ref": "#/components/schemas/access_status"
            }
          }
        }
      }
    }
  ]
}
object access_policy_req
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_base_policy_req"
    }
  ],
  "properties": {
    "mfa_config": {
      "$ref": "#/components/schemas/access_mfa_config"
    },
    "approval_groups": {
      "$ref": "#/components/schemas/access_approval_groups"
    },
    "connection_rules": {
      "$ref": "#/components/schemas/access_connection_rules"
    },
    "session_duration": {
      "$ref": "#/components/schemas/access_components-schemas-session_duration"
    },
    "approval_required": {
      "$ref": "#/components/schemas/access_approval_required"
    },
    "isolation_required": {
      "$ref": "#/components/schemas/access_isolation_required"
    },
    "purpose_justification_prompt": {
      "$ref": "#/components/schemas/access_purpose_justification_prompt"
    },
    "purpose_justification_required": {
      "$ref": "#/components/schemas/access_purpose_justification_required"
    }
  }
}
object access_policy_resp
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_base_policy_resp"
    }
  ],
  "properties": {
    "mfa_config": {
      "$ref": "#/components/schemas/access_mfa_config"
    },
    "approval_groups": {
      "$ref": "#/components/schemas/access_approval_groups"
    },
    "connection_rules": {
      "$ref": "#/components/schemas/access_connection_rules"
    },
    "session_duration": {
      "$ref": "#/components/schemas/access_components-schemas-session_duration"
    },
    "approval_required": {
      "$ref": "#/components/schemas/access_approval_required"
    },
    "isolation_required": {
      "$ref": "#/components/schemas/access_isolation_required"
    },
    "purpose_justification_prompt": {
      "$ref": "#/components/schemas/access_purpose_justification_prompt"
    },
    "purpose_justification_required": {
      "$ref": "#/components/schemas/access_purpose_justification_required"
    }
  }
}
string access_policy_test_id
{
  "type": "string",
  "example": "f1a8b3c9d4e5f6789a0b1c2d3e4f5678a9b0c1d2e3f4a5b67890c1d2e3f4b5a6",
  "maxLength": 64,
  "description": "The UUID of the policy test.",
  "x-auditable": true
}
object access_policy_update_resp
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "id": {
              "$ref": "#/components/schemas/access_policy_test_id"
            },
            "status": {
              "$ref": "#/components/schemas/access_update_status"
            },
            "total_users": {
              "$ref": "#/components/schemas/access_total_users"
            },
            "users_blocked": {
              "$ref": "#/components/schemas/access_users_blocked"
            },
            "users_errored": {
              "$ref": "#/components/schemas/access_users_errored"
            },
            "users_approved": {
              "$ref": "#/components/schemas/access_users_approved"
            },
            "percent_blocked": {
              "$ref": "#/components/schemas/access_percent_blocked"
            },
            "percent_errored": {
              "$ref": "#/components/schemas/access_percent_errored"
            },
            "percent_approved": {
              "$ref": "#/components/schemas/access_percent_approved"
            },
            "percent_users_processed": {
              "$ref": "#/components/schemas/access_percent_users_processed"
            }
          }
        }
      }
    }
  ]
}
object access_policy_users
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/access_uuid"
    },
    "name": {
      "$ref": "#/components/schemas/access_users_components-schemas-name"
    },
    "email": {
      "$ref": "#/components/schemas/access_schemas-email"
    },
    "status": {
      "$ref": "#/components/schemas/access_user_result"
    }
  }
}
object access_policy_users_resp
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/access_policy_users"
          },
          "description": "Page of processed users."
        }
      }
    }
  ]
}
integer access_port
{
  "type": "integer",
  "example": 22,
  "description": "The port that the targets use for the chosen communication protocol. A port cannot be assigned to multiple protocols."
}
integer access_precedence
{
  "type": "integer",
  "description": "The order of execution for this policy. Must be unique for each policy within an app.\n"
}
string access_previous_client_secret_expires_at
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-01T05:20:00.12345Z",
  "description": "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.",
  "x-auditable": true
}
string access_protocol_infra_app
{
  "enum": [
    "SSH"
  ],
  "type": "string",
  "example": "SSH",
  "description": "The communication protocol your application secures.",
  "x-auditable": true
}
string access_protocol_self_hosted_app
{
  "enum": [
    "RDP"
  ],
  "type": "string",
  "example": "RDP",
  "description": "The communication protocol your application secures.",
  "x-auditable": true
}
object access_proxy_endpoint_props
{
  "allOf": [
    {
      "$ref": "#/components/schemas/access_feature_app_props"
    },
    {
      "properties": {
        "name": {
          "default": "Gateway Proxy",
          "example": "Gateway Proxy"
        },
        "type": {
          "allOf": [
            {
              "$ref": "#/components/schemas/access_type"
            },
            {
              "example": "proxy_endpoint"
            }
          ]
        },
        "domain": {
          "example": "abcd123456.proxy.cloudflare-gateway.com",
          "pattern": "^[A-Za-z0-9]{10}\\.proxy\\.cloudflare-gateway\\.com$",
          "description": "The proxy endpoint domain in the format: 10 alphanumeric characters followed by .proxy.cloudflare-gateway.com"
        }
      }
    }
  ]
}
string access_public_key
{
  "type": "string",
  "example": "ecdsa-sha2-nistp256 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/xxxxxxxxxxxxxxxxxxxxx/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= open-ssh-ca@cloudflareaccess.org",
  "readOnly": true,
  "description": "The public key to add to your SSH server configuration."
}
string access_purpose_justification_prompt
{
  "type": "string",
  "example": "Please enter a justification for entering this protected domain.",
  "description": "A custom message that will appear on the purpose justification screen."
}
boolean access_purpose_justification_required
{
  "type": "boolean",
  "example": true,
  "description": "Require users to enter a justification when they log in to the application."
}
string access_ray_id
{
  "type": "string",
  "example": "187d944c61940c77",
  "maxLength": 16,
  "description": "The unique identifier for the request to Cloudflare."
}
string access_rdp_clipboard_format
{
  "enum": [
    "text"
  ],
  "type": "string",
  "description": "Clipboard format for RDP connections.",
  "x-auditable": true
}
object access_rdp_props
{
  "allOf": [
    {
      "$ref": "#/components/schemas/access_app_resp_embedded_target_criteria_self_hosted"
    },
    {
      "$ref": "#/components/schemas/access_self_hosted_props"
    },
    {
      "properties": {
        "type": {
          "allOf": [
            {
              "$ref": "#/components/schemas/access_type"
            },
            {
              "example": "rdp"
            }
          ]
        }
      }
    }
  ],
  "required": [
    "target_criteria"
  ]
}
string access_read_service_tokens_from_header
{
  "type": "string",
  "example": "Authorization",
  "description": "Allows matching Access Service Tokens passed HTTP in a single header with this name.\nThis works as an alternative to the (CF-Access-Client-Id, CF-Access-Client-Secret) pair of headers.\nThe header value will be interpreted as a json object similar to:\n  {\n    \"cf-access-client-id\": \"88bf3b6d86161464f6509f7219099e57.access.example.com\",\n    \"cf-access-client-secret\": \"bdd31cbc4dec990953e39163fbbb194c93313ca9f0a6e420346af9d326b1d2a5\"\n  }\n"
}
array access_request_method
{
  "type": "array",
  "items": {
    "enum": [
      "DELETE",
      "PATCH",
      "POST",
      "PUT"
    ],
    "type": "string"
  },
  "example": [
    "DELETE",
    "PATCH"
  ],
  "description": "The request method of the SCIM request."
}
string access_requests-cf_resource_id
{
  "type": "string",
  "example": "bd97ef8d-7986-43e3-9ee0-c25dda33e4b0",
  "description": "The unique Cloudflare-generated Id of the SCIM resource."
}
string access_requests-idp_resource_id
{
  "type": "string",
  "description": "The IdP-generated Id of the SCIM resource."
}
array access_requests-status
{
  "type": "array",
  "items": {
    "enum": [
      "FAILURE",
      "SUCCESS"
    ],
    "type": "string"
  },
  "example": [
    "FAILURE",
    "SUCCESS"
  ],
  "description": "The status of the SCIM request."
}
array access_require
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/access_rule"
  },
  "description": "Rules evaluated with an AND logical operator. To match a policy, a user must meet all of the Require rules."
}
string access_resource_group_name
{
  "type": "string",
  "example": "ALL_EMPLOYEES",
  "description": "The display name of the SCIM Group resource."
}
array access_resource_type
{
  "type": "array",
  "items": {
    "enum": [
      "USER",
      "GROUP"
    ],
    "type": "string"
  },
  "example": [
    "USER",
    "GROUP"
  ],
  "description": "The resource type of the SCIM request."
}
string access_resource_user_email
{
  "type": "string",
  "format": "email",
  "example": "john.smith@example.com",
  "description": "The email address of the SCIM User resource."
}
object access_response_collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/access_azureAD"
              },
              {
                "$ref": "#/components/schemas/access_centrify"
              },
              {
                "$ref": "#/components/schemas/access_facebook"
              },
              {
                "$ref": "#/components/schemas/access_github"
              },
              {
                "$ref": "#/components/schemas/access_google"
              },
              {
                "$ref": "#/components/schemas/access_google-apps"
              },
              {
                "$ref": "#/components/schemas/access_linkedin"
              },
              {
                "$ref": "#/components/schemas/access_oidc"
              },
              {
                "$ref": "#/components/schemas/access_okta"
              },
              {
                "$ref": "#/components/schemas/access_onelogin"
              },
              {
                "$ref": "#/components/schemas/access_pingone"
              },
              {
                "$ref": "#/components/schemas/access_saml"
              },
              {
                "$ref": "#/components/schemas/access_yandex"
              }
            ]
          }
        }
      }
    }
  ]
}
object access_response_collection_hostnames
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/access_settings"
          }
        }
      }
    }
  ]
}
object access_responses
{
  "type": "object",
  "properties": {
    "idp_id": {
      "type": "string",
      "example": "df7e2w5f-02b7-4d9d-af26-8d1988fca630",
      "description": "The unique Id of the IdP that has SCIM enabled."
    },
    "status": {
      "type": "string",
      "example": "FAILURE",
      "description": "The status of the SCIM request."
    },
    "logged_at": {
      "$ref": "#/components/schemas/access_timestamp"
    },
    "request_body": {
      "type": "string",
      "example": "{}}",
      "description": "The JSON-encoded string body of the SCIM request."
    },
    "resource_type": {
      "type": "string",
      "example": "GROUP",
      "description": "The resource type of the SCIM request."
    },
    "cf_resource_id": {
      "type": "string",
      "example": "bd97ef8d-7986-43e3-9ee0-c25dda33e4b0",
      "description": "The unique Cloudflare-generated Id of the SCIM resource."
    },
    "request_method": {
      "type": "string",
      "example": "DELETE",
      "description": "The request method of the SCIM request."
    },
    "idp_resource_id": {
      "type": "string",
      "example": "all_employees",
      "description": "The IdP-generated Id of the SCIM resource."
    },
    "error_description": {
      "type": "string",
      "example": "Invalid JSON body",
      "description": "The error message which is generated when the status of the SCIM request is 'FAILURE'."
    },
    "resource_group_name": {
      "type": "string",
      "example": "ALL_EMPLOYEES",
      "description": "The display name of the SCIM Group resource if it exists."
    },
    "resource_user_email": {
      "type": "string",
      "format": "email",
      "example": "john.smith@example.com",
      "description": "The email address of the SCIM User resource if it exists."
    }
  }
}
object access_reusable-policies_components-schemas-id_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "id": {
              "$ref": "#/components/schemas/access_schemas-uuid"
            }
          }
        }
      }
    }
  ]
}
object access_reusable-policies_components-schemas-response_collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/access_reusable_policy_resp"
          }
        }
      }
    }
  ]
}
object access_reusable-policies_components-schemas-single_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/access_reusable_policy_resp"
        }
      }
    }
  ]
}
object access_reusable_policy_resp
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_policy_resp"
    },
    {
      "properties": {
        "reusable": {
          "enum": [
            true
          ],
          "type": "boolean"
        },
        "app_count": {
          "$ref": "#/components/schemas/access_app_count"
        }
      }
    }
  ]
}
object access_rule
{
  "type": "object",
  "oneOf": [
    {
      "$ref": "#/components/schemas/access_access_group_rule"
    },
    {
      "$ref": "#/components/schemas/access_any_valid_service_token_rule"
    },
    {
      "$ref": "#/components/schemas/access_auth_context_rule"
    },
    {
      "$ref": "#/components/schemas/access_authentication_method_rule"
    },
    {
      "$ref": "#/components/schemas/access_azure_group_rule"
    },
    {
      "$ref": "#/components/schemas/access_certificate_rule"
    },
    {
      "$ref": "#/components/schemas/access_common_name_rule"
    },
    {
      "$ref": "#/components/schemas/access_country_rule"
    },
    {
      "$ref": "#/components/schemas/access_device_posture_rule"
    },
    {
      "$ref": "#/components/schemas/access_domain_rule"
    },
    {
      "$ref": "#/components/schemas/access_email_list_rule"
    },
    {
      "$ref": "#/components/schemas/access_email_rule"
    },
    {
      "$ref": "#/components/schemas/access_everyone_rule"
    },
    {
      "$ref": "#/components/schemas/access_external_evaluation_rule"
    },
    {
      "$ref": "#/components/schemas/access_github_organization_rule"
    },
    {
      "$ref": "#/components/schemas/access_gsuite_group_rule"
    },
    {
      "$ref": "#/components/schemas/access_login_method_rule"
    },
    {
      "$ref": "#/components/schemas/access_ip_list_rule"
    },
    {
      "$ref": "#/components/schemas/access_ip_rule"
    },
    {
      "$ref": "#/components/schemas/access_okta_group_rule"
    },
    {
      "$ref": "#/components/schemas/access_saml_group_rule"
    },
    {
      "$ref": "#/components/schemas/access_oidc_claim_rule"
    },
    {
      "$ref": "#/components/schemas/access_service_token_rule"
    },
    {
      "$ref": "#/components/schemas/access_linked_app_token_rule"
    },
    {
      "$ref": "#/components/schemas/access_user_risk_score_rule"
    }
  ]
}
object access_saas_props
{
  "type": "object",
  "title": "SaaS Application",
  "properties": {
    "name": {
      "$ref": "#/components/schemas/access_apps_components-schemas-name"
    },
    "tags": {
      "$ref": "#/components/schemas/access_tags"
    },
    "type": {
      "allOf": [
        {
          "$ref": "#/components/schemas/access_type"
        },
        {
          "example": "saas"
        }
      ]
    },
    "logo_url": {
      "$ref": "#/components/schemas/access_logo_url"
    },
    "saas_app": {
      "type": "object",
      "oneOf": [
        {
          "$ref": "#/components/schemas/access_saml_saas_app"
        },
        {
          "$ref": "#/components/schemas/access_oidc_saas_app"
        }
      ]
    },
    "scim_config": {
      "$ref": "#/components/schemas/access_scim_config"
    },
    "allowed_idps": {
      "$ref": "#/components/schemas/access_allowed_idps"
    },
    "custom_pages": {
      "$ref": "#/components/schemas/access_schemas-custom_pages"
    },
    "app_launcher_visible": {
      "$ref": "#/components/schemas/access_app_launcher_visible"
    },
    "auto_redirect_to_identity": {
      "$ref": "#/components/schemas/access_schemas-auto_redirect_to_identity"
    }
  }
}
string access_same_site_cookie_attribute
{
  "type": "string",
  "example": "strict",
  "description": "Sets the SameSite cookie setting, which provides increased security against CSRF attacks."
}
object access_saml
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_identity-provider"
    },
    {
      "type": "object",
      "properties": {
        "config": {
          "type": "object",
          "properties": {
            "attributes": {
              "type": "array",
              "items": {
                "type": "string"
              },
              "example": [
                "group",
                "department_code",
                "divison"
              ],
              "description": "A list of SAML attribute names that will be added to your signed JWT token and can be used in SAML policy rules."
            },
            "issuer_url": {
              "type": "string",
              "example": "https://whoami.com",
              "description": "IdP Entity ID or Issuer URL",
              "x-auditable": true
            },
            "sign_request": {
              "type": "boolean",
              "default": false,
              "description": "Sign the SAML authentication request with Access credentials. To verify the signature, use the public key from the Access certs endpoints."
            },
            "sso_target_url": {
              "type": "string",
              "example": "https://edgeaccess.org/idp/saml/login",
              "description": "URL to send the SAML authentication requests to",
              "x-auditable": true
            },
            "idp_public_certs": {
              "type": "array",
              "items": {
                "type": "string"
              },
              "description": "X509 certificate to verify the signature in the SAML authentication response"
            },
            "header_attributes": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "header_name": {
                    "type": "string",
                    "description": "header that will be added on the request to the origin"
                  },
                  "attribute_name": {
                    "type": "string",
                    "description": "attribute name from the IDP"
                  }
                }
              },
              "description": "Add a list of attribute names that will be returned in the response header from the Access callback."
            },
            "email_attribute_name": {
              "type": "string",
              "example": "Email",
              "description": "The attribute name for email in the SAML response.",
              "x-auditable": true
            }
          }
        }
      }
    }
  ],
  "title": "Generic SAML"
}
object access_saml_group_rule
{
  "type": "object",
  "title": "SAML group",
  "required": [
    "saml"
  ],
  "properties": {
    "saml": {
      "type": "object",
      "required": [
        "attribute_name",
        "attribute_value",
        "identity_provider_id"
      ],
      "properties": {
        "attribute_name": {
          "type": "string",
          "example": "group",
          "description": "The name of the SAML attribute."
        },
        "attribute_value": {
          "type": "string",
          "example": "devs@cloudflare.com",
          "description": "The SAML attribute value to look for."
        },
        "identity_provider_id": {
          "type": "string",
          "example": "ea85612a-29c8-46c2-bacb-669d65136971",
          "description": "The ID of your SAML identity provider."
        }
      }
    }
  },
  "description": "Matches a SAML group.\nRequires a SAML identity provider."
}
object access_saml_saas_app
{
  "type": "object",
  "title": "SAML SaaS App",
  "properties": {
    "auth_type": {
      "enum": [
        "saml",
        "oidc"
      ],
      "type": "string",
      "example": "saml",
      "description": "Optional identifier indicating the authentication protocol used for the saas app. Required for OIDC. Default if unset is \"saml\""
    },
    "created_at": {
      "$ref": "#/components/schemas/access_created_at"
    },
    "public_key": {
      "type": "string",
      "example": "example unique name",
      "description": "The Access public certificate that will be used to verify your identity.",
      "x-stainless-configurability": "computed_optional"
    },
    "updated_at": {
      "$ref": "#/components/schemas/access_updated_at"
    },
    "sp_entity_id": {
      "type": "string",
      "example": "example unique name",
      "description": "A globally unique name for an identity or service provider."
    },
    "sso_endpoint": {
      "type": "string",
      "example": "https://example.cloudflareaccess.com/cdn-cgi/access/sso/saml/b3f58a2b414e0b51d45c8c2af26fccca0e27c63763c426fa52f98dcf0b3b3bfd",
      "description": "The endpoint where your SaaS application will send login requests.",
      "x-stainless-configurability": "computed_optional"
    },
    "idp_entity_id": {
      "type": "string",
      "example": "https://example.cloudflareaccess.com",
      "description": "The unique identifier for your SaaS application.",
      "x-stainless-configurability": "computed_optional"
    },
    "name_id_format": {
      "enum": [
        "id",
        "email"
      ],
      "type": "string",
      "example": "id",
      "description": "The format of the name identifier sent to the SaaS application."
    },
    "custom_attributes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "example": "family_name",
            "description": "The name of the attribute."
          },
          "source": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "example": "last_name",
                "description": "The name of the IdP attribute."
              },
              "name_by_idp": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "idp_id": {
                      "type": "string",
                      "example": "exampleIdPID1",
                      "description": "The UID of the IdP."
                    },
                    "source_name": {
                      "type": "string",
                      "example": "AttributeName1",
                      "description": "The name of the IdP provided attribute."
                    }
                  }
                },
                "description": "A mapping from IdP ID to attribute name."
              }
            }
          },
          "required": {
            "type": "boolean",
            "example": true,
            "description": "If the attribute is required when building a SAML assertion."
          },
          "name_format": {
            "enum": [
              "urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified",
              "urn:oasis:names:tc:SAML:2.0:attrname-format:basic",
              "urn:oasis:names:tc:SAML:2.0:attrname-format:uri"
            ],
            "type": "string",
            "example": "urn:oasis:names:tc:SAML:2.0:attrname-format:basic",
            "description": "A globally unique name for an identity or service provider."
          },
          "friendly_name": {
            "type": "string",
            "example": "Last Name",
            "description": "The SAML FriendlyName of the attribute."
          }
        }
      }
    },
    "default_relay_state": {
      "type": "string",
      "example": "https://example.com",
      "description": "The URL that the user will be redirected to after a successful login for IDP initiated logins."
    },
    "consumer_service_url": {
      "type": "string",
      "example": "https://example.com",
      "description": "The service provider's endpoint that is responsible for receiving and parsing a SAML assertion."
    },
    "name_id_transform_jsonata": {
      "type": "string",
      "example": "$substringBefore(email, '@') & '+sandbox@' & $substringAfter(email, '@')",
      "description": "A [JSONata](https://jsonata.org/) expression that transforms an application's user identities into a NameID value for its SAML assertion. This expression should evaluate to a singular string. The output of this expression can override the `name_id_format` setting.\n"
    },
    "saml_attribute_transform_jsonata": {
      "type": "string",
      "example": "$ ~>| groups | {'group_name': name} |",
      "description": "A [JSONata] (https://jsonata.org/) expression that transforms an application's user identities into attribute assertions in the SAML response. The expression can transform id, email, name, and groups values. It can also transform fields listed in the saml_attributes or oidc_fields of the identity provider used to authenticate. The output of this expression must be a JSON object.\n"
    }
  }
}
boolean access_schemas-access_seat
{
  "type": "boolean",
  "example": false,
  "description": "True if the user has authenticated with Cloudflare Access."
}
boolean access_schemas-allow_authenticate_via_warp
{
  "type": "boolean",
  "example": true,
  "description": "When set to true, users can authenticate to this application using their WARP session.  When set to false this application will always require direct IdP authentication. This setting always overrides the organization setting for WARP authentication."
}
array access_schemas-allowed_headers
{
  "type": "array",
  "items": {},
  "description": "Allowed HTTP request headers."
}
array access_schemas-allowed_origins
{
  "type": "array",
  "items": {},
  "example": [
    "https://example.com"
  ],
  "description": "Allowed origins."
}
integer access_schemas-app_count
{
  "type": "integer",
  "description": "Number of apps the custom page is assigned to.",
  "x-auditable": true,
  "x-stainless-skip": true
}
object access_schemas-app_launcher_props
{
  "allOf": [
    {
      "$ref": "#/components/schemas/access_schemas-feature_app_props"
    },
    {
      "properties": {
        "name": {
          "default": "App Launcher",
          "example": "App Launcher",
          "readOnly": true
        },
        "type": {
          "type": "string",
          "example": "app_launcher",
          "description": "The application type."
        },
        "domain": {
          "example": "authdomain.cloudflareaccess.com",
          "readOnly": true
        }
      }
    }
  ]
}
boolean access_schemas-app_launcher_visible
{
  "type": "boolean",
  "example": true,
  "description": "Displays the application in the App Launcher.",
  "x-auditable": true
}
object access_schemas-approval_group
{
  "type": "object",
  "required": [
    "approvals_needed"
  ],
  "properties": {
    "email_addresses": {
      "type": "array",
      "items": {},
      "example": [
        "test@cloudflare.com",
        "test2@cloudflare.com"
      ],
      "description": "A list of emails that can approve the access request."
    },
    "email_list_uuid": {
      "type": "string",
      "description": "The UUID of an re-usable email list."
    },
    "approvals_needed": {
      "type": "number",
      "example": 1,
      "minimum": 0,
      "description": "The number of approvals needed to obtain access."
    }
  },
  "description": "A group of email addresses that can approve a temporary authentication request."
}
array access_schemas-approval_groups
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/access_schemas-approval_group"
  },
  "example": [
    {
      "email_addresses": [
        "test1@cloudflare.com",
        "test2@cloudflare.com"
      ],
      "approvals_needed": 1
    },
    {
      "email_list_uuid": "597147a1-976b-4ef2-9af0-81d5d007fc34",
      "approvals_needed": 3
    }
  ],
  "description": "Administrators who can approve a temporary authentication request."
}
boolean access_schemas-approval_required
{
  "type": "boolean",
  "default": false,
  "example": true,
  "description": "Requires the user to request access from an administrator at the start of each session."
}
array access_schemas-associated_hostnames
{
  "type": "array",
  "items": {
    "type": "string",
    "example": "admin.example.com",
    "description": "A fully-qualified domain name (FQDN)."
  },
  "description": "The hostnames of the applications that will use this certificate."
}
string access_schemas-aud
{
  "type": "string",
  "example": "737646a56ab1df6ec9bddc7e5ca84eaf3b0768850f3ffb5d74f1534911fe3893",
  "readOnly": true,
  "maxLength": 64,
  "description": "Audience tag."
}
string access_schemas-auth_domain
{
  "type": "string",
  "example": "test.cloudflareaccess.com",
  "description": "The unique subdomain assigned to your Zero Trust organization."
}
boolean access_schemas-auto_redirect_to_identity
{
  "type": "boolean",
  "default": false,
  "description": "When set to `true`, users skip the identity provider selection step during login. You must specify only one identity provider in allowed_idps."
}
object access_schemas-azureAD
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_schemas-identity-provider"
    },
    {
      "type": "object",
      "properties": {
        "config": {
          "allOf": [
            {
              "$ref": "#/components/schemas/access_schemas-generic-oauth-config"
            },
            {
              "type": "object",
              "properties": {
                "prompt": {
                  "enum": [
                    "login",
                    "select_account",
                    "none"
                  ],
                  "type": "string",
                  "description": "Indicates the type of user interaction that is required. prompt=login forces the user to enter their credentials on that request, negating single-sign on. prompt=none is the opposite. It ensures that the user isn't presented with any interactive prompt. If the request can't be completed silently by using single-sign on, the Microsoft identity platform returns an interaction_required error. prompt=select_account interrupts single sign-on providing account selection experience listing all the accounts either in session or any remembered account or an option to choose to use a different account altogether."
                },
                "directory_id": {
                  "type": "string",
                  "example": "<your azure directory uuid>",
                  "description": "Your Azure directory uuid"
                },
                "support_groups": {
                  "type": "boolean",
                  "description": "Should Cloudflare try to load groups from your account"
                },
                "conditional_access_enabled": {
                  "type": "boolean",
                  "description": "Should Cloudflare try to load authentication contexts from your account"
                }
              }
            }
          ]
        }
      }
    }
  ],
  "title": "Azure AD"
}
object access_schemas-basic_app_response_props
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/access_uuid"
    },
    "aud": {
      "$ref": "#/components/schemas/access_schemas-aud"
    },
    "created_at": {
      "$ref": "#/components/schemas/access_timestamp"
    },
    "updated_at": {
      "$ref": "#/components/schemas/access_timestamp"
    },
    "scim_config": {
      "$ref": "#/components/schemas/access_schemas-scim_config"
    }
  }
}
object access_schemas-biso_props
{
  "allOf": [
    {
      "$ref": "#/components/schemas/access_schemas-feature_app_props"
    },
    {
      "properties": {
        "name": {
          "default": "Clientless Web Isolation",
          "example": "Clientless Web Isolation",
          "readOnly": true
        },
        "type": {
          "type": "string",
          "example": "biso",
          "description": "The application type."
        },
        "domain": {
          "example": "authdomain.cloudflareaccess.com/browser",
          "readOnly": true
        }
      }
    }
  ]
}
object access_schemas-bookmark_props
{
  "type": "object",
  "title": "Bookmark Application",
  "required": [
    "type",
    "domain"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/access_apps_components-schemas-name"
    },
    "type": {
      "type": "string",
      "example": "bookmark",
      "description": "The application type."
    },
    "domain": {
      "example": "https://mybookmark.com",
      "description": "The URL or domain of the bookmark."
    },
    "logo_url": {
      "$ref": "#/components/schemas/access_logo_url"
    },
    "app_launcher_visible": {
      "default": true
    }
  }
}
object access_schemas-ca
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/access_components-schemas-id"
    },
    "aud": {
      "$ref": "#/components/schemas/access_components-schemas-aud"
    },
    "public_key": {
      "$ref": "#/components/schemas/access_public_key"
    }
  }
}
object access_schemas-centrify
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_schemas-identity-provider"
    },
    {
      "type": "object",
      "properties": {
        "config": {
          "allOf": [
            {
              "$ref": "#/components/schemas/access_schemas-generic-oauth-config"
            },
            {
              "type": "object",
              "properties": {
                "centrify_app_id": {
                  "type": "string",
                  "example": "exampleapp",
                  "description": "Your centrify app id"
                },
                "centrify_account": {
                  "type": "string",
                  "example": "https://abc123.my.centrify.com/",
                  "description": "Your centrify account url"
                }
              }
            }
          ]
        }
      }
    }
  ],
  "title": "Centrify"
}
object access_schemas-certificates
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "The key ID of this certificate.",
      "x-auditable": true
    },
    "public_key": {
      "type": "string",
      "description": "The public key of this certificate."
    }
  }
}
object access_schemas-cors_headers
{
  "type": "object",
  "properties": {
    "max_age": {
      "$ref": "#/components/schemas/access_max_age"
    },
    "allowed_headers": {
      "$ref": "#/components/schemas/access_schemas-allowed_headers"
    },
    "allowed_methods": {
      "$ref": "#/components/schemas/access_allowed_methods"
    },
    "allowed_origins": {
      "$ref": "#/components/schemas/access_schemas-allowed_origins"
    },
    "allow_all_headers": {
      "$ref": "#/components/schemas/access_allow_all_headers"
    },
    "allow_all_methods": {
      "$ref": "#/components/schemas/access_allow_all_methods"
    },
    "allow_all_origins": {
      "$ref": "#/components/schemas/access_allow_all_origins"
    },
    "allow_credentials": {
      "$ref": "#/components/schemas/access_allow_credentials"
    }
  }
}
object access_schemas-create_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-single"
    },
    {
      "properties": {
        "result": {
          "properties": {
            "id": {
              "type": "string",
              "description": "The ID of the service token."
            },
            "name": {
              "$ref": "#/components/schemas/access_service-tokens_components-schemas-name"
            },
            "duration": {
              "$ref": "#/components/schemas/access_schemas-duration"
            },
            "client_id": {
              "$ref": "#/components/schemas/access_client_id"
            },
            "created_at": {
              "$ref": "#/components/schemas/access_timestamp"
            },
            "updated_at": {
              "$ref": "#/components/schemas/access_timestamp"
            },
            "client_secret": {
              "$ref": "#/components/schemas/access_client_secret"
            }
          }
        }
      }
    }
  ]
}
string access_schemas-custom_deny_url
{
  "type": "string",
  "description": "The custom URL a user is redirected to when they are denied access to the application."
}
array access_schemas-custom_pages
{
  "type": "array",
  "items": {
    "type": "string",
    "example": "699d98642c564d2e855e9661899b7252",
    "description": "The custom pages selected for application."
  },
  "description": "The custom pages that will be displayed when applicable for this application"
}
string access_schemas-decision
{
  "enum": [
    "allow",
    "deny",
    "non_identity",
    "bypass"
  ],
  "type": "string",
  "example": "allow",
  "description": "The action Access will take if a user matches this policy."
}
object access_schemas-device_posture_rule
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "x-auditable": true
    },
    "data": {
      "type": "object"
    },
    "type": {
      "type": "string",
      "x-auditable": true
    },
    "check": {
      "$ref": "#/components/schemas/access_device_posture_check"
    },
    "error": {
      "type": "string"
    },
    "success": {
      "type": "boolean",
      "x-auditable": true
    },
    "rule_name": {
      "type": "string",
      "x-auditable": true
    },
    "timestamp": {
      "type": "string",
      "x-auditable": true
    },
    "description": {
      "type": "string",
      "x-auditable": true
    }
  }
}
string access_schemas-domain
{
  "type": "string",
  "example": "example.com",
  "description": "The domain of the Bookmark application.",
  "x-auditable": true
}
string access_schemas-duration
{
  "type": "string",
  "default": "8760h",
  "example": "60m",
  "description": "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)."
}
string access_schemas-email
{
  "type": "string",
  "format": "email",
  "example": "jdoe@example.com",
  "description": "The email of the user."
}
object access_schemas-empty_response
{
  "type": "object",
  "allOf": [
    {
      "properties": {
        "result": {
          "type": "object",
          "nullable": true
        },
        "success": {
          "enum": [
            true,
            false
          ],
          "type": "boolean",
          "example": true
        }
      }
    }
  ]
}
array access_schemas-exclude
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/access_rule"
  },
  "default": [],
  "description": "Rules evaluated with a NOT logical operator. To match the policy, a user cannot meet any of the Exclude rules.",
  "x-stainless-collection-type": "set"
}
object access_schemas-facebook
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_schemas-identity-provider"
    },
    {
      "type": "object",
      "properties": {
        "config": {
          "$ref": "#/components/schemas/access_schemas-generic-oauth-config"
        }
      }
    }
  ],
  "title": "Facebook"
}
object access_schemas-feature_app_props
{
  "type": "object",
  "required": [
    "type"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/access_apps_components-schemas-name"
    },
    "type": {
      "$ref": "#/components/schemas/access_components-schemas-type"
    },
    "domain": {
      "$ref": "#/components/schemas/access_components-schemas-domain"
    },
    "allowed_idps": {
      "$ref": "#/components/schemas/access_allowed_idps"
    },
    "session_duration": {
      "$ref": "#/components/schemas/access_apps_components-schemas-session_duration"
    },
    "auto_redirect_to_identity": {
      "$ref": "#/components/schemas/access_schemas-auto_redirect_to_identity"
    }
  }
}
boolean access_schemas-gateway_seat
{
  "type": "boolean",
  "example": false,
  "description": "True if the user has logged into the WARP client."
}
object access_schemas-generic-oauth-config
{
  "type": "object",
  "properties": {
    "client_id": {
      "type": "string",
      "example": "<your client id>",
      "description": "Your OAuth Client ID"
    },
    "client_secret": {
      "type": "string",
      "example": "<your client secret>",
      "writeOnly": true,
      "description": "Your OAuth Client Secret",
      "x-sensitive": true
    }
  }
}
object access_schemas-github
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_schemas-identity-provider"
    },
    {
      "type": "object",
      "properties": {
        "config": {
          "$ref": "#/components/schemas/access_schemas-generic-oauth-config"
        }
      }
    }
  ],
  "title": "GitHub"
}
object access_schemas-google
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_schemas-identity-provider"
    },
    {
      "type": "object",
      "properties": {
        "config": {
          "$ref": "#/components/schemas/access_schemas-generic-oauth-config"
        }
      }
    }
  ],
  "title": "Google"
}
object access_schemas-google-apps
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_schemas-identity-provider"
    },
    {
      "type": "object",
      "properties": {
        "config": {
          "allOf": [
            {
              "$ref": "#/components/schemas/access_schemas-generic-oauth-config"
            },
            {
              "type": "object",
              "properties": {
                "apps_domain": {
                  "type": "string",
                  "example": "mycompany.com",
                  "description": "Your companies TLD"
                }
              }
            }
          ]
        }
      }
    }
  ],
  "title": "Google Workspace"
}
object access_schemas-groups
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/access_uuid"
    },
    "name": {
      "$ref": "#/components/schemas/access_groups_components-schemas-name"
    },
    "exclude": {
      "$ref": "#/components/schemas/access_exclude"
    },
    "include": {
      "$ref": "#/components/schemas/access_include"
    },
    "require": {
      "$ref": "#/components/schemas/access_require"
    },
    "created_at": {
      "$ref": "#/components/schemas/access_created_at"
    },
    "is_default": {
      "$ref": "#/components/schemas/access_require"
    },
    "updated_at": {
      "$ref": "#/components/schemas/access_updated_at"
    }
  }
}
string access_schemas-id
{
  "type": "string",
  "example": "7eddae4619b50ab1361ba8ae9bd72269a432fea041529ed9",
  "readOnly": true,
  "maxLength": 48,
  "description": "The ID of the CA.",
  "x-auditable": true
}
object access_schemas-id_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "id": {
              "$ref": "#/components/schemas/access_schemas-id"
            }
          }
        }
      }
    }
  ]
}
object access_schemas-identifier
{
  "allOf": [
    {
      "$ref": "#/components/schemas/access_identifier"
    },
    {
      "example": "699d98642c564d2e855e9661899b7252"
    }
  ]
}
object access_schemas-identity-provider
{
  "type": "object",
  "required": [
    "name",
    "type",
    "config"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/access_uuid"
    },
    "name": {
      "$ref": "#/components/schemas/access_components-schemas-name"
    },
    "type": {
      "enum": [
        "onetimepin",
        "azureAD",
        "saml",
        "centrify",
        "facebook",
        "github",
        "google-apps",
        "google",
        "linkedin",
        "oidc",
        "okta",
        "onelogin",
        "pingone",
        "yandex"
      ],
      "type": "string",
      "example": "onetimepin",
      "description": "The type of identity provider. To determine the value for a specific provider, refer to our [developer documentation](https://developers.cloudflare.com/cloudflare-one/identity/idp-integration/)."
    },
    "config": {
      "type": "object",
      "description": "The configuration parameters for the identity provider. To view the required parameters for a specific provider, refer to our [developer documentation](https://developers.cloudflare.com/cloudflare-one/identity/idp-integration/)."
    },
    "scim_config": {
      "type": "object",
      "properties": {
        "secret": {
          "type": "string",
          "readOnly": true,
          "description": "A read-only token generated when the SCIM integration is enabled for the first time.  It is redacted on subsequent requests. If you lose this you will need to refresh it at /access/identity_providers/:idpID/refresh_scim_secret.",
          "x-sensitive": true
        },
        "enabled": {
          "type": "boolean",
          "default": false,
          "description": "A flag to enable or disable SCIM for the identity provider.",
          "x-stainless-terraform-configurability": "computed_optional"
        },
        "scim_base_url": {
          "type": "string",
          "readOnly": true,
          "description": "The base URL of Cloudflare's SCIM V2.0 API endpoint."
        },
        "seat_deprovision": {
          "type": "boolean",
          "default": false,
          "description": "A flag to remove a user's seat in Zero Trust when they have been deprovisioned in the Identity Provider.  This cannot be enabled unless user_deprovision is also enabled.",
          "x-stainless-terraform-configurability": "computed_optional"
        },
        "user_deprovision": {
          "type": "boolean",
          "default": false,
          "description": "A flag to enable revoking a user's session in Access and Gateway when they have been deprovisioned in the Identity Provider.",
          "x-stainless-terraform-configurability": "computed_optional"
        },
        "identity_update_behavior": {
          "enum": [
            "automatic",
            "reauth",
            "no_action"
          ],
          "type": "string",
          "default": "no_action",
          "description": "Indicates how a SCIM event updates a user identity used for policy evaluation. Use \"automatic\" to automatically update a user's identity and augment it with fields from the SCIM user resource. Use \"reauth\" to force re-authentication on group membership updates, user identity update will only occur after successful re-authentication. With \"reauth\" identities will not contain fields from the SCIM user resource. With \"no_action\" identities will not be changed by SCIM updates in any way and users will not be prompted to reauthenticate.",
          "x-stainless-terraform-configurability": "computed_optional"
        }
      },
      "description": "The configuration settings for enabling a System for Cross-Domain Identity Management (SCIM) with the identity provider."
    }
  }
}
object access_schemas-identity-providers
{
  "anyOf": [
    {
      "$ref": "#/components/schemas/access_schemas-azureAD"
    },
    {
      "$ref": "#/components/schemas/access_schemas-centrify"
    },
    {
      "$ref": "#/components/schemas/access_schemas-facebook"
    },
    {
      "$ref": "#/components/schemas/access_schemas-github"
    },
    {
      "$ref": "#/components/schemas/access_schemas-google"
    },
    {
      "$ref": "#/components/schemas/access_schemas-google-apps"
    },
    {
      "$ref": "#/components/schemas/access_schemas-linkedin"
    },
    {
      "$ref": "#/components/schemas/access_schemas-oidc"
    },
    {
      "$ref": "#/components/schemas/access_schemas-okta"
    },
    {
      "$ref": "#/components/schemas/access_schemas-onelogin"
    },
    {
      "$ref": "#/components/schemas/access_schemas-pingone"
    },
    {
      "$ref": "#/components/schemas/access_schemas-saml"
    },
    {
      "$ref": "#/components/schemas/access_schemas-yandex"
    }
  ]
}
array access_schemas-include
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/access_rule"
  },
  "default": [],
  "description": "Rules evaluated with an OR logical operator. A user needs to meet only one of the Include rules.",
  "x-stainless-collection-type": "set"
}
boolean access_schemas-is_ui_read_only
{
  "type": "boolean",
  "example": "false",
  "description": "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."
}
boolean access_schemas-isolation_required
{
  "type": "boolean",
  "default": false,
  "example": false,
  "description": "Require this application to be served in an isolated browser for users matching this policy."
}
object access_schemas-linkedin
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_schemas-identity-provider"
    },
    {
      "type": "object",
      "properties": {
        "config": {
          "$ref": "#/components/schemas/access_schemas-generic-oauth-config"
        }
      }
    }
  ],
  "title": "LinkedIn"
}
object access_schemas-login_design
{
  "properties": {
    "logo_path": {
      "type": "string",
      "example": "https://example.com/logo.png",
      "description": "The URL of the logo on your login page."
    },
    "text_color": {
      "type": "string",
      "example": "#c5ed1b",
      "description": "The text color on your login page."
    },
    "footer_text": {
      "type": "string",
      "example": "This is an example description.",
      "description": "The text at the bottom of your login page."
    },
    "header_text": {
      "type": "string",
      "example": "This is an example description.",
      "description": "The text at the top of your login page."
    },
    "background_color": {
      "type": "string",
      "example": "#c5ed1b",
      "description": "The background color on your login page."
    }
  }
}
string access_schemas-logo_url
{
  "type": "string",
  "example": "https://www.cloudflare.com/img/logo-web-badges/cf-logo-on-white-bg.svg",
  "description": "The image URL for the logo shown in the App Launcher dashboard.",
  "x-auditable": true
}
string access_schemas-name
{
  "type": "string",
  "example": "CI/CD token",
  "description": "The name of the service token.",
  "x-auditable": true
}
object access_schemas-oidc
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_schemas-identity-provider"
    },
    {
      "type": "object",
      "properties": {
        "config": {
          "allOf": [
            {
              "$ref": "#/components/schemas/access_schemas-generic-oauth-config"
            },
            {
              "type": "object",
              "properties": {
                "claims": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "example": [
                    "given_name",
                    "locale"
                  ],
                  "description": "List of custom claims that will be pulled from your id_token and added to your signed Access JWT token."
                },
                "scopes": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "example": [
                    "openid",
                    "email",
                    "profile"
                  ],
                  "description": "OAuth scopes"
                },
                "auth_url": {
                  "type": "string",
                  "example": "https://accounts.google.com/o/oauth2/auth",
                  "description": "The authorization_endpoint URL of your IdP"
                },
                "certs_url": {
                  "type": "string",
                  "example": "https://www.googleapis.com/oauth2/v3/certs",
                  "description": "The jwks_uri endpoint of your IdP to allow the IdP keys to sign the tokens"
                },
                "token_url": {
                  "type": "string",
                  "example": "https://accounts.google.com/o/oauth2/token",
                  "description": "The token_endpoint URL of your IdP"
                }
              }
            }
          ]
        }
      }
    }
  ],
  "title": "Generic OAuth"
}
object access_schemas-oidc_saas_app
{
  "type": "object",
  "title": "OIDC SaaS App",
  "properties": {
    "scopes": {
      "type": "array",
      "items": {
        "enum": [
          "openid",
          "groups",
          "email",
          "profile"
        ],
        "type": "string"
      },
      "example": [
        "openid",
        "groups",
        "email",
        "profile"
      ],
      "description": "Define the user information shared with access, \"offline_access\" scope will be automatically enabled if refresh tokens are enabled"
    },
    "auth_type": {
      "enum": [
        "saml",
        "oidc"
      ],
      "type": "string",
      "example": "oidc",
      "description": "Identifier of the authentication protocol used for the saas app. Required for OIDC."
    },
    "client_id": {
      "type": "string",
      "example": "oidc client id",
      "description": "The application client id"
    },
    "created_at": {
      "$ref": "#/components/schemas/access_timestamp"
    },
    "public_key": {
      "type": "string",
      "example": "example unique name",
      "description": "The Access public certificate that will be used to verify your identity."
    },
    "updated_at": {
      "$ref": "#/components/schemas/access_timestamp"
    },
    "grant_types": {
      "type": "array",
      "items": {
        "enum": [
          "authorization_code",
          "authorization_code_with_pkce",
          "refresh_tokens",
          "hybrid",
          "implicit"
        ],
        "type": "string"
      },
      "example": [
        "authorization_code"
      ],
      "description": "The OIDC flows supported by this application"
    },
    "client_secret": {
      "type": "string",
      "example": "oidc client secret",
      "description": "The application client secret, only returned on POST request.",
      "x-sensitive": true
    },
    "custom_claims": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "example": "family_name",
            "description": "The name of the claim."
          },
          "scope": {
            "enum": [
              "groups",
              "profile",
              "email",
              "openid"
            ],
            "type": "string",
            "example": "profile",
            "description": "The scope of the claim."
          },
          "source": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "example": "last_name",
                "description": "The name of the IdP claim."
              },
              "name_by_idp": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "idp_id": {
                      "type": "string",
                      "example": "exampleIdPID1",
                      "description": "The UID of the IdP."
                    },
                    "source_name": {
                      "type": "string",
                      "example": "AttributeName1",
                      "description": "The name of the IdP provided attribute."
                    }
                  }
                },
                "description": "A mapping from IdP ID to attribute name."
              }
            }
          },
          "required": {
            "type": "boolean",
            "example": true,
            "description": "If the claim is required when building an OIDC token."
          }
        }
      }
    },
    "redirect_uris": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "https://example.com"
      ],
      "description": "The permitted URL's for Cloudflare to return Authorization codes and Access/ID tokens"
    },
    "app_launcher_url": {
      "type": "string",
      "example": "https://example.com/login",
      "description": "The URL where this applications tile redirects users"
    },
    "group_filter_regex": {
      "type": "string",
      "example": "^GROUP_FILTER-*$",
      "description": "A regex to filter Cloudflare groups returned in ID token and userinfo endpoint."
    },
    "access_token_lifetime": {
      "type": "string",
      "example": "5m",
      "description": "The lifetime of the OIDC Access Token after creation. Valid units are m,h. Must be greater than or equal to 1m and less than or equal to 24h."
    },
    "refresh_token_options": {
      "type": "object",
      "properties": {
        "lifetime": {
          "type": "string",
          "example": "30d",
          "description": "How long a refresh token will be valid for after creation. Valid units are m,h,d. Must be longer than 1m."
        }
      }
    },
    "hybrid_and_implicit_options": {
      "type": "object",
      "properties": {
        "return_id_token_from_authorization_endpoint": {
          "type": "boolean",
          "description": "If an ID Token should be returned from the OIDC Authorization endpoint"
        },
        "return_access_token_from_authorization_endpoint": {
          "type": "boolean",
          "description": "If an Access Token should be returned from the OIDC Authorization endpoint"
        }
      }
    },
    "allow_pkce_without_client_secret": {
      "type": "boolean",
      "example": true,
      "description": "If client secret should be required on the token endpoint when authorization_code_with_pkce grant is used."
    }
  }
}
object access_schemas-okta
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_schemas-identity-provider"
    },
    {
      "type": "object",
      "properties": {
        "config": {
          "allOf": [
            {
              "$ref": "#/components/schemas/access_schemas-generic-oauth-config"
            },
            {
              "type": "object",
              "properties": {
                "okta_account": {
                  "type": "string",
                  "example": "https://dev-abc123.oktapreview.com",
                  "description": "Your okta account url"
                }
              }
            }
          ]
        }
      }
    }
  ],
  "title": "Okta"
}
object access_schemas-onelogin
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_schemas-identity-provider"
    },
    {
      "type": "object",
      "properties": {
        "config": {
          "allOf": [
            {
              "$ref": "#/components/schemas/access_schemas-generic-oauth-config"
            },
            {
              "type": "object",
              "properties": {
                "onelogin_account": {
                  "type": "string",
                  "example": "https://mycompany.onelogin.com",
                  "description": "Your OneLogin account url"
                }
              }
            }
          ]
        }
      }
    }
  ],
  "title": "OneLogin"
}
object access_schemas-onetimepin
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_schemas-identity-provider"
    },
    {
      "properties": {
        "type": {
          "enum": [
            "onetimepin"
          ]
        },
        "config": {
          "type": "object",
          "properties": {
            "redirect_url": {
              "type": "string",
              "readOnly": true
            }
          }
        }
      }
    }
  ],
  "title": "One Time Pin"
}
boolean access_schemas-options_preflight_bypass
{
  "type": "boolean",
  "default": false,
  "example": true,
  "description": "Allows options preflight requests to bypass Access authentication and go directly to the origin. Cannot turn on if cors_headers is set."
}
object access_schemas-organizations
{
  "type": "object",
  "properties": {
    "name": {
      "$ref": "#/components/schemas/access_organizations_components-schemas-name"
    },
    "created_at": {
      "$ref": "#/components/schemas/access_timestamp"
    },
    "updated_at": {
      "$ref": "#/components/schemas/access_timestamp"
    },
    "auth_domain": {
      "$ref": "#/components/schemas/access_schemas-auth_domain"
    },
    "login_design": {
      "$ref": "#/components/schemas/access_schemas-login_design"
    },
    "is_ui_read_only": {
      "$ref": "#/components/schemas/access_schemas-is_ui_read_only"
    },
    "deny_unmatched_requests": {
      "$ref": "#/components/schemas/access_deny_unmatched_requests"
    },
    "ui_read_only_toggle_reason": {
      "$ref": "#/components/schemas/access_ui_read_only_toggle_reason"
    },
    "user_seat_expiration_inactive_time": {
      "$ref": "#/components/schemas/access_schemas-user_seat_expiration_inactive_time"
    },
    "deny_unmatched_requests_exempted_zone_names": {
      "$ref": "#/components/schemas/access_deny_unmatched_requests_exempted_zone_names"
    }
  }
}
object access_schemas-pingone
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_schemas-identity-provider"
    },
    {
      "type": "object",
      "properties": {
        "config": {
          "allOf": [
            {
              "$ref": "#/components/schemas/access_schemas-generic-oauth-config"
            },
            {
              "type": "object",
              "properties": {
                "ping_env_id": {
                  "type": "string",
                  "example": "342b5660-0c32-4936-a5a4-ce21fae57b0a",
                  "description": "Your PingOne environment identifier"
                }
              }
            }
          ]
        }
      }
    }
  ],
  "title": "PingOne"
}
object access_schemas-policy_check_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "app_state": {
              "type": "object",
              "properties": {
                "aud": {
                  "type": "string",
                  "example": "737646a56ab1df6ec9bddc7e5ca84eaf3b0768850f3ffb5d74f1534911fe389"
                },
                "name": {
                  "type": "string",
                  "example": "Test App"
                },
                "status": {
                  "type": "string",
                  "example": "Success"
                },
                "app_uid": {
                  "$ref": "#/components/schemas/access_uuid"
                },
                "hostname": {
                  "type": "string",
                  "example": "test.com"
                },
                "policies": {
                  "type": "array",
                  "items": {},
                  "example": [
                    {
                      "status": "Success",
                      "exclude": [],
                      "include": [
                        {
                          "_type": "email",
                          "email": "testuser@gmail.com"
                        }
                      ],
                      "require": [],
                      "decision": "allow",
                      "precedence": 0
                    }
                  ]
                }
              }
            },
            "user_identity": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "example": "1164449231815010287495"
                },
                "geo": {
                  "type": "object",
                  "properties": {
                    "country": {
                      "type": "string",
                      "example": "US"
                    }
                  }
                },
                "iat": {
                  "type": "integer"
                },
                "name": {
                  "type": "string",
                  "example": "Test User"
                },
                "email": {
                  "type": "string",
                  "example": "testuser@gmail.com"
                },
                "is_warp": {
                  "type": "boolean",
                  "example": false
                },
                "version": {
                  "type": "integer"
                },
                "user_uuid": {
                  "$ref": "#/components/schemas/access_uuid"
                },
                "account_id": {
                  "type": "string",
                  "example": "41ecfbb341f033e52b46742756aabb8b"
                },
                "is_gateway": {
                  "type": "boolean",
                  "example": false
                },
                "device_sessions": {
                  "type": "object",
                  "example": {}
                }
              }
            }
          }
        }
      }
    }
  ]
}
integer access_schemas-precedence
{
  "type": "integer",
  "description": "The order of execution for this policy. Must be unique for each policy."
}
boolean access_schemas-purpose_justification_required
{
  "type": "boolean",
  "default": false,
  "example": true,
  "description": "Require users to enter a justification when they log in to the application."
}
array access_schemas-require
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/access_rule"
  },
  "default": [],
  "description": "Rules evaluated with an AND logical operator. To match the policy, a user must meet all of the Require rules.",
  "x-stainless-collection-type": "set"
}
object access_schemas-response_collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/access_schemas-groups"
          }
        }
      }
    }
  ]
}
object access_schemas-response_collection_hostnames
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/access_schemas-settings"
          }
        }
      }
    }
  ]
}
object access_schemas-saas_props
{
  "type": "object",
  "title": "SaaS Application",
  "properties": {
    "name": {
      "$ref": "#/components/schemas/access_apps_components-schemas-name"
    },
    "type": {
      "type": "string",
      "example": "saas",
      "description": "The application type."
    },
    "logo_url": {
      "$ref": "#/components/schemas/access_logo_url"
    },
    "saas_app": {
      "type": "object",
      "oneOf": [
        {
          "$ref": "#/components/schemas/access_schemas-saml_saas_app"
        },
        {
          "$ref": "#/components/schemas/access_schemas-oidc_saas_app"
        }
      ]
    },
    "allowed_idps": {
      "$ref": "#/components/schemas/access_allowed_idps"
    },
    "app_launcher_visible": {
      "$ref": "#/components/schemas/access_app_launcher_visible"
    },
    "auto_redirect_to_identity": {
      "$ref": "#/components/schemas/access_schemas-auto_redirect_to_identity"
    }
  }
}
object access_schemas-saml
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_schemas-identity-provider"
    },
    {
      "type": "object",
      "properties": {
        "config": {
          "type": "object",
          "properties": {
            "attributes": {
              "type": "array",
              "items": {
                "type": "string"
              },
              "example": [
                "group",
                "department_code",
                "divison"
              ],
              "description": "A list of SAML attribute names that will be added to your signed JWT token and can be used in SAML policy rules."
            },
            "issuer_url": {
              "type": "string",
              "example": "https://whoami.com",
              "description": "IdP Entity ID or Issuer URL"
            },
            "sign_request": {
              "type": "boolean",
              "description": "Sign the SAML authentication request with Access credentials. To verify the signature, use the public key from the Access certs endpoints."
            },
            "sso_target_url": {
              "type": "string",
              "example": "https://edgeaccess.org/idp/saml/login",
              "description": "URL to send the SAML authentication requests to"
            },
            "idp_public_certs": {
              "type": "array",
              "items": {
                "type": "string"
              },
              "description": "X509 certificate to verify the signature in the SAML authentication response"
            },
            "header_attributes": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "header_name": {
                    "type": "string",
                    "description": "header that will be added on the request to the origin"
                  },
                  "attribute_name": {
                    "type": "string",
                    "description": "attribute name from the IDP"
                  }
                }
              },
              "description": "Add a list of attribute names that will be returned in the response header from the Access callback."
            },
            "email_attribute_name": {
              "type": "string",
              "example": "Email",
              "description": "The attribute name for email in the SAML response."
            }
          }
        }
      }
    }
  ],
  "title": "Generic SAML"
}
object access_schemas-saml_saas_app
{
  "type": "object",
  "title": "SAML SaaS App",
  "properties": {
    "auth_type": {
      "enum": [
        "saml",
        "oidc"
      ],
      "type": "string",
      "example": "saml",
      "description": "Optional identifier indicating the authentication protocol used for the saas app. Required for OIDC. Default if unset is \"saml\""
    },
    "created_at": {
      "$ref": "#/components/schemas/access_timestamp"
    },
    "public_key": {
      "type": "string",
      "example": "example unique name",
      "description": "The Access public certificate that will be used to verify your identity.",
      "x-stainless-configurability": "computed_optional"
    },
    "updated_at": {
      "$ref": "#/components/schemas/access_timestamp"
    },
    "sp_entity_id": {
      "type": "string",
      "example": "example unique name",
      "description": "A globally unique name for an identity or service provider."
    },
    "sso_endpoint": {
      "type": "string",
      "example": "https://example.cloudflareaccess.com/cdn-cgi/access/sso/saml/b3f58a2b414e0b51d45c8c2af26fccca0e27c63763c426fa52f98dcf0b3b3bfd",
      "description": "The endpoint where your SaaS application will send login requests.",
      "x-stainless-configurability": "computed_optional"
    },
    "idp_entity_id": {
      "type": "string",
      "example": "https://example.cloudflareaccess.com",
      "description": "The unique identifier for your SaaS application.",
      "x-stainless-configurability": "computed_optional"
    },
    "name_id_format": {
      "enum": [
        "id",
        "email"
      ],
      "type": "string",
      "example": "id",
      "description": "The format of the name identifier sent to the SaaS application."
    },
    "custom_attributes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "example": "family_name",
            "description": "The name of the attribute."
          },
          "source": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "example": "last_name",
                "description": "The name of the IdP attribute."
              },
              "name_by_idp": {
                "type": "object",
                "example": {
                  "exampleIdPID1": "AttributeName1",
                  "exampleIdPID2": "AttributeName2"
                },
                "description": "A mapping from IdP ID to attribute name.",
                "additionalProperties": {
                  "type": "string"
                }
              }
            }
          },
          "required": {
            "type": "boolean",
            "example": true,
            "description": "If the attribute is required when building a SAML assertion."
          },
          "name_format": {
            "enum": [
              "urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified",
              "urn:oasis:names:tc:SAML:2.0:attrname-format:basic",
              "urn:oasis:names:tc:SAML:2.0:attrname-format:uri"
            ],
            "type": "string",
            "example": "urn:oasis:names:tc:SAML:2.0:attrname-format:basic",
            "description": "A globally unique name for an identity or service provider."
          },
          "friendly_name": {
            "type": "string",
            "example": "Last Name",
            "description": "The SAML FriendlyName of the attribute."
          }
        }
      }
    },
    "consumer_service_url": {
      "type": "string",
      "example": "https://example.com",
      "description": "The service provider's endpoint that is responsible for receiving and parsing a SAML assertion."
    },
    "name_id_transform_jsonata": {
      "type": "string",
      "example": "$substringBefore(email, '@') & '+sandbox@' & $substringAfter(email, '@')",
      "description": "A [JSONata](https://jsonata.org/) expression that transforms an application's user identities into a NameID value for its SAML assertion. This expression should evaluate to a singular string. The output of this expression can override the `name_id_format` setting.\n"
    }
  }
}
object access_schemas-scim_config
{
  "type": "object",
  "required": [
    "remote_uri",
    "idp_uid"
  ],
  "properties": {
    "enabled": {
      "type": "boolean",
      "description": "Whether SCIM provisioning is turned on for this application."
    },
    "idp_uid": {
      "type": "string",
      "description": "The UID of the IdP to use as the source for SCIM resources to provision to this application."
    },
    "mappings": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/access_scim_config_mapping"
      },
      "description": "A list of mappings to apply to SCIM resources before provisioning them in this application. These can transform or filter the resources to be provisioned."
    },
    "remote_uri": {
      "type": "string",
      "description": "The base URI for the application's SCIM-compatible API."
    },
    "authentication": {
      "oneOf": [
        {
          "$ref": "#/components/schemas/access_schemas-scim_config_single_authentication"
        },
        {
          "$ref": "#/components/schemas/access_schemas-scim_config_multi_authentication"
        }
      ]
    },
    "deactivate_on_delete": {
      "type": "boolean",
      "description": "If false, we propagate DELETE requests to the target application for SCIM resources. If true, we only set `active` to false on the SCIM resource. This is useful because some targets do not support DELETE operations."
    }
  },
  "description": "Configuration for provisioning to this application via SCIM. This is currently in closed beta."
}
object access_schemas-scim_config_authentication_oauth_bearer_token
{
  "type": "object",
  "title": "OAuth Bearer Token",
  "required": [
    "scheme",
    "token"
  ],
  "properties": {
    "token": {
      "type": "string",
      "description": "Token used to authenticate with the remote SCIM service."
    },
    "scheme": {
      "enum": [
        "oauthbearertoken"
      ],
      "type": "string",
      "description": "The authentication scheme to use when making SCIM requests to this application."
    }
  },
  "description": "Attributes for configuring OAuth Bearer Token authentication scheme for SCIM provisioning to an application."
}
array access_schemas-scim_config_multi_authentication
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/access_schemas-scim_config_single_authentication"
  },
  "description": "Multiple authentication schemes"
}
object access_schemas-scim_config_single_authentication
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/access_scim_config_authentication_http_basic"
    },
    {
      "$ref": "#/components/schemas/access_schemas-scim_config_authentication_oauth_bearer_token"
    },
    {
      "$ref": "#/components/schemas/access_scim_config_authentication_oauth2"
    },
    {
      "$ref": "#/components/schemas/access_scim_config_authentication_access_service_token"
    }
  ]
}
string access_schemas-seat_uid
{
  "type": "string",
  "description": "The unique API identifier for the Zero Trust seat."
}
object access_schemas-self_hosted_props
{
  "type": "object",
  "title": "Self Hosted Application",
  "required": [
    "type",
    "domain"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/access_apps_components-schemas-name"
    },
    "type": {
      "type": "string",
      "example": "self_hosted",
      "description": "The application type."
    },
    "domain": {
      "$ref": "#/components/schemas/access_components-schemas-domain"
    },
    "logo_url": {
      "$ref": "#/components/schemas/access_logo_url"
    },
    "allow_iframe": {
      "$ref": "#/components/schemas/access_allow_iframe"
    },
    "allowed_idps": {
      "$ref": "#/components/schemas/access_allowed_idps"
    },
    "cors_headers": {
      "$ref": "#/components/schemas/access_schemas-cors_headers"
    },
    "custom_deny_url": {
      "$ref": "#/components/schemas/access_schemas-custom_deny_url"
    },
    "session_duration": {
      "$ref": "#/components/schemas/access_apps_components-schemas-session_duration"
    },
    "skip_interstitial": {
      "$ref": "#/components/schemas/access_skip_interstitial"
    },
    "custom_deny_message": {
      "$ref": "#/components/schemas/access_custom_deny_message"
    },
    "app_launcher_visible": {
      "$ref": "#/components/schemas/access_app_launcher_visible"
    },
    "enable_binding_cookie": {
      "$ref": "#/components/schemas/access_enable_binding_cookie"
    },
    "options_preflight_bypass": {
      "$ref": "#/components/schemas/access_schemas-options_preflight_bypass"
    },
    "auto_redirect_to_identity": {
      "$ref": "#/components/schemas/access_schemas-auto_redirect_to_identity"
    },
    "service_auth_401_redirect": {
      "$ref": "#/components/schemas/access_service_auth_401_redirect"
    },
    "http_only_cookie_attribute": {
      "$ref": "#/components/schemas/access_http_only_cookie_attribute"
    },
    "same_site_cookie_attribute": {
      "$ref": "#/components/schemas/access_same_site_cookie_attribute"
    },
    "use_clientless_isolation_app_launcher_url": {
      "$ref": "#/components/schemas/access_use_clientless_isolation_app_launcher_url"
    }
  }
}
object access_schemas-service-tokens
{
  "type": "object",
  "properties": {
    "id": {
      "allOf": [
        {
          "description": "The ID of the service token."
        },
        {
          "$ref": "#/components/schemas/access_uuid"
        }
      ]
    },
    "name": {
      "$ref": "#/components/schemas/access_service-tokens_components-schemas-name"
    },
    "duration": {
      "$ref": "#/components/schemas/access_schemas-duration"
    },
    "client_id": {
      "$ref": "#/components/schemas/access_client_id"
    },
    "created_at": {
      "$ref": "#/components/schemas/access_timestamp"
    },
    "expires_at": {
      "$ref": "#/components/schemas/access_timestamp"
    },
    "updated_at": {
      "$ref": "#/components/schemas/access_timestamp"
    },
    "last_seen_at": {
      "$ref": "#/components/schemas/access_timestamp"
    }
  }
}
string access_schemas-session_duration
{
  "type": "string",
  "default": "24h",
  "example": "24h",
  "description": "The amount of time that tokens issued for this application will be valid. Must be in the format `300ms` or `2h45m`. Valid time units are: ns, us (or µs), ms, s, m, h. Note: unsupported for infrastructure type applications."
}
object access_schemas-settings
{
  "type": "object",
  "title": "Hostname Settings",
  "required": [
    "hostname",
    "china_network",
    "client_certificate_forwarding"
  ],
  "properties": {
    "hostname": {
      "type": "string",
      "example": "admin.example.com",
      "description": "The hostname that these settings apply to."
    },
    "china_network": {
      "type": "boolean",
      "example": false,
      "description": "Request client certificates for this hostname in China. Can only be set to true if this zone is china network enabled."
    },
    "client_certificate_forwarding": {
      "type": "boolean",
      "example": true,
      "description": "Client Certificate Forwarding is a feature that takes the client cert provided by the eyeball to the edge, and forwards it to the origin as a HTTP header to allow logging on the origin."
    }
  },
  "additionalProperties": false
}
object access_schemas-single_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/access_service-tokens"
        }
      }
    }
  ]
}
object access_schemas-ssh_props
{
  "allOf": [
    {
      "$ref": "#/components/schemas/access_schemas-self_hosted_props"
    },
    {
      "properties": {
        "type": {
          "type": "string",
          "example": "ssh",
          "description": "The application type."
        }
      }
    }
  ]
}
string access_schemas-type
{
  "enum": [
    "identity_denied",
    "forbidden"
  ],
  "type": "string",
  "description": "Custom page type.",
  "x-auditable": true
}
string access_schemas-user_seat_expiration_inactive_time
{
  "type": "string",
  "example": "720h",
  "description": "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`."
}
object access_schemas-users
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/access_uuid"
    },
    "uid": {
      "$ref": "#/components/schemas/access_uid"
    },
    "name": {
      "$ref": "#/components/schemas/access_users_components-schemas-name"
    },
    "email": {
      "$ref": "#/components/schemas/access_schemas-email"
    },
    "seat_uid": {
      "$ref": "#/components/schemas/access_schemas-seat_uid"
    },
    "created_at": {
      "$ref": "#/components/schemas/access_timestamp"
    },
    "updated_at": {
      "$ref": "#/components/schemas/access_timestamp"
    },
    "access_seat": {
      "$ref": "#/components/schemas/access_schemas-access_seat"
    },
    "gateway_seat": {
      "$ref": "#/components/schemas/access_schemas-gateway_seat"
    },
    "active_device_count": {
      "$ref": "#/components/schemas/access_active_device_count"
    },
    "last_successful_login": {
      "$ref": "#/components/schemas/access_last_successful_login"
    }
  }
}
string access_schemas-uuid
{
  "type": "string",
  "example": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
  "maxLength": 36,
  "description": "The UUID of the policy"
}
object access_schemas-vnc_props
{
  "allOf": [
    {
      "$ref": "#/components/schemas/access_schemas-self_hosted_props"
    },
    {
      "properties": {
        "type": {
          "type": "string",
          "example": "vnc",
          "description": "The application type."
        }
      }
    }
  ]
}
object access_schemas-warp_props
{
  "allOf": [
    {
      "$ref": "#/components/schemas/access_schemas-feature_app_props"
    },
    {
      "properties": {
        "name": {
          "default": "Warp Login App",
          "example": "Warp Login App",
          "readOnly": true
        },
        "type": {
          "type": "string",
          "example": "warp",
          "description": "The application type."
        },
        "domain": {
          "example": "authdomain.cloudflareaccess.com/warp",
          "readOnly": true
        }
      }
    }
  ]
}
object access_schemas-yandex
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_schemas-identity-provider"
    },
    {
      "type": "object",
      "properties": {
        "config": {
          "$ref": "#/components/schemas/access_schemas-generic-oauth-config"
        }
      }
    }
  ],
  "title": "Yandex"
}
object access_scim_config
{
  "type": "object",
  "required": [
    "remote_uri",
    "idp_uid"
  ],
  "properties": {
    "enabled": {
      "type": "boolean",
      "description": "Whether SCIM provisioning is turned on for this application."
    },
    "idp_uid": {
      "type": "string",
      "description": "The UID of the IdP to use as the source for SCIM resources to provision to this application."
    },
    "mappings": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/access_scim_config_mapping"
      },
      "description": "A list of mappings to apply to SCIM resources before provisioning them in this application. These can transform or filter the resources to be provisioned."
    },
    "remote_uri": {
      "type": "string",
      "description": "The base URI for the application's SCIM-compatible API."
    },
    "authentication": {
      "oneOf": [
        {
          "$ref": "#/components/schemas/access_scim_config_single_authentication"
        },
        {
          "$ref": "#/components/schemas/access_scim_config_multi_authentication"
        }
      ]
    },
    "deactivate_on_delete": {
      "type": "boolean",
      "description": "If false, propagates DELETE requests to the target application for SCIM resources. If true, sets 'active' to false on the SCIM resource. Note: Some targets do not support DELETE operations."
    }
  },
  "description": "Configuration for provisioning to this application via SCIM. This is currently in closed beta."
}
object access_scim_config_authentication_access_service_token
{
  "type": "object",
  "title": "Access Service Token",
  "required": [
    "scheme",
    "client_id",
    "client_secret"
  ],
  "properties": {
    "scheme": {
      "enum": [
        "access_service_token"
      ],
      "type": "string",
      "description": "The authentication scheme to use when making SCIM requests to this application."
    },
    "client_id": {
      "type": "string",
      "description": "Client ID of the Access service token used to authenticate with the remote service."
    },
    "client_secret": {
      "type": "string",
      "description": "Client secret of the Access service token used to authenticate with the remote service.",
      "x-sensitive": true
    }
  },
  "description": "Attributes for configuring Access Service Token authentication scheme for SCIM provisioning to an application."
}
object access_scim_config_authentication_http_basic
{
  "type": "object",
  "title": "HTTP Basic",
  "required": [
    "scheme",
    "user",
    "password"
  ],
  "properties": {
    "user": {
      "type": "string",
      "description": "User name used to authenticate with the remote SCIM service."
    },
    "scheme": {
      "enum": [
        "httpbasic"
      ],
      "type": "string",
      "description": "The authentication scheme to use when making SCIM requests to this application."
    },
    "password": {
      "type": "string",
      "description": "Password used to authenticate with the remote SCIM service.",
      "x-sensitive": true
    }
  },
  "description": "Attributes for configuring HTTP Basic authentication scheme for SCIM provisioning to an application."
}
object access_scim_config_authentication_oauth2
{
  "type": "object",
  "title": "OAuth 2",
  "required": [
    "scheme",
    "client_id",
    "client_secret",
    "authorization_url",
    "token_url"
  ],
  "properties": {
    "scheme": {
      "enum": [
        "oauth2"
      ],
      "type": "string",
      "description": "The authentication scheme to use when making SCIM requests to this application."
    },
    "scopes": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "The authorization scopes to request when generating the token used to authenticate with the remove SCIM service."
    },
    "client_id": {
      "type": "string",
      "description": "Client ID used to authenticate when generating a token for authenticating with the remote SCIM service."
    },
    "token_url": {
      "type": "string",
      "description": "URL used to generate the token used to authenticate with the remote SCIM service."
    },
    "client_secret": {
      "type": "string",
      "description": "Secret used to authenticate when generating a token for authenticating with the remove SCIM service.",
      "x-sensitive": true
    },
    "authorization_url": {
      "type": "string",
      "description": "URL used to generate the auth code used during token generation."
    }
  },
  "description": "Attributes for configuring OAuth 2 authentication scheme for SCIM provisioning to an application."
}
object access_scim_config_authentication_oauth_bearer_token
{
  "type": "object",
  "title": "OAuth Bearer Token",
  "required": [
    "scheme",
    "token"
  ],
  "properties": {
    "token": {
      "type": "string",
      "description": "Token used to authenticate with the remote SCIM service.",
      "x-sensitive": true
    },
    "scheme": {
      "enum": [
        "oauthbearertoken"
      ],
      "type": "string",
      "description": "The authentication scheme to use when making SCIM requests to this application."
    }
  },
  "description": "Attributes for configuring OAuth Bearer Token authentication scheme for SCIM provisioning to an application."
}
object access_scim_config_mapping
{
  "type": "object",
  "required": [
    "schema"
  ],
  "properties": {
    "filter": {
      "type": "string",
      "example": "title pr or userType eq \"Intern\"",
      "description": "A [SCIM filter expression](https://datatracker.ietf.org/doc/html/rfc7644#section-3.4.2.2) that matches resources that should be provisioned to this application."
    },
    "schema": {
      "type": "string",
      "example": "urn:ietf:params:scim:schemas:core:2.0:User",
      "description": "Which SCIM resource type this mapping applies to."
    },
    "enabled": {
      "type": "boolean",
      "description": "Whether or not this mapping is enabled."
    },
    "operations": {
      "type": "object",
      "properties": {
        "create": {
          "type": "boolean",
          "description": "Whether or not this mapping applies to create (POST) operations."
        },
        "delete": {
          "type": "boolean",
          "description": "Whether or not this mapping applies to DELETE operations."
        },
        "update": {
          "type": "boolean",
          "description": "Whether or not this mapping applies to update (PATCH/PUT) operations."
        }
      },
      "description": "Whether or not this mapping applies to creates, updates, or deletes."
    },
    "strictness": {
      "enum": [
        "strict",
        "passthrough"
      ],
      "type": "string",
      "description": "The level of adherence to outbound resource schemas when provisioning to this mapping. ‘Strict’ removes unknown values, while ‘passthrough’ passes unknown values to the target."
    },
    "transform_jsonata": {
      "type": "string",
      "example": "$merge([$, {'userName': $substringBefore($.userName, '@') & '+test@' & $substringAfter($.userName, '@')}])",
      "description": "A [JSONata](https://jsonata.org/) expression that transforms the resource before provisioning it in the application."
    }
  },
  "description": "Transformations and filters applied to resources before they are provisioned in the remote SCIM service."
}
array access_scim_config_multi_authentication
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/access_scim_config_single_authentication"
  },
  "description": "Multiple authentication schemes"
}
object access_scim_config_single_authentication
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/access_scim_config_authentication_http_basic"
    },
    {
      "$ref": "#/components/schemas/access_scim_config_authentication_oauth_bearer_token"
    },
    {
      "$ref": "#/components/schemas/access_scim_config_authentication_oauth2"
    },
    {
      "$ref": "#/components/schemas/access_scim_config_authentication_access_service_token"
    }
  ]
}
object access_scim_groups_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/access_groups"
          }
        }
      }
    }
  ]
}
object access_scim_update_logs_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/access_responses"
          }
        }
      }
    }
  ]
}
object access_scim_users_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/access_users"
          }
        }
      }
    }
  ]
}
object access_seat
{
  "type": "object",
  "required": [
    "seat_uid",
    "gateway_seat",
    "access_seat"
  ],
  "properties": {
    "seat_uid": {
      "$ref": "#/components/schemas/access_seat_uid"
    },
    "access_seat": {
      "$ref": "#/components/schemas/access_access_seat"
    },
    "gateway_seat": {
      "$ref": "#/components/schemas/access_gateway_seat"
    }
  }
}
string access_seat_uid
{
  "type": "string",
  "example": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
  "maxLength": 36,
  "description": "The unique API identifier for the Zero Trust seat.",
  "x-auditable": true
}
object access_seats
{
  "type": "object",
  "properties": {
    "seat_uid": {
      "$ref": "#/components/schemas/access_seat_uid"
    },
    "created_at": {
      "$ref": "#/components/schemas/access_timestamp"
    },
    "updated_at": {
      "$ref": "#/components/schemas/access_timestamp"
    },
    "access_seat": {
      "$ref": "#/components/schemas/access_access_seat"
    },
    "gateway_seat": {
      "$ref": "#/components/schemas/access_gateway_seat"
    }
  }
}
object access_seats_components-schemas-response_collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/access_seats"
          }
        }
      }
    }
  ]
}
array access_seats_definition
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/access_seat"
  },
  "required": [
    "seat_uid",
    "gateway_seat",
    "access_seat"
  ]
}
array access_self_hosted_domains
{
  "type": "array",
  "items": {
    "type": "string",
    "description": "A domain that Access will secure."
  },
  "default": [],
  "example": [
    "test.example.com/admin",
    "test.anotherexample.com/staff"
  ],
  "deprecated": true,
  "description": "List of public domains that Access will secure. This field is deprecated in favor of `destinations` and will be supported until **November 21, 2025.** If `destinations` are provided, then `self_hosted_domains` will be ignored.\n"
}
object access_self_hosted_props
{
  "type": "object",
  "title": "Self Hosted Application",
  "required": [
    "type",
    "domain"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/access_apps_components-schemas-name"
    },
    "tags": {
      "$ref": "#/components/schemas/access_tags"
    },
    "type": {
      "allOf": [
        {
          "$ref": "#/components/schemas/access_type"
        },
        {
          "example": "self_hosted"
        }
      ]
    },
    "domain": {
      "$ref": "#/components/schemas/access_domain"
    },
    "logo_url": {
      "$ref": "#/components/schemas/access_logo_url"
    },
    "mfa_config": {
      "$ref": "#/components/schemas/access_mfa_config"
    },
    "scim_config": {
      "$ref": "#/components/schemas/access_scim_config"
    },
    "allow_iframe": {
      "$ref": "#/components/schemas/access_allow_iframe"
    },
    "allowed_idps": {
      "$ref": "#/components/schemas/access_allowed_idps"
    },
    "cors_headers": {
      "$ref": "#/components/schemas/access_cors_headers"
    },
    "custom_pages": {
      "$ref": "#/components/schemas/access_schemas-custom_pages"
    },
    "destinations": {
      "$ref": "#/components/schemas/access_destinations"
    },
    "custom_deny_url": {
      "$ref": "#/components/schemas/access_custom_deny_url"
    },
    "session_duration": {
      "$ref": "#/components/schemas/access_schemas-session_duration"
    },
    "skip_interstitial": {
      "$ref": "#/components/schemas/access_skip_interstitial"
    },
    "custom_deny_message": {
      "$ref": "#/components/schemas/access_custom_deny_message"
    },
    "oauth_configuration": {
      "$ref": "#/components/schemas/access_oauth_configuration"
    },
    "self_hosted_domains": {
      "$ref": "#/components/schemas/access_self_hosted_domains"
    },
    "app_launcher_visible": {
      "$ref": "#/components/schemas/access_app_launcher_visible"
    },
    "enable_binding_cookie": {
      "$ref": "#/components/schemas/access_enable_binding_cookie"
    },
    "path_cookie_attribute": {
      "$ref": "#/components/schemas/access_path_cookie_attribute"
    },
    "options_preflight_bypass": {
      "$ref": "#/components/schemas/access_options_preflight_bypass"
    },
    "auto_redirect_to_identity": {
      "$ref": "#/components/schemas/access_schemas-auto_redirect_to_identity"
    },
    "service_auth_401_redirect": {
      "$ref": "#/components/schemas/access_service_auth_401_redirect"
    },
    "http_only_cookie_attribute": {
      "$ref": "#/components/schemas/access_http_only_cookie_attribute"
    },
    "same_site_cookie_attribute": {
      "$ref": "#/components/schemas/access_same_site_cookie_attribute"
    },
    "allow_authenticate_via_warp": {
      "$ref": "#/components/schemas/access_schemas-allow_authenticate_via_warp"
    },
    "custom_non_identity_deny_url": {
      "$ref": "#/components/schemas/access_custom_non_identity_deny_url"
    },
    "read_service_tokens_from_header": {
      "$ref": "#/components/schemas/access_read_service_tokens_from_header"
    },
    "use_clientless_isolation_app_launcher_url": {
      "$ref": "#/components/schemas/access_use_clientless_isolation_app_launcher_url"
    }
  }
}
object access_service-tokens
{
  "type": "object",
  "properties": {
    "id": {
      "allOf": [
        {
          "description": "The ID of the service token."
        },
        {
          "$ref": "#/components/schemas/access_uuid"
        }
      ]
    },
    "name": {
      "$ref": "#/components/schemas/access_schemas-name"
    },
    "duration": {
      "$ref": "#/components/schemas/access_duration"
    },
    "client_id": {
      "$ref": "#/components/schemas/access_client_id"
    },
    "created_at": {
      "$ref": "#/components/schemas/access_created_at"
    },
    "expires_at": {
      "$ref": "#/components/schemas/access_timestamp"
    },
    "updated_at": {
      "$ref": "#/components/schemas/access_updated_at"
    },
    "last_seen_at": {
      "allOf": [
        {
          "x-stainless-skip": true
        },
        {
          "$ref": "#/components/schemas/access_timestamp"
        }
      ]
    }
  }
}
string access_service-tokens_components-schemas-name
{
  "type": "string",
  "example": "CI/CD token",
  "description": "The name of the service token."
}
object access_service-tokens_components-schemas-response_collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/access_schemas-service-tokens"
          }
        }
      }
    }
  ]
}
object access_service-tokens_components-schemas-single_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/access_schemas-service-tokens"
        }
      }
    }
  ]
}
boolean access_service_auth_401_redirect
{
  "type": "boolean",
  "example": true,
  "description": "Returns a 401 status code when the request is blocked by a Service Auth policy."
}
object access_service_token_rule
{
  "type": "object",
  "title": "Service Token",
  "required": [
    "service_token"
  ],
  "properties": {
    "service_token": {
      "type": "object",
      "required": [
        "token_id"
      ],
      "properties": {
        "token_id": {
          "type": "string",
          "example": "aa0a4aab-672b-4bdb-bc33-a59f1130a11f",
          "description": "The ID of a Service Token."
        }
      }
    }
  },
  "description": "Matches a specific Access Service Token"
}
string access_session_duration
{
  "type": "string",
  "example": "24h",
  "description": "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."
}
object access_settings
{
  "type": "object",
  "title": "Hostname Settings",
  "required": [
    "hostname",
    "china_network",
    "client_certificate_forwarding"
  ],
  "properties": {
    "hostname": {
      "type": "string",
      "example": "admin.example.com",
      "description": "The hostname that these settings apply to.",
      "x-auditable": true
    },
    "china_network": {
      "type": "boolean",
      "example": false,
      "description": "Request client certificates for this hostname in China. Can only be set to true if this zone is china network enabled.",
      "x-auditable": true
    },
    "client_certificate_forwarding": {
      "type": "boolean",
      "example": true,
      "description": "Client Certificate Forwarding is a feature that takes the client cert provided by the eyeball to the edge, and forwards it to the origin as a HTTP header to allow logging on the origin.",
      "x-auditable": true
    }
  },
  "additionalProperties": false
}
string access_since
{
  "type": "string",
  "format": "date-time",
  "example": "2025-01-01T00:00:00Z",
  "description": "the timestamp of the earliest update log."
}
object access_single_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-single"
    },
    {
      "type": "object"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/access_organizations"
        }
      }
    }
  ]
}
object access_single_response_update
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/access_app_settings_response"
        }
      }
    }
  ]
}
object access_single_response_without_html
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/access_custom_page_without_html"
        }
      }
    }
  ]
}
object access_single_user_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/access_schemas-users"
        }
      }
    }
  ]
}
boolean access_skip_app_launcher_login_page
{
  "type": "boolean",
  "default": false,
  "example": true,
  "description": "Determines when to skip the App Launcher landing page."
}
boolean access_skip_interstitial
{
  "type": "boolean",
  "example": true,
  "description": "Enables automatic authentication through cloudflared."
}
object access_ssh_props
{
  "allOf": [
    {
      "$ref": "#/components/schemas/access_self_hosted_props"
    },
    {
      "properties": {
        "type": {
          "allOf": [
            {
              "$ref": "#/components/schemas/access_type"
            },
            {
              "example": "ssh"
            }
          ]
        }
      }
    }
  ]
}
string access_status
{
  "enum": [
    "success"
  ],
  "type": "string",
  "example": "success",
  "description": "The status of the policy test request.",
  "x-auditable": true
}
object access_string_key_map_device_session
{
  "type": "object",
  "additionalProperties": {
    "$ref": "#/components/schemas/access_device_session"
  }
}
object access_tag
{
  "type": "object",
  "required": [
    "name"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/access_tags_components-schemas-name"
    },
    "app_count": {
      "type": "integer",
      "example": 1,
      "description": "The number of applications that have this tag",
      "x-auditable": true,
      "x-stainless-skip": true
    },
    "created_at": {
      "$ref": "#/components/schemas/access_created_at"
    },
    "updated_at": {
      "$ref": "#/components/schemas/access_updated_at"
    }
  },
  "description": "A tag"
}
object access_tag_without_app_count
{
  "type": "object",
  "required": [
    "name"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/access_tags_components-schemas-name"
    },
    "created_at": {
      "$ref": "#/components/schemas/access_created_at"
    },
    "updated_at": {
      "$ref": "#/components/schemas/access_updated_at"
    }
  },
  "description": "A tag"
}
array access_tags
{
  "type": "array",
  "items": {
    "type": "string",
    "example": "engineers",
    "description": "The tag associated with an application."
  },
  "default": [],
  "description": "The tags you want assigned to an application. Tags are used to filter applications in the App Launcher dashboard.",
  "x-stainless-collection-type": "set"
}
string access_tags_components-schemas-name
{
  "type": "string",
  "example": "engineers",
  "description": "The name of the tag"
}
object access_tags_components-schemas-response_collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/access_tag"
          }
        }
      }
    }
  ]
}
object access_tags_components-schemas-single_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/access_tag"
        }
      }
    }
  ]
}
object access_target_attributes
{
  "type": "object",
  "example": {
    "hostname": [
      "test-server",
      "production-server"
    ]
  },
  "description": "Contains a map of target attribute keys to target attribute values.",
  "additionalProperties": {
    "type": "array",
    "items": {
      "type": "string"
    },
    "example": [
      "test-server",
      "production-server"
    ]
  }
}
object access_target_criteria_base
{
  "type": "object",
  "title": "Target Criteria",
  "required": [
    "target_attributes",
    "port",
    "protocol"
  ],
  "properties": {
    "port": {
      "$ref": "#/components/schemas/access_port"
    },
    "target_attributes": {
      "$ref": "#/components/schemas/access_target_attributes"
    }
  }
}
object access_target_criteria_infra_app
{
  "allOf": [
    {
      "$ref": "#/components/schemas/access_target_criteria_base"
    },
    {
      "type": "object",
      "properties": {
        "protocol": {
          "$ref": "#/components/schemas/access_protocol_infra_app"
        }
      }
    }
  ]
}
object access_target_criteria_self_hosted_app
{
  "allOf": [
    {
      "$ref": "#/components/schemas/access_target_criteria_base"
    },
    {
      "type": "object",
      "properties": {
        "protocol": {
          "$ref": "#/components/schemas/access_protocol_self_hosted_app"
        }
      }
    }
  ]
}
string access_timestamp
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-01T05:20:00.12345Z",
  "x-auditable": true
}
string access_title
{
  "type": "string",
  "default": "Welcome!",
  "example": "Welcome back!",
  "description": "The title shown on the landing page."
}
integer access_total_users
{
  "type": "integer",
  "example": 20,
  "description": "The total number of users in the user base.",
  "x-auditable": true
}
string access_type
{
  "enum": [
    "self_hosted",
    "saas",
    "ssh",
    "vnc",
    "app_launcher",
    "warp",
    "biso",
    "bookmark",
    "dash_sso",
    "infrastructure",
    "rdp",
    "mcp",
    "mcp_portal",
    "proxy_endpoint"
  ],
  "type": "string",
  "example": "self_hosted",
  "description": "The application type."
}
string access_ui_read_only_toggle_reason
{
  "type": "string",
  "example": "Temporarily turn off the UI read only lock to make a change via the UI",
  "description": "A description of the reason why the UI read only field is being toggled.",
  "x-stainless-terraform-configurability": "computed_optional"
}
string access_uid
{
  "type": "string",
  "description": "The unique API identifier for the user."
}
string access_until
{
  "type": "string",
  "format": "date-time",
  "example": "2025-01-02T00:00:00Z",
  "description": "the timestamp of the most-recent update log."
}
string access_update_status
{
  "enum": [
    "blocked",
    "processing",
    "exceeded time",
    "complete"
  ],
  "type": "string",
  "example": "complete",
  "description": "The status of the policy test.",
  "x-auditable": true
}
object access_updated_at
{
  "allOf": [
    {
      "x-stainless-skip": true
    },
    {
      "$ref": "#/components/schemas/access_timestamp"
    }
  ]
}
boolean access_use_clientless_isolation_app_launcher_url
{
  "type": "boolean",
  "default": false,
  "example": false,
  "description": "Determines if users can access this application via a clientless browser isolation URL.\nThis allows users to access private domains without connecting to Gateway. The option requires\nClientless Browser Isolation to be set up with policies that allow users of this application.\n"
}
string access_user_id
{
  "type": "string",
  "format": "uuid",
  "example": "f757c5c3-c1b2-50f7-9126-150a099b6f7e",
  "description": "The UUID of the authenticating user."
}
string access_user_result
{
  "enum": [
    "approved",
    "blocked",
    "error"
  ],
  "type": "string",
  "example": "approved",
  "description": "Policy evaluation result for an individual user.",
  "x-auditable": true
}
object access_user_risk_score_rule
{
  "type": "object",
  "title": "User Risk Score",
  "required": [
    "user_risk_score"
  ],
  "properties": {
    "user_risk_score": {
      "type": "object",
      "required": [
        "user_risk_score"
      ],
      "properties": {
        "user_risk_score": {
          "type": "array",
          "items": {
            "enum": [
              "low",
              "medium",
              "high",
              "unscored"
            ],
            "type": "string"
          },
          "example": [
            "low",
            "medium"
          ],
          "minItems": 1,
          "description": "A list of risk score levels to match. Values can be low, medium, high, or unscored."
        }
      }
    }
  },
  "description": "Matches a user's risk score."
}
string access_user_seat_expiration_inactive_time
{
  "type": "string",
  "example": "730h",
  "description": "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`.",
  "x-auditable": true
}
string access_username
{
  "type": "string",
  "example": "John Smith",
  "description": "The username of the SCIM User resource."
}
array access_usernames
{
  "type": "array",
  "items": {
    "type": "string",
    "x-auditable": true
  },
  "example": [
    "root",
    "ubuntu"
  ],
  "description": "Contains the Unix usernames that may be used when connecting over SSH."
}
object access_users
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/access_id"
    },
    "meta": {
      "$ref": "#/components/schemas/access_meta"
    },
    "active": {
      "type": "boolean",
      "example": true,
      "description": "Determines the status of the SCIM User resource."
    },
    "emails": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "example": "work",
            "description": "Indicates the type of the email address."
          },
          "value": {
            "type": "string",
            "format": "email",
            "example": "john.smith@example.com",
            "description": "The email address of the SCIM User resource."
          },
          "primary": {
            "type": "boolean",
            "example": true,
            "description": "Indicates if the email address is the primary email belonging to the SCIM User resource."
          }
        }
      }
    },
    "schemas": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "urn:ietf:params:scim:schemas:core:2.0:User"
      ],
      "description": "The list of URIs which indicate the attributes contained within a SCIM resource."
    },
    "externalId": {
      "type": "string",
      "example": "john_smith",
      "description": "The IdP-generated Id of the SCIM resource."
    },
    "displayName": {
      "type": "string",
      "example": "John Smith",
      "description": "The name of the SCIM User resource."
    }
  }
}
string access_users-cf_resource_id
{
  "type": "string",
  "example": "bd97ef8d-7986-43e3-9ee0-c25dda33e4b0",
  "description": "The unique Cloudflare-generated Id of the SCIM User resource; also known as the \"Id\"."
}
string access_users-idp_resource_id
{
  "type": "string",
  "example": "john_smith_01",
  "description": "The IdP-generated Id of the SCIM User resource; also known as the \"external Id\"."
}
string access_users-name
{
  "type": "string",
  "example": "John Smith",
  "description": "The name of the SCIM User resource."
}
integer access_users_approved
{
  "type": "integer",
  "example": 5,
  "description": "The number of (processed) users approved based on policy evaluation results.",
  "x-auditable": true
}
integer access_users_blocked
{
  "type": "integer",
  "example": 5,
  "description": "The number of (processed) users blocked based on policy evaluation results.",
  "x-auditable": true
}
string access_users_components-schemas-name
{
  "type": "string",
  "example": "Jane Doe",
  "description": "The name of the user."
}
object access_users_components-schemas-response_collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_api-response-collection"
    },
    {
      "properties": {
        "result_info": {
          "type": "object",
          "properties": {
            "page": {
              "example": 1
            },
            "count": {
              "example": 1
            },
            "per_page": {
              "example": 100
            },
            "total_count": {
              "example": 1
            }
          }
        }
      }
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/access_schemas-users"
          }
        }
      }
    }
  ]
}
integer access_users_errored
{
  "type": "integer",
  "example": 5,
  "description": "The number of (processed) users errored based on policy evaluation results."
}
string access_uuid
{
  "type": "string",
  "example": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
  "maxLength": 36,
  "description": "UUID.",
  "x-auditable": true
}
object access_vnc_props
{
  "allOf": [
    {
      "$ref": "#/components/schemas/access_self_hosted_props"
    },
    {
      "properties": {
        "type": {
          "allOf": [
            {
              "$ref": "#/components/schemas/access_type"
            },
            {
              "example": "vnc"
            }
          ]
        }
      }
    }
  ]
}
string access_warp_auth_session_duration
{
  "type": "string",
  "example": "24h",
  "description": "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.",
  "x-auditable": true
}
object access_warp_props
{
  "allOf": [
    {
      "$ref": "#/components/schemas/access_feature_app_props"
    },
    {
      "properties": {
        "name": {
          "default": "Warp Login App",
          "example": "Warp Login App",
          "readOnly": true
        },
        "type": {
          "allOf": [
            {
              "$ref": "#/components/schemas/access_type"
            },
            {
              "example": "warp"
            }
          ]
        },
        "domain": {
          "example": "authdomain.cloudflareaccess.com/warp",
          "readOnly": true
        }
      }
    }
  ]
}
object access_yandex
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/access_identity-provider"
    },
    {
      "type": "object",
      "properties": {
        "config": {
          "$ref": "#/components/schemas/access_generic-oauth-config"
        }
      }
    }
  ],
  "title": "Yandex"
}
string addressing_account_identifier
{
  "type": "string",
  "example": "258def64c72dae45f3e4c8516e2111f2",
  "maxLength": 32,
  "description": "Identifier of a Cloudflare account.",
  "x-auditable": true
}
object addressing_address-maps
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/addressing_address_map_identifier"
    },
    "enabled": {
      "$ref": "#/components/schemas/addressing_enabled"
    },
    "can_delete": {
      "$ref": "#/components/schemas/addressing_can_delete"
    },
    "created_at": {
      "$ref": "#/components/schemas/addressing_timestamp"
    },
    "default_sni": {
      "$ref": "#/components/schemas/addressing_default_sni"
    },
    "description": {
      "$ref": "#/components/schemas/addressing_schemas-description"
    },
    "modified_at": {
      "$ref": "#/components/schemas/addressing_timestamp"
    },
    "can_modify_ips": {
      "$ref": "#/components/schemas/addressing_can_modify_ips"
    }
  }
}
object addressing_address-maps-ip
{
  "type": "object",
  "properties": {
    "ip": {
      "$ref": "#/components/schemas/addressing_ip"
    },
    "created_at": {
      "$ref": "#/components/schemas/addressing_timestamp"
    }
  }
}
object addressing_address-maps-membership
{
  "type": "object",
  "properties": {
    "kind": {
      "$ref": "#/components/schemas/addressing_kind"
    },
    "can_delete": {
      "$ref": "#/components/schemas/addressing_schemas-can_delete"
    },
    "created_at": {
      "$ref": "#/components/schemas/addressing_timestamp"
    },
    "identifier": {
      "$ref": "#/components/schemas/addressing_identifier"
    }
  }
}
object addressing_address-maps-membership-request
{
  "type": "object",
  "properties": {
    "kind": {
      "$ref": "#/components/schemas/addressing_kind"
    },
    "identifier": {
      "$ref": "#/components/schemas/addressing_identifier"
    }
  }
}
string addressing_address_map_identifier
{
  "type": "string",
  "example": "055817b111884e0227e1be16a0be6ee0",
  "maxLength": 32,
  "description": "Identifier of an Address Map.",
  "x-auditable": true
}
boolean addressing_advertised
{
  "type": "boolean",
  "example": true,
  "nullable": true,
  "deprecated": true,
  "description": "Prefix advertisement status to the Internet. This field is only not 'null' if on demand is enabled.",
  "x-auditable": true,
  "x-stainless-deprecation-message": "Prefer the [BGP Prefixes API](https://developers.cloudflare.com/api/resources/addressing/subresources/prefixes/subresources/bgp_prefixes/) instead, which allows for advertising multiple BGP routes within a single IP Prefix."
}
string addressing_advertised_modified_at_nullable
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-01T05:20:00.12345Z",
  "nullable": true,
  "deprecated": true,
  "description": "Last time the advertisement status was changed. This field is only not 'null' if on demand is enabled.",
  "x-auditable": true,
  "x-stainless-deprecation-message": "Prefer the [BGP Prefixes API](https://developers.cloudflare.com/api/resources/addressing/subresources/prefixes/subresources/bgp_prefixes/) instead, which allows for advertising multiple BGP routes within a single IP Prefix."
}
object addressing_advertised_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/addressing_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "advertised": {
              "$ref": "#/components/schemas/addressing_components-schemas-advertised"
            },
            "advertised_modified_at": {
              "$ref": "#/components/schemas/addressing_modified_at_nullable"
            }
          }
        }
      }
    }
  ]
}
object addressing_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/addressing_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result_info": {
          "type": "object",
          "properties": {
            "page": {
              "type": "number",
              "example": 1,
              "description": "Current page within paginated list of results."
            },
            "count": {
              "type": "number",
              "example": 1,
              "description": "Total number of results for the requested service."
            },
            "per_page": {
              "type": "number",
              "example": 20,
              "description": "Number of results per page of results."
            },
            "total_count": {
              "type": "number",
              "example": 2000,
              "description": "Total results available without any search parameters."
            },
            "total_pages": {
              "type": "number",
              "example": 100,
              "description": "The number of total pages in the entire result set."
            }
          }
        }
      }
    }
  ]
}
object addressing_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/addressing_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/addressing_messages"
    }
  }
}
object addressing_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/addressing_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/addressing_messages"
        }
      ],
      "example": []
    }
  }
}
object addressing_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/addressing_api-response-common"
    }
  ]
}
string addressing_approved
{
  "type": "string",
  "example": "P",
  "description": "Approval state of the prefix (P = pending, V = active).",
  "x-auditable": true
}
integer addressing_asn
{
  "type": "integer",
  "example": 13335,
  "description": "Autonomous System Number (ASN) the prefix will be advertised under.",
  "x-auditable": true
}
integer addressing_asn_prepend_count
{
  "type": "integer",
  "default": 0,
  "example": 2,
  "maximum": 3,
  "minimum": 0,
  "description": "Number of times to prepend the Cloudflare ASN to the BGP AS-Path attribute",
  "x-auditable": true
}
boolean addressing_auto_advertise_withdraw
{
  "type": "boolean",
  "default": false,
  "example": true,
  "description": "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.",
  "x-auditable": true
}
boolean addressing_auto_generated
{
  "type": "boolean",
  "example": true,
  "description": "Whether the LOA has been auto-generated for the prefix owner by Cloudflare.",
  "x-auditable": true
}
object addressing_bgp_on_demand
{
  "type": "object",
  "properties": {
    "advertised": {
      "$ref": "#/components/schemas/addressing_schemas-advertised"
    },
    "on_demand_locked": {
      "$ref": "#/components/schemas/addressing_schemas-on_demand_locked"
    },
    "on_demand_enabled": {
      "$ref": "#/components/schemas/addressing_schemas-on_demand_enabled"
    },
    "advertised_modified_at": {
      "$ref": "#/components/schemas/addressing_modified_at_nullable"
    }
  }
}
object addressing_bgp_prefix_create
{
  "type": "object",
  "required": [
    "cidr"
  ],
  "properties": {
    "cidr": {
      "$ref": "#/components/schemas/addressing_cidr"
    }
  }
}
string addressing_bgp_prefix_identifier
{
  "type": "string",
  "example": "7009ba364c7a5760798ceb430e603b74",
  "maxLength": 32,
  "description": "Identifier of BGP Prefix.",
  "x-auditable": true
}
object addressing_bgp_prefix_update_advertisement
{
  "type": "object",
  "properties": {
    "on_demand": {
      "type": "object",
      "properties": {
        "advertised": {
          "type": "boolean"
        }
      }
    },
    "asn_prepend_count": {
      "$ref": "#/components/schemas/addressing_asn_prepend_count"
    },
    "auto_advertise_withdraw": {
      "$ref": "#/components/schemas/addressing_auto_advertise_withdraw"
    }
  }
}
object addressing_bgp_signal_opts
{
  "type": "object",
  "properties": {
    "enabled": {
      "$ref": "#/components/schemas/addressing_bgp_signaling_enabled"
    },
    "modified_at": {
      "$ref": "#/components/schemas/addressing_bgp_signaling_modified_at"
    }
  }
}
boolean addressing_bgp_signaling_enabled
{
  "type": "boolean",
  "example": false,
  "description": "Whether control of advertisement of the prefix to the Internet is enabled to be performed via BGP signal",
  "x-auditable": true
}
string addressing_bgp_signaling_modified_at
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-01T05:20:00.12345Z",
  "nullable": true,
  "description": "Last time BGP signaling control was toggled. This field is null if BGP signaling has never been enabled.",
  "x-auditable": true
}
boolean addressing_can_delete
{
  "type": "boolean",
  "example": true,
  "readOnly": true,
  "description": "If set to false, then the Address Map cannot be deleted via API. This is true for Cloudflare-managed maps.",
  "x-auditable": true
}
boolean addressing_can_modify_ips
{
  "type": "boolean",
  "example": true,
  "readOnly": true,
  "description": "If set to false, then the IPs on the Address Map cannot be modified via the API. This is true for Cloudflare-managed maps.",
  "x-auditable": true
}
string addressing_cidr
{
  "type": "string",
  "example": "192.0.2.0/24",
  "description": "IP Prefix in Classless Inter-Domain Routing format.",
  "x-auditable": true
}
boolean addressing_components-schemas-advertised
{
  "type": "boolean",
  "example": true,
  "description": "Advertisement status of the prefix. If `true`, the BGP route for the prefix is advertised to the Internet. If \n`false`, the BGP route is withdrawn.\n",
  "x-auditable": true
}
object addressing_components-schemas-response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/addressing_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/addressing_address-maps"
          }
        }
      }
    }
  ]
}
object addressing_components-schemas-single_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/addressing_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/addressing_address-maps"
        }
      }
    }
  ]
}
object addressing_create_binding_request
{
  "type": "object",
  "required": [
    "cidr",
    "service_id"
  ],
  "properties": {
    "cidr": {
      "$ref": "#/components/schemas/addressing_cidr"
    },
    "service_id": {
      "$ref": "#/components/schemas/addressing_service_identifier"
    }
  }
}
string addressing_created_at
{
  "type": "string",
  "format": "date-time",
  "description": "Timestamp of the moment the object was created."
}
string addressing_default_sni
{
  "type": "string",
  "example": "*.example.com",
  "nullable": true,
  "description": "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.",
  "x-auditable": true
}
boolean addressing_delegate_loa_creation
{
  "type": "boolean",
  "default": false,
  "example": true,
  "description": "Whether Cloudflare is allowed to generate the LOA document on behalf of the prefix owner.",
  "x-auditable": true
}
string addressing_delegated_account_identifier
{
  "type": "string",
  "example": "b1946ac92492d2347c6235b4d2611184",
  "maxLength": 32,
  "description": "Account identifier for the account to which prefix is being delegated.",
  "x-auditable": true
}
string addressing_delegation_identifier
{
  "type": "string",
  "example": "d933b1530bc56c9953cf8ce166da8004",
  "readOnly": true,
  "maxLength": 32,
  "description": "Identifier of a Delegation.",
  "x-auditable": true
}
string addressing_description
{
  "type": "string",
  "example": "Internal test prefix",
  "maxLength": 1000,
  "description": "Description of the prefix.",
  "x-auditable": true
}
boolean addressing_enabled
{
  "type": "boolean",
  "default": false,
  "example": true,
  "nullable": true,
  "description": "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.",
  "x-auditable": true
}
string addressing_filename
{
  "type": "string",
  "example": "site_loa_doc.pdf",
  "description": "Name of LOA document. Max file size 10MB, and supported filetype is pdf.",
  "x-auditable": true
}
object addressing_full_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/addressing_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "allOf": [
            {
              "$ref": "#/components/schemas/addressing_address-maps"
            },
            {
              "type": "object",
              "properties": {
                "ips": {
                  "$ref": "#/components/schemas/addressing_ips"
                },
                "memberships": {
                  "$ref": "#/components/schemas/addressing_memberships"
                }
              }
            }
          ]
        }
      }
    }
  ]
}
object addressing_id_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/addressing_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "id": {
              "$ref": "#/components/schemas/addressing_delegation_identifier"
            }
          }
        }
      }
    }
  ]
}
string addressing_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "The identifier for the membership (eg. a zone or account tag).",
  "x-auditable": true
}
string addressing_ip
{
  "type": "string",
  "example": "192.0.2.1",
  "description": "An IPv4 or IPv6 address.",
  "x-auditable": true
}
string addressing_ip_address
{
  "type": "string",
  "example": "192.0.2.1",
  "description": "An IPv4 or IPv6 address.",
  "x-auditable": true
}
object addressing_ipam-bgp-prefixes
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/addressing_bgp_prefix_identifier"
    },
    "asn": {
      "$ref": "#/components/schemas/addressing_schemas-asn"
    },
    "cidr": {
      "$ref": "#/components/schemas/addressing_cidr"
    },
    "on_demand": {
      "$ref": "#/components/schemas/addressing_bgp_on_demand"
    },
    "created_at": {
      "$ref": "#/components/schemas/addressing_timestamp"
    },
    "modified_at": {
      "$ref": "#/components/schemas/addressing_timestamp"
    },
    "bgp_signal_opts": {
      "$ref": "#/components/schemas/addressing_bgp_signal_opts"
    },
    "asn_prepend_count": {
      "$ref": "#/components/schemas/addressing_asn_prepend_count"
    },
    "auto_advertise_withdraw": {
      "$ref": "#/components/schemas/addressing_auto_advertise_withdraw"
    }
  }
}
object addressing_ipam-delegations
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/addressing_delegation_identifier"
    },
    "cidr": {
      "$ref": "#/components/schemas/addressing_cidr"
    },
    "created_at": {
      "$ref": "#/components/schemas/addressing_timestamp"
    },
    "modified_at": {
      "$ref": "#/components/schemas/addressing_timestamp"
    },
    "parent_prefix_id": {
      "$ref": "#/components/schemas/addressing_prefix_identifier"
    },
    "delegated_account_id": {
      "$ref": "#/components/schemas/addressing_delegated_account_identifier"
    }
  }
}
object addressing_ipam-prefixes
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/addressing_prefix_identifier"
    },
    "asn": {
      "$ref": "#/components/schemas/addressing_asn"
    },
    "cidr": {
      "$ref": "#/components/schemas/addressing_cidr"
    },
    "approved": {
      "$ref": "#/components/schemas/addressing_approved"
    },
    "account_id": {
      "$ref": "#/components/schemas/addressing_account_identifier"
    },
    "advertised": {
      "$ref": "#/components/schemas/addressing_advertised"
    },
    "created_at": {
      "$ref": "#/components/schemas/addressing_timestamp"
    },
    "description": {
      "$ref": "#/components/schemas/addressing_description"
    },
    "modified_at": {
      "$ref": "#/components/schemas/addressing_timestamp"
    },
    "loa_document_id": {
      "$ref": "#/components/schemas/addressing_loa_document_identifier"
    },
    "on_demand_locked": {
      "$ref": "#/components/schemas/addressing_on_demand_locked"
    },
    "on_demand_enabled": {
      "$ref": "#/components/schemas/addressing_on_demand_enabled"
    },
    "irr_validation_state": {
      "$ref": "#/components/schemas/addressing_validation_state"
    },
    "delegate_loa_creation": {
      "$ref": "#/components/schemas/addressing_delegate_loa_creation"
    },
    "rpki_validation_state": {
      "$ref": "#/components/schemas/addressing_validation_state"
    },
    "advertised_modified_at": {
      "$ref": "#/components/schemas/addressing_advertised_modified_at_nullable"
    },
    "ownership_validation_state": {
      "$ref": "#/components/schemas/addressing_validation_state"
    },
    "ownership_validation_token": {
      "$ref": "#/components/schemas/addressing_ownership_validation_token"
    }
  }
}
array addressing_ips
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/addressing_address-maps-ip"
  },
  "description": "The set of IPs on the Address Map."
}
string addressing_kind
{
  "enum": [
    "zone",
    "account"
  ],
  "type": "string",
  "example": "zone",
  "description": "The type of the membership.",
  "x-auditable": true
}
object addressing_lease
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/addressing_lease_id"
    },
    "cidrs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/addressing_schemas-cidr"
      },
      "example": [
        "192.0.2.100/32",
        "192.0.2.101/32"
      ],
      "description": "CIDRs attached to the lease"
    },
    "purpose": {
      "type": "string",
      "example": "Spectrum Static IPs",
      "description": "Describes the purpose of the addresses."
    },
    "owner_id": {
      "$ref": "#/components/schemas/addressing_lease_owner_id"
    },
    "created_at": {
      "$ref": "#/components/schemas/addressing_created_at"
    },
    "active_from": {
      "type": "string",
      "format": "date-time",
      "example": "2020-01-01T00:00:00Z",
      "description": "Timestamp of the moment the lease was created.\n"
    },
    "modified_at": {
      "$ref": "#/components/schemas/addressing_modified_at"
    }
  }
}
string addressing_lease_id
{
  "type": "string",
  "example": "8fee4b6fd361283a72381ccfda355471",
  "description": "Identifier for the lease"
}
string addressing_lease_owner_id
{
  "type": "string",
  "example": "3a7d3de1d0682240cf046c7f50866cc5",
  "description": "Cloudflare account ID of the account owning the lease."
}
object addressing_leases_components-schemas-response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/addressing_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/addressing_lease"
          }
        }
      }
    }
  ]
}
string addressing_loa_document_identifier
{
  "type": "string",
  "example": "d933b1530bc56c9953cf8ce166da8004",
  "nullable": true,
  "maxLength": 32,
  "description": "Identifier for the uploaded LOA document.",
  "x-auditable": true
}
object addressing_loa_upload_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/addressing_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "id": {
              "$ref": "#/components/schemas/addressing_loa_document_identifier"
            },
            "created": {
              "$ref": "#/components/schemas/addressing_timestamp"
            },
            "filename": {
              "$ref": "#/components/schemas/addressing_filename"
            },
            "verified": {
              "$ref": "#/components/schemas/addressing_verified"
            },
            "account_id": {
              "$ref": "#/components/schemas/addressing_account_identifier"
            },
            "size_bytes": {
              "$ref": "#/components/schemas/addressing_size_bytes"
            },
            "verified_at": {
              "$ref": "#/components/schemas/addressing_verified_at"
            },
            "auto_generated": {
              "$ref": "#/components/schemas/addressing_auto_generated"
            }
          }
        }
      }
    }
  ]
}
array addressing_membership_requests
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/addressing_address-maps-membership-request"
  },
  "example": [
    {
      "kind": "zone",
      "identifier": "023e105f4ecef8ad9ca31a8372d0c353"
    }
  ],
  "description": "Zones and Accounts which will be assigned IPs on this Address Map. A zone membership will take priority over an account membership."
}
array addressing_memberships
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/addressing_address-maps-membership"
  },
  "description": "Zones and Accounts which will be assigned IPs on this Address Map. A zone membership will take priority over an account membership."
}
array addressing_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string addressing_modified_at
{
  "type": "string",
  "format": "date-time",
  "description": "Timestamp of the moment the object was modified."
}
string addressing_modified_at_nullable
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-01T05:20:00.12345Z",
  "nullable": true,
  "description": "Last time the advertisement status was changed. This field is only not 'null' if on demand is enabled.",
  "x-auditable": true
}
boolean addressing_on_demand_enabled
{
  "type": "boolean",
  "example": true,
  "deprecated": true,
  "description": "Whether advertisement of the prefix to the Internet may be dynamically enabled or disabled.",
  "x-auditable": true,
  "x-stainless-deprecation-message": "Prefer the [BGP Prefixes API](https://developers.cloudflare.com/api/resources/addressing/subresources/prefixes/subresources/bgp_prefixes/) instead, which allows for advertising multiple BGP routes within a single IP Prefix."
}
boolean addressing_on_demand_locked
{
  "type": "boolean",
  "example": false,
  "deprecated": true,
  "description": "Whether advertisement status of the prefix is locked, meaning it cannot be changed.",
  "x-auditable": true,
  "x-stainless-deprecation-message": "Prefer the [BGP Prefixes API](https://developers.cloudflare.com/api/resources/addressing/subresources/prefixes/subresources/bgp_prefixes/) instead, which allows for advertising multiple BGP routes within a single IP Prefix."
}
string addressing_ownership_validation_token
{
  "type": "string",
  "example": "1234a5b6-1234-1abc-12a3-1234a5b6789c",
  "description": "Token provided to demonstrate ownership of the prefix.",
  "x-auditable": true
}
string addressing_prefix_identifier
{
  "type": "string",
  "example": "2af39739cc4e3b5910c918468bb89828",
  "maxLength": 32,
  "description": "Identifier of an IP Prefix.",
  "x-auditable": true
}
object addressing_provisioning
{
  "type": "object",
  "properties": {
    "state": {
      "enum": [
        "provisioning",
        "active"
      ],
      "type": "string",
      "example": "provisioning",
      "description": "When a binding has been deployed to a majority of Cloudflare datacenters, the binding will become active and can be used with its associated service.\n",
      "x-auditable": true
    }
  },
  "description": "Status of a Service Binding's deployment to the Cloudflare network"
}
object addressing_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/addressing_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/addressing_ipam-prefixes"
          }
        }
      }
    }
  ]
}
object addressing_response_collection_bgp
{
  "allOf": [
    {
      "$ref": "#/components/schemas/addressing_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/addressing_ipam-bgp-prefixes"
          }
        }
      }
    }
  ]
}
string addressing_schemas-account_identifier
{
  "type": "string",
  "example": "258def64c72dae45f3e4c8516e2111f2",
  "maxLength": 32,
  "description": "Identifier of a Cloudflare account."
}
boolean addressing_schemas-advertised
{
  "type": "boolean",
  "example": true,
  "nullable": true,
  "description": "Prefix advertisement status to the Internet. This field is only not 'null' if on demand is enabled.",
  "x-auditable": true
}
integer addressing_schemas-asn
{
  "type": "integer",
  "example": 13335,
  "nullable": true,
  "description": "Autonomous System Number (ASN) the prefix will be advertised under.",
  "x-auditable": true
}
boolean addressing_schemas-can_delete
{
  "type": "boolean",
  "example": true,
  "readOnly": true,
  "description": "Controls whether the membership can be deleted via the API or not.",
  "x-auditable": true
}
string addressing_schemas-cidr
{
  "type": "string",
  "example": "192.0.2.0/24",
  "description": "IP Prefix in Classless Inter-Domain Routing format."
}
string addressing_schemas-description
{
  "type": "string",
  "example": "My Ecommerce zones",
  "nullable": true,
  "description": "An optional description field which may be used to describe the types of IPs or zones on the map.",
  "x-auditable": true
}
boolean addressing_schemas-on_demand_enabled
{
  "type": "boolean",
  "example": true,
  "description": "Whether advertisement of the prefix to the Internet may be dynamically enabled or disabled.",
  "x-auditable": true
}
boolean addressing_schemas-on_demand_locked
{
  "type": "boolean",
  "example": false,
  "description": "Whether the advertisement status of the prefix is locked, meaning it cannot be changed.",
  "x-auditable": true
}
object addressing_schemas-response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/addressing_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/addressing_ipam-delegations"
          }
        }
      }
    }
  ]
}
object addressing_schemas-single_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/addressing_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/addressing_ipam-delegations"
        }
      }
    }
  ]
}
object addressing_service_binding
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/addressing_service_binding_identifier"
    },
    "cidr": {
      "$ref": "#/components/schemas/addressing_cidr"
    },
    "service_id": {
      "$ref": "#/components/schemas/addressing_service_identifier"
    },
    "provisioning": {
      "$ref": "#/components/schemas/addressing_provisioning"
    },
    "service_name": {
      "$ref": "#/components/schemas/addressing_service_name"
    }
  }
}
string addressing_service_binding_identifier
{
  "type": "string",
  "example": "0429b49b6a5155297b78e75a44b09e14",
  "maxLength": 32,
  "description": "Identifier of a Service Binding.",
  "x-auditable": true
}
string addressing_service_identifier
{
  "type": "string",
  "example": "2db684ee7ca04e159946fd05b99e1bcd",
  "maxLength": 32,
  "description": "Identifier of a Service on the Cloudflare network. Available services and their IDs may be found in the\n**List Services** endpoint.\n",
  "x-auditable": true
}
string addressing_service_name
{
  "type": "string",
  "example": "Magic Transit",
  "description": "Name of a service running on the Cloudflare network",
  "x-auditable": true
}
object addressing_single_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/addressing_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/addressing_ipam-prefixes"
        }
      }
    }
  ]
}
object addressing_single_response_bgp
{
  "allOf": [
    {
      "$ref": "#/components/schemas/addressing_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/addressing_ipam-bgp-prefixes"
        }
      }
    }
  ]
}
integer addressing_size_bytes
{
  "type": "integer",
  "example": 444,
  "description": "File size of the uploaded LOA document.",
  "x-auditable": true
}
string addressing_timestamp
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-01T05:20:00.12345Z",
  "x-auditable": true
}
string addressing_validation_state
{
  "type": "string",
  "example": "pending",
  "description": "State of one kind of validation for an IP prefix.",
  "x-auditable": true
}
boolean addressing_verified
{
  "type": "boolean",
  "example": true,
  "description": "Whether the LOA has been verified by Cloudflare staff.",
  "x-auditable": true
}
string addressing_verified_at
{
  "type": "string",
  "format": "date-time",
  "nullable": true,
  "description": "Timestamp of the moment the LOA was marked as validated.",
  "x-auditable": true
}
string addressing_zone_identifier
{
  "type": "string",
  "example": "8ac8489932db6327334c9b6d58544cfe",
  "maxLength": 32,
  "description": "Identifier of a zone.",
  "x-auditable": true
}
object alexandria_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/alexandria_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result_info": {
          "type": "object",
          "properties": {
            "page": {
              "type": "number",
              "example": 1,
              "description": "Returns the current page within paginated list of results."
            },
            "count": {
              "type": "number",
              "example": 1,
              "description": "Returns the total number of results for the requested service."
            },
            "per_page": {
              "type": "number",
              "example": 20,
              "description": "Returns the number of results per page of results."
            },
            "total_count": {
              "type": "number",
              "example": 2000,
              "description": "Returns the total results available without any search parameters."
            }
          }
        }
      }
    }
  ]
}
object alexandria_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/alexandria_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Indicates whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/alexandria_messages"
    }
  }
}
object alexandria_api_response_common_failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/alexandria_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Indicates whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/alexandria_messages"
        }
      ],
      "example": []
    }
  }
}
object alexandria_application
{
  "type": "object",
  "required": [
    "application_source",
    "application_type",
    "application_type_description",
    "gen_ai_score",
    "application_confidence_score",
    "created_at",
    "hostnames",
    "human_id",
    "id",
    "ip_subnets",
    "name",
    "port_protocols",
    "support_domains",
    "updated_at",
    "version"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/alexandria_application_id"
    },
    "name": {
      "$ref": "#/components/schemas/alexandria_application_name"
    },
    "version": {
      "$ref": "#/components/schemas/alexandria_application_version"
    },
    "human_id": {
      "$ref": "#/components/schemas/alexandria_application_human_id"
    },
    "intel_id": {
      "$ref": "#/components/schemas/alexandria_application_intel_id"
    },
    "hostnames": {
      "$ref": "#/components/schemas/alexandria_application_hostnames"
    },
    "created_at": {
      "$ref": "#/components/schemas/alexandria_application_created_at"
    },
    "ip_subnets": {
      "$ref": "#/components/schemas/alexandria_application_ip_subnets"
    },
    "updated_at": {
      "$ref": "#/components/schemas/alexandria_application_updated_at"
    },
    "gen_ai_score": {
      "$ref": "#/components/schemas/alexandria_application_gen_ai_score"
    },
    "port_protocols": {
      "$ref": "#/components/schemas/alexandria_application_port_protocols"
    },
    "support_domains": {
      "$ref": "#/components/schemas/alexandria_application_support_domains"
    },
    "application_type": {
      "$ref": "#/components/schemas/alexandria_application_type"
    },
    "application_source": {
      "$ref": "#/components/schemas/alexandria_application_source"
    },
    "application_confidence_score": {
      "$ref": "#/components/schemas/alexandria_application_confidence_score"
    },
    "application_type_description": {
      "$ref": "#/components/schemas/alexandria_application_type_description"
    },
    "application_score_composition": {
      "$ref": "#/components/schemas/alexandria_application_score_composition"
    }
  }
}
number alexandria_application_confidence_score
{
  "type": "number",
  "format": "float",
  "example": 0.92,
  "description": "Confidence score for the application. Returns -1 when no score is available."
}
string alexandria_application_created_at
{
  "type": "string",
  "example": "2025-01-01T00:00:00Z",
  "description": "Returns the application creation time."
}
number alexandria_application_gen_ai_score
{
  "type": "number",
  "format": "float",
  "example": 1.5,
  "description": "GenAI score for the application. Returns -1 when no score is available."
}
array alexandria_application_hostnames
{
  "type": "array",
  "items": {
    "type": "string"
  },
  "example": [
    "example.com",
    "foo.com"
  ],
  "description": "Returns the list of hostnames for the application."
}
string alexandria_application_human_id
{
  "type": "string",
  "example": "HR",
  "description": "Returns the human readable ID."
}
string alexandria_application_id
{
  "type": "string",
  "example": "12345678-1234-1234-1234-123456789012",
  "description": "Returns the application ID."
}
integer alexandria_application_intel_id
{
  "type": "integer",
  "format": "int64",
  "example": 498,
  "nullable": true,
  "description": "Returns the Intel API ID for the application."
}
array alexandria_application_ip_subnets
{
  "type": "array",
  "items": {
    "type": "string"
  },
  "example": [
    "192.168.1.0/24",
    "10.0.0.0/8"
  ],
  "description": "Returns the list of IP subnets for the application."
}
string alexandria_application_name
{
  "type": "string",
  "example": "HR",
  "description": "Returns the application name."
}
array alexandria_application_port_protocols
{
  "type": "array",
  "items": {
    "type": "string"
  },
  "example": [
    "tcp/80",
    "tcp/443"
  ],
  "description": "Returns the list of port protocols for the application."
}
object alexandria_application_score_composition
{
  "type": "object",
  "example": {
    "plan": "free",
    "categories": [
      {
        "name": "Security",
        "confidence": 0.95
      }
    ]
  },
  "nullable": true,
  "description": "Returns the score composition breakdown for the application."
}
string alexandria_application_source
{
  "type": "string",
  "example": "cloudflare",
  "description": "Returns the application source."
}
array alexandria_application_support_domains
{
  "type": "array",
  "items": {
    "type": "string"
  },
  "example": [
    "example.com",
    "foo.com"
  ],
  "description": "Returns the list of support domains for the application."
}
string alexandria_application_type
{
  "type": "string",
  "example": "Human Resources",
  "description": "Returns the application type."
}
string alexandria_application_type_description
{
  "type": "string",
  "example": "Applications used to manage employees and workforce tools.",
  "description": "Returns the application type description."
}
string alexandria_application_updated_at
{
  "type": "string",
  "example": "2025-01-01T00:00:00Z",
  "description": "Returns the application update time."
}
string alexandria_application_version
{
  "type": "string",
  "example": "2025-01-01T00:00:00Z",
  "description": "Returns the application version."
}
array alexandria_applications
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/alexandria_application"
  },
  "description": "Returns the list of applications."
}
array alexandria_categories
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/alexandria_category"
  },
  "description": "Returns the list of categories."
}
object alexandria_category
{
  "type": "object",
  "required": [
    "created_at",
    "description",
    "id",
    "name"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/alexandria_category_id"
    },
    "name": {
      "$ref": "#/components/schemas/alexandria_category_name"
    },
    "created_at": {
      "$ref": "#/components/schemas/alexandria_category_created_at"
    },
    "description": {
      "$ref": "#/components/schemas/alexandria_category_description"
    }
  }
}
string alexandria_category_created_at
{
  "type": "string",
  "example": "2025-01-01T00:00:00Z",
  "description": "Returns the category creation time."
}
string alexandria_category_description
{
  "type": "string",
  "example": "Category description",
  "description": "Returns the category description."
}
string alexandria_category_id
{
  "type": "string",
  "example": "12345678-1234-1234-1234-123456789012",
  "description": "Returns the category ID."
}
string alexandria_category_name
{
  "type": "string",
  "example": "Category name",
  "description": "Returns the category name."
}
object alexandria_get_application_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/alexandria_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/alexandria_application"
        }
      }
    }
  ]
}
object alexandria_get_applications_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/alexandria_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/alexandria_applications"
        }
      }
    }
  ]
}
object alexandria_get_categories_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/alexandria_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/alexandria_categories"
        }
      }
    }
  ]
}
object alexandria_get_category_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/alexandria_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/alexandria_category"
        }
      }
    }
  ]
}
array alexandria_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
object api-shield_Rule
{
  "type": "object",
  "required": [
    "title",
    "description",
    "action",
    "enabled",
    "expression",
    "selector"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/api-shield_schemas-uuid"
    },
    "title": {
      "$ref": "#/components/schemas/api-shield_schemas-title"
    },
    "action": {
      "$ref": "#/components/schemas/api-shield_action"
    },
    "enabled": {
      "$ref": "#/components/schemas/api-shield_enabled"
    },
    "selector": {
      "$ref": "#/components/schemas/api-shield_selector"
    },
    "created_at": {
      "$ref": "#/components/schemas/api-shield_schemas-timestamp"
    },
    "expression": {
      "$ref": "#/components/schemas/api-shield_expression"
    },
    "description": {
      "$ref": "#/components/schemas/api-shield_schemas-description"
    },
    "last_updated": {
      "$ref": "#/components/schemas/api-shield_schemas-timestamp"
    }
  },
  "description": "A Token Validation rule that can enforce security policies using JWT Tokens."
}
object api-shield_TokenConfiguration
{
  "type": "object",
  "required": [
    "id",
    "title",
    "description",
    "token_sources",
    "token_type",
    "credentials",
    "created_at",
    "last_updated"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/api-shield_schemas-uuid"
    },
    "title": {
      "$ref": "#/components/schemas/api-shield_title"
    },
    "created_at": {
      "$ref": "#/components/schemas/api-shield_schemas-timestamp"
    },
    "token_type": {
      "$ref": "#/components/schemas/api-shield_token_type"
    },
    "credentials": {
      "$ref": "#/components/schemas/api-shield_credentials"
    },
    "description": {
      "$ref": "#/components/schemas/api-shield_description"
    },
    "last_updated": {
      "$ref": "#/components/schemas/api-shield_schemas-timestamp"
    },
    "token_sources": {
      "$ref": "#/components/schemas/api-shield_token_sources"
    }
  }
}
string api-shield_action
{
  "enum": [
    "log",
    "block"
  ],
  "type": "string",
  "example": "log",
  "description": "Action to take on requests that match operations included in `selector` and fail `expression`.",
  "x-auditable": true
}
object api-shield_after
{
  "type": "object",
  "properties": {
    "after": {
      "type": "string",
      "format": "uuid",
      "example": "0d9bf70c-92e1-4bb3-9411-34a3bcc59003",
      "maxLength": 36,
      "description": "Move rule to after rule with this ID.",
      "x-auditable": true
    }
  },
  "description": "Move rule to before rule with ID."
}
object api-shield_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/api-shield_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result_info": {
          "type": "object",
          "properties": {
            "page": {
              "type": "number",
              "example": 1,
              "description": "Current page within paginated list of results."
            },
            "count": {
              "type": "number",
              "example": 1,
              "description": "Total number of results for the requested service."
            },
            "per_page": {
              "type": "number",
              "example": 20,
              "description": "Number of results per page of results."
            },
            "total_count": {
              "type": "number",
              "example": 2000,
              "description": "Total results available without any search parameters."
            },
            "total_pages": {
              "type": "number",
              "example": 100,
              "description": "The number of total pages in the entire result set."
            }
          }
        }
      }
    }
  ]
}
object api-shield_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/api-shield_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/api-shield_messages"
    }
  }
}
object api-shield_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/api-shield_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/api-shield_messages"
        }
      ],
      "example": []
    }
  }
}
object api-shield_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/api-shield_api-response-common"
    }
  ]
}
object api-shield_api-response-single-obj
{
  "allOf": [
    {
      "$ref": "#/components/schemas/api-shield_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object"
        }
      }
    }
  ]
}
string api-shield_api_discovery_origin
{
  "enum": [
    "ML",
    "SessionIdentifier",
    "LabelDiscovery"
  ],
  "type": "string",
  "description": "* `ML` - Discovered operation was sourced using ML API Discovery * `SessionIdentifier` - Discovered operation was sourced using Session Identifier API Discovery * `LabelDiscovery` - Discovered operation was identified to have a specific label\n",
  "x-auditable": true
}
object api-shield_api_discovery_patch_multiple_request
{
  "type": "object",
  "example": {
    "3818d821-5901-4147-a474-f5f5aec1d54e": {
      "state": "ignored"
    },
    "b17c8043-99a0-4202-b7d9-8f7cdbee02cd": {
      "state": "review"
    }
  },
  "additionalProperties": {
    "$ref": "#/components/schemas/api-shield_api_discovery_patch_multiple_request_entry"
  }
}
object api-shield_api_discovery_patch_multiple_request_entry
{
  "type": "object",
  "properties": {
    "state": {
      "$ref": "#/components/schemas/api-shield_api_discovery_state_patch"
    }
  },
  "description": "Mappings of discovered operations (keys) to objects describing their state"
}
string api-shield_api_discovery_state
{
  "enum": [
    "review",
    "saved",
    "ignored"
  ],
  "type": "string",
  "description": "State of operation in API Discovery\n  * `review` - Operation is not saved into API Shield Endpoint Management\n  * `saved` - Operation is saved into API Shield Endpoint Management\n  * `ignored` - Operation is marked as ignored\n",
  "x-auditable": true
}
string api-shield_api_discovery_state_patch
{
  "enum": [
    "review",
    "ignored"
  ],
  "type": "string",
  "description": "Mark state of operation in API Discovery\n  * `review` - Mark operation as for review\n  * `ignored` - Mark operation as ignored\n",
  "x-auditable": true
}
object api-shield_auth_id_characteristic
{
  "required": [
    "type",
    "name"
  ],
  "properties": {
    "name": {
      "type": "string",
      "example": "authorization",
      "maxLength": 128,
      "description": "The name of the characteristic field, i.e., the header or cookie name.",
      "x-auditable": true
    },
    "type": {
      "enum": [
        "header",
        "cookie"
      ],
      "type": "string",
      "example": "header",
      "description": "The type of characteristic.",
      "x-auditable": true
    }
  },
  "description": "Auth ID Characteristic"
}
object api-shield_auth_id_characteristic_jwt_claim
{
  "type": "object",
  "required": [
    "type",
    "name"
  ],
  "properties": {
    "name": {
      "type": "string",
      "example": "e0de1a3a-8c2c-4f90-98d8-cbdf0a3f2cb5:$.foo.bar[0].baz",
      "pattern": "^(?<token_config_id>[a-z0-9\\-]{32,36}):\\$(?<json_path>.*?)$",
      "maxLength": 128,
      "description": "Claim location expressed as `$(token_config_id):$(json_path)`, where `token_config_id` \nis the ID of the token configuration used in validating the JWT, and `json_path` is a RFC 9535 \nJSONPath (https://goessner.net/articles/JsonPath/, https://www.rfc-editor.org/rfc/rfc9535.html).\nThe JSONPath expression may be in dot or bracket notation, may only specify literal keys\nor array indexes, and must return a singleton value, which will be interpreted as a string.\n",
      "x-auditable": true
    },
    "type": {
      "enum": [
        "jwt"
      ],
      "type": "string",
      "example": "jwt",
      "description": "The type of characteristic.",
      "x-auditable": true
    }
  },
  "description": "Auth ID Characteristic extracted from JWT Token Claims"
}
array api-shield_auth_id_characteristics
{
  "type": "array",
  "items": {
    "anyOf": [
      {
        "$ref": "#/components/schemas/api-shield_auth_id_characteristic"
      },
      {
        "$ref": "#/components/schemas/api-shield_auth_id_characteristic_jwt_claim"
      }
    ]
  },
  "maxItems": 10,
  "uniqueItems": true
}
integer api-shield_auth_id_tokens
{
  "type": "integer",
  "readOnly": true,
  "description": "The total number of auth-ids seen across this calculation.",
  "x-auditable": true
}
object api-shield_basic_operation
{
  "type": "object",
  "required": [
    "method",
    "host",
    "endpoint"
  ],
  "properties": {
    "host": {
      "$ref": "#/components/schemas/api-shield_host"
    },
    "method": {
      "$ref": "#/components/schemas/api-shield_method"
    },
    "endpoint": {
      "$ref": "#/components/schemas/api-shield_endpoint"
    }
  }
}
object api-shield_before
{
  "type": "object",
  "properties": {
    "before": {
      "type": "string",
      "format": "uuid",
      "example": "0d9bf70c-92e1-4bb3-9411-34a3bcc59003",
      "maxLength": 36,
      "description": "Move rule to before rule with this ID.",
      "x-auditable": true
    }
  },
  "description": "Move rule to after rule with ID."
}
object api-shield_bulk_delete_labels_on_operation_request
{
  "type": "object",
  "required": [
    "selector"
  ],
  "properties": {
    "user": {
      "type": "object",
      "properties": {
        "labels": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/api-shield_label_name"
          },
          "description": "List of user label names."
        }
      }
    },
    "managed": {
      "type": "object",
      "properties": {
        "labels": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/api-shield_label_name"
          },
          "description": "List of managed label names."
        }
      }
    },
    "selector": {
      "$ref": "#/components/schemas/api-shield_operation_id_selector"
    }
  }
}
object api-shield_bulk_post_labels_on_operation_request
{
  "type": "object",
  "required": [
    "selector"
  ],
  "properties": {
    "user": {
      "type": "object",
      "properties": {
        "labels": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/api-shield_label_name"
          },
          "minItems": 1,
          "description": "List of user label names."
        }
      }
    },
    "managed": {
      "type": "object",
      "properties": {
        "labels": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/api-shield_label_name"
          },
          "minItems": 1,
          "description": "List of managed label names."
        }
      }
    },
    "selector": {
      "$ref": "#/components/schemas/api-shield_operation_id_selector"
    }
  }
}
object api-shield_bulk_put_labels_on_operation_request
{
  "type": "object",
  "required": [
    "selector",
    "user",
    "managed"
  ],
  "properties": {
    "user": {
      "type": "object",
      "required": [
        "labels"
      ],
      "properties": {
        "labels": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/api-shield_label_name"
          },
          "description": "List of user label names. Providing an empty array will result in all user labels being removed from all affected operations"
        }
      },
      "description": "User labels to replace for all affected operations"
    },
    "managed": {
      "type": "object",
      "required": [
        "labels"
      ],
      "properties": {
        "labels": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/api-shield_label_name"
          },
          "description": "List of managed label names. Providing an empty array will result in all managed labels being removed from all affected operations"
        }
      },
      "description": "Managed labels to replace for all affected operations"
    },
    "selector": {
      "$ref": "#/components/schemas/api-shield_operation_id_selector"
    }
  }
}
object api-shield_confidence_intervals_bounds
{
  "type": "object",
  "readOnly": true,
  "properties": {
    "lower": {
      "type": "number",
      "example": 20.5,
      "description": "Lower bound for percentile estimate",
      "x-auditable": true
    },
    "upper": {
      "type": "number",
      "example": 30.4,
      "description": "Upper bound for percentile estimate",
      "x-auditable": true
    }
  },
  "description": "Upper and lower bound for percentile estimate"
}
object api-shield_configuration
{
  "type": "object",
  "required": [
    "auth_id_characteristics"
  ],
  "properties": {
    "auth_id_characteristics": {
      "$ref": "#/components/schemas/api-shield_auth_id_characteristics"
    }
  }
}
object api-shield_configuration-single-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/api-shield_api-response-common"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "$ref": "#/components/schemas/api-shield_configuration"
        }
      }
    }
  ]
}
string api-shield_cookie
{
  "type": "string",
  "example": "http.request.cookies[\"Authorization\"][0]",
  "pattern": "^http.request.cookies\\[.*?\\]\\[\\d+\\]$",
  "description": "HTTP request cookie",
  "x-auditable": true
}
object api-shield_create-single-rule-request
{
  "allOf": [
    {
      "type": "object",
      "required": [
        "title",
        "description",
        "action",
        "enabled",
        "expression",
        "selector"
      ],
      "description": "A Token Validation rule that can enforce security policies using JWT Tokens."
    },
    {
      "$ref": "#/components/schemas/api-shield_rule-properties"
    }
  ]
}
object api-shield_credentials
{
  "type": "object",
  "required": [
    "keys"
  ],
  "properties": {
    "keys": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/api-shield_credentials-JWT-Key"
      },
      "maxItems": 4,
      "minItems": 1
    }
  }
}
object api-shield_credentials-JWT-Key
{
  "type": "object",
  "oneOf": [
    {
      "$ref": "#/components/schemas/api-shield_credentials-JWT-Key-RSA"
    },
    {
      "$ref": "#/components/schemas/api-shield_credentials-JWT-Key-EC-ES256"
    },
    {
      "$ref": "#/components/schemas/api-shield_credentials-JWT-Key-EC-ES384"
    }
  ],
  "example": {
    "x": "KN53JRwN3wCjm2o39bvZUX2VdrsHzS8pxOAGjm8m7EQ",
    "y": "lnkkzIxaveggz-HFhcMWW15nxvOj0Z_uQsXbpK0GFcY",
    "alg": "ES256",
    "crv": "P-256",
    "kid": "38013f13-c266-4eec-a72a-92ec92779f21",
    "kty": "EC"
  },
  "description": "JSON representation of a JWKS key."
}
object api-shield_credentials-JWT-Key-EC-ES256
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/api-shield_credentials-JWT-Key-common"
    },
    {
      "$ref": "#/components/schemas/api-shield_credentials-JWT-Key-EC-common"
    },
    {
      "type": "object",
      "required": [
        "alg",
        "crv"
      ],
      "properties": {
        "alg": {
          "enum": [
            "ES256"
          ],
          "type": "string",
          "description": "Algorithm",
          "x-auditable": true
        },
        "crv": {
          "enum": [
            "P-256"
          ],
          "type": "string",
          "description": "Curve",
          "x-auditable": true
        }
      }
    }
  ],
  "description": "JSON representation of an ES256 key"
}
object api-shield_credentials-JWT-Key-EC-ES384
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/api-shield_credentials-JWT-Key-common"
    },
    {
      "$ref": "#/components/schemas/api-shield_credentials-JWT-Key-EC-common"
    },
    {
      "type": "object",
      "required": [
        "alg",
        "crv"
      ],
      "properties": {
        "alg": {
          "enum": [
            "ES384"
          ],
          "type": "string",
          "description": "Algorithm",
          "x-auditable": true
        },
        "crv": {
          "enum": [
            "P-384"
          ],
          "type": "string",
          "description": "Curve",
          "x-auditable": true
        }
      }
    }
  ],
  "description": "JSON representation of an ES384 key"
}
object api-shield_credentials-JWT-Key-EC-common
{
  "type": "object",
  "required": [
    "kty",
    "x",
    "y"
  ],
  "properties": {
    "x": {
      "type": "string",
      "description": "X EC coordinate",
      "x-auditable": false
    },
    "y": {
      "type": "string",
      "description": "Y EC coordinate",
      "x-auditable": false
    },
    "kty": {
      "enum": [
        "EC"
      ],
      "type": "string",
      "description": "Key Type",
      "x-auditable": true
    }
  }
}
object api-shield_credentials-JWT-Key-RSA
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/api-shield_credentials-JWT-Key-common"
    },
    {
      "type": "object",
      "required": [
        "kty",
        "alg",
        "n",
        "e"
      ],
      "properties": {
        "e": {
          "type": "string",
          "description": "RSA exponent",
          "x-auditable": false
        },
        "n": {
          "type": "string",
          "description": "RSA modulus",
          "x-auditable": false
        },
        "alg": {
          "enum": [
            "RS256",
            "RS384",
            "RS512",
            "PS256",
            "PS384",
            "PS512"
          ],
          "type": "string",
          "description": "Algorithm",
          "x-auditable": true
        },
        "kty": {
          "enum": [
            "RSA"
          ],
          "type": "string",
          "description": "Key Type",
          "x-auditable": true
        }
      }
    }
  ],
  "description": "JSON representation of an RSA key."
}
object api-shield_credentials-JWT-Key-common
{
  "type": "object",
  "required": [
    "kid"
  ],
  "properties": {
    "kid": {
      "type": "string",
      "description": "Key ID",
      "x-auditable": true
    }
  }
}
integer api-shield_data_points
{
  "type": "integer",
  "readOnly": true,
  "description": "The number of data points used for the threshold suggestion calculation.",
  "x-auditable": true
}
object api-shield_delete_labels_on_operation_request
{
  "type": "object",
  "properties": {
    "user": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/api-shield_label_name"
      },
      "description": "List of user label names."
    },
    "managed": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/api-shield_label_name"
      },
      "description": "List of managed label names."
    }
  }
}
string api-shield_description
{
  "type": "string",
  "example": "Long description for Token Validation Configuration",
  "maxLength": 500,
  "x-auditable": true
}
object api-shield_discovery_operation
{
  "allOf": [
    {
      "type": "object",
      "required": [
        "id",
        "last_updated",
        "state",
        "origin"
      ],
      "properties": {
        "id": {
          "$ref": "#/components/schemas/api-shield_schemas-uuid"
        },
        "state": {
          "$ref": "#/components/schemas/api-shield_api_discovery_state"
        },
        "origin": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/api-shield_api_discovery_origin"
          },
          "description": "API discovery engine(s) that discovered this operation"
        },
        "features": {
          "$ref": "#/components/schemas/api-shield_traffic_stats"
        },
        "last_updated": {
          "$ref": "#/components/schemas/api-shield_schemas-timestamp"
        }
      }
    },
    {
      "$ref": "#/components/schemas/api-shield_basic_operation"
    }
  ]
}
object api-shield_edit-single-rule-request
{
  "allOf": [
    {
      "$ref": "#/components/schemas/api-shield_rule-properties"
    },
    {
      "type": "object",
      "properties": {
        "position": {
          "$ref": "#/components/schemas/api-shield_position"
        }
      }
    }
  ]
}
boolean api-shield_enabled
{
  "type": "boolean",
  "example": true,
  "description": "Toggle rule on or off.",
  "x-auditable": true
}
string api-shield_endpoint
{
  "type": "string",
  "format": "uri-template",
  "example": "/api/v1/users/{var1}",
  "pattern": "^/.*$",
  "maxLength": 4096,
  "description": "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/.",
  "x-auditable": true
}
string api-shield_expression
{
  "type": "string",
  "example": "is_jwt_valid(\"52973293-cb04-4a97-8f55-e7d2ad1107dd\") or is_jwt_valid(\"46eab8d1-6376-45e3-968f-2c649d77d423\")",
  "description": "Rule expression. Requests that fail to match this expression will be subject to `action`.\n\nFor details on expressions, see the [Cloudflare Docs](https://developers.cloudflare.com/api-shield/security/jwt-validation/).\n",
  "x-auditable": true
}
object api-shield_full_label
{
  "allOf": [
    {
      "$ref": "#/components/schemas/api-shield_label"
    },
    {
      "type": "object",
      "properties": {
        "mapped_resources": {
          "$ref": "#/components/schemas/api-shield_label_mapped_resources"
        }
      }
    }
  ]
}
object api-shield_full_managed_label
{
  "allOf": [
    {
      "$ref": "#/components/schemas/api-shield_full_label"
    },
    {
      "type": "object",
      "properties": {
        "source": {
          "example": "managed"
        }
      }
    }
  ]
}
object api-shield_global_setting_change_base
{
  "type": "object",
  "properties": {
    "validation_default_mitigation_action": {
      "enum": [
        "none",
        "log",
        "block"
      ],
      "type": "string",
      "example": "block",
      "description": "The default mitigation action used\nMitigation actions are as follows:\n\n  - `\"log\"` - log request when request does not conform to schema\n  - `\"block\"` - deny access to the site when request does not conform to schema\n  - `\"none\"` - skip running schema validation\n",
      "x-auditable": true
    },
    "validation_override_mitigation_action": {
      "enum": [
        "none",
        null
      ],
      "type": "string",
      "nullable": true,
      "description": "When set, this overrides both zone level and operation level mitigation actions.\n\n  - `\"none\"` - skip running schema validation entirely for the request\n  - `null` - clears any existing override\n",
      "x-auditable": true
    }
  }
}
object api-shield_global_settings
{
  "type": "object",
  "required": [
    "validation_default_mitigation_action"
  ],
  "properties": {
    "validation_default_mitigation_action": {
      "enum": [
        "none",
        "log",
        "block"
      ],
      "type": "string",
      "example": "block",
      "description": "The default mitigation action used\n\nMitigation actions are as follows:\n\n  - `log` - log request when request does not conform to schema\n  - `block` - deny access to the site when request does not conform to schema\n  - `none` - skip running schema validation\n",
      "x-auditable": true
    },
    "validation_override_mitigation_action": {
      "enum": [
        "none"
      ],
      "type": "string",
      "description": "When not null, this overrides global both zone level and operation level mitigation actions. This can serve as a quick way to disable schema validation for the whole zone.\n\n  - `\"none\"` will skip running schema validation entirely for the request\n",
      "x-auditable": true
    }
  }
}
string api-shield_header
{
  "type": "string",
  "example": "http.request.headers[\"x-auth\"][0]",
  "pattern": "^http.request.headers\\[.*?\\]\\[\\d+\\]$",
  "description": "HTTP request header (must be lowercase)",
  "x-auditable": true
}
string api-shield_host
{
  "type": "string",
  "format": "hostname",
  "example": "www.example.com",
  "maxLength": 255,
  "description": "RFC3986-compliant host.",
  "x-auditable": true
}
string api-shield_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Identifier.",
  "x-auditable": true
}
object api-shield_index
{
  "type": "object",
  "required": [
    "index"
  ],
  "properties": {
    "index": {
      "type": "integer",
      "example": 2,
      "minimum": 1,
      "description": "Move rule to this position",
      "x-auditable": true
    }
  }
}
object api-shield_label
{
  "type": "object",
  "allOf": [
    {
      "type": "object",
      "required": [
        "name",
        "description",
        "metadata",
        "source",
        "last_updated",
        "created_at"
      ],
      "properties": {
        "name": {
          "$ref": "#/components/schemas/api-shield_label_name"
        },
        "source": {
          "$ref": "#/components/schemas/api-shield_label_source"
        },
        "metadata": {
          "$ref": "#/components/schemas/api-shield_label_metadata"
        },
        "created_at": {
          "$ref": "#/components/schemas/api-shield_schemas-timestamp"
        },
        "description": {
          "$ref": "#/components/schemas/api-shield_label_description"
        },
        "last_updated": {
          "$ref": "#/components/schemas/api-shield_schemas-timestamp"
        }
      }
    }
  ]
}
string api-shield_label_description
{
  "type": "string",
  "example": "All endpoints that deal with logins",
  "description": "The description of the label",
  "x-auditable": true
}
object api-shield_label_mapped_resources
{
  "type": "object",
  "example": {
    "operations": 29
  },
  "description": "Provides counts of what resources are linked to this label"
}
object api-shield_label_metadata
{
  "type": "object",
  "example": {
    "foo": "bar"
  },
  "description": "Metadata for the label"
}
string api-shield_label_name
{
  "type": "string",
  "example": "login",
  "description": "The name of the label",
  "x-auditable": true
}
object api-shield_label_request
{
  "type": "object",
  "required": [
    "name"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/api-shield_label_name"
    },
    "metadata": {
      "$ref": "#/components/schemas/api-shield_label_metadata"
    },
    "description": {
      "$ref": "#/components/schemas/api-shield_label_description"
    }
  }
}
string api-shield_label_source
{
  "enum": [
    "user",
    "managed"
  ],
  "type": "string",
  "description": "* `user` - label is owned by the user\n* `managed` - label is owned by cloudflare\n",
  "x-auditable": true
}
array api-shield_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string api-shield_method
{
  "enum": [
    "GET",
    "POST",
    "HEAD",
    "OPTIONS",
    "PUT",
    "DELETE",
    "CONNECT",
    "PATCH",
    "TRACE"
  ],
  "type": "string",
  "example": "GET",
  "description": "The HTTP method used to access the endpoint.",
  "x-auditable": true
}
object api-shield_multiple-operation-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/api-shield_api-response-common"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/api-shield_operation"
          }
        }
      }
    }
  ]
}
object api-shield_multiple-operation-response-paginated
{
  "allOf": [
    {
      "$ref": "#/components/schemas/api-shield_api-response-collection"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/components/schemas/api-shield_operation"
              }
            ]
          }
        }
      }
    }
  ]
}
object api-shield_object-with-operation-id
{
  "type": "object",
  "required": [
    "operation_id"
  ],
  "properties": {
    "operation_id": {
      "allOf": [
        {
          "type": "string",
          "description": "The ID of the operation",
          "x-auditable": true
        },
        {
          "$ref": "#/components/schemas/api-shield_schemas-uuid"
        }
      ]
    }
  }
}
string api-shield_old_kind
{
  "enum": [
    "openapi_v3"
  ],
  "type": "string",
  "example": "openapi_v3",
  "description": "Kind of schema",
  "x-auditable": true
}
string api-shield_old_operation_mitigation_action
{
  "enum": [
    "log",
    "block",
    "none",
    null
  ],
  "type": "string",
  "example": "block",
  "nullable": true,
  "description": "When set, this applies a mitigation action to this operation\n\n  - `log` log request when request does not conform to schema for this operation\n  - `block` deny access to the site when request does not conform to schema for this operation\n  - `none` will skip mitigation for this operation\n  - `null` indicates that no operation level mitigation is in place, see Zone Level Schema Validation Settings for mitigation action that will be applied\n",
  "x-auditable": true
}
object api-shield_old_operation_schema_validation_settings
{
  "type": "object",
  "properties": {
    "operation_id": {
      "$ref": "#/components/schemas/api-shield_schemas-uuid"
    },
    "mitigation_action": {
      "$ref": "#/components/schemas/api-shield_old_operation_mitigation_action"
    }
  }
}
object api-shield_old_operation_schema_validation_settings_modify_request
{
  "type": "object",
  "properties": {
    "mitigation_action": {
      "$ref": "#/components/schemas/api-shield_old_operation_mitigation_action"
    }
  }
}
object api-shield_old_operation_schema_validation_settings_multiple_request
{
  "type": "object",
  "example": {
    "3818d821-5901-4147-a474-f5f5aec1d54e": {
      "mitigation_action": "log"
    },
    "b17c8043-99a0-4202-b7d9-8f7cdbee02cd": {
      "mitigation_action": "block"
    }
  },
  "additionalProperties": {
    "$ref": "#/components/schemas/api-shield_old_operation_schema_validation_settings_multiple_request_entry"
  }
}
object api-shield_old_operation_schema_validation_settings_multiple_request_entry
{
  "type": "object",
  "properties": {
    "mitigation_action": {
      "$ref": "#/components/schemas/api-shield_old_operation_mitigation_action"
    }
  },
  "description": "Operation ID to mitigation action mappings"
}
object api-shield_old_public_schema
{
  "type": "object",
  "required": [
    "schema_id",
    "name",
    "kind",
    "created_at"
  ],
  "properties": {
    "kind": {
      "$ref": "#/components/schemas/api-shield_old_kind"
    },
    "name": {
      "type": "string",
      "example": "petstore schema",
      "description": "Name of the schema",
      "x-auditable": true
    },
    "source": {
      "type": "string",
      "example": "<schema file bytes>",
      "description": "Source of the schema",
      "x-auditable": true
    },
    "schema_id": {
      "$ref": "#/components/schemas/api-shield_schemas-uuid"
    },
    "created_at": {
      "$ref": "#/components/schemas/api-shield_schemas-timestamp"
    },
    "validation_enabled": {
      "$ref": "#/components/schemas/api-shield_old_validation_enabled"
    }
  }
}
object api-shield_old_response_user_schemas_hosts
{
  "type": "object",
  "required": [
    "schema_id",
    "name",
    "hosts",
    "created_at"
  ],
  "properties": {
    "name": {
      "type": "string",
      "example": "petstore schema",
      "description": "Name of the schema",
      "x-auditable": true
    },
    "hosts": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Hosts serving the schema, e.g zone.host.com"
    },
    "schema_id": {
      "$ref": "#/components/schemas/api-shield_schemas-uuid"
    },
    "created_at": {
      "$ref": "#/components/schemas/api-shield_schemas-timestamp"
    }
  }
}
object api-shield_old_schema_upload_details_errors_critical
{
  "type": "object",
  "properties": {
    "errors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/api-shield_old_schema_upload_log_event"
      },
      "description": "Diagnostic error events that occurred during processing."
    },
    "critical": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/api-shield_old_schema_upload_log_event"
      },
      "description": "Diagnostic critical error events that occurred during processing."
    }
  }
}
object api-shield_old_schema_upload_details_warnings_only
{
  "type": "object",
  "properties": {
    "warnings": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/api-shield_old_schema_upload_log_event"
      },
      "description": "Diagnostic warning events that occurred during processing. These events are non-critical errors found within the schema."
    }
  }
}
object api-shield_old_schema_upload_failure
{
  "allOf": [
    {
      "$ref": "#/components/schemas/api-shield_api-response-common-failure"
    },
    {
      "type": "object",
      "properties": {
        "upload_details": {
          "$ref": "#/components/schemas/api-shield_old_schema_upload_details_errors_critical"
        }
      }
    }
  ]
}
object api-shield_old_schema_upload_log_event
{
  "type": "object",
  "required": [
    "code"
  ],
  "properties": {
    "code": {
      "type": "integer",
      "example": 28,
      "description": "Code that identifies the event that occurred.",
      "x-auditable": true
    },
    "message": {
      "type": "string",
      "example": "unsupported media type: application/octet-stream",
      "description": "Diagnostic message that describes the event.",
      "x-auditable": true
    },
    "locations": {
      "type": "array",
      "items": {
        "type": "string",
        "example": ".paths[\"/user/{username}\"].put",
        "description": "JSONPath location in the schema where these events were encountered.  See [https://goessner.net/articles/JsonPath/](https://goessner.net/articles/JsonPath/) for JSONPath specification.",
        "x-auditable": true
      },
      "description": "JSONPath location(s) in the schema where these events were encountered.  See [https://goessner.net/articles/JsonPath/](https://goessner.net/articles/JsonPath/) for JSONPath specification."
    }
  }
}
object api-shield_old_schema_upload_response
{
  "type": "object",
  "required": [
    "schema"
  ],
  "properties": {
    "schema": {
      "$ref": "#/components/schemas/api-shield_old_public_schema"
    },
    "upload_details": {
      "$ref": "#/components/schemas/api-shield_old_schema_upload_details_warnings_only"
    }
  }
}
string api-shield_old_validation_default_mitigation_action
{
  "enum": [
    "none",
    "log",
    "block"
  ],
  "type": "string",
  "example": "block",
  "description": "The default mitigation action used when there is no mitigation action defined on the operation\n\nMitigation actions are as follows:\n\n  * `log` - log request when request does not conform to schema\n  * `block` - deny access to the site when request does not conform to schema\n\nA 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",
  "x-auditable": true
}
string api-shield_old_validation_default_mitigation_action_patch
{
  "enum": [
    "none",
    "log",
    "block",
    null
  ],
  "type": "string",
  "example": "block",
  "nullable": true,
  "description": "The default mitigation action used when there is no mitigation action defined on the operation\nMitigation actions are as follows:\n\n  * `log` - log request when request does not conform to schema\n  * `block` - deny access to the site when request does not conform to schema\n\nA 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\n`null` will have no effect.\n",
  "x-auditable": true
}
boolean api-shield_old_validation_enabled
{
  "type": "boolean",
  "description": "Flag whether schema is enabled for validation.",
  "x-auditable": true
}
string api-shield_old_validation_override_mitigation_action
{
  "enum": [
    "none",
    null
  ],
  "type": "string",
  "example": "disable_override",
  "nullable": true,
  "description": "When set, this overrides both zone level and operation level mitigation actions.\n\n  - `none` will skip running schema validation entirely for the request\n  - `null` indicates that no override is in place\n",
  "x-auditable": true
}
string api-shield_old_validation_override_mitigation_action_patch
{
  "enum": [
    "none",
    "disable_override",
    null
  ],
  "type": "string",
  "example": "none",
  "nullable": true,
  "description": "When set, this overrides both zone level and operation level mitigation actions.\n\n  - `none` will skip running schema validation entirely for the request\n\nTo clear any override, use the special value `disable_override`\n\n`null` will have no effect.\n",
  "x-auditable": true
}
string api-shield_old_validation_override_mitigation_action_write
{
  "enum": [
    "none",
    "disable_override",
    null
  ],
  "type": "string",
  "example": "none",
  "nullable": true,
  "description": "When set, this overrides both zone level and operation level mitigation actions.\n\n  - `none` will skip running schema validation entirely for the request\n  - `null` indicates that no override is in place\n\nTo clear any override, use the special value `disable_override` or `null`\n",
  "x-auditable": true
}
object api-shield_old_zone_schema_validation_settings
{
  "type": "object",
  "properties": {
    "validation_default_mitigation_action": {
      "$ref": "#/components/schemas/api-shield_old_validation_default_mitigation_action"
    },
    "validation_override_mitigation_action": {
      "$ref": "#/components/schemas/api-shield_old_validation_override_mitigation_action"
    }
  }
}
object api-shield_old_zone_schema_validation_settings_patch
{
  "type": "object",
  "properties": {
    "validation_default_mitigation_action": {
      "$ref": "#/components/schemas/api-shield_old_validation_default_mitigation_action_patch"
    },
    "validation_override_mitigation_action": {
      "$ref": "#/components/schemas/api-shield_old_validation_override_mitigation_action_patch"
    }
  }
}
object api-shield_old_zone_schema_validation_settings_put
{
  "type": "object",
  "required": [
    "validation_default_mitigation_action"
  ],
  "properties": {
    "validation_default_mitigation_action": {
      "$ref": "#/components/schemas/api-shield_old_validation_default_mitigation_action"
    },
    "validation_override_mitigation_action": {
      "$ref": "#/components/schemas/api-shield_old_validation_override_mitigation_action_write"
    }
  }
}
object api-shield_openapi
{
  "type": "object",
  "example": {
    "info": {
      "title": "OpenAPI JSON schema for www.example.com",
      "version": "1.0"
    },
    "paths": {
      "/api/v1/users/{var1}": {
        "get": {
          "parameters": [
            {
              "in": "path",
              "name": "var1",
              "schema": {
                "type": "string"
              },
              "required": true
            }
          ]
        }
      },
      "... Further paths ...": {}
    },
    "openapi": "3.0.0",
    "servers": [
      {
        "url": "www.example.com"
      }
    ]
  },
  "description": "A OpenAPI 3.0.0 compliant schema."
}
object api-shield_openapi-with-thresholds
{
  "type": "object",
  "example": {
    "info": {
      "title": "OpenAPI JSON schema for www.example.com",
      "version": "1.0"
    },
    "paths": {
      "/api/v1/users/{var1}": {
        "get": {
          "parameters": [
            {
              "in": "path",
              "name": "var1",
              "schema": {
                "type": "string"
              },
              "required": true
            }
          ]
        }
      },
      "... Further paths ...": {}
    },
    "openapi": "3.0.0",
    "servers": [
      {
        "url": "www.example.com"
      }
    ]
  },
  "description": "A OpenAPI 3.0.0 compliant schema."
}
object api-shield_operation
{
  "allOf": [
    {
      "$ref": "#/components/schemas/api-shield_standard_operation"
    },
    {
      "type": "object",
      "default": {},
      "nullable": true,
      "properties": {
        "features": {
          "$ref": "#/components/schemas/api-shield_operation_features"
        }
      }
    }
  ]
}
object api-shield_operation_feature_api_routing
{
  "type": "object",
  "example": {
    "api_routing": {
      "route": "https://api.example.com/api/service",
      "last_updated": "2014-01-01T05:20:00.12345Z"
    }
  },
  "readOnly": true,
  "properties": {
    "api_routing": {
      "type": "object",
      "properties": {
        "route": {
          "type": "string",
          "example": "https://api.example.com/api/service",
          "description": "Target route.",
          "x-auditable": true
        },
        "last_updated": {
          "$ref": "#/components/schemas/api-shield_timestamp"
        }
      },
      "description": "API Routing settings on endpoint."
    }
  }
}
object api-shield_operation_feature_confidence_intervals
{
  "type": "object",
  "example": {
    "confidence_intervals": {
      "last_updated": "2014-01-01T05:20:00.12345Z",
      "suggested_threshold": {
        "mean": 23.5,
        "confidence_intervals": {
          "p90": {
            "lower": 23.1,
            "upper": 23.9
          },
          "p95": {
            "lower": 22,
            "upper": 24.1
          },
          "p99": {
            "lower": 20.2,
            "upper": 30
          }
        }
      }
    }
  },
  "readOnly": true,
  "properties": {
    "confidence_intervals": {
      "type": "object",
      "properties": {
        "last_updated": {
          "$ref": "#/components/schemas/api-shield_timestamp"
        },
        "suggested_threshold": {
          "type": "object",
          "properties": {
            "mean": {
              "type": "number",
              "example": 25.5,
              "description": "Suggested threshold.",
              "x-auditable": true
            },
            "confidence_intervals": {
              "type": "object",
              "properties": {
                "p90": {
                  "$ref": "#/components/schemas/api-shield_confidence_intervals_bounds"
                },
                "p95": {
                  "$ref": "#/components/schemas/api-shield_confidence_intervals_bounds"
                },
                "p99": {
                  "$ref": "#/components/schemas/api-shield_confidence_intervals_bounds"
                }
              }
            }
          }
        }
      }
    }
  }
}
object api-shield_operation_feature_parameter_schemas
{
  "type": "object",
  "readOnly": true,
  "required": [
    "parameter_schemas",
    "last_updated"
  ],
  "properties": {
    "parameter_schemas": {
      "type": "object",
      "properties": {
        "last_updated": {
          "$ref": "#/components/schemas/api-shield_timestamp"
        },
        "parameter_schemas": {
          "$ref": "#/components/schemas/api-shield_parameter_schemas_definition"
        }
      }
    }
  }
}
object api-shield_operation_feature_schema_info
{
  "type": "object",
  "readOnly": true,
  "properties": {
    "schema_info": {
      "type": "object",
      "properties": {
        "active_schema": {
          "type": "object",
          "properties": {
            "id": {
              "$ref": "#/components/schemas/api-shield_schemas-uuid"
            },
            "name": {
              "type": "string",
              "example": "api-endpoints-8694824bf5c04d019edcbf399c03c103-api-discovery.example.com-thresholds.json",
              "description": "Schema file name.",
              "x-auditable": true
            },
            "created_at": {
              "$ref": "#/components/schemas/api-shield_timestamp"
            },
            "is_learned": {
              "type": "boolean",
              "example": true,
              "description": "True if schema is Cloudflare-provided.",
              "x-auditable": true
            }
          },
          "description": "Schema active on endpoint."
        },
        "learned_available": {
          "type": "boolean",
          "example": true,
          "description": "True if a Cloudflare-provided learned schema is available for this endpoint.",
          "x-auditable": true
        },
        "mitigation_action": {
          "enum": [
            "none",
            "log",
            "block"
          ],
          "type": "string",
          "example": "block",
          "nullable": true,
          "description": "Action taken on requests failing validation.",
          "x-auditable": true
        }
      }
    }
  }
}
object api-shield_operation_feature_thresholds
{
  "type": "object",
  "readOnly": true,
  "required": [
    "period_seconds",
    "suggested_threshold",
    "p50",
    "p90",
    "p99",
    "requests",
    "auth_id_tokens",
    "data_points",
    "last_updated"
  ],
  "properties": {
    "thresholds": {
      "type": "object",
      "properties": {
        "p50": {
          "$ref": "#/components/schemas/api-shield_p50"
        },
        "p90": {
          "$ref": "#/components/schemas/api-shield_p90"
        },
        "p99": {
          "$ref": "#/components/schemas/api-shield_p99"
        },
        "requests": {
          "$ref": "#/components/schemas/api-shield_requests"
        },
        "data_points": {
          "$ref": "#/components/schemas/api-shield_data_points"
        },
        "last_updated": {
          "$ref": "#/components/schemas/api-shield_timestamp"
        },
        "auth_id_tokens": {
          "$ref": "#/components/schemas/api-shield_auth_id_tokens"
        },
        "period_seconds": {
          "$ref": "#/components/schemas/api-shield_period_seconds"
        },
        "suggested_threshold": {
          "$ref": "#/components/schemas/api-shield_suggested_threshold"
        }
      }
    }
  }
}
object api-shield_operation_features
{
  "type": "object",
  "anyOf": [
    {
      "$ref": "#/components/schemas/api-shield_operation_feature_thresholds"
    },
    {
      "$ref": "#/components/schemas/api-shield_operation_feature_parameter_schemas"
    },
    {
      "$ref": "#/components/schemas/api-shield_operation_feature_api_routing"
    },
    {
      "$ref": "#/components/schemas/api-shield_operation_feature_confidence_intervals"
    },
    {
      "$ref": "#/components/schemas/api-shield_operation_feature_schema_info"
    }
  ],
  "readOnly": true
}
object api-shield_operation_id_selector
{
  "type": "object",
  "required": [
    "include"
  ],
  "properties": {
    "include": {
      "type": "object",
      "required": [
        "operation_ids"
      ],
      "properties": {
        "operation_ids": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/api-shield_schemas-uuid"
          },
          "minItems": 1
        }
      }
    }
  },
  "description": "Operation IDs selector"
}
object api-shield_operation_with_labels_only
{
  "allOf": [
    {
      "$ref": "#/components/schemas/api-shield_standard_operation"
    },
    {
      "type": "object",
      "properties": {
        "labels": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/api-shield_label"
          }
        }
      }
    }
  ]
}
integer api-shield_p50
{
  "type": "integer",
  "readOnly": true,
  "description": "The p50 quantile of requests (in period_seconds).",
  "x-auditable": true
}
integer api-shield_p90
{
  "type": "integer",
  "readOnly": true,
  "description": "The p90 quantile of requests (in period_seconds).",
  "x-auditable": true
}
integer api-shield_p99
{
  "type": "integer",
  "readOnly": true,
  "description": "The p99 quantile of requests (in period_seconds).",
  "x-auditable": true
}
object api-shield_parameter_schemas_definition
{
  "type": "object",
  "example": {
    "responses": null,
    "parameters": [
      {
        "in": "path",
        "name": "var1",
        "schema": {
          "type": "integer",
          "maximum": 10,
          "minimum": 1
        },
        "required": true,
        "description": "Sufficient requests have been observed for this parameter to provide high confidence in this parameter schema."
      }
    ]
  },
  "readOnly": true,
  "properties": {
    "responses": {
      "type": "object",
      "nullable": true,
      "readOnly": true,
      "description": "An empty response object. This field is required to yield a valid operation schema."
    },
    "parameters": {
      "type": "array",
      "items": {
        "type": "object"
      },
      "example": [
        {
          "in": "path",
          "name": "var1",
          "schema": {
            "type": "integer",
            "maximum": 10,
            "minimum": 1
          },
          "required": true,
          "description": "Sufficient requests have been observed for this parameter to provide high confidence in this parameter schema."
        }
      ],
      "readOnly": true,
      "description": "An array containing the learned parameter schemas."
    }
  },
  "description": "An operation schema object containing a response."
}
object api-shield_patch_discoveries_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/api-shield_api-response-common"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "$ref": "#/components/schemas/api-shield_api_discovery_patch_multiple_request"
        }
      }
    }
  ]
}
object api-shield_patch_discovery_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/api-shield_api-response-common"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "state": {
              "$ref": "#/components/schemas/api-shield_api_discovery_state"
            }
          }
        }
      }
    }
  ]
}
object api-shield_patch_label_request
{
  "type": "object",
  "properties": {
    "metadata": {
      "$ref": "#/components/schemas/api-shield_label_metadata"
    },
    "description": {
      "$ref": "#/components/schemas/api-shield_label_description"
    }
  }
}
object api-shield_per_operation_bulk_settings
{
  "type": "object",
  "example": {
    "3818d821-5901-4147-a474-f5f5aec1d54e": {
      "mitigation_action": "log"
    },
    "b17c8043-99a0-4202-b7d9-8f7cdbee02cd": {
      "mitigation_action": "block"
    }
  },
  "description": "Operation ID to per operation setting mapping",
  "additionalProperties": {
    "$ref": "#/components/schemas/api-shield_per_operation_setting"
  }
}
object api-shield_per_operation_setting
{
  "type": "object",
  "required": [
    "operation_id",
    "mitigation_action"
  ],
  "properties": {
    "operation_id": {
      "$ref": "#/components/schemas/api-shield_schemas-uuid"
    },
    "mitigation_action": {
      "enum": [
        "log",
        "block",
        "none"
      ],
      "type": "string",
      "example": "block",
      "description": "When set, this applies a mitigation action to this operation which supersedes a global schema validation setting just for this operation\n\n  - `\"log\"` - log request when request does not conform to schema for this operation\n  - `\"block\"` - deny access to the site when request does not conform to schema for this operation\n  - `\"none\"` - will skip mitigation for this operation\n",
      "x-auditable": true
    }
  }
}
object api-shield_per_operation_setting_change_base
{
  "type": "object",
  "properties": {
    "mitigation_action": {
      "enum": [
        "log",
        "block",
        "none",
        null
      ],
      "type": "string",
      "example": "block",
      "nullable": true,
      "description": "When set, this applies a mitigation action to this operation\n\n  - `\"log\"` - log request when request does not conform to schema for this operation\n  - `\"block\"` - deny access to the site when request does not conform to schema for this operation\n  - `\"none\"` - will skip mitigation for this operation\n  - `null` - clears any mitigation action\n",
      "x-auditable": true
    }
  }
}
integer api-shield_period_seconds
{
  "type": "integer",
  "readOnly": true,
  "description": "The period over which this threshold is suggested.",
  "x-auditable": true
}
object api-shield_position
{
  "type": "object",
  "oneOf": [
    {
      "$ref": "#/components/schemas/api-shield_index"
    },
    {
      "$ref": "#/components/schemas/api-shield_before"
    },
    {
      "$ref": "#/components/schemas/api-shield_after"
    }
  ],
  "writeOnly": true,
  "description": "Update rule order among zone rules."
}
object api-shield_post_labels_on_operation_request
{
  "type": "object",
  "properties": {
    "user": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/api-shield_label_name"
      },
      "minItems": 1,
      "description": "List of user label names."
    },
    "managed": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/api-shield_label_name"
      },
      "minItems": 1,
      "description": "List of managed label names."
    }
  }
}
object api-shield_public_schema
{
  "type": "object",
  "required": [
    "schema_id",
    "name",
    "kind",
    "source",
    "created_at"
  ],
  "properties": {
    "kind": {
      "enum": [
        "openapi_v3"
      ],
      "type": "string",
      "example": "openapi_v3",
      "readOnly": true,
      "description": "The kind of the schema",
      "x-auditable": true
    },
    "name": {
      "type": "string",
      "example": "petstore schema",
      "readOnly": true,
      "description": "A human-readable name for the schema",
      "x-auditable": true
    },
    "source": {
      "type": "string",
      "example": "<schema file contents>",
      "readOnly": true,
      "description": "The raw schema, e.g., the OpenAPI schema, either as JSON or YAML",
      "x-auditable": true
    },
    "schema_id": {
      "type": "string",
      "allOf": [
        {
          "$ref": "#/components/schemas/api-shield_schemas-uuid"
        },
        {
          "type": "string",
          "format": "uuid",
          "readOnly": true,
          "description": "A unique identifier of this schema"
        }
      ],
      "x-auditable": true
    },
    "created_at": {
      "$ref": "#/components/schemas/api-shield_schemas-timestamp"
    },
    "validation_enabled": {
      "type": "boolean",
      "description": "An indicator if this schema is enabled",
      "x-auditable": true
    }
  },
  "description": "A schema used in schema validation"
}
object api-shield_public_schema_success_result
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/api-shield_api-response-common"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "$ref": "#/components/schemas/api-shield_public_schema"
        }
      }
    }
  ]
}
object api-shield_put_label_request
{
  "type": "object",
  "properties": {
    "metadata": {
      "$ref": "#/components/schemas/api-shield_label_metadata"
    },
    "description": {
      "$ref": "#/components/schemas/api-shield_label_description"
    }
  }
}
object api-shield_put_labels_on_operation_request
{
  "type": "object",
  "properties": {
    "user": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/api-shield_label_name"
      },
      "description": "List of user label names. Omitting this property or passing an empty array will result in all user labels being removed from the operation"
    },
    "managed": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/api-shield_label_name"
      },
      "description": "List of managed label names. Omitting this property or passing an empty array will result in all managed labels being removed from the operation"
    }
  }
}
object api-shield_replace_operations_attached_to_label_request
{
  "type": "object",
  "required": [
    "selector"
  ],
  "properties": {
    "selector": {
      "$ref": "#/components/schemas/api-shield_operation_id_selector"
    }
  }
}
object api-shield_request_expression_templates_fallthrough
{
  "type": "object",
  "required": [
    "hosts"
  ],
  "properties": {
    "hosts": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "example": [
        "{zone}.domain1.tld",
        "domain2.tld"
      ],
      "description": "List of hosts to be targeted in the expression"
    }
  },
  "additionalProperties": false
}
integer api-shield_requests
{
  "type": "integer",
  "readOnly": true,
  "description": "The estimated number of requests covered by these calculations.",
  "x-auditable": true
}
object api-shield_response_expression_templates_fallthrough
{
  "type": "object",
  "required": [
    "title",
    "expression"
  ],
  "properties": {
    "title": {
      "type": "string",
      "example": "Fallthrough Expression for [zone.domain.tld]",
      "description": "Title for the expression",
      "x-auditable": true
    },
    "expression": {
      "type": "string",
      "example": "(cf.api_gateway.fallthrough_detected)",
      "description": "WAF Expression for fallthrough",
      "x-auditable": true
    }
  }
}
object api-shield_rule-properties
{
  "type": "object",
  "properties": {
    "title": {
      "$ref": "#/components/schemas/api-shield_schemas-title"
    },
    "action": {
      "$ref": "#/components/schemas/api-shield_action"
    },
    "enabled": {
      "$ref": "#/components/schemas/api-shield_enabled"
    },
    "selector": {
      "$ref": "#/components/schemas/api-shield_selector"
    },
    "expression": {
      "$ref": "#/components/schemas/api-shield_expression"
    },
    "description": {
      "$ref": "#/components/schemas/api-shield_schemas-description"
    }
  }
}
object api-shield_schema-response-with-thresholds
{
  "allOf": [
    {
      "$ref": "#/components/schemas/api-shield_api-response-common"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "schemas": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/api-shield_openapi-with-thresholds"
              }
            },
            "timestamp": {
              "type": "string",
              "x-auditable": true
            }
          }
        }
      }
    }
  ]
}
object api-shield_schema_hosts
{
  "type": "object",
  "required": [
    "schema_id",
    "name",
    "hosts",
    "created_at"
  ],
  "properties": {
    "name": {
      "type": "string",
      "example": "petstore schema",
      "readOnly": true,
      "description": "Name of the schema",
      "x-auditable": true
    },
    "hosts": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "readOnly": true,
      "description": "Hosts serving the schema, e.g zone.host.com",
      "x-auditable": true
    },
    "schema_id": {
      "type": "string",
      "allOf": [
        {
          "$ref": "#/components/schemas/api-shield_schemas-uuid"
        },
        {
          "type": "string",
          "format": "uuid",
          "readOnly": true,
          "description": "A unique identifier of this schema"
        }
      ],
      "x-auditable": true
    },
    "created_at": {
      "$ref": "#/components/schemas/api-shield_schemas-timestamp"
    }
  }
}
object api-shield_schema_issue_notification
{
  "type": "object",
  "required": [
    "code",
    "message"
  ],
  "properties": {
    "code": {
      "type": "integer",
      "minimum": 1000,
      "description": "A unique error code that describes the kind of issue with the schema"
    },
    "source": {
      "type": "object",
      "nullable": true,
      "properties": {
        "locations": {
          "type": "array",
          "items": {
            "type": "string",
            "example": ".paths[\"/user/{username}\"].put"
          },
          "description": "A list of JSON path expression(s) that describe the location(s) of the issue within the provided resource. See [https://goessner.net/articles/JsonPath/](https://goessner.net/articles/JsonPath/) for JSONPath specification."
        }
      }
    },
    "message": {
      "type": "string",
      "description": "A short text explaining the issue with the schema"
    }
  }
}
object api-shield_schema_response_discovery
{
  "allOf": [
    {
      "$ref": "#/components/schemas/api-shield_api-response-common"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "type": "object",
          "required": [
            "timestamp",
            "schemas"
          ],
          "properties": {
            "schemas": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/api-shield_openapi"
              }
            },
            "timestamp": {
              "$ref": "#/components/schemas/api-shield_schemas-timestamp"
            }
          }
        }
      }
    }
  ]
}
string api-shield_schemas-description
{
  "type": "string",
  "example": "Long description for Token Validation Rule",
  "maxLength": 500,
  "description": "A human-readable description that gives more details than `title`.",
  "x-auditable": true
}
object api-shield_schemas-identifier
{
  "allOf": [
    {
      "$ref": "#/components/schemas/api-shield_identifier"
    },
    {
      "type": "string",
      "readOnly": true,
      "x-auditable": true
    }
  ]
}
object api-shield_schemas-timestamp
{
  "allOf": [
    {
      "$ref": "#/components/schemas/api-shield_timestamp"
    },
    {
      "type": "string",
      "readOnly": true,
      "x-auditable": true
    }
  ]
}
string api-shield_schemas-title
{
  "type": "string",
  "example": "Example Token Validation Rule",
  "maxLength": 50,
  "description": "A human-readable name for the rule.",
  "x-auditable": true
}
object api-shield_schemas-uuid
{
  "allOf": [
    {
      "type": "string",
      "minLength": 36,
      "x-auditable": true
    },
    {
      "$ref": "#/components/schemas/api-shield_uuid"
    }
  ]
}
object api-shield_selector
{
  "type": "object",
  "properties": {
    "exclude": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/api-shield_selector-exclude"
      },
      "nullable": true,
      "description": "Ignore operations that were otherwise included by `include`."
    },
    "include": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/api-shield_selector-include"
      },
      "nullable": true,
      "description": "Select all matching operations."
    }
  },
  "description": "Select operations covered by this rule.\n\nFor details on selectors, see the [Cloudflare Docs](https://developers.cloudflare.com/api-shield/security/jwt-validation/).\n"
}
object api-shield_selector-exclude
{
  "type": "object",
  "properties": {
    "operation_ids": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/api-shield_schemas-uuid"
      },
      "example": [
        "f9c5615e-fe15-48ce-bec6-cfc1946f1bec",
        "56828eae-035a-4396-ba07-51c66d680a04"
      ],
      "description": "Excluded operation IDs."
    }
  }
}
object api-shield_selector-include
{
  "type": "object",
  "properties": {
    "host": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/api-shield_host"
      },
      "example": [
        "v1.example.com",
        "v2.example.com"
      ],
      "description": "Included hostnames."
    }
  }
}
string api-shield_selector-operation-state
{
  "enum": [
    "included",
    "excluded",
    "ignored"
  ],
  "type": "string",
  "example": "included",
  "description": "Details how `selector` interacted with an operation:\n  - `included` operations are included by `selector` and will be covered by the Token Validation Rule\n  - `excluded` operations are excluded by `selector` and will not be covered by the Token Validation Rule\n  - `ignored` operations are not included by `selector` and will not be covered by the Token Validation Rule\n",
  "x-auditable": true
}
object api-shield_single-operation-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/api-shield_api-response-common"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "allOf": [
            {
              "$ref": "#/components/schemas/api-shield_operation"
            }
          ]
        }
      }
    }
  ]
}
object api-shield_standard_operation
{
  "allOf": [
    {
      "$ref": "#/components/schemas/api-shield_basic_operation"
    },
    {
      "type": "object",
      "required": [
        "operation_id",
        "last_updated"
      ],
      "properties": {
        "last_updated": {
          "$ref": "#/components/schemas/api-shield_schemas-timestamp"
        },
        "operation_id": {
          "$ref": "#/components/schemas/api-shield_schemas-uuid"
        }
      }
    }
  ]
}
integer api-shield_suggested_threshold
{
  "type": "integer",
  "readOnly": true,
  "description": "The suggested threshold in requests done by the same auth_id or period_seconds.",
  "x-auditable": true
}
string api-shield_timestamp
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-01T05:20:00.12345Z",
  "x-auditable": true
}
string api-shield_title
{
  "type": "string",
  "example": "Example Token Validation Configuration",
  "maxLength": 50,
  "x-auditable": true
}
array api-shield_token_sources
{
  "type": "array",
  "items": {
    "anyOf": [
      {
        "$ref": "#/components/schemas/api-shield_header"
      },
      {
        "$ref": "#/components/schemas/api-shield_cookie"
      }
    ]
  },
  "example": [
    "http.request.headers[\"x-auth\"][0]",
    "http.request.cookies[\"Authorization\"][0]"
  ],
  "maxItems": 4,
  "minItems": 1
}
string api-shield_token_type
{
  "enum": [
    "JWT"
  ],
  "type": "string",
  "example": "JWT",
  "x-auditable": true
}
object api-shield_traffic_stats
{
  "type": "object",
  "readOnly": true,
  "properties": {
    "traffic_stats": {
      "type": "object",
      "required": [
        "period_seconds",
        "requests",
        "last_updated"
      ],
      "properties": {
        "requests": {
          "type": "number",
          "format": "float",
          "example": 1987.06,
          "readOnly": true,
          "description": "The average number of requests seen during this period",
          "x-auditable": true
        },
        "last_updated": {
          "$ref": "#/components/schemas/api-shield_schemas-timestamp"
        },
        "period_seconds": {
          "type": "integer",
          "example": 3600,
          "readOnly": true,
          "description": "The period in seconds these statistics were computed over",
          "x-auditable": true
        }
      }
    }
  }
}
string api-shield_uuid
{
  "type": "string",
  "example": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
  "maxLength": 36,
  "description": "UUID.",
  "x-auditable": true
}
object argo-analytics_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/argo-analytics_messages"
    },
    "result": {
      "anyOf": [
        {
          "type": "object"
        },
        {
          "type": "array",
          "items": {}
        },
        {
          "type": "string"
        }
      ]
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful"
    },
    "messages": {
      "$ref": "#/components/schemas/argo-analytics_messages"
    }
  }
}
object argo-analytics_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/argo-analytics_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful"
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/argo-analytics_messages"
        }
      ],
      "example": []
    }
  }
}
object argo-analytics_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/argo-analytics_api-response-common"
    },
    {
      "properties": {
        "result": {
          "anyOf": [
            {
              "type": "object",
              "nullable": true
            },
            {
              "type": "string",
              "nullable": true
            }
          ]
        }
      }
    }
  ]
}
string argo-analytics_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "readOnly": true,
  "maxLength": 32,
  "description": "Identifier"
}
array argo-analytics_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "message": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
object argo-analytics_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/argo-analytics_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object"
        }
      }
    }
  ]
}
object argo-config_api_response_common_failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/argo-config_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Describes a failed API response."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/argo-config_messages"
        }
      ],
      "example": []
    }
  }
}
object argo-config_api_response_single
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/argo-config_messages"
    },
    "result": {
      "$ref": "#/components/schemas/argo-config_result_object"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Describes a successful API response."
    },
    "messages": {
      "$ref": "#/components/schemas/argo-config_messages"
    }
  }
}
boolean argo-config_editable
{
  "type": "boolean",
  "description": "Specifies if the setting is editable.",
  "x-auditable": true
}
string argo-config_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "readOnly": true,
  "maxLength": 32,
  "description": "Specifies the zone associated with the API call."
}
array argo-config_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "message": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string argo-config_modified_on
{
  "type": "string",
  "format": "date-time",
  "description": "Specifies the time when the setting was last modified.",
  "x-auditable": true
}
object argo-config_patch
{
  "type": "object",
  "required": [
    "value"
  ],
  "properties": {
    "value": {
      "$ref": "#/components/schemas/argo-config_setting_value"
    }
  },
  "description": "Configures the enablement of Argo Smart Routing."
}
object argo-config_result_object
{
  "type": "object",
  "required": [
    "id",
    "value",
    "editable"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/argo-config_setting_id"
    },
    "value": {
      "$ref": "#/components/schemas/argo-config_setting_value"
    },
    "editable": {
      "$ref": "#/components/schemas/argo-config_editable"
    },
    "modified_on": {
      "$ref": "#/components/schemas/argo-config_modified_on"
    }
  }
}
string argo-config_setting_id
{
  "type": "string",
  "description": "Specifies the identifier of the Argo Smart Routing setting.",
  "x-auditable": true
}
string argo-config_setting_value
{
  "enum": [
    "on",
    "off"
  ],
  "type": "string",
  "example": "on",
  "description": "Specifies the enablement value of Argo Smart Routing.",
  "x-auditable": true
}
object bill-subs-api_account_subscription_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/bill-subs-api_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/bill-subs-api_subscription"
          }
        }
      }
    }
  ]
}
object bill-subs-api_account_subscription_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/bill-subs-api_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/bill-subs-api_subscription"
        }
      }
    }
  ]
}
string bill-subs-api_action
{
  "type": "string",
  "example": "subscription",
  "readOnly": true,
  "maxLength": 30,
  "description": "The billing item action.",
  "x-auditable": true
}
number bill-subs-api_amount
{
  "type": "number",
  "example": 20.99,
  "readOnly": true,
  "description": "The amount associated with this billing item.",
  "x-auditable": true
}
object bill-subs-api_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/bill-subs-api_api-response-common"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {},
          "nullable": true
        },
        "result_info": {
          "$ref": "#/components/schemas/bill-subs-api_result_info"
        }
      }
    }
  ]
}
object bill-subs-api_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/bill-subs-api_messages"
    },
    "result": {
      "anyOf": [
        {
          "type": "object"
        },
        {
          "type": "array",
          "items": {}
        },
        {
          "type": "string"
        }
      ]
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful"
    },
    "messages": {
      "$ref": "#/components/schemas/bill-subs-api_messages"
    }
  }
}
object bill-subs-api_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/bill-subs-api_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful"
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/bill-subs-api_messages"
        }
      ],
      "example": []
    }
  }
}
object bill-subs-api_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/bill-subs-api_api-response-common"
    },
    {
      "properties": {
        "result": {
          "anyOf": [
            {
              "type": "object",
              "nullable": true
            },
            {
              "type": "string",
              "nullable": true
            }
          ]
        }
      }
    }
  ]
}
object bill-subs-api_available-rate-plan
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/bill-subs-api_identifier"
    },
    "name": {
      "$ref": "#/components/schemas/bill-subs-api_schemas-name"
    },
    "price": {
      "$ref": "#/components/schemas/bill-subs-api_schemas-price"
    },
    "currency": {
      "$ref": "#/components/schemas/bill-subs-api_currency"
    },
    "frequency": {
      "$ref": "#/components/schemas/bill-subs-api_schemas-frequency"
    },
    "legacy_id": {
      "$ref": "#/components/schemas/bill-subs-api_legacy_id"
    },
    "can_subscribe": {
      "$ref": "#/components/schemas/bill-subs-api_can_subscribe"
    },
    "is_subscribed": {
      "$ref": "#/components/schemas/bill-subs-api_is_subscribed"
    },
    "legacy_discount": {
      "$ref": "#/components/schemas/bill-subs-api_legacy_discount"
    },
    "externally_managed": {
      "$ref": "#/components/schemas/bill-subs-api_externally_managed"
    }
  }
}
object bill-subs-api_billing-history
{
  "type": "object",
  "required": [
    "id",
    "type",
    "action",
    "description",
    "occurred_at",
    "amount",
    "currency",
    "zone"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/bill-subs-api_components-schemas-identifier"
    },
    "type": {
      "$ref": "#/components/schemas/bill-subs-api_type"
    },
    "zone": {
      "$ref": "#/components/schemas/bill-subs-api_schemas-zone"
    },
    "action": {
      "$ref": "#/components/schemas/bill-subs-api_action"
    },
    "amount": {
      "$ref": "#/components/schemas/bill-subs-api_amount"
    },
    "currency": {
      "$ref": "#/components/schemas/bill-subs-api_currency"
    },
    "description": {
      "$ref": "#/components/schemas/bill-subs-api_description"
    },
    "occurred_at": {
      "$ref": "#/components/schemas/bill-subs-api_occurred_at"
    }
  }
}
object bill-subs-api_billing_history_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/bill-subs-api_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/bill-subs-api_billing-history"
          }
        }
      }
    }
  ]
}
object bill-subs-api_billing_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/bill-subs-api_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "id": {
              "$ref": "#/components/schemas/bill-subs-api_components-schemas-identifier"
            },
            "vat": {
              "type": "string",
              "example": "GB123456789"
            },
            "city": {
              "type": "string",
              "example": "Anytown"
            },
            "state": {
              "type": "string",
              "example": "AnyState"
            },
            "address": {
              "type": "string",
              "example": "123 Main Street"
            },
            "balance": {
              "type": "string",
              "example": 0
            },
            "company": {
              "type": "string",
              "example": "Company"
            },
            "country": {
              "type": "string",
              "example": "Anycountry"
            },
            "zipcode": {
              "type": "string",
              "example": 12345
            },
            "address2": {
              "type": "string",
              "example": "Apt 1"
            },
            "edited_on": {
              "type": "string",
              "format": "date-time",
              "example": "2014-03-01T12:21:59.3456Z"
            },
            "last_name": {
              "type": "string",
              "example": "Doe"
            },
            "telephone": {
              "type": "string",
              "example": 1234567899
            },
            "created_on": {
              "type": "string",
              "format": "date-time",
              "example": "2014-03-01T12:21:59.3456Z"
            },
            "first_name": {
              "type": "string",
              "example": "John"
            },
            "is_partner": {
              "type": "boolean",
              "example": false
            },
            "use_legacy": {
              "type": "boolean",
              "example": false
            },
            "card_number": {
              "type": "string",
              "example": 4242424242424242
            },
            "device_data": {
              "type": "string",
              "example": "sample_data"
            },
            "tax_id_type": {
              "type": "string",
              "example": "type"
            },
            "account_type": {
              "type": "string",
              "example": "type"
            },
            "payment_city": {
              "type": "string",
              "example": "Anytown"
            },
            "payment_email": {
              "type": "string",
              "example": "johndoe@gmail.com"
            },
            "payment_nonce": {
              "type": "string",
              "example": "abc123"
            },
            "payment_state": {
              "type": "string",
              "example": "state"
            },
            "primary_email": {
              "type": "string",
              "example": "johndoe@gmail.com",
              "x-auditable": true
            },
            "next_bill_date": {
              "type": "string",
              "format": "date-time",
              "example": "2014-03-01T12:21:59.3456Z"
            },
            "payment_address": {
              "type": "string",
              "example": "123 Main Street"
            },
            "payment_country": {
              "type": "string",
              "example": "Anycountry"
            },
            "payment_gateway": {
              "type": "string",
              "example": "gateway"
            },
            "payment_zipcode": {
              "type": "string",
              "example": 12345
            },
            "validation_code": {
              "type": "string",
              "example": 1111
            },
            "card_expiry_year": {
              "type": "integer",
              "example": 2099
            },
            "payment_address2": {
              "type": "string",
              "example": "Apt 1"
            },
            "card_expiry_month": {
              "type": "integer",
              "example": 12
            },
            "payment_last_name": {
              "type": "string",
              "example": "Doe"
            },
            "payment_first_name": {
              "type": "string",
              "example": "John"
            },
            "enterprise_billing_email": {
              "type": "string",
              "example": "johndoe@gmail.com",
              "x-auditable": true
            },
            "enterprise_primary_email": {
              "type": "string",
              "example": "johndoe@gmail.com",
              "x-auditable": true
            }
          }
        }
      }
    }
  ]
}
boolean bill-subs-api_can_subscribe
{
  "type": "boolean",
  "default": false,
  "example": true,
  "description": "Indicates whether you can subscribe to this plan.",
  "x-auditable": true
}
object bill-subs-api_component-value
{
  "type": "object",
  "properties": {
    "name": {
      "$ref": "#/components/schemas/bill-subs-api_components-schemas-name"
    },
    "default": {
      "$ref": "#/components/schemas/bill-subs-api_default"
    },
    "unit_price": {
      "$ref": "#/components/schemas/bill-subs-api_unit_price"
    }
  }
}
object bill-subs-api_component_value
{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "example": "page_rules",
      "description": "The name of the component value.",
      "x-auditable": true
    },
    "price": {
      "type": "number",
      "example": 5,
      "description": "The unit price for the component value.",
      "x-auditable": true
    },
    "value": {
      "type": "number",
      "example": 20,
      "description": "The amount of the component value assigned.",
      "x-auditable": true
    },
    "default": {
      "type": "number",
      "example": 5,
      "description": "The default amount assigned.",
      "x-auditable": true
    }
  },
  "description": "A component value for a subscription."
}
array bill-subs-api_component_values
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/bill-subs-api_component_value"
  },
  "description": "The list of add-ons subscribed to."
}
string bill-subs-api_components-schemas-identifier
{
  "type": "string",
  "example": "b69a9f3492637782896352daae219e7d",
  "readOnly": true,
  "maxLength": 32,
  "description": "Billing item identifier tag.",
  "x-auditable": true
}
string bill-subs-api_components-schemas-name
{
  "enum": [
    "zones",
    "page_rules",
    "dedicated_certificates",
    "dedicated_certificates_custom"
  ],
  "example": "page_rules",
  "description": "The unique component.",
  "x-auditable": true
}
string bill-subs-api_currency
{
  "type": "string",
  "example": "USD",
  "readOnly": true,
  "description": "The monetary unit in which pricing information is displayed.",
  "x-auditable": true
}
string bill-subs-api_current_period_end
{
  "type": "string",
  "format": "date-time",
  "example": "2014-03-31T12:20:00Z",
  "readOnly": true,
  "description": "The end of the current period and also when the next billing is due.",
  "x-auditable": true
}
string bill-subs-api_current_period_start
{
  "type": "string",
  "format": "date-time",
  "example": "2014-05-11T12:20:00Z",
  "readOnly": true,
  "description": "When the current billing period started. May match initial_period_start if this is the first period.",
  "x-auditable": true
}
number bill-subs-api_default
{
  "type": "number",
  "example": 5,
  "description": "The default amount allocated.",
  "x-auditable": true
}
string bill-subs-api_description
{
  "type": "string",
  "example": "The billing item description",
  "readOnly": true,
  "maxLength": 255,
  "description": "The billing item description.",
  "x-auditable": true
}
number bill-subs-api_duration
{
  "type": "number",
  "example": 1,
  "description": "The duration of the plan subscription.",
  "x-auditable": true
}
boolean bill-subs-api_externally_managed
{
  "type": "boolean",
  "default": false,
  "example": false,
  "description": "Indicates whether this plan is managed externally.",
  "x-auditable": true
}
string bill-subs-api_frequency
{
  "enum": [
    "weekly",
    "monthly",
    "quarterly",
    "yearly"
  ],
  "type": "string",
  "example": "monthly",
  "description": "How often the subscription is renewed automatically.",
  "x-auditable": true
}
object bill-subs-api_frequency_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/bill-subs-api_frequency"
    },
    {
      "enum": [
        "weekly",
        "monthly",
        "quarterly",
        "yearly",
        "not-applicable"
      ],
      "type": "string"
    }
  ],
  "readOnly": true,
  "description": "How often the subscription is renewed automatically (computed field).",
  "x-stainless-terraform-configurability": "computed"
}
string bill-subs-api_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "readOnly": true,
  "maxLength": 32,
  "description": "Identifier",
  "x-auditable": true
}
string bill-subs-api_install_id
{
  "type": "string",
  "description": "app install id.",
  "x-auditable": true
}
boolean bill-subs-api_is_subscribed
{
  "type": "boolean",
  "default": false,
  "example": false,
  "description": "Indicates whether you are currently subscribed to this plan.",
  "x-auditable": true
}
boolean bill-subs-api_legacy_discount
{
  "type": "boolean",
  "default": false,
  "example": false,
  "description": "Indicates whether this plan has a legacy discount applied.",
  "x-auditable": true
}
string bill-subs-api_legacy_id
{
  "type": "string",
  "example": "free",
  "readOnly": true,
  "description": "The legacy identifier for this rate plan, if any.",
  "x-auditable": true
}
array bill-subs-api_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "message": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string bill-subs-api_name
{
  "type": "string",
  "example": "example.com",
  "pattern": "^([a-zA-Z0-9][\\-a-zA-Z0-9]*\\.)+[\\-a-zA-Z0-9]{2,20}$",
  "readOnly": true,
  "maxLength": 253,
  "description": "The domain name",
  "x-auditable": true
}
string bill-subs-api_occurred_at
{
  "type": "string",
  "format": "date-time",
  "example": "2014-03-01T12:21:59.3456Z",
  "readOnly": true,
  "description": "When the billing item was created.",
  "x-auditable": true
}
object bill-subs-api_plan_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/bill-subs-api_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/bill-subs-api_schemas-rate-plan"
          }
        }
      }
    }
  ]
}
number bill-subs-api_price
{
  "type": "number",
  "example": 20,
  "readOnly": true,
  "description": "The price of the subscription that will be billed, in US dollars.",
  "x-auditable": true
}
object bill-subs-api_rate-plan
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/bill-subs-api_rate-plan_components-schemas-identifier"
    },
    "name": {
      "$ref": "#/components/schemas/bill-subs-api_schemas-name"
    },
    "currency": {
      "$ref": "#/components/schemas/bill-subs-api_currency"
    },
    "duration": {
      "$ref": "#/components/schemas/bill-subs-api_duration"
    },
    "frequency": {
      "$ref": "#/components/schemas/bill-subs-api_schemas-frequency"
    },
    "components": {
      "$ref": "#/components/schemas/bill-subs-api_schemas-component_values"
    }
  }
}
string bill-subs-api_rate-plan_components-schemas-identifier
{
  "type": "string",
  "example": "free",
  "readOnly": true,
  "description": "Plan identifier tag.",
  "x-auditable": true
}
object bill-subs-api_rate_plan
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "example": "free",
      "description": "The ID of the rate plan.",
      "x-auditable": true
    },
    "sets": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "example": [],
      "description": "The list of sets this rate plan applies to. Returns array of strings.",
      "x-stainless-terraform-configurability": "optional"
    },
    "scope": {
      "type": "string",
      "example": "zone",
      "description": "The scope that this rate plan applies to.",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    },
    "currency": {
      "type": "string",
      "example": "USD",
      "description": "The currency applied to the rate plan subscription.",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    },
    "is_contract": {
      "type": "boolean",
      "example": false,
      "description": "Whether a rate plan is enterprise-based (or newly adopted term contract).",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    },
    "public_name": {
      "type": "string",
      "example": "Business Plan",
      "description": "The full name of the rate plan.",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    },
    "externally_managed": {
      "type": "boolean",
      "example": false,
      "description": "Whether this rate plan is managed externally from Cloudflare.",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    }
  },
  "description": "The rate plan applied to the subscription."
}
object bill-subs-api_result_info
{
  "type": "object",
  "properties": {
    "page": {
      "type": "number",
      "example": 1,
      "description": "Current page within paginated list of results"
    },
    "count": {
      "type": "number",
      "example": 1,
      "description": "Total number of results for the requested service"
    },
    "per_page": {
      "type": "number",
      "example": 20,
      "description": "Number of results per page of results"
    },
    "total_count": {
      "type": "number",
      "example": 2000,
      "description": "Total results available without any search parameters"
    }
  }
}
array bill-subs-api_schemas-component_values
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/bill-subs-api_component-value"
  },
  "description": "Array of available components values for the plan."
}
string bill-subs-api_schemas-frequency
{
  "enum": [
    "weekly",
    "monthly",
    "quarterly",
    "yearly"
  ],
  "type": "string",
  "example": "monthly",
  "readOnly": true,
  "description": "The frequency at which you will be billed for this plan.",
  "x-auditable": true
}
string bill-subs-api_schemas-identifier
{
  "type": "string",
  "example": "506e3185e9c882d175a2d0cb0093d9f2",
  "readOnly": true,
  "maxLength": 32,
  "description": "Subscription identifier tag.",
  "x-auditable": true
}
string bill-subs-api_schemas-name
{
  "type": "string",
  "example": "Free Plan",
  "readOnly": true,
  "maxLength": 80,
  "description": "The plan name.",
  "x-auditable": true
}
number bill-subs-api_schemas-price
{
  "type": "number",
  "example": 0,
  "description": "The amount you will be billed for this plan.",
  "x-auditable": true
}
object bill-subs-api_schemas-rate-plan
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/bill-subs-api_rate-plan"
    }
  ]
}
object bill-subs-api_schemas-zone
{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "readOnly": true,
      "x-auditable": true
    }
  }
}
string bill-subs-api_state
{
  "enum": [
    "Trial",
    "Provisioned",
    "Paid",
    "AwaitingPayment",
    "Cancelled",
    "Failed",
    "Expired"
  ],
  "type": "string",
  "example": "Paid",
  "readOnly": true,
  "description": "The state that the subscription is in.",
  "x-auditable": true
}
object bill-subs-api_subscription
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/bill-subs-api_subscription-v2"
    }
  ]
}
object bill-subs-api_subscription-v2
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/bill-subs-api_schemas-identifier"
    },
    "app": {
      "properties": {
        "install_id": {
          "$ref": "#/components/schemas/bill-subs-api_install_id"
        }
      }
    },
    "zone": {
      "$ref": "#/components/schemas/bill-subs-api_zone"
    },
    "price": {
      "$ref": "#/components/schemas/bill-subs-api_price"
    },
    "state": {
      "$ref": "#/components/schemas/bill-subs-api_state"
    },
    "currency": {
      "$ref": "#/components/schemas/bill-subs-api_currency"
    },
    "frequency": {
      "$ref": "#/components/schemas/bill-subs-api_frequency"
    },
    "rate_plan": {
      "$ref": "#/components/schemas/bill-subs-api_rate_plan"
    },
    "component_values": {
      "$ref": "#/components/schemas/bill-subs-api_component_values"
    },
    "current_period_end": {
      "$ref": "#/components/schemas/bill-subs-api_current_period_end"
    },
    "current_period_start": {
      "$ref": "#/components/schemas/bill-subs-api_current_period_start"
    }
  }
}
object bill-subs-api_subscription_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/bill-subs-api_subscription-v2"
    },
    {
      "type": "object",
      "properties": {
        "frequency": {
          "$ref": "#/components/schemas/bill-subs-api_frequency_response"
        }
      }
    }
  ]
}
string bill-subs-api_type
{
  "type": "string",
  "example": "charge",
  "readOnly": true,
  "maxLength": 30,
  "description": "The billing item type.",
  "x-auditable": true
}
number bill-subs-api_unit_price
{
  "type": "number",
  "example": 1,
  "readOnly": true,
  "description": "The unit price of the addon.",
  "x-auditable": true
}
object bill-subs-api_user_subscription_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/bill-subs-api_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/bill-subs-api_subscription"
          }
        }
      }
    }
  ]
}
object bill-subs-api_user_subscription_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/bill-subs-api_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object"
        }
      }
    }
  ]
}
object bill-subs-api_zone
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/bill-subs-api_identifier"
    },
    "name": {
      "$ref": "#/components/schemas/bill-subs-api_name"
    }
  },
  "description": "A simple zone object. May have null properties if not a zone subscription."
}
object bill-subs-api_zone_subscription_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/bill-subs-api_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/bill-subs-api_subscription_response"
        }
      }
    }
  ]
}
object billable-usage-api_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/billable-usage-api_message"
      },
      "example": [
        {
          "code": 1183,
          "message": "Invalid request parameters: Please ensure all required parameters are included and correctly formatted."
        }
      ],
      "minItems": 1,
      "description": "Contains error details describing why the request failed."
    },
    "result": {
      "type": "object",
      "nullable": true,
      "description": "Contains the response payload (always null on failure)."
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Indicates whether the API call was successful."
    },
    "messages": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/billable-usage-api_message"
      },
      "nullable": true,
      "description": "Contains informational notices about the response."
    }
  },
  "description": "Represents a failed API response."
}
string billable-usage-api_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "pattern": "^[0-9a-f]{32}$",
  "maxLength": 32,
  "description": "Represents a Cloudflare resource identifier tag."
}
object billable-usage-api_message
{
  "type": "object",
  "required": [
    "message"
  ],
  "properties": {
    "code": {
      "type": "integer",
      "description": "Identifies the error or notice type."
    },
    "message": {
      "type": "string",
      "description": "Describes the error or notice."
    }
  },
  "description": "Represents an API notice or error detail."
}
object billable-usage-api_usage_record
{
  "type": "object",
  "required": [
    "ChargePeriodStart",
    "ChargePeriodEnd",
    "BillingPeriodStart",
    "ServiceName",
    "ConsumedQuantity",
    "ConsumedUnit",
    "PricingQuantity",
    "CumulatedPricingQuantity",
    "ContractedCost",
    "CumulatedContractedCost",
    "BillingCurrency"
  ],
  "properties": {
    "ServiceName": {
      "type": "string",
      "example": "Workers Standard",
      "description": "Identifies the Cloudflare service."
    },
    "ConsumedUnit": {
      "type": "string",
      "example": "Requests",
      "description": "Specifies the unit of measurement for consumed quantity."
    },
    "ContractedCost": {
      "type": "number",
      "example": 0.75,
      "description": "Specifies the cost for this charge period in the billing currency."
    },
    "BillingCurrency": {
      "type": "string",
      "example": "USD",
      "description": "Specifies the billing currency code (ISO 4217)."
    },
    "ChargePeriodEnd": {
      "type": "string",
      "format": "date-time",
      "example": "2025-02-02T00:00:00Z",
      "description": "Indicates the end of the charge period."
    },
    "PricingQuantity": {
      "type": "integer",
      "example": 150000,
      "description": "Specifies the pricing quantity for this charge period."
    },
    "ConsumedQuantity": {
      "type": "number",
      "example": 150000,
      "description": "Specifies the quantity consumed during this charge period."
    },
    "ChargePeriodStart": {
      "type": "string",
      "format": "date-time",
      "example": "2025-02-01T00:00:00Z",
      "description": "Indicates the start of the charge period."
    },
    "BillingPeriodStart": {
      "type": "string",
      "format": "date-time",
      "example": "2025-02-01T00:00:00Z",
      "description": "Indicates the start of the billing period."
    },
    "CumulatedContractedCost": {
      "type": "number",
      "example": 2.25,
      "description": "Specifies the cumulated cost for the billing period in the billing currency."
    },
    "CumulatedPricingQuantity": {
      "type": "integer",
      "example": 4500000,
      "description": "Specifies the cumulated pricing quantity for the billing period."
    }
  },
  "description": "Represents a single billable usage record."
}
object billable-usage-api_usage_response
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/billable-usage-api_message"
      },
      "nullable": true,
      "description": "Contains error details if the request failed."
    },
    "result": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/billable-usage-api_usage_record"
      },
      "description": "Contains the array of billable usage records."
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Indicates whether the API call was successful."
    },
    "messages": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/billable-usage-api_message"
      },
      "nullable": true,
      "description": "Contains informational notices about the response."
    }
  },
  "description": "Represents a successful response containing billable usage records."
}
string bot-management_ai_bots_protection
{
  "enum": [
    "block",
    "disabled",
    "only_on_ad_pages"
  ],
  "type": "string",
  "example": "block",
  "description": "Enable rule to block AI Scrapers and Crawlers. Please note the value `only_on_ad_pages` is currently not available for Enterprise customers.",
  "x-auditable": true,
  "x-stainless-terraform-configurability": "computed_optional"
}
object bot-management_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/bot-management_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/bot-management_messages"
    }
  }
}
object bot-management_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/bot-management_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/bot-management_messages"
        }
      ],
      "example": []
    }
  }
}
object bot-management_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/bot-management_api-response-common"
    }
  ]
}
boolean bot-management_auto_update_model
{
  "type": "boolean",
  "example": true,
  "description": "Automatically update to the newest bot detection models created by Cloudflare as they are released. [Learn more.](https://developers.cloudflare.com/bots/reference/machine-learning-models#model-versions-and-release-notes)",
  "x-auditable": true,
  "x-stainless-terraform-configurability": "computed_optional"
}
object bot-management_base_config
{
  "allOf": [
    {
      "properties": {
        "enable_js": {
          "$ref": "#/components/schemas/bot-management_enable_js"
        },
        "cf_robots_variant": {
          "$ref": "#/components/schemas/bot-management_cf_robots_variant"
        },
        "ai_bots_protection": {
          "$ref": "#/components/schemas/bot-management_ai_bots_protection"
        },
        "crawler_protection": {
          "$ref": "#/components/schemas/bot-management_crawler_protection"
        },
        "using_latest_model": {
          "$ref": "#/components/schemas/bot-management_using_latest_model"
        },
        "is_robots_txt_managed": {
          "$ref": "#/components/schemas/bot-management_is_robots_txt_managed"
        }
      }
    }
  ],
  "title": "Shared Config"
}
boolean bot-management_bm_cookie_enabled
{
  "type": "boolean",
  "example": true,
  "description": "Indicates that the bot management cookie can be placed on end user devices accessing the site. Defaults to true",
  "x-auditable": true,
  "x-stainless-terraform-configurability": "computed_optional"
}
object bot-management_bm_subscription_config
{
  "allOf": [
    {
      "$ref": "#/components/schemas/bot-management_base_config"
    },
    {
      "properties": {
        "auto_update_model": {
          "$ref": "#/components/schemas/bot-management_auto_update_model"
        },
        "bm_cookie_enabled": {
          "$ref": "#/components/schemas/bot-management_bm_cookie_enabled"
        },
        "suppress_session_score": {
          "$ref": "#/components/schemas/bot-management_suppress_session_score"
        },
        "stale_zone_configuration": {
          "type": "object",
          "title": "stale_zone_configuration",
          "readOnly": true,
          "properties": {
            "fight_mode": {
              "$ref": "#/components/schemas/bot-management_fight_mode_turned_on"
            },
            "optimize_wordpress": {
              "$ref": "#/components/schemas/bot-management_optimize_wordpress_turned_on"
            },
            "sbfm_verified_bots": {
              "$ref": "#/components/schemas/bot-management_sbfm_verified_bots_turned_on"
            },
            "sbfm_likely_automated": {
              "$ref": "#/components/schemas/bot-management_sbfm_likely_automated_turned_on"
            },
            "sbfm_definitely_automated": {
              "$ref": "#/components/schemas/bot-management_sbfm_definitely_automated_turned_on"
            },
            "sbfm_static_resource_protection": {
              "$ref": "#/components/schemas/bot-management_sbfm_static_resource_protection_turned_on"
            }
          },
          "description": "A read-only field that shows which unauthorized settings are currently active on the zone. These settings typically result from upgrades or downgrades."
        }
      }
    }
  ],
  "title": "BM Enterprise Subscription"
}
object bot-management_bot_fight_mode_config
{
  "allOf": [
    {
      "$ref": "#/components/schemas/bot-management_base_config"
    },
    {
      "properties": {
        "fight_mode": {
          "$ref": "#/components/schemas/bot-management_fight_mode"
        },
        "stale_zone_configuration": {
          "type": "object",
          "title": "stale_zone_configuration",
          "readOnly": true,
          "properties": {
            "optimize_wordpress": {
              "$ref": "#/components/schemas/bot-management_optimize_wordpress_turned_on"
            },
            "sbfm_verified_bots": {
              "$ref": "#/components/schemas/bot-management_sbfm_verified_bots_turned_on"
            },
            "sbfm_likely_automated": {
              "$ref": "#/components/schemas/bot-management_sbfm_likely_automated_turned_on"
            },
            "suppress_session_score": {
              "$ref": "#/components/schemas/bot-management_suppress_session_score_turned_off"
            },
            "sbfm_definitely_automated": {
              "$ref": "#/components/schemas/bot-management_sbfm_definitely_automated_turned_on"
            },
            "sbfm_static_resource_protection": {
              "$ref": "#/components/schemas/bot-management_sbfm_static_resource_protection_turned_on"
            }
          },
          "description": "A read-only field that shows which unauthorized settings are currently active on the zone. These settings typically result from upgrades or downgrades."
        }
      }
    }
  ],
  "title": "Bot Fight Mode"
}
object bot-management_bot_management_response_body
{
  "allOf": [
    {
      "$ref": "#/components/schemas/bot-management_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "oneOf": [
            {
              "$ref": "#/components/schemas/bot-management_bot_fight_mode_config"
            },
            {
              "$ref": "#/components/schemas/bot-management_sbfm_definitely_config"
            },
            {
              "$ref": "#/components/schemas/bot-management_sbfm_likely_config"
            },
            {
              "$ref": "#/components/schemas/bot-management_bm_subscription_config"
            }
          ]
        }
      }
    }
  ]
}
string bot-management_cf_robots_variant
{
  "enum": [
    "off",
    "policy_only"
  ],
  "type": "string",
  "example": "policy_only",
  "description": "Specifies the Robots Access Control License variant to use.",
  "x-auditable": true,
  "x-stainless-terraform-configurability": "computed_optional"
}
object bot-management_config_single
{
  "type": "object",
  "oneOf": [
    {
      "$ref": "#/components/schemas/bot-management_bot_fight_mode_config"
    },
    {
      "$ref": "#/components/schemas/bot-management_sbfm_definitely_config"
    },
    {
      "$ref": "#/components/schemas/bot-management_sbfm_likely_config"
    },
    {
      "$ref": "#/components/schemas/bot-management_bm_subscription_config"
    }
  ]
}
string bot-management_crawler_protection
{
  "enum": [
    "enabled",
    "disabled"
  ],
  "type": "string",
  "example": "enabled",
  "description": "Enable rule to punish AI Scrapers and Crawlers via a link maze.",
  "x-auditable": true,
  "x-stainless-terraform-configurability": "computed_optional"
}
boolean bot-management_enable_js
{
  "type": "boolean",
  "example": true,
  "description": "Use lightweight, invisible JavaScript detections to improve Bot Management. [Learn more about JavaScript Detections](https://developers.cloudflare.com/bots/reference/javascript-detections/).",
  "x-auditable": true,
  "x-stainless-terraform-configurability": "computed_optional"
}
object bot-management_feedback_report
{
  "type": "object",
  "required": [
    "type",
    "description",
    "expression",
    "first_request_seen_at",
    "last_request_seen_at",
    "requests",
    "requests_by_score",
    "requests_by_score_src",
    "requests_by_attribute"
  ],
  "properties": {
    "type": {
      "$ref": "#/components/schemas/bot-management_feedback_type"
    },
    "subtype": {
      "type": "string"
    },
    "requests": {
      "type": "integer",
      "format": "int64"
    },
    "created_at": {
      "type": "string",
      "format": "date-time",
      "readOnly": true
    },
    "expression": {
      "type": "string",
      "description": "Wirefilter expression describing the traffic being reported."
    },
    "description": {
      "type": "string"
    },
    "requests_by_score": {
      "$ref": "#/components/schemas/bot-management_requests_by_score"
    },
    "last_request_seen_at": {
      "type": "string",
      "format": "date-time"
    },
    "first_request_seen_at": {
      "type": "string",
      "format": "date-time"
    },
    "requests_by_attribute": {
      "$ref": "#/components/schemas/bot-management_requests_by_attribute"
    },
    "requests_by_score_src": {
      "$ref": "#/components/schemas/bot-management_requests_by_score_src"
    }
  }
}
string bot-management_feedback_type
{
  "enum": [
    "false_positive",
    "false_negative"
  ],
  "type": "string",
  "example": "false_positive",
  "description": "Type of feedback report."
}
boolean bot-management_fight_mode
{
  "type": "boolean",
  "example": true,
  "description": "Whether to enable Bot Fight Mode.",
  "x-auditable": true,
  "x-stainless-terraform-configurability": "computed_optional"
}
boolean bot-management_fight_mode_turned_on
{
  "type": "boolean",
  "title": "fight_mode",
  "description": "Indicates that the zone's Bot Fight Mode is turned on.",
  "x-auditable": true,
  "x-stainless-terraform-configurability": "computed_optional"
}
string bot-management_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Identifier.",
  "x-auditable": true
}
boolean bot-management_is_robots_txt_managed
{
  "type": "boolean",
  "default": false,
  "example": false,
  "description": "Enable cloudflare managed robots.txt. If an existing robots.txt is detected, then managed robots.txt will be prepended to the existing robots.txt.",
  "x-auditable": true,
  "x-stainless-terraform-configurability": "computed_optional"
}
array bot-management_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
object bot-management_metric_requests
{
  "type": "object",
  "required": [
    "metric",
    "requests"
  ],
  "properties": {
    "metric": {
      "type": "string"
    },
    "requests": {
      "type": "integer",
      "format": "int64"
    }
  }
}
boolean bot-management_optimize_wordpress
{
  "type": "boolean",
  "example": true,
  "description": "Whether to optimize Super Bot Fight Mode protections for Wordpress.",
  "x-auditable": true,
  "x-stainless-terraform-configurability": "computed_optional"
}
boolean bot-management_optimize_wordpress_turned_on
{
  "type": "boolean",
  "title": "optimize_wordpress",
  "description": "Indicates that the zone's wordpress optimization for SBFM is turned on.",
  "x-auditable": true,
  "x-stainless-terraform-configurability": "computed_optional"
}
object bot-management_requests_by_attribute
{
  "type": "object",
  "description": "Top attributes contributing to the feedback sample. Keys include topASNs, topCountries, topHosts, topIPs, topJA3Hashes, topJA4s, topPaths, topUserAgents.",
  "additionalProperties": {
    "type": "array",
    "items": {
      "$ref": "#/components/schemas/bot-management_metric_requests"
    }
  }
}
object bot-management_requests_by_score
{
  "type": "object",
  "description": "Map of bot scores (1-99) to request counts. Sum must equal `requests`.",
  "additionalProperties": {
    "type": "integer",
    "format": "int64"
  }
}
object bot-management_requests_by_score_src
{
  "type": "object",
  "description": "Map of score source to request counts. Sum must equal `requests`.",
  "additionalProperties": {
    "type": "integer",
    "format": "int64"
  }
}
string bot-management_sbfm_definitely_automated
{
  "enum": [
    "allow",
    "block",
    "managed_challenge"
  ],
  "type": "string",
  "example": "allow",
  "description": "Super Bot Fight Mode (SBFM) action to take on definitely automated requests.",
  "x-auditable": true,
  "x-stainless-terraform-configurability": "computed_optional"
}
string bot-management_sbfm_definitely_automated_turned_on
{
  "type": "string",
  "title": "sbfm_definitely_automated",
  "description": "Indicates that the zone's definitely automated requests are being blocked or challenged.",
  "x-auditable": true
}
object bot-management_sbfm_definitely_config
{
  "allOf": [
    {
      "$ref": "#/components/schemas/bot-management_base_config"
    },
    {
      "properties": {
        "optimize_wordpress": {
          "$ref": "#/components/schemas/bot-management_optimize_wordpress"
        },
        "sbfm_verified_bots": {
          "$ref": "#/components/schemas/bot-management_sbfm_verified_bots"
        },
        "stale_zone_configuration": {
          "type": "object",
          "title": "stale_zone_configuration",
          "readOnly": true,
          "properties": {
            "fight_mode": {
              "$ref": "#/components/schemas/bot-management_fight_mode_turned_on"
            },
            "sbfm_likely_automated": {
              "$ref": "#/components/schemas/bot-management_sbfm_likely_automated_turned_on"
            }
          },
          "description": "A read-only field that shows which unauthorized settings are currently active on the zone. These settings typically result from upgrades or downgrades."
        },
        "sbfm_definitely_automated": {
          "$ref": "#/components/schemas/bot-management_sbfm_definitely_automated"
        },
        "sbfm_static_resource_protection": {
          "$ref": "#/components/schemas/bot-management_sbfm_static_resource_protection"
        }
      }
    }
  ],
  "title": "SBFM Pro Plan"
}
string bot-management_sbfm_likely_automated
{
  "enum": [
    "allow",
    "block",
    "managed_challenge"
  ],
  "type": "string",
  "example": "allow",
  "description": "Super Bot Fight Mode (SBFM) action to take on likely automated requests.",
  "x-auditable": true,
  "x-stainless-terraform-configurability": "computed_optional"
}
string bot-management_sbfm_likely_automated_turned_on
{
  "type": "string",
  "title": "sbfm_likely_automated",
  "description": "Indicates that the zone's likely automated requests are being blocked or challenged.",
  "x-auditable": true
}
object bot-management_sbfm_likely_config
{
  "allOf": [
    {
      "$ref": "#/components/schemas/bot-management_base_config"
    },
    {
      "properties": {
        "optimize_wordpress": {
          "$ref": "#/components/schemas/bot-management_optimize_wordpress"
        },
        "sbfm_verified_bots": {
          "$ref": "#/components/schemas/bot-management_sbfm_verified_bots"
        },
        "sbfm_likely_automated": {
          "$ref": "#/components/schemas/bot-management_sbfm_likely_automated"
        },
        "stale_zone_configuration": {
          "type": "object",
          "title": "stale_zone_configuration",
          "readOnly": true,
          "properties": {
            "fight_mode": {
              "$ref": "#/components/schemas/bot-management_fight_mode_turned_on"
            }
          },
          "description": "A read-only field that shows which unauthorized settings are currently active on the zone. These settings typically result from upgrades or downgrades."
        },
        "sbfm_definitely_automated": {
          "$ref": "#/components/schemas/bot-management_sbfm_definitely_automated"
        },
        "sbfm_static_resource_protection": {
          "$ref": "#/components/schemas/bot-management_sbfm_static_resource_protection"
        }
      }
    }
  ],
  "title": "SBFM Biz Plan"
}
boolean bot-management_sbfm_static_resource_protection
{
  "type": "boolean",
  "example": true,
  "description": "Super Bot Fight Mode (SBFM) to enable static resource protection.\nEnable if static resources on your application need bot protection.\nNote: Static resource protection can also result in legitimate traffic being blocked.\n",
  "x-auditable": true,
  "x-stainless-terraform-configurability": "computed_optional"
}
string bot-management_sbfm_static_resource_protection_turned_on
{
  "type": "string",
  "title": "sbfm_static_resource_protection",
  "description": "Indicates that the zone's static resource protection is turned on.",
  "x-auditable": true
}
string bot-management_sbfm_verified_bots
{
  "enum": [
    "allow",
    "block"
  ],
  "type": "string",
  "example": "allow",
  "description": "Super Bot Fight Mode (SBFM) action to take on verified bots requests.",
  "x-auditable": true,
  "x-stainless-terraform-configurability": "computed_optional"
}
string bot-management_sbfm_verified_bots_turned_on
{
  "type": "string",
  "title": "sbfm_verified_bots",
  "description": "Indicates that the zone's verified bot requests are being blocked.",
  "x-auditable": true,
  "x-stainless-terraform-configurability": "computed_optional"
}
boolean bot-management_suppress_session_score
{
  "type": "boolean",
  "example": false,
  "description": "Whether to disable tracking the highest bot score for a session in the Bot Management cookie.",
  "x-auditable": true,
  "x-stainless-terraform-configurability": "computed_optional"
}
boolean bot-management_suppress_session_score_turned_off
{
  "type": "boolean",
  "title": "suppress_session_score",
  "description": "Indicates that the zone's session score tracking is disabled.",
  "x-auditable": true,
  "x-stainless-terraform-configurability": "computed_optional"
}
boolean bot-management_using_latest_model
{
  "type": "boolean",
  "example": true,
  "readOnly": true,
  "description": "A read-only field that indicates whether the zone currently is running the latest ML model.\n",
  "x-auditable": true,
  "x-stainless-terraform-configurability": "computed_optional"
}
object brand-protection-api_Error
{
  "type": "object",
  "properties": {
    "code": {
      "type": "integer",
      "description": "Error code"
    },
    "errors": {
      "type": "object",
      "description": "Errors",
      "additionalProperties": {}
    },
    "status": {
      "type": "string",
      "description": "Error name"
    },
    "message": {
      "type": "string",
      "description": "Error message"
    }
  }
}
object brand-protection-api_ImageFile
{
  "type": "object",
  "properties": {
    "image": {
      "type": "string",
      "format": "binary"
    }
  }
}
object brand-protection-api_Logo
{
  "type": "object",
  "properties": {
    "id": {
      "type": "integer"
    },
    "tag": {
      "type": "string"
    },
    "upload_path": {
      "type": "string"
    }
  }
}
object brand-protection-api_LogoMatch
{
  "type": "object",
  "properties": {
    "total": {
      "type": "integer"
    },
    "matches": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": {}
      }
    }
  }
}
object brand-protection-api_PaginationMetadata
{
  "type": "object",
  "properties": {
    "page": {
      "type": "integer"
    },
    "total": {
      "type": "integer"
    },
    "last_page": {
      "type": "integer"
    },
    "next_page": {
      "type": "integer"
    },
    "first_page": {
      "type": "integer"
    },
    "total_pages": {
      "type": "integer"
    },
    "previous_page": {
      "type": "integer"
    }
  }
}
object brand-protection-api_Query
{
  "type": "object",
  "properties": {
    "tag": {
      "type": "string"
    },
    "scan": {
      "type": "boolean"
    },
    "max_time": {
      "type": "string",
      "format": "date-time",
      "nullable": true
    },
    "min_time": {
      "type": "string",
      "format": "date-time",
      "nullable": true
    },
    "string_matches": {}
  }
}
object brand-protection-api_QueryBulk
{
  "type": "object",
  "properties": {
    "queries": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": {}
      }
    }
  }
}
object brand-protection-api_QueryMatch
{
  "type": "object",
  "properties": {
    "total": {
      "type": "integer"
    },
    "matches": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": {}
      }
    }
  }
}
object brand-protection-api_URLInfo
{
  "type": "object",
  "properties": {
    "result": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": {}
      }
    }
  }
}
object brand-protection-api_URLSubmit
{
  "type": "object",
  "properties": {
    "skipped_urls": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": {}
      }
    },
    "submitted_urls": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": {}
      }
    }
  }
}
object builds_APIResponse
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "code": {
            "type": "integer",
            "example": 12000
          },
          "message": {
            "type": "string",
            "example": "Not found"
          }
        }
      }
    },
    "result": {
      "type": "object",
      "nullable": true
    },
    "success": {
      "type": "boolean",
      "example": true
    },
    "messages": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "result_info": {
      "$ref": "#/components/schemas/builds_PaginationInfo"
    }
  }
}
object builds_BuildLogsResponse
{
  "type": "object",
  "properties": {
    "lines": {
      "type": "array",
      "items": {
        "type": "array",
        "items": {
          "anyOf": [
            {
              "type": "number",
              "example": 1636472400,
              "description": "Unix epoch timestamp"
            },
            {
              "type": "string",
              "example": "Building worker...",
              "description": "Log message"
            }
          ]
        },
        "maxItems": 2,
        "minItems": 2
      }
    },
    "cursor": {
      "$ref": "#/components/schemas/builds_cursor"
    },
    "truncated": {
      "type": "boolean",
      "example": false
    }
  }
}
string builds_BuildOutcome
{
  "enum": [
    "success",
    "fail",
    "skipped",
    "cancelled",
    "terminated"
  ],
  "type": "string",
  "example": "success"
}
object builds_BuildResponse
{
  "type": "object",
  "properties": {
    "status": {
      "$ref": "#/components/schemas/builds_BuildStatus"
    },
    "trigger": {
      "type": "object",
      "properties": {
        "created_on": {
          "$ref": "#/components/schemas/builds_created_on"
        },
        "deleted_on": {
          "$ref": "#/components/schemas/builds_deleted_on"
        },
        "modified_on": {
          "$ref": "#/components/schemas/builds_modified_on"
        },
        "trigger_name": {
          "$ref": "#/components/schemas/builds_trigger_name"
        },
        "trigger_uuid": {
          "$ref": "#/components/schemas/builds_trigger_uuid"
        },
        "build_command": {
          "$ref": "#/components/schemas/builds_build_command"
        },
        "path_excludes": {
          "$ref": "#/components/schemas/builds_path_excludes"
        },
        "path_includes": {
          "$ref": "#/components/schemas/builds_path_includes"
        },
        "deploy_command": {
          "$ref": "#/components/schemas/builds_deploy_command"
        },
        "root_directory": {
          "$ref": "#/components/schemas/builds_root_directory"
        },
        "branch_excludes": {
          "$ref": "#/components/schemas/builds_branch_excludes"
        },
        "branch_includes": {
          "$ref": "#/components/schemas/builds_branch_includes"
        },
        "repo_connection": {
          "$ref": "#/components/schemas/builds_UpsertRepoConnectionResponse"
        },
        "external_script_id": {
          "$ref": "#/components/schemas/builds_external_script_id"
        },
        "build_caching_enabled": {
          "$ref": "#/components/schemas/builds_build_caching_enabled"
        }
      },
      "description": "Trigger information without build_token_uuid"
    },
    "build_uuid": {
      "$ref": "#/components/schemas/builds_build_uuid"
    },
    "created_on": {
      "$ref": "#/components/schemas/builds_created_on"
    },
    "running_on": {
      "type": "string",
      "format": "date-time",
      "nullable": true
    },
    "stopped_on": {
      "$ref": "#/components/schemas/builds_stopped_on"
    },
    "modified_on": {
      "$ref": "#/components/schemas/builds_modified_on"
    },
    "pull_request": {
      "type": "object",
      "nullable": true,
      "properties": {
        "created_on": {
          "$ref": "#/components/schemas/builds_created_on"
        },
        "pull_request_url": {
          "type": "string",
          "format": "uri",
          "example": "https://github.com/cloudflare/workers-sdk/pull/123"
        }
      }
    },
    "build_outcome": {
      "$ref": "#/components/schemas/builds_BuildOutcome"
    },
    "initializing_on": {
      "type": "string",
      "format": "date-time",
      "nullable": true
    },
    "build_trigger_metadata": {
      "$ref": "#/components/schemas/builds_BuildTriggerMetadataResponse"
    }
  }
}
object builds_BuildSeedRepoInput
{
  "type": "object",
  "required": [
    "provider",
    "owner",
    "repository",
    "branch",
    "path"
  ],
  "properties": {
    "path": {
      "type": "string",
      "example": "/"
    },
    "files": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/builds_BuildSeedRepoInputFile"
      },
      "maxItems": 2
    },
    "owner": {
      "type": "string",
      "example": "cloudflare"
    },
    "branch": {
      "$ref": "#/components/schemas/builds_branch"
    },
    "provider": {
      "$ref": "#/components/schemas/builds_SCMProviderType"
    },
    "repository": {
      "type": "string",
      "example": "workers-sdk"
    }
  }
}
object builds_BuildSeedRepoInputFile
{
  "type": "object",
  "required": [
    "filename",
    "content"
  ],
  "properties": {
    "content": {
      "type": "string",
      "example": "name = \"my-worker\"\nmain = \"src/index.js\"\n"
    },
    "replace": {
      "type": "string",
      "description": "Text to replace in the file"
    },
    "filename": {
      "type": "string",
      "example": "wrangler.toml"
    },
    "isBase64": {
      "type": "boolean",
      "default": false
    }
  }
}
string builds_BuildStatus
{
  "enum": [
    "queued",
    "initializing",
    "running",
    "stopped"
  ],
  "type": "string",
  "example": "running"
}
object builds_BuildTriggerMetadataResponse
{
  "type": "object",
  "properties": {
    "author": {
      "type": "string",
      "example": "developer@cloudflare.com"
    },
    "branch": {
      "$ref": "#/components/schemas/builds_branch"
    },
    "repo_name": {
      "$ref": "#/components/schemas/builds_repo_name"
    },
    "commit_hash": {
      "$ref": "#/components/schemas/builds_commit_hash"
    },
    "build_command": {
      "$ref": "#/components/schemas/builds_build_command"
    },
    "provider_type": {
      "$ref": "#/components/schemas/builds_SCMProviderType"
    },
    "commit_message": {
      "type": "string",
      "example": "Add new feature"
    },
    "deploy_command": {
      "$ref": "#/components/schemas/builds_deploy_command"
    },
    "root_directory": {
      "$ref": "#/components/schemas/builds_root_directory"
    },
    "build_token_name": {
      "$ref": "#/components/schemas/builds_build_token_name"
    },
    "build_token_uuid": {
      "$ref": "#/components/schemas/builds_build_token_uuid"
    },
    "build_trigger_source": {
      "$ref": "#/components/schemas/builds_BuildTriggerSource"
    },
    "environment_variables": {
      "type": "object",
      "additionalProperties": {
        "type": "string"
      }
    },
    "provider_account_name": {
      "$ref": "#/components/schemas/builds_provider_account_name"
    }
  }
}
string builds_BuildTriggerSource
{
  "enum": [
    "push",
    "pull_request",
    "manual",
    "api"
  ],
  "type": "string",
  "example": "push"
}
object builds_BuildsByVersionResponse
{
  "type": "object",
  "properties": {
    "builds": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/builds_BuildResponse"
      }
    }
  }
}
object builds_CanceledBuildResponse
{
  "type": "object",
  "properties": {
    "build_uuid": {
      "$ref": "#/components/schemas/builds_build_uuid"
    },
    "stopped_on": {
      "$ref": "#/components/schemas/builds_stopped_on"
    },
    "build_outcome": {
      "$ref": "#/components/schemas/builds_BuildOutcome"
    }
  }
}
object builds_ConfigAutofillResponse
{
  "type": "object",
  "properties": {
    "scripts": {
      "type": "object",
      "example": {
        "test": "npm test",
        "build": "npm run build"
      },
      "nullable": true,
      "additionalProperties": {
        "type": "string"
      }
    },
    "config_file": {
      "type": "string",
      "example": "wrangler.toml",
      "nullable": true
    },
    "package_manager": {
      "type": "string",
      "allOf": [
        {
          "$ref": "#/components/schemas/builds_PackageManager"
        }
      ],
      "nullable": true
    },
    "env_worker_names": {
      "type": "object",
      "example": {
        "staging": "my-worker-staging",
        "production": "my-worker-prod"
      },
      "nullable": true,
      "additionalProperties": {
        "type": "string"
      }
    },
    "default_worker_name": {
      "type": "string",
      "example": "my-worker",
      "nullable": true
    }
  }
}
object builds_CreateBuildRequest
{
  "type": "object",
  "anyOf": [
    {
      "required": [
        "commit_hash"
      ]
    },
    {
      "required": [
        "branch"
      ]
    }
  ],
  "properties": {
    "branch": {
      "allOf": [
        {
          "$ref": "#/components/schemas/builds_branch"
        }
      ],
      "description": "Git branch name (required if commit_hash not provided)"
    },
    "seed_repo": {
      "$ref": "#/components/schemas/builds_BuildSeedRepoInput"
    },
    "commit_hash": {
      "allOf": [
        {
          "$ref": "#/components/schemas/builds_commit_hash"
        }
      ],
      "description": "Git commit hash (required if branch not provided)"
    }
  }
}
object builds_CreateBuildTokenRequest
{
  "type": "object",
  "required": [
    "build_token_name",
    "build_token_secret",
    "cloudflare_token_id"
  ],
  "properties": {
    "build_token_name": {
      "$ref": "#/components/schemas/builds_build_token_name"
    },
    "build_token_secret": {
      "type": "string",
      "example": "super-secret-token"
    },
    "cloudflare_token_id": {
      "$ref": "#/components/schemas/builds_cloudflare_token_id"
    }
  }
}
object builds_CreateBuildTokenResponse
{
  "type": "object",
  "properties": {
    "owner_type": {
      "$ref": "#/components/schemas/builds_owner_type"
    },
    "build_token_name": {
      "$ref": "#/components/schemas/builds_build_token_name"
    },
    "build_token_uuid": {
      "$ref": "#/components/schemas/builds_build_token_uuid"
    },
    "cloudflare_token_id": {
      "$ref": "#/components/schemas/builds_cloudflare_token_id"
    }
  }
}
object builds_CreateTriggerRequest
{
  "type": "object",
  "required": [
    "external_script_id",
    "build_token_uuid",
    "trigger_name",
    "build_command",
    "deploy_command",
    "root_directory",
    "branch_includes",
    "branch_excludes",
    "path_includes",
    "path_excludes",
    "repo_connection_uuid"
  ],
  "properties": {
    "trigger_name": {
      "$ref": "#/components/schemas/builds_trigger_name"
    },
    "build_command": {
      "$ref": "#/components/schemas/builds_build_command"
    },
    "path_excludes": {
      "$ref": "#/components/schemas/builds_path_excludes"
    },
    "path_includes": {
      "$ref": "#/components/schemas/builds_path_includes"
    },
    "deploy_command": {
      "$ref": "#/components/schemas/builds_deploy_command"
    },
    "root_directory": {
      "$ref": "#/components/schemas/builds_root_directory"
    },
    "branch_excludes": {
      "$ref": "#/components/schemas/builds_branch_excludes"
    },
    "branch_includes": {
      "$ref": "#/components/schemas/builds_branch_includes"
    },
    "build_token_uuid": {
      "$ref": "#/components/schemas/builds_build_token_uuid"
    },
    "external_script_id": {
      "$ref": "#/components/schemas/builds_external_script_id"
    },
    "repo_connection_uuid": {
      "$ref": "#/components/schemas/builds_repo_connection_uuid"
    },
    "build_caching_enabled": {
      "$ref": "#/components/schemas/builds_build_caching_enabled"
    }
  }
}
object builds_EnvironmentVariablesRequest
{
  "type": "object",
  "example": {
    "API_KEY": {
      "value": "secret-key",
      "is_secret": true
    },
    "NODE_ENV": {
      "value": "production",
      "is_secret": false
    }
  },
  "additionalProperties": {
    "type": "object",
    "required": [
      "is_secret"
    ],
    "properties": {
      "value": {
        "type": "string",
        "example": "production",
        "nullable": true
      },
      "is_secret": {
        "$ref": "#/components/schemas/builds_is_secret"
      }
    }
  }
}
object builds_EnvironmentVariablesResponse
{
  "type": "object",
  "example": {
    "API_KEY": {
      "value": null,
      "is_secret": true,
      "created_on": "2023-01-01T00:00:00Z"
    },
    "NODE_ENV": {
      "value": "production",
      "is_secret": false,
      "created_on": "2023-01-01T00:00:00Z"
    }
  },
  "additionalProperties": {
    "type": "object",
    "required": [
      "is_secret",
      "created_on"
    ],
    "properties": {
      "value": {
        "type": "string",
        "nullable": true,
        "description": "Value is null for secret environment variables"
      },
      "is_secret": {
        "$ref": "#/components/schemas/builds_is_secret"
      },
      "created_on": {
        "$ref": "#/components/schemas/builds_created_on"
      }
    }
  }
}
object builds_ErrorResponse
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "message"
        ],
        "properties": {
          "code": {
            "type": "integer",
            "example": 12000
          },
          "message": {
            "type": "string",
            "example": "Not found"
          }
        }
      }
    },
    "result": {
      "type": "object",
      "nullable": true
    },
    "success": {
      "type": "boolean",
      "example": false
    },
    "messages": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  }
}
object builds_GetAccountLimitResponse
{
  "type": "object",
  "properties": {
    "build_minutes_refresh_on": {
      "type": "string",
      "format": "date-time",
      "nullable": true,
      "description": "When build minutes will refresh (only for non-paid plans)"
    },
    "has_reached_build_minutes_limit": {
      "type": "boolean",
      "nullable": true,
      "description": "Whether build minutes limit has been reached (only for non-paid plans)"
    }
  }
}
object builds_InsertBuildResponse
{
  "type": "object",
  "properties": {
    "build_uuid": {
      "$ref": "#/components/schemas/builds_build_uuid"
    },
    "created_on": {
      "$ref": "#/components/schemas/builds_created_on"
    }
  }
}
object builds_LatestBuildsResponse
{
  "type": "object",
  "properties": {
    "builds": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/builds_BuildResponse"
      }
    }
  }
}
object builds_ListTokensResponse
{
  "type": "object",
  "properties": {
    "owner_type": {
      "$ref": "#/components/schemas/builds_owner_type"
    },
    "build_token_name": {
      "$ref": "#/components/schemas/builds_build_token_name"
    },
    "build_token_uuid": {
      "$ref": "#/components/schemas/builds_build_token_uuid"
    },
    "cloudflare_token_id": {
      "$ref": "#/components/schemas/builds_cloudflare_token_id"
    }
  }
}
string builds_PackageManager
{
  "enum": [
    "npm",
    "yarn",
    "pnpm",
    "bun",
    "uv"
  ],
  "type": "string",
  "example": "npm"
}
object builds_PaginationInfo
{
  "type": "object",
  "properties": {
    "page": {
      "type": "integer",
      "example": 1
    },
    "count": {
      "type": "integer",
      "example": 25
    },
    "per_page": {
      "type": "integer",
      "example": 50
    },
    "total_count": {
      "type": "integer",
      "example": 150
    },
    "total_pages": {
      "type": "integer",
      "example": 3
    }
  }
}
string builds_SCMProviderType
{
  "enum": [
    "github"
  ],
  "type": "string",
  "example": "github"
}
object builds_TriggerResponse
{
  "type": "object",
  "properties": {
    "created_on": {
      "$ref": "#/components/schemas/builds_created_on"
    },
    "deleted_on": {
      "$ref": "#/components/schemas/builds_deleted_on"
    },
    "modified_on": {
      "$ref": "#/components/schemas/builds_modified_on"
    },
    "trigger_name": {
      "$ref": "#/components/schemas/builds_trigger_name"
    },
    "trigger_uuid": {
      "$ref": "#/components/schemas/builds_trigger_uuid"
    },
    "build_command": {
      "$ref": "#/components/schemas/builds_build_command"
    },
    "path_excludes": {
      "$ref": "#/components/schemas/builds_path_excludes"
    },
    "path_includes": {
      "$ref": "#/components/schemas/builds_path_includes"
    },
    "deploy_command": {
      "$ref": "#/components/schemas/builds_deploy_command"
    },
    "root_directory": {
      "$ref": "#/components/schemas/builds_root_directory"
    },
    "branch_excludes": {
      "$ref": "#/components/schemas/builds_branch_excludes"
    },
    "branch_includes": {
      "$ref": "#/components/schemas/builds_branch_includes"
    },
    "repo_connection": {
      "$ref": "#/components/schemas/builds_UpsertRepoConnectionResponse"
    },
    "build_token_name": {
      "$ref": "#/components/schemas/builds_build_token_name"
    },
    "build_token_uuid": {
      "$ref": "#/components/schemas/builds_build_token_uuid"
    },
    "external_script_id": {
      "$ref": "#/components/schemas/builds_external_script_id"
    },
    "build_caching_enabled": {
      "$ref": "#/components/schemas/builds_build_caching_enabled"
    }
  }
}
object builds_UpdateTriggerRequest
{
  "type": "object",
  "properties": {
    "trigger_name": {
      "$ref": "#/components/schemas/builds_trigger_name"
    },
    "build_command": {
      "$ref": "#/components/schemas/builds_build_command"
    },
    "path_excludes": {
      "$ref": "#/components/schemas/builds_path_excludes"
    },
    "path_includes": {
      "$ref": "#/components/schemas/builds_path_includes"
    },
    "deploy_command": {
      "$ref": "#/components/schemas/builds_deploy_command"
    },
    "root_directory": {
      "$ref": "#/components/schemas/builds_root_directory"
    },
    "branch_excludes": {
      "$ref": "#/components/schemas/builds_branch_excludes"
    },
    "branch_includes": {
      "$ref": "#/components/schemas/builds_branch_includes"
    },
    "build_token_uuid": {
      "$ref": "#/components/schemas/builds_build_token_uuid"
    },
    "build_caching_enabled": {
      "$ref": "#/components/schemas/builds_build_caching_enabled"
    }
  }
}
object builds_UpsertRepoConnectionRequest
{
  "type": "object",
  "required": [
    "repo_id",
    "repo_name",
    "provider_type",
    "provider_account_id",
    "provider_account_name"
  ],
  "properties": {
    "repo_id": {
      "$ref": "#/components/schemas/builds_repo_id"
    },
    "repo_name": {
      "$ref": "#/components/schemas/builds_repo_name"
    },
    "provider_type": {
      "$ref": "#/components/schemas/builds_SCMProviderType"
    },
    "provider_account_id": {
      "$ref": "#/components/schemas/builds_provider_account_id"
    },
    "provider_account_name": {
      "$ref": "#/components/schemas/builds_provider_account_name"
    }
  }
}
object builds_UpsertRepoConnectionResponse
{
  "type": "object",
  "properties": {
    "repo_id": {
      "$ref": "#/components/schemas/builds_repo_id"
    },
    "repo_name": {
      "$ref": "#/components/schemas/builds_repo_name"
    },
    "created_on": {
      "$ref": "#/components/schemas/builds_created_on"
    },
    "deleted_on": {
      "$ref": "#/components/schemas/builds_deleted_on"
    },
    "modified_on": {
      "$ref": "#/components/schemas/builds_modified_on"
    },
    "provider_type": {
      "$ref": "#/components/schemas/builds_SCMProviderType"
    },
    "provider_account_id": {
      "$ref": "#/components/schemas/builds_provider_account_id"
    },
    "repo_connection_uuid": {
      "$ref": "#/components/schemas/builds_repo_connection_uuid"
    },
    "provider_account_name": {
      "$ref": "#/components/schemas/builds_provider_account_name"
    }
  }
}
string builds_account_id
{
  "type": "string",
  "example": "account-123",
  "description": "Account identifier."
}
string builds_branch
{
  "type": "string",
  "example": "main",
  "description": "Git branch name."
}
array builds_branch_excludes
{
  "type": "array",
  "items": {
    "type": "string"
  },
  "example": []
}
array builds_branch_includes
{
  "type": "array",
  "items": {
    "type": "string"
  },
  "example": [
    "main"
  ]
}
boolean builds_build_caching_enabled
{
  "type": "boolean",
  "default": false,
  "example": false
}
string builds_build_command
{
  "type": "string",
  "example": "npm run build"
}
string builds_build_token_name
{
  "type": "string",
  "example": "My Build Token"
}
string builds_build_token_uuid
{
  "type": "string",
  "format": "uuid",
  "description": "Build token UUID."
}
string builds_build_uuid
{
  "type": "string",
  "format": "uuid",
  "description": "Build UUID."
}
string builds_cloudflare_token_id
{
  "type": "string",
  "example": "cf-token-123"
}
string builds_commit_hash
{
  "type": "string",
  "example": "abc123def456",
  "description": "Git commit hash"
}
string builds_created_on
{
  "type": "string",
  "format": "date-time"
}
string builds_cursor
{
  "type": "string",
  "example": "eyJsaW5lIjoxMDAsInRpbWVzdGFtcCI6MTYzNjQ3MjQwMH0",
  "description": "Pagination cursor for log retrieval."
}
string builds_deleted_on
{
  "type": "string",
  "format": "date-time",
  "nullable": true
}
string builds_deploy_command
{
  "type": "string",
  "example": "npx wrangler deploy"
}
string builds_environment_variable_key
{
  "type": "string",
  "example": "NODE_ENV",
  "description": "Environment variable key."
}
string builds_external_script_id
{
  "type": "string",
  "example": "my-worker",
  "description": "External script identifier."
}
string builds_external_script_ids
{
  "type": "string",
  "example": "worker1,worker2,worker3",
  "pattern": "^[\\w]+([,][\\w]+)*$",
  "description": "Comma-separated list of external script IDs (max 20)."
}
boolean builds_is_secret
{
  "type": "boolean",
  "example": false
}
string builds_modified_on
{
  "type": "string",
  "format": "date-time"
}
string builds_owner_type
{
  "type": "string",
  "example": "user"
}
array builds_path_excludes
{
  "type": "array",
  "items": {
    "type": "string"
  },
  "example": [
    "*.md"
  ]
}
array builds_path_includes
{
  "type": "array",
  "items": {
    "type": "string"
  },
  "default": "*",
  "example": [
    "*"
  ]
}
string builds_provider_account_id
{
  "type": "string",
  "example": "cloudflare",
  "description": "Provider account identifier."
}
string builds_provider_account_name
{
  "type": "string",
  "example": "Cloudflare"
}
string builds_repo_connection_uuid
{
  "type": "string",
  "format": "uuid",
  "description": "Repository connection UUID."
}
string builds_repo_id
{
  "type": "string",
  "example": "workers-sdk",
  "description": "Repository identifier."
}
string builds_repo_name
{
  "type": "string",
  "example": "workers-sdk"
}
string builds_root_directory
{
  "type": "string",
  "example": "/",
  "description": "Root directory path."
}
string builds_stopped_on
{
  "type": "string",
  "format": "date-time",
  "nullable": true
}
string builds_trigger_name
{
  "type": "string",
  "example": "Production Deploy"
}
string builds_trigger_uuid
{
  "type": "string",
  "format": "uuid",
  "description": "Trigger UUID."
}
string builds_version_ids
{
  "type": "string",
  "example": "123e4567-e89b-12d3-a456-426614174000,223e4567-e89b-12d3-a456-426614174001",
  "description": "Comma-separated list of version UUIDs (max 20)."
}
object cache-purge_Everything
{
  "type": "object",
  "title": "Purge everything",
  "properties": {
    "purge_everything": {
      "type": "boolean",
      "example": true,
      "description": "For more information, please refer to [purge everything documentation page](https://developers.cloudflare.com/cache/how-to/purge-cache/purge-everything/).",
      "x-auditable": true
    }
  }
}
object cache-purge_FlexPurgeByHostnames
{
  "type": "object",
  "title": "Purge by hostnames",
  "properties": {
    "hosts": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "example": [
        "www.example.com",
        "images.example.com"
      ],
      "description": "For more information purging by hostnames, please refer to [purge by hostname documentation page](https://developers.cloudflare.com/cache/how-to/purge-cache/purge-by-hostname/)."
    }
  }
}
object cache-purge_FlexPurgeByPrefixes
{
  "type": "object",
  "title": "Purge by prefixes",
  "properties": {
    "prefixes": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "example": [
        "www.example.com/foo",
        "images.example.com/bar/baz"
      ],
      "description": "For more information on purging by prefixes, please refer to [purge by prefix documentation page](https://developers.cloudflare.com/cache/how-to/purge-cache/purge_by_prefix/)."
    }
  }
}
object cache-purge_FlexPurgeByTags
{
  "type": "object",
  "title": "Purge by tags",
  "properties": {
    "tags": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "example": [
        "a-cache-tag",
        "another-cache-tag"
      ],
      "description": "For more information on cache tags and purging by tags, please refer to [purge by cache-tags documentation page](https://developers.cloudflare.com/cache/how-to/purge-cache/purge-by-tags/)."
    }
  }
}
object cache-purge_SingleFile
{
  "type": "object",
  "title": "Purge files",
  "properties": {
    "files": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "example": [
        "http://www.example.com/css/styles.css",
        "http://www.example.com/js/index.js"
      ],
      "description": "For more information on purging files, please refer to [purge by single-file documentation page](https://developers.cloudflare.com/cache/how-to/purge-cache/purge-by-single-file/)."
    }
  }
}
object cache-purge_SingleFileWithUrlAndHeaders
{
  "type": "object",
  "title": "Purge files with URL and headers",
  "properties": {
    "files": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "url": {
            "type": "string",
            "example": "http://www.example.com/cat_picture.jpg",
            "x-auditable": true
          },
          "headers": {
            "type": "object",
            "example": "<HTTP header object>",
            "additionalProperties": {
              "type": "string",
              "x-auditable": true
            }
          }
        }
      },
      "example": [
        {
          "url": "http://www.example.com/cat_picture.jpg",
          "headers": {
            "CF-IPCountry": "US",
            "CF-Device-Type": "desktop",
            "Accept-Language": "zh-CN"
          }
        },
        {
          "url": "http://www.example.com/dog_picture.jpg",
          "headers": {
            "CF-IPCountry": "EU",
            "CF-Device-Type": "mobile",
            "Accept-Language": "en-US"
          }
        }
      ],
      "description": "For more information on purging files with URL and headers, please refer to [purge by single-file documentation page](https://developers.cloudflare.com/cache/how-to/purge-cache/purge-by-single-file/)."
    }
  }
}
object cache-purge_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/cache-purge_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "type": "object",
      "nullable": true
    },
    "success": {
      "type": "boolean",
      "example": false,
      "description": "Indicates the API call's success or failure."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/cache-purge_messages"
        }
      ],
      "example": []
    }
  }
}
object cache-purge_api-response-single-id
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/cache-purge_messages"
    },
    "result": {
      "type": "object",
      "nullable": true,
      "required": [
        "id"
      ],
      "properties": {
        "id": {
          "$ref": "#/components/schemas/cache-purge_identifier"
        }
      }
    },
    "success": {
      "type": "boolean",
      "example": true,
      "description": "Indicates the API call's success or failure."
    },
    "messages": {
      "$ref": "#/components/schemas/cache-purge_messages"
    }
  }
}
string cache-purge_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32
}
array cache-purge_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "message": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
object cache-rules_aegis
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/cache-rules_base"
    },
    {
      "type": "object",
      "properties": {
        "id": {
          "enum": [
            "aegis"
          ],
          "type": "string",
          "example": "aegis",
          "description": "ID of the zone setting.",
          "x-auditable": true
        },
        "value": {
          "$ref": "#/components/schemas/cache-rules_aegis_value"
        }
      }
    }
  ],
  "title": "Aegis",
  "description": "Aegis provides dedicated egress IPs (from Cloudflare to your origin) for your layer 7 WAF and CDN services. The egress IPs are reserved exclusively for your account so that you can increase your origin security by only allowing traffic from a small list of IP addresses."
}
object cache-rules_aegis_response_value
{
  "type": "object",
  "properties": {
    "result": {
      "$ref": "#/components/schemas/cache-rules_aegis"
    }
  }
}
object cache-rules_aegis_value
{
  "type": "object",
  "properties": {
    "enabled": {
      "type": "boolean",
      "description": "Whether the feature is enabled or not.",
      "x-auditable": true
    },
    "pool_id": {
      "type": "string",
      "example": "pool-id",
      "description": "Egress pool id which refers to a grouping of dedicated egress IPs through which Cloudflare will connect to origin.",
      "x-auditable": true
    }
  },
  "description": "Value of the zone setting."
}
object cache-rules_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/cache-rules_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/cache-rules_messages"
    }
  }
}
object cache-rules_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "type": "array",
      "allOf": [
        {
          "$ref": "#/components/schemas/cache-rules_messages"
        }
      ],
      "items": {
        "type": "object"
      },
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "type": "array",
      "allOf": [
        {
          "$ref": "#/components/schemas/cache-rules_messages"
        }
      ],
      "items": {
        "type": "object"
      },
      "example": []
    }
  }
}
object cache-rules_base
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "string",
      "description": "Identifier of the zone setting.",
      "x-auditable": true
    },
    "modified_on": {
      "type": "string",
      "format": "date-time",
      "example": "2014-01-01T05:20:00.12345Z",
      "nullable": true,
      "readOnly": true,
      "description": "Last time this setting was modified.",
      "x-auditable": true
    }
  }
}
object cache-rules_cache_reserve
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/cache-rules_base"
    },
    {
      "type": "object",
      "properties": {
        "id": {
          "enum": [
            "cache_reserve"
          ],
          "type": "string",
          "example": "cache_reserve",
          "description": "ID of the zone setting.",
          "x-auditable": true
        }
      }
    }
  ],
  "title": "Cache Reserve",
  "description": "Increase cache lifetimes by automatically storing all cacheable files into Cloudflare's persistent object storage buckets. Requires Cache Reserve subscription. Note: using Tiered Cache with Cache Reserve is highly recommended to reduce Reserve operations costs. See the [developer docs](https://developers.cloudflare.com/cache/about/cache-reserve) for more information."
}
object cache-rules_cache_reserve_clear
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/cache-rules_base"
    },
    {
      "type": "object",
      "properties": {
        "id": {
          "enum": [
            "cache_reserve_clear"
          ],
          "type": "string",
          "example": "cache_reserve_clear",
          "description": "ID of the zone setting.",
          "x-auditable": true
        }
      }
    }
  ],
  "title": "Cache Reserve Clear",
  "description": "You can use Cache Reserve Clear to clear your Cache Reserve, but you must first disable Cache Reserve. In most cases, this will be accomplished within 24 hours. You cannot re-enable Cache Reserve while this process is ongoing. Keep in mind that you cannot undo or cancel this operation."
}
string cache-rules_cache_reserve_clear_end_ts
{
  "type": "string",
  "format": "date-time",
  "example": "2023-10-02T12:00:00.12345Z",
  "description": "The time that the latest Cache Reserve Clear operation completed.",
  "x-auditable": true
}
object cache-rules_cache_reserve_clear_response_value
{
  "type": "object",
  "properties": {
    "result": {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/cache-rules_cache_reserve_clear"
        },
        {
          "type": "object",
          "required": [
            "state",
            "start_ts"
          ],
          "properties": {
            "state": {
              "$ref": "#/components/schemas/cache-rules_cache_reserve_clear_state"
            },
            "end_ts": {
              "$ref": "#/components/schemas/cache-rules_cache_reserve_clear_end_ts"
            },
            "start_ts": {
              "$ref": "#/components/schemas/cache-rules_cache_reserve_clear_start_ts"
            }
          }
        }
      ]
    }
  }
}
string cache-rules_cache_reserve_clear_start_ts
{
  "type": "string",
  "format": "date-time",
  "example": "2023-10-02T10:00:00.12345Z",
  "description": "The time that the latest Cache Reserve Clear operation started.",
  "x-auditable": true
}
string cache-rules_cache_reserve_clear_state
{
  "enum": [
    "In-progress",
    "Completed"
  ],
  "type": "string",
  "example": "In-progress",
  "description": "The current state of the Cache Reserve Clear operation.",
  "x-auditable": true
}
object cache-rules_cache_reserve_response_value
{
  "type": "object",
  "properties": {
    "result": {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/cache-rules_cache_reserve"
        },
        {
          "type": "object",
          "required": [
            "value"
          ],
          "properties": {
            "value": {
              "$ref": "#/components/schemas/cache-rules_cache_reserve_value"
            }
          }
        }
      ]
    }
  }
}
string cache-rules_cache_reserve_value
{
  "enum": [
    "on",
    "off"
  ],
  "type": "string",
  "default": "off",
  "description": "Value of the Cache Reserve zone setting.",
  "x-auditable": true
}
boolean cache-rules_editable
{
  "type": "boolean",
  "description": "Whether the setting is editable.",
  "x-auditable": true
}
string cache-rules_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "readOnly": true,
  "maxLength": 32,
  "description": "Identifier.",
  "x-auditable": true
}
array cache-rules_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "message": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string cache-rules_modified_on
{
  "type": "string",
  "format": "date-time",
  "description": "The time when the setting was last modified.",
  "x-auditable": true
}
object cache-rules_origin_h2_max_streams
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/cache-rules_base"
    },
    {
      "type": "object",
      "properties": {
        "id": {
          "enum": [
            "origin_h2_max_streams"
          ],
          "type": "string",
          "example": "origin_h2_max_streams",
          "description": "Value of the zone setting.",
          "x-auditable": true
        },
        "value": {
          "$ref": "#/components/schemas/cache-rules_origin_h2_max_streams_value"
        }
      }
    }
  ],
  "title": "Origin H2 Max Streams",
  "description": "Origin H2 Max Streams configures the max number of concurrent requests that Cloudflare will send within the same connection when communicating with the origin server, if the origin supports it. Note that if your origin does not support H2 multiplexing, 5xx errors may be observed, particularly 520s. Also note that the default value is `100` for all plan types except Enterprise where it is `1`. `1` means that H2 multiplexing is disabled."
}
object cache-rules_origin_h2_max_streams_response_value
{
  "allOf": [
    {
      "$ref": "#/components/schemas/cache-rules_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/cache-rules_origin_h2_max_streams"
        }
      }
    }
  ]
}
integer cache-rules_origin_h2_max_streams_value
{
  "type": "integer",
  "example": 50,
  "maximum": 1000,
  "minimum": 1,
  "description": "Value of the Origin H2 Max Streams Setting.",
  "x-auditable": true
}
object cache-rules_origin_max_http_version
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/cache-rules_base"
    },
    {
      "type": "object",
      "properties": {
        "id": {
          "enum": [
            "origin_max_http_version"
          ],
          "type": "string",
          "example": "origin_max_http_version",
          "description": "Value of the zone setting.",
          "x-auditable": true
        },
        "value": {
          "$ref": "#/components/schemas/cache-rules_origin_max_http_version_value"
        }
      }
    }
  ],
  "title": "Origin Max HTTP Version",
  "description": "Origin Max HTTP Setting Version sets the highest HTTP version Cloudflare will attempt to use with your origin. This setting allows Cloudflare to make HTTP/2 requests to your origin. (Refer to [Enable HTTP/2 to Origin](https://developers.cloudflare.com/cache/how-to/enable-http2-to-origin/), for more information.). The default value is \"2\" for all plan types except Enterprise where it is \"1\"."
}
object cache-rules_origin_max_http_version_response_value
{
  "type": "object",
  "properties": {
    "result": {
      "$ref": "#/components/schemas/cache-rules_origin_max_http_version"
    }
  }
}
string cache-rules_origin_max_http_version_value
{
  "enum": [
    "2",
    "1"
  ],
  "type": "string",
  "description": "Value of the Origin Max HTTP Version Setting.",
  "x-auditable": true
}
object cache-rules_origin_post_quantum_encryption
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/cache-rules_base"
    },
    {
      "type": "object",
      "properties": {
        "id": {
          "enum": [
            "origin_pqe"
          ],
          "type": "string",
          "example": "origin_pqe",
          "description": "Value of the zone setting.",
          "x-auditable": true
        }
      }
    }
  ],
  "title": "Origin Post-Quantum Encryption",
  "description": "Instructs Cloudflare to use Post-Quantum (PQ) key agreement algorithms when connecting to your origin. Preferred instructs Cloudflare to opportunistically send a Post-Quantum keyshare in the first message to the origin (for fastest connections when the origin supports and prefers PQ), supported means that PQ algorithms are advertised but only used when requested by the origin, and off means that PQ algorithms are not advertised."
}
object cache-rules_origin_post_quantum_encryption_response_value
{
  "type": "object",
  "properties": {
    "result": {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/cache-rules_origin_post_quantum_encryption"
        },
        {
          "type": "object",
          "required": [
            "value"
          ],
          "properties": {
            "value": {
              "$ref": "#/components/schemas/cache-rules_origin_post_quantum_encryption_value"
            }
          }
        }
      ]
    }
  }
}
string cache-rules_origin_post_quantum_encryption_value
{
  "enum": [
    "preferred",
    "supported",
    "off"
  ],
  "type": "string",
  "default": "supported",
  "description": "Value of the Origin Post Quantum Encryption Setting.",
  "x-auditable": true
}
object cache-rules_patch
{
  "type": "object",
  "required": [
    "value"
  ],
  "properties": {
    "value": {
      "$ref": "#/components/schemas/cache-rules_value"
    }
  },
  "description": "Update enablement of Tiered Caching."
}
object cache-rules_regional_tiered_cache
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/cache-rules_base"
    },
    {
      "type": "object",
      "properties": {
        "id": {
          "enum": [
            "tc_regional"
          ],
          "type": "string",
          "example": "tc_regional",
          "description": "ID of the zone setting.",
          "x-auditable": true
        }
      }
    }
  ],
  "title": "Regional Tiered Cache",
  "description": "Instructs Cloudflare to check a regional hub data center on the way to your upper tier. This can help improve performance for smart and custom tiered cache topologies."
}
object cache-rules_regional_tiered_cache_response_value
{
  "type": "object",
  "properties": {
    "result": {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/cache-rules_regional_tiered_cache"
        },
        {
          "type": "object",
          "required": [
            "value"
          ],
          "properties": {
            "value": {
              "$ref": "#/components/schemas/cache-rules_regional_tiered_cache_value"
            }
          }
        }
      ]
    }
  }
}
string cache-rules_regional_tiered_cache_value
{
  "enum": [
    "on",
    "off"
  ],
  "type": "string",
  "default": "off",
  "description": "Value of the Regional Tiered Cache zone setting.",
  "x-auditable": true
}
object cache-rules_result-object
{
  "type": "object",
  "required": [
    "id",
    "value",
    "editable"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/cache-rules_setting_id"
    },
    "value": {
      "$ref": "#/components/schemas/cache-rules_setting_value"
    },
    "editable": {
      "$ref": "#/components/schemas/cache-rules_editable"
    },
    "modified_on": {
      "$ref": "#/components/schemas/cache-rules_modified_on"
    }
  }
}
object cache-rules_result-object-delete
{
  "type": "object",
  "required": [
    "id",
    "editable"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/cache-rules_setting_id"
    },
    "editable": {
      "$ref": "#/components/schemas/cache-rules_editable"
    },
    "modified_on": {
      "$ref": "#/components/schemas/cache-rules_modified_on"
    }
  }
}
string cache-rules_setting_id
{
  "type": "string",
  "description": "The identifier of the caching setting.",
  "x-auditable": true
}
string cache-rules_setting_value
{
  "type": "string",
  "description": "The value of the setting.",
  "x-auditable": true
}
object cache-rules_smart_tiered_cache
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/cache-rules_base"
    },
    {
      "type": "object",
      "properties": {
        "id": {
          "enum": [
            "tiered_cache_smart_topology_enable"
          ],
          "type": "string",
          "example": "tiered_cache_smart_topology_enable",
          "description": "ID of the zone setting.",
          "x-auditable": true
        }
      }
    }
  ],
  "title": "Smart Tiered Cache"
}
object cache-rules_smart_tiered_cache_patch
{
  "type": "object",
  "required": [
    "value"
  ],
  "properties": {
    "value": {
      "enum": [
        "on",
        "off"
      ],
      "type": "string",
      "example": "on",
      "description": "Enable or disable the Smart Tiered Cache.",
      "x-auditable": true
    }
  },
  "description": "Update enablement of Smart Tiered Cache."
}
object cache-rules_smart_tiered_cache_response_value
{
  "type": "object",
  "properties": {
    "result": {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/cache-rules_smart_tiered_cache"
        },
        {
          "type": "object",
          "required": [
            "value"
          ],
          "properties": {
            "value": {
              "$ref": "#/components/schemas/cache-rules_smart_tiered_cache_value"
            }
          }
        }
      ]
    }
  }
}
string cache-rules_smart_tiered_cache_value
{
  "enum": [
    "on",
    "off"
  ],
  "type": "string",
  "default": "off",
  "description": "Value of the Smart Tiered Cache zone setting.",
  "x-auditable": true
}
object cache-rules_tiered_cache
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/cache-rules_base"
    },
    {
      "type": "object",
      "properties": {
        "id": {
          "enum": [
            "tiered_caching"
          ],
          "type": "string",
          "example": "tiered_caching",
          "description": "ID of the zone setting.",
          "x-auditable": true
        }
      }
    }
  ],
  "title": "Tiered Cache"
}
object cache-rules_tiered_cache_response_value
{
  "type": "object",
  "properties": {
    "result": {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/cache-rules_tiered_cache"
        },
        {
          "type": "object",
          "required": [
            "value"
          ],
          "properties": {
            "value": {
              "$ref": "#/components/schemas/cache-rules_tiered_cache_value"
            }
          }
        }
      ]
    }
  }
}
string cache-rules_tiered_cache_value
{
  "enum": [
    "on",
    "off"
  ],
  "type": "string",
  "default": "off",
  "description": "Value of the Tiered Cache zone setting.",
  "x-auditable": true
}
string cache-rules_value
{
  "enum": [
    "on",
    "off"
  ],
  "type": "string",
  "example": "on",
  "description": "Enables Tiered Caching.",
  "x-auditable": true
}
object cache-rules_variants
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/cache-rules_base"
    },
    {
      "type": "object",
      "properties": {
        "id": {
          "enum": [
            "variants"
          ],
          "type": "string",
          "example": "variants",
          "description": "ID of the zone setting.",
          "x-auditable": true
        }
      }
    }
  ],
  "title": "Variants Caching",
  "description": "Variant support enables caching variants of images with certain file extensions in addition to the original. This only applies when the origin server sends the 'Vary: Accept' response header. If the origin server sends 'Vary: Accept' but does not serve the variant requested, the response will not be cached. This will be indicated with BYPASS cache status in the response headers."
}
object cache-rules_variants_response_value
{
  "type": "object",
  "properties": {
    "result": {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/cache-rules_variants"
        },
        {
          "type": "object",
          "required": [
            "value"
          ],
          "properties": {
            "value": {
              "$ref": "#/components/schemas/cache-rules_variants_value"
            }
          }
        }
      ]
    }
  }
}
object cache-rules_variants_value
{
  "type": "object",
  "properties": {
    "bmp": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "example": [
        "image/webp",
        "image/jpeg"
      ],
      "description": "List of strings with the MIME types of all the variants that should be served for bmp.",
      "uniqueItems": true
    },
    "gif": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "example": [
        "image/webp",
        "image/jpeg"
      ],
      "description": "List of strings with the MIME types of all the variants that should be served for gif.",
      "uniqueItems": true
    },
    "jp2": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "example": [
        "image/webp",
        "image/avif"
      ],
      "description": "List of strings with the MIME types of all the variants that should be served for jp2.",
      "uniqueItems": true
    },
    "jpg": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "example": [
        "image/webp",
        "image/avif"
      ],
      "description": "List of strings with the MIME types of all the variants that should be served for jpg.",
      "uniqueItems": true
    },
    "png": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "example": [
        "image/webp",
        "image/avif"
      ],
      "description": "List of strings with the MIME types of all the variants that should be served for png.",
      "uniqueItems": true
    },
    "tif": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "example": [
        "image/webp",
        "image/avif"
      ],
      "description": "List of strings with the MIME types of all the variants that should be served for tif.",
      "uniqueItems": true
    },
    "avif": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "example": [
        "image/webp",
        "image/jpeg"
      ],
      "description": "List of strings with the MIME types of all the variants that should be served for avif.",
      "uniqueItems": true
    },
    "jpeg": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "example": [
        "image/webp",
        "image/avif"
      ],
      "description": "List of strings with the MIME types of all the variants that should be served for jpeg.",
      "uniqueItems": true
    },
    "jpg2": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "example": [
        "image/webp",
        "image/avif"
      ],
      "description": "List of strings with the MIME types of all the variants that should be served for jpg2.",
      "uniqueItems": true
    },
    "tiff": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "example": [
        "image/webp",
        "image/avif"
      ],
      "description": "List of strings with the MIME types of all the variants that should be served for tiff.",
      "uniqueItems": true
    },
    "webp": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "example": [
        "image/jpeg",
        "image/avif"
      ],
      "description": "List of strings with the MIME types of all the variants that should be served for webp.",
      "uniqueItems": true
    }
  },
  "description": "Value of the zone setting."
}
object cache-rules_zone_cache_settings_delete_response_single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/cache-rules_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/cache-rules_result-object-delete"
        }
      }
    }
  ]
}
object cache-rules_zone_cache_settings_response_single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/cache-rules_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/cache-rules_result-object"
        }
      }
    }
  ]
}
object cache_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/cache_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "$ref": "#/components/schemas/cache_result"
    },
    "success": {
      "type": "boolean",
      "example": false,
      "description": "Indicates the API call's success or failure."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/cache_messages"
        }
      ],
      "example": []
    }
  }
}
object cache_api-response-single-id
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/cache_messages"
    },
    "result": {
      "$ref": "#/components/schemas/cache_result"
    },
    "success": {
      "type": "boolean",
      "example": true,
      "description": "Indicates the API call's success or failure."
    },
    "messages": {
      "$ref": "#/components/schemas/cache_messages"
    }
  }
}
string cache_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32
}
array cache_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "message": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
object cache_result
{
  "type": "object",
  "required": [
    "id",
    "modified_on",
    "value",
    "editable"
  ],
  "properties": {
    "id": {
      "type": "string",
      "example": "ssl_automatic_mode",
      "readOnly": true
    },
    "value": {
      "enum": [
        "auto",
        "custom"
      ],
      "type": "string",
      "example": "auto",
      "readOnly": true,
      "description": "Current setting of the automatic SSL/TLS."
    },
    "editable": {
      "type": "boolean",
      "readOnly": true,
      "description": "Whether this setting can be updated or not."
    },
    "modified_on": {
      "type": "string",
      "format": "date-time",
      "example": "2014-01-01T05:20:00.12345Z",
      "readOnly": true,
      "description": "Last time this setting was modified."
    },
    "next_scheduled_scan": {
      "type": "string",
      "format": "date-time",
      "example": "2014-01-01T05:20:00.12345Z",
      "nullable": true,
      "readOnly": true,
      "description": "Next time this zone will be scanned by the Automatic SSL/TLS."
    }
  }
}
object cache_schemas_patch
{
  "type": "object",
  "required": [
    "value"
  ],
  "properties": {
    "value": {
      "$ref": "#/components/schemas/cache_schemas_value"
    }
  },
  "description": "Update enablement of Automatic SSL/TLS."
}
string cache_schemas_value
{
  "enum": [
    "auto",
    "custom"
  ],
  "type": "string",
  "example": "auto",
  "description": "Controls enablement of Automatic SSL/TLS."
}
string calls_account_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "The account identifier tag.",
  "x-auditable": true
}
object calls_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/calls_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/calls_messages"
    }
  }
}
object calls_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/calls_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/calls_messages"
        }
      ],
      "example": []
    }
  }
}
object calls_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/calls_api-response-common"
    }
  ]
}
object calls_app
{
  "type": "object",
  "properties": {
    "uid": {
      "$ref": "#/components/schemas/calls_identifier"
    },
    "name": {
      "$ref": "#/components/schemas/calls_name"
    },
    "created": {
      "$ref": "#/components/schemas/calls_created"
    },
    "modified": {
      "$ref": "#/components/schemas/calls_modified"
    }
  }
}
object calls_app_editable_fields
{
  "type": "object",
  "properties": {
    "name": {
      "$ref": "#/components/schemas/calls_name"
    }
  }
}
object calls_app_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/calls_api-response-common"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/calls_app"
          }
        }
      }
    }
  ]
}
object calls_app_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/calls_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/calls_app"
        }
      }
    }
  ]
}
object calls_app_response_single_with_secret
{
  "allOf": [
    {
      "$ref": "#/components/schemas/calls_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/calls_app_with_secret"
        }
      }
    }
  ]
}
object calls_app_with_secret
{
  "type": "object",
  "properties": {
    "uid": {
      "$ref": "#/components/schemas/calls_identifier"
    },
    "name": {
      "$ref": "#/components/schemas/calls_name"
    },
    "secret": {
      "$ref": "#/components/schemas/calls_secret"
    },
    "created": {
      "$ref": "#/components/schemas/calls_created"
    },
    "modified": {
      "$ref": "#/components/schemas/calls_modified"
    }
  }
}
string calls_created
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-02T02:20:00Z",
  "description": "The date and time the item was created."
}
string calls_identifier
{
  "type": "string",
  "example": "2a95132c15732412d22c1476fa83f27a",
  "maxLength": 32,
  "minLength": 32,
  "description": "A Cloudflare-generated unique identifier for a item.",
  "x-auditable": true
}
array calls_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string calls_modified
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-02T02:20:00Z",
  "description": "The date and time the item was last modified."
}
string calls_name
{
  "type": "string",
  "default": "",
  "example": "production-realtime-app",
  "description": "A short description of Calls app, not shown to end users.",
  "x-auditable": true
}
string calls_secret
{
  "type": "string",
  "example": "66bcf64aa8907b9f9d90ac17746a77ce394c393b92b3916633dc02846e608ad4",
  "maxLength": 64,
  "minLength": 64,
  "description": "Bearer token",
  "x-sensitive": true
}
string calls_turn_key
{
  "type": "string",
  "example": "66bcf64aa8907b9f9d90ac17746a77ce394c393b92b3916633dc02846e608ad4",
  "maxLength": 64,
  "minLength": 64,
  "description": "Bearer token",
  "x-sensitive": true
}
object calls_turn_key_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/calls_api-response-common"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/calls_turn_key_object"
          }
        }
      }
    }
  ]
}
object calls_turn_key_editable_fields
{
  "type": "object",
  "properties": {
    "name": {
      "$ref": "#/components/schemas/calls_turn_key_name"
    }
  }
}
string calls_turn_key_name
{
  "type": "string",
  "default": "",
  "example": "my-turn-key",
  "description": "A short description of a TURN key, not shown to end users.",
  "x-auditable": true
}
object calls_turn_key_object
{
  "type": "object",
  "properties": {
    "uid": {
      "$ref": "#/components/schemas/calls_identifier"
    },
    "name": {
      "$ref": "#/components/schemas/calls_name"
    },
    "created": {
      "$ref": "#/components/schemas/calls_created"
    },
    "modified": {
      "$ref": "#/components/schemas/calls_modified"
    }
  }
}
object calls_turn_key_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/calls_api-response-common"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/calls_turn_key_object"
          }
        }
      }
    }
  ]
}
object calls_turn_key_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/calls_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/calls_turn_key_object"
        }
      }
    }
  ]
}
object calls_turn_key_single_with_secret
{
  "allOf": [
    {
      "$ref": "#/components/schemas/calls_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/calls_turn_key_with_key"
        }
      }
    }
  ]
}
object calls_turn_key_with_key
{
  "type": "object",
  "properties": {
    "key": {
      "$ref": "#/components/schemas/calls_turn_key"
    },
    "uid": {
      "$ref": "#/components/schemas/calls_identifier"
    },
    "name": {
      "$ref": "#/components/schemas/calls_turn_key_name"
    },
    "created": {
      "$ref": "#/components/schemas/calls_created"
    },
    "modified": {
      "$ref": "#/components/schemas/calls_modified"
    }
  }
}
string cc_AccountID
{
  "type": "string",
  "description": "A unique identifier for the user's account"
}
object cc_AccountRegistryToken
{
  "type": "object",
  "required": [
    "account_id",
    "registry_host",
    "username"
  ],
  "properties": {
    "password": {
      "type": "string",
      "description": "The password to use when authenticating to the image registry."
    },
    "username": {
      "type": "string",
      "description": "The username to use when authenticating to the image registry."
    },
    "account_id": {
      "$ref": "#/components/schemas/cc_AccountID"
    },
    "registry_host": {
      "type": "string",
      "description": "The domain of the image registry the credentials are for."
    }
  },
  "description": "Credentials that can be used to interact with the requested image registry."
}
object cc_ApplicationHealthInstances
{
  "type": "object",
  "required": [
    "active",
    "assigned",
    "healthy",
    "stopped",
    "failed",
    "starting",
    "scheduling"
  ],
  "properties": {
    "active": {
      "type": "integer",
      "description": "Number of instances with a running container."
    },
    "assigned": {
      "type": "integer",
      "description": "Number of instances assigned to a container, but the container is not yet running."
    }
  },
  "description": "Shows a count of application instance states."
}
string cc_ApplicationID
{
  "type": "string",
  "description": "An Application ID represents an identifier of an application"
}
object cc_ApplicationNetwork
{
  "type": "object",
  "required": [
    "bandwidth_limit_mbps"
  ],
  "properties": {
    "bandwidth_limit_mbps": {
      "type": "integer",
      "minimum": 1,
      "description": "The network bandwidth limit per container in Megabits per second (Mbps).\n"
    }
  },
  "description": "Network settings for an application"
}
object cc_ApplicationObservability
{
  "type": "object",
  "properties": {
    "logs": {
      "$ref": "#/components/schemas/cc_ObservabilityLogs"
    },
    "target_instance_count": {
      "type": "integer",
      "minimum": 1,
      "description": "Fixed number of instances that should receive the application-level observability overlay.\nMutually exclusive with `target_instance_percentage`.\n"
    },
    "target_instance_percentage": {
      "type": "integer",
      "maximum": 99,
      "minimum": 1,
      "description": "Percentage of instances that should receive the application-level observability overlay.\nThis rounds up so at least this percentage of instances is targeted.\nMutually exclusive with `target_instance_count`.\n"
    }
  },
  "description": "Settings for application observability such as logging."
}
integer cc_ApplicationRolloutActiveGracePeriod
{
  "type": "integer",
  "default": 0,
  "maximum": 604800,
  "minimum": 0,
  "description": "Grace period for active instances to stay alive before becoming eligible for shutdown signal due to a rollout, in seconds.\nDefaults to 0.\n"
}
object cc_CustomResourceAllocation
{
  "type": "object",
  "required": [
    "vcpu",
    "memory_mib",
    "disk_mb"
  ],
  "properties": {
    "vcpu": {
      "type": "number",
      "format": "float",
      "description": "Specify the vcpu to be used for the deployment. Vcpu must be at least 1. The input value will be rounded to\nthe nearest 0.0001. The default will be the one configured for the account.\n"
    },
    "disk_mb": {
      "type": "integer",
      "description": "The disk size in MB."
    },
    "memory_mib": {
      "type": "integer",
      "description": "Specify the memory to be used for the deployment, in MiB. The default will be the one configured for the account."
    }
  },
  "description": "Custom resource allocation with explicit vcpu, memory, and disk. Custom resource allocations must adhere to the following limits:\n- At least 1 vCPU\n- At least 3 GiB memory for each of the first 4 vCPUs (minimum 12 GiB when exceeding 4 vCPUs)\n- Disk GB can be at most 2x memory in GiB\n"
}
object cc_DurableObjectsConfigurationNamespaceId
{
  "type": "object",
  "required": [
    "namespace_id"
  ],
  "properties": {
    "namespace_id": {
      "type": "string",
      "description": "The namespace ID of the durable object namespace to use for this application."
    }
  },
  "description": "Durable object configuration using a namespace ID"
}
string cc_ISO8601Timestamp
{
  "type": "string",
  "example": "2021-04-01T12:32:41.488Z",
  "description": "UTC timestamp string in ISO 8601 format"
}
string cc_Image
{
  "type": "string",
  "description": "Image url"
}
object cc_ImageRegistryCredentialsConfiguration
{
  "type": "object",
  "required": [
    "permissions",
    "expiration_minutes"
  ],
  "properties": {
    "permissions": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/cc_ImageRegistryPermissions"
      }
    },
    "expiration_minutes": {
      "type": "integer",
      "description": "The number of minutes the credentials will be valid for."
    }
  },
  "description": "Specifies the configuration for the image registry credential to create."
}
string cc_ImageRegistryPermissions
{
  "enum": [
    "pull",
    "push",
    "library_push"
  ],
  "type": "string",
  "description": "Specifies what permissions the credentials will have."
}
string cc_InstanceType
{
  "type": "string",
  "anyOf": [
    {
      "enum": [
        "lite",
        "basic",
        "standard-1",
        "standard-2",
        "standard-3",
        "standard-4"
      ],
      "type": "string"
    }
  ],
  "default": "lite",
  "example": "lite",
  "description": "The instance type will be used to configure vCPU, memory, and disk.\n\n- \"lite\": 1/16 vCPU, 256 MiB memory, 2 GB disk\n- \"basic\": 1/4 vCPU, 1 GiB memory, 4 GB disk\n- \"standard-1\": 1/2 vCPU, 4 GiB memory, 8 GB disk\n- \"standard-2\": 1 vCPU, 6 GiB memory, 12 GB disk\n- \"standard-3\": 2 vCPU, 8 GiB memory, 16 GB disk\n- \"standard-4\": 4 vCPU, 12 GiB memory, 20 GB disk\n"
}
array cc_Messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
object cc_ObservabilityLogs
{
  "type": "object",
  "properties": {
    "enabled": {
      "type": "boolean",
      "default": false
    }
  },
  "description": "Observability logging settings."
}
object cc_PublicApplication
{
  "type": "object",
  "required": [
    "id",
    "created_at",
    "updated_at",
    "version",
    "health",
    "name",
    "instance_type",
    "max_instances",
    "image"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/cc_ApplicationID"
    },
    "name": {
      "type": "string",
      "description": "The name of the application."
    },
    "image": {
      "$ref": "#/components/schemas/cc_Image"
    },
    "health": {
      "$ref": "#/components/schemas/cc_ApplicationHealthInstances"
    },
    "network": {
      "$ref": "#/components/schemas/cc_ApplicationNetwork"
    },
    "version": {
      "type": "integer",
      "example": 1,
      "description": "The current version number of this application. This increments with application rollouts."
    },
    "created_at": {
      "$ref": "#/components/schemas/cc_ISO8601Timestamp"
    },
    "updated_at": {
      "$ref": "#/components/schemas/cc_ISO8601Timestamp"
    },
    "instance_type": {
      "$ref": "#/components/schemas/cc_PublicInstanceType"
    },
    "max_instances": {
      "type": "integer",
      "description": "Maximum number of instances that the application will allow."
    },
    "observability": {
      "$ref": "#/components/schemas/cc_ApplicationObservability"
    },
    "durable_object": {
      "$ref": "#/components/schemas/cc_DurableObjectsConfigurationNamespaceId"
    },
    "rollout_active_grace_period": {
      "$ref": "#/components/schemas/cc_ApplicationRolloutActiveGracePeriod"
    }
  },
  "description": "Provides the current state and configuration of a Containers application."
}
object cc_PublicInstanceType
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/cc_CustomResourceAllocation"
    },
    {
      "$ref": "#/components/schemas/cc_InstanceType"
    }
  ],
  "description": "Specifies either a pre-set instance type or a custom resource allocation."
}
object cc_PublicListApplicationsResult
{
  "type": "object",
  "required": [
    "result"
  ],
  "properties": {
    "result": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/cc_PublicApplication"
      }
    }
  }
}
object cc_RegistryTokenPermissionsNotAllowedError
{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "enum": [
        "TOKEN_PERMISSIONS_NOT_ALLOWED"
      ],
      "type": "string"
    }
  },
  "description": "The requested token permissions are not allowed for this account"
}
object cc_V4BaseErrorResponse
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/cc_Messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "type": "boolean",
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/cc_Messages"
        }
      ],
      "example": []
    }
  }
}
object cc_V4BaseResponse
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/cc_Messages"
    },
    "success": {
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/cc_Messages"
    }
  }
}
object cloud-connector_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/cloud-connector_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/cloud-connector_messages"
    }
  }
}
object cloud-connector_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/cloud-connector_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/cloud-connector_messages"
        }
      ],
      "example": []
    }
  }
}
string cloud-connector_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Identifier.",
  "x-auditable": true
}
array cloud-connector_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string cloud-connector_provider
{
  "enum": [
    "aws_s3",
    "cloudflare_r2",
    "gcp_storage",
    "azure_storage"
  ],
  "type": "string",
  "example": "aws_s3",
  "description": "Cloud Provider type",
  "x-auditable": true
}
object cloud-connector_rule
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "example": "95c365e17e1b46599cd99e5b231fac4e",
      "x-auditable": true
    },
    "enabled": {
      "type": "boolean",
      "example": true,
      "x-auditable": true
    },
    "provider": {
      "$ref": "#/components/schemas/cloud-connector_provider"
    },
    "expression": {
      "type": "string",
      "example": "http.cookie eq \"a=b\"",
      "x-auditable": true
    },
    "parameters": {
      "type": "object",
      "properties": {
        "host": {
          "type": "string",
          "example": "examplebucket.s3.eu-north-1.amazonaws.com",
          "description": "Host to perform Cloud Connection to",
          "x-auditable": true
        }
      },
      "description": "Parameters of Cloud Connector Rule"
    },
    "description": {
      "type": "string",
      "example": "Rule description",
      "x-auditable": true
    }
  }
}
array cloud-connector_rules
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/cloud-connector_rule"
  },
  "description": "List of Cloud Connector rules"
}
object cloud-connector_zone_identifier
{
  "$ref": "#/components/schemas/cloud-connector_identifier"
}
object cloudflare-pipelines_ConnectionSchema
{
  "type": "object",
  "properties": {
    "fields": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/cloudflare-pipelines_SourceField"
      }
    },
    "format": {
      "allOf": [
        {
          "$ref": "#/components/schemas/cloudflare-pipelines_Format"
        }
      ]
    },
    "inferred": {
      "type": "boolean",
      "nullable": true
    }
  }
}
string cloudflare-pipelines_DecimalEncoding
{
  "enum": [
    "number",
    "string",
    "bytes"
  ],
  "type": "string"
}
object cloudflare-pipelines_FieldType
{
  "oneOf": [
    {
      "type": "object",
      "title": "Int32",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "enum": [
            "int32"
          ],
          "type": "string"
        }
      }
    },
    {
      "type": "object",
      "title": "Int64",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "enum": [
            "int64"
          ],
          "type": "string"
        }
      }
    },
    {
      "type": "object",
      "title": "Float32",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "enum": [
            "float32"
          ],
          "type": "string"
        }
      }
    },
    {
      "type": "object",
      "title": "Float64",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "enum": [
            "float64"
          ],
          "type": "string"
        }
      }
    },
    {
      "type": "object",
      "title": "Bool",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "enum": [
            "bool"
          ],
          "type": "string"
        }
      }
    },
    {
      "type": "object",
      "title": "String",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "enum": [
            "string"
          ],
          "type": "string"
        }
      }
    },
    {
      "type": "object",
      "title": "Binary",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "enum": [
            "binary"
          ],
          "type": "string"
        }
      }
    },
    {
      "allOf": [
        {
          "$ref": "#/components/schemas/cloudflare-pipelines_TimestampField"
        },
        {
          "type": "object",
          "required": [
            "type"
          ],
          "properties": {
            "type": {
              "enum": [
                "timestamp"
              ],
              "type": "string"
            }
          }
        }
      ],
      "title": "Timestamp"
    },
    {
      "type": "object",
      "title": "Json",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "enum": [
            "json"
          ],
          "type": "string"
        }
      }
    },
    {
      "allOf": [
        {
          "$ref": "#/components/schemas/cloudflare-pipelines_StructField"
        },
        {
          "type": "object",
          "required": [
            "type"
          ],
          "properties": {
            "type": {
              "enum": [
                "struct"
              ],
              "type": "string"
            }
          }
        }
      ],
      "title": "Struct"
    },
    {
      "allOf": [
        {
          "$ref": "#/components/schemas/cloudflare-pipelines_ListField"
        },
        {
          "type": "object",
          "required": [
            "type"
          ],
          "properties": {
            "type": {
              "enum": [
                "list"
              ],
              "type": "string"
            }
          }
        }
      ],
      "title": "List"
    }
  ],
  "discriminator": {
    "propertyName": "type"
  }
}
object cloudflare-pipelines_Format
{
  "oneOf": [
    {
      "allOf": [
        {
          "$ref": "#/components/schemas/cloudflare-pipelines_JsonFormat"
        },
        {
          "type": "object",
          "required": [
            "type"
          ],
          "properties": {
            "type": {
              "enum": [
                "json"
              ],
              "type": "string"
            }
          }
        }
      ],
      "title": "Json"
    },
    {
      "allOf": [
        {
          "$ref": "#/components/schemas/cloudflare-pipelines_ParquetFormat"
        },
        {
          "type": "object",
          "required": [
            "type"
          ],
          "properties": {
            "type": {
              "enum": [
                "parquet"
              ],
              "type": "string"
            }
          }
        }
      ],
      "title": "Parquet"
    }
  ],
  "discriminator": {
    "propertyName": "type"
  }
}
object cloudflare-pipelines_JsonFormat
{
  "type": "object",
  "properties": {
    "unstructured": {
      "type": "boolean"
    },
    "decimal_encoding": {
      "$ref": "#/components/schemas/cloudflare-pipelines_DecimalEncoding"
    },
    "timestamp_format": {
      "$ref": "#/components/schemas/cloudflare-pipelines_TimestampFormat"
    }
  }
}
object cloudflare-pipelines_ListField
{
  "type": "object",
  "required": [
    "items"
  ],
  "properties": {
    "items": {
      "$ref": "#/components/schemas/cloudflare-pipelines_SourceField"
    }
  }
}
string cloudflare-pipelines_ParquetCompression
{
  "enum": [
    "uncompressed",
    "snappy",
    "gzip",
    "zstd",
    "lz4"
  ],
  "type": "string"
}
object cloudflare-pipelines_ParquetFormat
{
  "type": "object",
  "properties": {
    "compression": {
      "$ref": "#/components/schemas/cloudflare-pipelines_ParquetCompression"
    },
    "row_group_bytes": {
      "type": "integer",
      "format": "int64",
      "minimum": 0,
      "nullable": true
    }
  }
}
object cloudflare-pipelines_PipelineEdge
{
  "type": "object",
  "required": [
    "src_id",
    "dest_id",
    "key_type",
    "value_type",
    "edge_type"
  ],
  "properties": {
    "src_id": {
      "type": "integer",
      "format": "int32",
      "minimum": 0
    },
    "dest_id": {
      "type": "integer",
      "format": "int32",
      "minimum": 0
    },
    "key_type": {
      "type": "string"
    },
    "edge_type": {
      "type": "string"
    },
    "value_type": {
      "type": "string"
    }
  }
}
object cloudflare-pipelines_PipelineGraph
{
  "type": "object",
  "required": [
    "nodes",
    "edges"
  ],
  "properties": {
    "edges": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/cloudflare-pipelines_PipelineEdge"
      }
    },
    "nodes": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/cloudflare-pipelines_PipelineNode"
      }
    }
  }
}
object cloudflare-pipelines_PipelineNode
{
  "type": "object",
  "required": [
    "node_id",
    "operator",
    "description",
    "parallelism"
  ],
  "properties": {
    "node_id": {
      "type": "integer",
      "format": "int32",
      "minimum": 0
    },
    "operator": {
      "type": "string"
    },
    "description": {
      "type": "string"
    },
    "parallelism": {
      "type": "integer",
      "format": "int32",
      "minimum": 0
    }
  }
}
object cloudflare-pipelines_SourceField
{
  "allOf": [
    {
      "$ref": "#/components/schemas/cloudflare-pipelines_FieldType"
    },
    {
      "type": "object",
      "required": [
        "name"
      ],
      "properties": {
        "name": {
          "type": "string"
        },
        "required": {
          "type": "boolean"
        },
        "sql_name": {
          "type": "string"
        },
        "metadata_key": {
          "type": "string",
          "nullable": true
        }
      }
    }
  ]
}
object cloudflare-pipelines_StructField
{
  "type": "object",
  "required": [
    "fields"
  ],
  "properties": {
    "name": {
      "type": "string",
      "nullable": true
    },
    "fields": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/cloudflare-pipelines_SourceField"
      }
    }
  }
}
object cloudflare-pipelines_TimestampField
{
  "type": "object",
  "properties": {
    "unit": {
      "$ref": "#/components/schemas/cloudflare-pipelines_TimestampUnit"
    }
  }
}
string cloudflare-pipelines_TimestampFormat
{
  "enum": [
    "rfc3339",
    "unix_millis"
  ],
  "type": "string"
}
string cloudflare-pipelines_TimestampUnit
{
  "enum": [
    "second",
    "millisecond",
    "microsecond",
    "nanosecond"
  ],
  "type": "string"
}
object cloudflare-pipelines_r2Table
{
  "type": "object",
  "title": "R2 Sink",
  "required": [
    "account_id",
    "bucket",
    "credentials"
  ],
  "properties": {
    "path": {
      "type": "string",
      "title": "Path",
      "description": "Subpath within the bucket to write to"
    },
    "bucket": {
      "type": "string",
      "title": "Bucket",
      "description": "R2 Bucket to write to"
    },
    "account_id": {
      "type": "string",
      "title": "Account ID",
      "description": "Cloudflare Account ID for the bucket"
    },
    "credentials": {
      "type": "object",
      "title": "R2 Credentials",
      "required": [
        "access_key_id",
        "secret_access_key"
      ],
      "properties": {
        "access_key_id": {
          "type": "string",
          "title": "Access Key ID",
          "format": "var-str",
          "description": "Cloudflare Account ID for the bucket"
        },
        "secret_access_key": {
          "type": "string",
          "title": "Access Key ID",
          "format": "var-str",
          "description": "Cloudflare Account ID for the bucket",
          "x-sensitive": true
        }
      },
      "additionalProperties": false
    },
    "file_naming": {
      "type": "object",
      "title": "File Naming",
      "properties": {
        "prefix": {
          "type": "string",
          "title": "Filename Prefix",
          "description": "The prefix to use in file name. i.e prefix-<uuid>.parquet"
        },
        "suffix": {
          "type": "string",
          "title": "Filename Suffix",
          "description": "This will overwrite the default file suffix. i.e .parquet, use with caution"
        },
        "strategy": {
          "enum": [
            "serial",
            "uuid",
            "uuid_v7",
            "ulid"
          ],
          "type": "string",
          "title": "Filename Strategy",
          "description": "Filename generation strategy."
        }
      },
      "description": "Controls filename prefix/suffix and strategy.",
      "additionalProperties": false
    },
    "jurisdiction": {
      "type": "string",
      "title": "Jurisdiction",
      "description": "Jurisdiction this bucket is hosted in"
    },
    "partitioning": {
      "type": "object",
      "title": "Partitioning Configuration",
      "properties": {
        "time_pattern": {
          "type": "string",
          "title": "Time Partition Pattern",
          "example": "year=%Y/month=%m/day=%d/hour=%H",
          "description": "The pattern of the date string"
        }
      },
      "description": "Data-layout partitioning for sinks.",
      "additionalProperties": false
    },
    "rolling_policy": {
      "type": "object",
      "title": "File Rolling Policy",
      "properties": {
        "file_size_bytes": {
          "type": "integer",
          "title": "File Size",
          "format": "uint64",
          "minimum": 0,
          "description": "Files will be rolled after reaching this number of bytes"
        },
        "interval_seconds": {
          "type": "integer",
          "title": "Interval Seconds",
          "format": "uint64",
          "minimum": 1,
          "description": "Number of seconds to wait before rolling over to a new file"
        },
        "inactivity_seconds": {
          "type": "integer",
          "title": "Inactivity Seconds",
          "format": "uint64",
          "minimum": 1,
          "description": "Number of seconds of inactivity to wait before rolling over to a new file"
        }
      },
      "description": "Rolling policy for file sinks (when & why to close a file and open a new one).",
      "additionalProperties": false
    }
  },
  "additionalProperties": false
}
object cloudflare-pipelines_r2TablePublic
{
  "type": "object",
  "title": "R2 Sink Public",
  "required": [
    "account_id",
    "bucket"
  ],
  "properties": {
    "path": {
      "type": "string",
      "title": "Path",
      "description": "Subpath within the bucket to write to"
    },
    "bucket": {
      "type": "string",
      "title": "Bucket",
      "description": "R2 Bucket to write to"
    },
    "account_id": {
      "type": "string",
      "title": "Account ID",
      "description": "Cloudflare Account ID for the bucket"
    },
    "file_naming": {
      "type": "object",
      "title": "File Naming",
      "properties": {
        "prefix": {
          "type": "string",
          "title": "Filename Prefix",
          "description": "The prefix to use in file name. i.e prefix-<uuid>.parquet"
        },
        "suffix": {
          "type": "string",
          "title": "Filename Suffix",
          "description": "This will overwrite the default file suffix. i.e .parquet, use with caution"
        },
        "strategy": {
          "enum": [
            "serial",
            "uuid",
            "uuid_v7",
            "ulid"
          ],
          "type": "string",
          "title": "Filename Strategy",
          "description": "Filename generation strategy."
        }
      },
      "description": "Controls filename prefix/suffix and strategy.",
      "additionalProperties": false
    },
    "jurisdiction": {
      "type": "string",
      "title": "Jurisdiction",
      "description": "Jurisdiction this bucket is hosted in"
    },
    "partitioning": {
      "type": "object",
      "title": "Partitioning Configuration",
      "properties": {
        "time_pattern": {
          "type": "string",
          "title": "Time Partition Pattern",
          "example": "year=%Y/month=%m/day=%d/hour=%H",
          "description": "The pattern of the date string"
        }
      },
      "description": "Data-layout partitioning for sinks.",
      "additionalProperties": false
    },
    "rolling_policy": {
      "type": "object",
      "title": "File Rolling Policy",
      "properties": {
        "file_size_bytes": {
          "type": "integer",
          "title": "File Size",
          "format": "uint64",
          "minimum": 0,
          "description": "Files will be rolled after reaching this number of bytes"
        },
        "interval_seconds": {
          "type": "integer",
          "title": "Interval Seconds",
          "format": "uint64",
          "minimum": 1,
          "description": "Number of seconds to wait before rolling over to a new file"
        },
        "inactivity_seconds": {
          "type": "integer",
          "title": "Inactivity Seconds",
          "format": "uint64",
          "minimum": 1,
          "description": "Number of seconds of inactivity to wait before rolling over to a new file"
        }
      },
      "description": "Rolling policy for file sinks (when & why to close a file and open a new one).",
      "additionalProperties": false
    }
  },
  "description": "R2 Sink public configuration.",
  "additionalProperties": false
}
object cloudflare-pipelines_r2_data_catalogTable
{
  "type": "object",
  "title": "R2DataCatalogSinkTable",
  "required": [
    "account_id",
    "bucket",
    "token",
    "table_name"
  ],
  "properties": {
    "token": {
      "type": "string",
      "format": "var-str",
      "example": "\"asdfkj2h34kjhkj\"",
      "description": "Authentication token",
      "x-sensitive": true
    },
    "bucket": {
      "type": "string",
      "example": "my-bucket",
      "description": "The R2 Bucket that hosts this catalog"
    },
    "namespace": {
      "type": "string",
      "title": "Namespace",
      "description": "Table namespace"
    },
    "account_id": {
      "type": "string",
      "format": "uri",
      "example": "6791973bbe876d621f9e557f891e90b3",
      "description": "Cloudflare Account ID"
    },
    "table_name": {
      "type": "string",
      "title": "Table Name",
      "description": "Table name"
    },
    "rolling_policy": {
      "type": "object",
      "title": "File Rolling Policy",
      "properties": {
        "file_size_bytes": {
          "type": "integer",
          "title": "File Size",
          "format": "uint64",
          "minimum": 0,
          "description": "Files will be rolled after reaching this number of bytes"
        },
        "interval_seconds": {
          "type": "integer",
          "title": "Interval Seconds",
          "format": "uint64",
          "minimum": 1,
          "description": "Number of seconds to wait before rolling over to a new file"
        },
        "inactivity_seconds": {
          "type": "integer",
          "title": "Inactivity Seconds",
          "format": "uint64",
          "minimum": 1,
          "description": "Number of seconds of inactivity to wait before rolling over to a new file"
        }
      },
      "description": "Rolling policy for file sinks (when & why to close a file and open a new one).",
      "additionalProperties": false
    }
  },
  "description": "R2 Data Catalog Sink",
  "additionalProperties": false
}
object cloudflare-pipelines_r2_data_catalogTablePublic
{
  "type": "object",
  "title": "R2DataCatalogSinkTablePublic",
  "required": [
    "account_id",
    "bucket",
    "table_name"
  ],
  "properties": {
    "bucket": {
      "type": "string",
      "example": "my-bucket",
      "description": "The R2 Bucket that hosts this catalog"
    },
    "namespace": {
      "type": "string",
      "title": "Namespace",
      "description": "Table namespace"
    },
    "account_id": {
      "type": "string",
      "format": "uri",
      "example": "6791973bbe876d621f9e557f891e90b3",
      "description": "Cloudflare Account ID"
    },
    "table_name": {
      "type": "string",
      "title": "Table Name",
      "description": "Table name"
    },
    "rolling_policy": {
      "type": "object",
      "title": "File Rolling Policy",
      "properties": {
        "file_size_bytes": {
          "type": "integer",
          "title": "File Size",
          "format": "uint64",
          "minimum": 0,
          "description": "Files will be rolled after reaching this number of bytes"
        },
        "interval_seconds": {
          "type": "integer",
          "title": "Interval Seconds",
          "format": "uint64",
          "minimum": 1,
          "description": "Number of seconds to wait before rolling over to a new file"
        },
        "inactivity_seconds": {
          "type": "integer",
          "title": "Inactivity Seconds",
          "format": "uint64",
          "minimum": 1,
          "description": "Number of seconds of inactivity to wait before rolling over to a new file"
        }
      },
      "description": "Rolling policy for file sinks (when & why to close a file and open a new one).",
      "additionalProperties": false
    }
  },
  "description": "R2 Data Catalog Sink public configuration.",
  "additionalProperties": false
}
boolean cloudflare-pipelines_worker-pipelines-common-success
{
  "type": "boolean",
  "example": true,
  "description": "Indicates whether the API call was successful."
}
string cloudflare-pipelines_workers-pipelines-account-id
{
  "type": "string",
  "example": "0123105f4ecef8ad9ca31a8372d0c353",
  "description": "Specifies the public ID of the account."
}
object cloudflare-pipelines_workers-pipelines-pipeline
{
  "type": "object",
  "required": [
    "name",
    "source",
    "destination",
    "id",
    "version",
    "endpoint"
  ],
  "deprecated": true,
  "properties": {
    "id": {
      "type": "string",
      "example": "123f8a8258064ed892a347f173372359",
      "description": "Specifies the pipeline identifier."
    },
    "name": {
      "type": "string",
      "example": "sample_pipeline",
      "maxLength": 128,
      "minLength": 1,
      "description": "Defines the name of the pipeline."
    },
    "source": {
      "type": "array",
      "items": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/cloudflare-pipelines_workers_pipelines_http_source"
          },
          {
            "$ref": "#/components/schemas/cloudflare-pipelines_workers_pipelines_binding_source"
          }
        ],
        "discriminator": {
          "mapping": {
            "http": "#/components/schemas/cloudflare-pipelines_workers_pipelines_http_source",
            "binding": "#/components/schemas/cloudflare-pipelines_workers_pipelines_binding_source"
          },
          "propertyName": "type"
        }
      },
      "minItems": 1
    },
    "version": {
      "type": "number",
      "example": 2,
      "description": "Indicates the version number of last saved configuration."
    },
    "endpoint": {
      "type": "string",
      "example": "https://123f8a8258064ed892a347f173372359.pipelines.cloudflare.com",
      "description": "Indicates the endpoint URL to send traffic."
    },
    "destination": {
      "type": "object",
      "required": [
        "type",
        "format",
        "batch",
        "compression",
        "path"
      ],
      "properties": {
        "path": {
          "type": "object",
          "example": {
            "bucket": "bucket",
            "prefix": "base"
          },
          "required": [
            "bucket"
          ],
          "properties": {
            "bucket": {
              "type": "string",
              "example": "bucket",
              "description": "Specifies the R2 Bucket to store files."
            },
            "prefix": {
              "type": "string",
              "example": "base",
              "description": "Specifies the base directory within the bucket."
            },
            "filename": {
              "allOf": [
                {
                  "type": "string"
                },
                {
                  "type": "string"
                }
              ],
              "example": "${slug}${extension}",
              "description": "Specifies the name pattern to for individual data files."
            },
            "filepath": {
              "type": "string",
              "example": "${date}/${hour}",
              "description": "Specifies the name pattern for directory."
            }
          }
        },
        "type": {
          "enum": [
            "r2"
          ],
          "type": "string",
          "description": "Specifies the type of destination."
        },
        "batch": {
          "type": "object",
          "required": [
            "max_rows",
            "max_bytes",
            "max_duration_s"
          ],
          "properties": {
            "max_rows": {
              "type": "integer",
              "default": 10000000,
              "maximum": 10000000,
              "minimum": 100,
              "description": "Specifies rough maximum number of rows per file."
            },
            "max_bytes": {
              "type": "integer",
              "default": 100000000,
              "maximum": 100000000,
              "minimum": 1000,
              "description": "Specifies rough maximum size of files."
            },
            "max_duration_s": {
              "type": "number",
              "default": 300,
              "maximum": 300,
              "minimum": 0.25,
              "description": "Specifies duration to wait to aggregate batches files."
            }
          }
        },
        "format": {
          "enum": [
            "json"
          ],
          "type": "string",
          "description": "Specifies the format of data to deliver."
        },
        "compression": {
          "type": "object",
          "required": [
            "type"
          ],
          "properties": {
            "type": {
              "enum": [
                "none",
                "gzip",
                "deflate"
              ],
              "type": "string",
              "default": "gzip",
              "example": "gzip",
              "description": "Specifies the desired compression algorithm and format."
            }
          }
        }
      }
    }
  },
  "description": "[DEPRECATED] Describes the configuration of a pipeline. Use the new streams/sinks/pipelines API instead."
}
string cloudflare-pipelines_workers-pipelines-pipeline-id
{
  "type": "string",
  "example": "043e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "minLength": 32,
  "description": "Specifies the public ID of the pipeline."
}
string cloudflare-pipelines_workers-pipelines-sink-id
{
  "type": "string",
  "example": "0223105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "minLength": 32,
  "description": "Specifies the publid ID of the sink."
}
string cloudflare-pipelines_workers-pipelines-stream-id
{
  "type": "string",
  "example": "033e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "minLength": 32,
  "description": "Specifies the public ID of the stream."
}
object cloudflare-pipelines_workers_pipelines_binding_source
{
  "type": "object",
  "required": [
    "type",
    "format"
  ],
  "deprecated": true,
  "properties": {
    "type": {
      "type": "string"
    },
    "format": {
      "enum": [
        "json"
      ],
      "type": "string",
      "description": "Specifies the format of source data."
    }
  },
  "description": "[DEPRECATED] Worker binding source configuration. Use the new streams API instead."
}
object cloudflare-pipelines_workers_pipelines_http_source
{
  "type": "object",
  "required": [
    "type",
    "format"
  ],
  "deprecated": true,
  "properties": {
    "cors": {
      "type": "object",
      "properties": {
        "origins": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "example": [
            "*"
          ],
          "maxItems": 5,
          "description": "Specifies allowed origins to allow Cross Origin HTTP Requests."
        }
      }
    },
    "type": {
      "type": "string"
    },
    "format": {
      "enum": [
        "json"
      ],
      "type": "string",
      "description": "Specifies the format of source data."
    },
    "authentication": {
      "type": "boolean",
      "description": "Specifies whether authentication is required to send to this pipeline via HTTP."
    }
  },
  "description": "[DEPRECATED] HTTP source configuration. Use the new streams API instead."
}
object cloudforce-one-port-scan-api_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/cloudforce-one-port-scan-api_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/cloudforce-one-port-scan-api_messages"
    }
  }
}
object cloudforce-one-port-scan-api_api-response-common-failure
{
  "allOf": [
    {
      "$ref": "#/components/schemas/cloudforce-one-port-scan-api_api-response-common"
    },
    {
      "properties": {
        "errors": {
          "type": "object",
          "example": {
            "code": 10433,
            "message": "request error"
          }
        },
        "success": {
          "type": "boolean",
          "example": false
        }
      }
    }
  ]
}
number cloudforce-one-port-scan-api_frequency
{
  "type": "number",
  "title": "Frequency",
  "example": 7,
  "description": "Defines the number of days between each scan (0 = One-off scan)."
}
array cloudforce-one-port-scan-api_ips
{
  "type": "array",
  "items": {
    "type": "string",
    "description": "Defines a list of IP addresses or CIDR blocks to scan. The maximum number of total IP addresses allowed is 5000."
  },
  "title": "IP List",
  "example": [
    "1.1.1.1",
    "2606:4700:4700::1111"
  ],
  "description": "Defines a list of IP addresses or CIDR blocks to scan. The maximum number of total IP addresses allowed is 5000."
}
array cloudforce-one-port-scan-api_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
object cloudforce-one-port-scan-api_port
{
  "type": "object",
  "title": "Port",
  "required": [
    "account_id",
    "ips",
    "frequency"
  ],
  "properties": {
    "proto": {
      "type": "string",
      "example": "tcp"
    },
    "number": {
      "type": "number",
      "example": 8080
    },
    "status": {
      "type": "string",
      "example": "open"
    }
  }
}
array cloudforce-one-port-scan-api_ports
{
  "type": "array",
  "items": {
    "type": "string",
    "description": "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."
  },
  "title": "Port List",
  "example": [
    "default"
  ],
  "description": "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."
}
object cloudforce-one-port-scan-api_scan-config
{
  "type": "object",
  "title": "Config",
  "required": [
    "id",
    "account_id",
    "ips",
    "frequency",
    "ports"
  ],
  "properties": {
    "id": {
      "type": "string",
      "example": "uuid",
      "description": "Defines the Config ID."
    },
    "ips": {
      "$ref": "#/components/schemas/cloudforce-one-port-scan-api_ips"
    },
    "ports": {
      "$ref": "#/components/schemas/cloudforce-one-port-scan-api_ports"
    },
    "frequency": {
      "$ref": "#/components/schemas/cloudforce-one-port-scan-api_frequency"
    },
    "account_id": {
      "type": "string",
      "example": "abcd1234abcd1234abcd1234abcd1234"
    }
  }
}
object cloudforce-one-requests_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/cloudforce-one-requests_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/cloudforce-one-requests_messages"
    }
  }
}
object cloudforce-one-requests_api-response-common-failure
{
  "allOf": [
    {
      "$ref": "#/components/schemas/cloudforce-one-requests_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "errors": {
          "type": "object",
          "properties": {
            "code": {
              "type": "integer",
              "example": 10433
            },
            "message": {
              "type": "string",
              "example": "request error"
            }
          }
        },
        "success": {
          "type": "boolean",
          "example": false
        }
      }
    }
  ]
}
string cloudforce-one-requests_asset-content
{
  "type": "string",
  "example": "@/Users/me/example.docx",
  "description": "Asset file to upload."
}
string cloudforce-one-requests_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Identifier."
}
array cloudforce-one-requests_labels
{
  "type": "array",
  "items": {
    "type": "string"
  },
  "title": "Labels",
  "example": [
    "DoS",
    "CVE"
  ],
  "description": "List of labels.",
  "x-auditable": true
}
string cloudforce-one-requests_message-content
{
  "type": "string",
  "example": "Can you elaborate on the type of DoS that occurred?",
  "description": "Content of message.",
  "x-auditable": true
}
array cloudforce-one-requests_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string cloudforce-one-requests_priority
{
  "enum": [
    "routine",
    "high",
    "urgent"
  ],
  "type": "string",
  "title": "Request Priority",
  "x-auditable": true
}
object cloudforce-one-requests_priority-edit
{
  "type": "object",
  "title": "Priority Editable Attributes",
  "required": [
    "labels",
    "priority",
    "requirement",
    "tlp"
  ],
  "properties": {
    "tlp": {
      "$ref": "#/components/schemas/cloudforce-one-requests_tlp"
    },
    "labels": {
      "$ref": "#/components/schemas/cloudforce-one-requests_labels"
    },
    "priority": {
      "type": "integer",
      "example": 1,
      "description": "Priority.",
      "x-auditable": true
    },
    "requirement": {
      "type": "string",
      "example": "DoS attacks carried out by CVEs",
      "description": "Requirement.",
      "x-auditable": true
    }
  }
}
object cloudforce-one-requests_priority-item
{
  "type": "object",
  "title": "Priority Item",
  "required": [
    "id",
    "created",
    "updated",
    "labels",
    "priority",
    "requirement",
    "tlp"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/cloudforce-one-requests_uuid"
    },
    "tlp": {
      "$ref": "#/components/schemas/cloudforce-one-requests_tlp"
    },
    "labels": {
      "$ref": "#/components/schemas/cloudforce-one-requests_labels"
    },
    "created": {
      "allOf": [
        {
          "$ref": "#/components/schemas/cloudforce-one-requests_time"
        }
      ],
      "description": "Priority creation time."
    },
    "updated": {
      "allOf": [
        {
          "$ref": "#/components/schemas/cloudforce-one-requests_time"
        }
      ],
      "description": "Priority last updated time."
    },
    "priority": {
      "type": "integer",
      "example": 1,
      "description": "Priority.",
      "x-auditable": true
    },
    "requirement": {
      "type": "string",
      "example": "DoS attacks carried out by CVEs",
      "description": "Requirement.",
      "x-auditable": true
    }
  }
}
object cloudforce-one-requests_priority-list
{
  "type": "object",
  "title": "Priority List Parameters",
  "required": [
    "page",
    "per_page"
  ],
  "properties": {
    "page": {
      "type": "integer",
      "description": "Page number of results."
    },
    "per_page": {
      "type": "integer",
      "example": 10,
      "description": "Number of results per page."
    }
  }
}
object cloudforce-one-requests_quota
{
  "type": "object",
  "title": "Quota",
  "properties": {
    "quota": {
      "type": "integer",
      "example": 120,
      "description": "Tokens for the quarter.",
      "x-auditable": true
    },
    "remaining": {
      "type": "integer",
      "example": 64,
      "description": "Tokens remaining for the quarter.",
      "x-auditable": true
    },
    "anniversary_date": {
      "allOf": [
        {
          "$ref": "#/components/schemas/cloudforce-one-requests_time"
        }
      ],
      "example": "2022-04-01T00:00:00Z",
      "description": "Anniversary date is when annual quota limit is refreshed."
    },
    "quarter_anniversary_date": {
      "allOf": [
        {
          "$ref": "#/components/schemas/cloudforce-one-requests_time"
        }
      ],
      "example": "2022-04-01T00:00:00Z",
      "description": "Quarter anniversary date is when quota limit is refreshed each quarter."
    }
  }
}
object cloudforce-one-requests_request-asset-edit
{
  "type": "object",
  "title": "Request Asset Editable Attributes",
  "properties": {
    "source": {
      "$ref": "#/components/schemas/cloudforce-one-requests_asset-content"
    }
  }
}
object cloudforce-one-requests_request-asset-item
{
  "type": "object",
  "title": "Request Asset Item",
  "required": [
    "id",
    "name"
  ],
  "properties": {
    "id": {
      "type": "integer",
      "description": "Asset ID.",
      "x-auditable": true
    },
    "name": {
      "type": "string",
      "example": "example.docx",
      "description": "Asset name.",
      "x-auditable": true
    },
    "created": {
      "allOf": [
        {
          "$ref": "#/components/schemas/cloudforce-one-requests_time"
        }
      ],
      "example": "2022-01-01T00:00:00Z",
      "description": "Defines the asset creation time."
    },
    "file_type": {
      "type": "string",
      "example": "docx",
      "description": "Asset file type.",
      "x-auditable": true
    },
    "description": {
      "type": "string",
      "example": "example description",
      "description": "Asset description.",
      "x-auditable": true
    }
  }
}
object cloudforce-one-requests_request-asset-list
{
  "type": "object",
  "title": "Request Asset List Parameters",
  "required": [
    "page",
    "per_page"
  ],
  "properties": {
    "page": {
      "type": "integer",
      "description": "Page number of results."
    },
    "per_page": {
      "type": "integer",
      "example": 10,
      "description": "Number of results per page."
    }
  }
}
object cloudforce-one-requests_request-constants
{
  "type": "object",
  "title": "Request Constants",
  "properties": {
    "tlp": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/cloudforce-one-requests_tlp"
      },
      "example": [
        "clear",
        "green",
        "amber",
        "amber-strict",
        "red"
      ]
    },
    "status": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/cloudforce-one-requests_request-status"
      },
      "example": [
        "open",
        "accepted",
        "reported",
        "approved",
        "completed",
        "declined"
      ]
    },
    "priority": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/cloudforce-one-requests_priority"
      },
      "example": [
        "routine",
        "high",
        "urgent"
      ]
    }
  }
}
string cloudforce-one-requests_request-content
{
  "type": "string",
  "example": "What regions were most effected by the recent DoS?",
  "description": "Request content."
}
object cloudforce-one-requests_request-edit
{
  "type": "object",
  "title": "Request Editable Parameters",
  "properties": {
    "tlp": {
      "$ref": "#/components/schemas/cloudforce-one-requests_tlp"
    },
    "content": {
      "$ref": "#/components/schemas/cloudforce-one-requests_request-content"
    },
    "summary": {
      "$ref": "#/components/schemas/cloudforce-one-requests_request-summary"
    },
    "priority": {
      "type": "string",
      "example": "routine",
      "description": "Priority for analyzing the request.",
      "x-auditable": true
    },
    "request_type": {
      "$ref": "#/components/schemas/cloudforce-one-requests_request-type"
    }
  }
}
object cloudforce-one-requests_request-item
{
  "type": "object",
  "title": "Request Item",
  "required": [
    "id",
    "created",
    "updated",
    "content",
    "priority",
    "request",
    "summary",
    "tlp"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/cloudforce-one-requests_uuid"
    },
    "tlp": {
      "$ref": "#/components/schemas/cloudforce-one-requests_tlp"
    },
    "status": {
      "$ref": "#/components/schemas/cloudforce-one-requests_request-status"
    },
    "tokens": {
      "type": "integer",
      "example": 16,
      "description": "Tokens for the request.",
      "x-auditable": true
    },
    "content": {
      "$ref": "#/components/schemas/cloudforce-one-requests_request-content"
    },
    "created": {
      "$ref": "#/components/schemas/cloudforce-one-requests_time"
    },
    "request": {
      "$ref": "#/components/schemas/cloudforce-one-requests_request-type"
    },
    "summary": {
      "$ref": "#/components/schemas/cloudforce-one-requests_request-summary"
    },
    "updated": {
      "$ref": "#/components/schemas/cloudforce-one-requests_time"
    },
    "priority": {
      "$ref": "#/components/schemas/cloudforce-one-requests_time"
    },
    "completed": {
      "$ref": "#/components/schemas/cloudforce-one-requests_time"
    },
    "readable_id": {
      "$ref": "#/components/schemas/cloudforce-one-requests_request-readable-id"
    },
    "message_tokens": {
      "type": "integer",
      "example": 1,
      "description": "Tokens for the request messages.",
      "x-auditable": true
    }
  }
}
object cloudforce-one-requests_request-list
{
  "type": "object",
  "title": "Request List Parameters",
  "required": [
    "page",
    "per_page"
  ],
  "properties": {
    "page": {
      "type": "integer",
      "description": "Page number of results."
    },
    "status": {
      "$ref": "#/components/schemas/cloudforce-one-requests_request-status"
    },
    "sort_by": {
      "type": "string",
      "example": "created",
      "description": "Field to sort results by."
    },
    "per_page": {
      "type": "integer",
      "example": 10,
      "description": "Number of results per page."
    },
    "sort_order": {
      "enum": [
        "asc",
        "desc"
      ],
      "type": "string",
      "description": "Sort order (asc or desc)."
    },
    "request_type": {
      "$ref": "#/components/schemas/cloudforce-one-requests_request-type"
    },
    "created_after": {
      "allOf": [
        {
          "$ref": "#/components/schemas/cloudforce-one-requests_time"
        }
      ],
      "example": "2022-01-01T00:00:00Z",
      "description": "Retrieve requests created after this time."
    },
    "created_before": {
      "allOf": [
        {
          "$ref": "#/components/schemas/cloudforce-one-requests_time"
        }
      ],
      "example": "2024-01-01T00:00:00Z",
      "description": "Retrieve requests created before this time."
    },
    "completed_after": {
      "allOf": [
        {
          "$ref": "#/components/schemas/cloudforce-one-requests_time"
        }
      ],
      "example": "2022-01-01T00:00:00Z",
      "description": "Retrieve requests completed after this time."
    },
    "completed_before": {
      "allOf": [
        {
          "$ref": "#/components/schemas/cloudforce-one-requests_time"
        }
      ],
      "example": "2024-01-01T00:00:00Z",
      "description": "Retrieve requests completed before this time."
    }
  }
}
object cloudforce-one-requests_request-list-item
{
  "type": "object",
  "title": "Request List Item",
  "required": [
    "id",
    "created",
    "updated",
    "priority",
    "request",
    "summary",
    "tlp"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/cloudforce-one-requests_uuid"
    },
    "tlp": {
      "$ref": "#/components/schemas/cloudforce-one-requests_tlp"
    },
    "status": {
      "$ref": "#/components/schemas/cloudforce-one-requests_request-status"
    },
    "tokens": {
      "type": "integer",
      "description": "Tokens for the request.",
      "x-auditable": true
    },
    "created": {
      "allOf": [
        {
          "$ref": "#/components/schemas/cloudforce-one-requests_time"
        }
      ],
      "example": "2022-04-01T00:00:00Z",
      "description": "Request creation time."
    },
    "request": {
      "$ref": "#/components/schemas/cloudforce-one-requests_request-type"
    },
    "summary": {
      "$ref": "#/components/schemas/cloudforce-one-requests_request-summary"
    },
    "updated": {
      "allOf": [
        {
          "$ref": "#/components/schemas/cloudforce-one-requests_time"
        }
      ],
      "example": "2022-04-01T00:00:00Z",
      "description": "Request last updated time."
    },
    "priority": {
      "$ref": "#/components/schemas/cloudforce-one-requests_priority"
    },
    "completed": {
      "allOf": [
        {
          "$ref": "#/components/schemas/cloudforce-one-requests_time"
        }
      ],
      "example": "2024-01-01T00:00:00Z",
      "description": "Request completion time."
    },
    "readable_id": {
      "$ref": "#/components/schemas/cloudforce-one-requests_request-readable-id"
    },
    "message_tokens": {
      "type": "integer",
      "example": 16,
      "description": "Tokens for the request messages.",
      "x-auditable": true
    }
  }
}
object cloudforce-one-requests_request-message-edit
{
  "type": "object",
  "title": "Request Message Editable Attributes",
  "properties": {
    "content": {
      "$ref": "#/components/schemas/cloudforce-one-requests_message-content"
    }
  }
}
object cloudforce-one-requests_request-message-item
{
  "type": "object",
  "title": "Request Message Item",
  "required": [
    "id",
    "updated",
    "content",
    "author",
    "is_follow_on_request"
  ],
  "properties": {
    "id": {
      "type": "integer",
      "description": "Message ID.",
      "x-auditable": true
    },
    "author": {
      "type": "string",
      "example": "user@domain.com",
      "description": "Author of message.",
      "x-auditable": true
    },
    "content": {
      "$ref": "#/components/schemas/cloudforce-one-requests_message-content"
    },
    "created": {
      "allOf": [
        {
          "$ref": "#/components/schemas/cloudforce-one-requests_time"
        }
      ],
      "example": "2022-01-01T00:00:00Z",
      "description": "Defines the message creation time."
    },
    "updated": {
      "allOf": [
        {
          "$ref": "#/components/schemas/cloudforce-one-requests_time"
        }
      ],
      "example": "2022-01-01T00:00:00Z",
      "description": "Defines the message last updated time."
    },
    "is_follow_on_request": {
      "type": "boolean",
      "description": "Whether the message is a follow-on request.",
      "x-auditable": true
    }
  }
}
object cloudforce-one-requests_request-message-list
{
  "type": "object",
  "title": "Request Message List Parameters",
  "required": [
    "page",
    "per_page"
  ],
  "properties": {
    "page": {
      "type": "integer",
      "description": "Page number of results."
    },
    "after": {
      "allOf": [
        {
          "$ref": "#/components/schemas/cloudforce-one-requests_time"
        }
      ],
      "example": "2022-01-01T00:00:Z",
      "description": "Retrieve mes  ges created after this time."
    },
    "before": {
      "allOf": [
        {
          "$ref": "#/components/schemas/cloudforce-one-requests_time"
        }
      ],
      "example": "2024-01-01T00:00:00Z",
      "description": "Retrieve messages created before this time."
    },
    "sort_by": {
      "type": "string",
      "example": "created",
      "description": "Field to sort results by."
    },
    "per_page": {
      "type": "integer",
      "example": 10,
      "description": "Number of results per page."
    },
    "sort_order": {
      "enum": [
        "asc",
        "desc"
      ],
      "type": "string",
      "description": "Sort order (asc or desc)."
    }
  }
}
string cloudforce-one-requests_request-readable-id
{
  "type": "string",
  "title": "Request Readable ID",
  "example": "RFI-2022-000001",
  "description": "Readable Request ID.",
  "x-auditable": true
}
string cloudforce-one-requests_request-status
{
  "enum": [
    "open",
    "accepted",
    "reported",
    "approved",
    "completed",
    "declined"
  ],
  "type": "string",
  "title": "Request Status",
  "description": "Request Status.",
  "x-auditable": true
}
string cloudforce-one-requests_request-summary
{
  "type": "string",
  "example": "DoS attack",
  "description": "Brief description of the request.",
  "x-auditable": true
}
string cloudforce-one-requests_request-type
{
  "type": "string",
  "example": "Victomology",
  "description": "Requested information from request.",
  "x-auditable": true
}
array cloudforce-one-requests_request-types
{
  "type": "array",
  "items": {
    "type": "string",
    "description": "Request Types.",
    "x-auditable": true
  },
  "title": "Request Types",
  "example": [
    "Indicators of Compromise",
    "Victomology"
  ]
}
string cloudforce-one-requests_time
{
  "type": "string",
  "format": "date-time",
  "example": "2022-04-01T05:20:00Z",
  "x-auditable": true
}
string cloudforce-one-requests_tlp
{
  "enum": [
    "clear",
    "amber",
    "amber-strict",
    "green",
    "red"
  ],
  "type": "string",
  "title": "TLP",
  "description": "The CISA defined Traffic Light Protocol (TLP).",
  "x-auditable": true
}
string cloudforce-one-requests_uuid
{
  "type": "string",
  "example": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
  "maxLength": 36,
  "description": "UUID."
}
object cloudforce-one-whois_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/cloudforce-one-whois_schemas-messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Returns a boolean for the success/failure of the API call."
    },
    "messages": {
      "$ref": "#/components/schemas/cloudforce-one-whois_schemas-messages"
    }
  }
}
object cloudforce-one-whois_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/cloudforce-one-whois_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Returns a boolean for the success/failure of the API call."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/cloudforce-one-whois_messages"
        }
      ],
      "example": []
    }
  }
}
object cloudforce-one-whois_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/cloudforce-one-whois_api-response-common"
    }
  ]
}
string cloudforce-one-whois_domain_name
{
  "type": "string",
  "example": "cloudflare.com"
}
string cloudforce-one-whois_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "readOnly": true,
  "maxLength": 32,
  "description": "Use to uniquely identify or reference the resource."
}
array cloudforce-one-whois_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "message": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
array cloudforce-one-whois_schemas-messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
object cloudforce-one-whois_schemas-single_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/cloudforce-one-whois_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "allOf": [
            {
              "$ref": "#/components/schemas/cloudforce-one-whois_whois"
            }
          ]
        }
      }
    }
  ]
}
object cloudforce-one-whois_whois
{
  "type": "object",
  "required": [
    "found",
    "domain",
    "dnssec",
    "extension",
    "nameservers",
    "punycode",
    "registrar",
    "registrant"
  ],
  "properties": {
    "id": {
      "type": "string",
      "example": "1542998887_DOMAIN_COM-VRSN"
    },
    "found": {
      "type": "boolean",
      "example": true
    },
    "dnssec": {
      "type": "boolean",
      "example": true
    },
    "domain": {
      "$ref": "#/components/schemas/cloudforce-one-whois_domain_name"
    },
    "status": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "clientdeleteprohibited",
        "clienttransferprohibited",
        "clientupdateprohibited",
        "serverdeleteprohibited",
        "servertransferprohibited",
        "serverupdateprohibited"
      ]
    },
    "punycode": {
      "type": "string",
      "example": "cloudflare.com"
    },
    "extension": {
      "type": "string",
      "example": "com"
    },
    "registrar": {
      "type": "string",
      "example": "Cloudflare, Inc."
    },
    "billing_id": {
      "type": "string"
    },
    "registrant": {
      "type": "string"
    },
    "billing_fax": {
      "type": "string"
    },
    "billing_org": {
      "type": "string"
    },
    "nameservers": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "ns3.cloudflare.com",
        "ns4.cloudflare.com",
        "ns5.cloudflare.com",
        "ns6.cloudflare.com",
        "ns7.cloudflare.com"
      ]
    },
    "billing_city": {
      "type": "string"
    },
    "billing_name": {
      "type": "string"
    },
    "created_date": {
      "type": "string",
      "format": "date-time",
      "example": "2009-02-17T22:07:54.000Z"
    },
    "registrar_id": {
      "type": "string"
    },
    "technical_id": {
      "type": "string"
    },
    "updated_date": {
      "type": "string",
      "format": "date-time",
      "example": "2024-01-09T16:45:28.000Z"
    },
    "whois_server": {
      "type": "string",
      "example": "whois.cloudflare.com"
    },
    "billing_email": {
      "type": "string"
    },
    "billing_phone": {
      "type": "string"
    },
    "registrant_id": {
      "type": "string"
    },
    "registrar_fax": {
      "type": "string"
    },
    "registrar_org": {
      "type": "string"
    },
    "technical_fax": {
      "type": "string"
    },
    "technical_org": {
      "type": "string"
    },
    "billing_street": {
      "type": "string"
    },
    "registrant_fax": {
      "type": "string"
    },
    "registrant_org": {
      "type": "string"
    },
    "registrar_city": {
      "type": "string"
    },
    "registrar_name": {
      "type": "string"
    },
    "technical_city": {
      "type": "string"
    },
    "technical_name": {
      "type": "string"
    },
    "billing_country": {
      "type": "string"
    },
    "billing_fax_ext": {
      "type": "string"
    },
    "expiration_date": {
      "type": "string",
      "format": "date-time",
      "example": "2033-02-17T22:07:54.000Z"
    },
    "registrant_city": {
      "type": "string"
    },
    "registrant_name": {
      "type": "string"
    },
    "registrar_email": {
      "type": "string"
    },
    "registrar_phone": {
      "type": "string"
    },
    "technical_email": {
      "type": "string"
    },
    "technical_phone": {
      "type": "string"
    },
    "billing_province": {
      "type": "string"
    },
    "created_date_raw": {
      "type": "string",
      "example": "2009-02-17T22:07:54Z"
    },
    "registrant_email": {
      "type": "string"
    },
    "registrant_phone": {
      "type": "string"
    },
    "registrar_street": {
      "type": "string"
    },
    "technical_street": {
      "type": "string"
    },
    "updated_date_raw": {
      "type": "string",
      "example": "2024-01-09T16:45:28Z"
    },
    "administrative_id": {
      "type": "string"
    },
    "billing_phone_ext": {
      "type": "string"
    },
    "registrant_street": {
      "type": "string"
    },
    "registrar_country": {
      "type": "string"
    },
    "registrar_fax_ext": {
      "type": "string"
    },
    "technical_country": {
      "type": "string"
    },
    "technical_fax_ext": {
      "type": "string"
    },
    "administrative_fax": {
      "type": "string"
    },
    "administrative_org": {
      "type": "string"
    },
    "registrant_country": {
      "type": "string"
    },
    "registrant_fax_ext": {
      "type": "string"
    },
    "registrar_province": {
      "type": "string"
    },
    "technical_province": {
      "type": "string"
    },
    "administrative_city": {
      "type": "string"
    },
    "administrative_name": {
      "type": "string"
    },
    "billing_postal_code": {
      "type": "string"
    },
    "expiration_date_raw": {
      "type": "string",
      "example": "2033-02-17T22:07:54Z"
    },
    "registrant_province": {
      "type": "string"
    },
    "registrar_phone_ext": {
      "type": "string"
    },
    "technical_phone_ext": {
      "type": "string"
    },
    "administrative_email": {
      "type": "string"
    },
    "administrative_phone": {
      "type": "string"
    },
    "billing_referral_url": {
      "type": "string"
    },
    "registrant_phone_ext": {
      "type": "string"
    },
    "administrative_street": {
      "type": "string"
    },
    "registrar_postal_code": {
      "type": "string"
    },
    "technical_postal_code": {
      "type": "string"
    },
    "administrative_country": {
      "type": "string"
    },
    "administrative_fax_ext": {
      "type": "string"
    },
    "registrant_postal_code": {
      "type": "string"
    },
    "registrar_referral_url": {
      "type": "string"
    },
    "technical_referral_url": {
      "type": "string"
    },
    "administrative_province": {
      "type": "string"
    },
    "registrant_referral_url": {
      "type": "string"
    },
    "administrative_phone_ext": {
      "type": "string"
    },
    "administrative_postal_code": {
      "type": "string"
    },
    "administrative_referral_url": {
      "type": "string"
    }
  }
}
object cloudforce-one_ApprovalPendingResponse
{
  "type": "object",
  "required": [
    "approval_id",
    "message"
  ],
  "properties": {
    "message": {
      "type": "string",
      "example": "Rule creation pending approval"
    },
    "approval_id": {
      "type": "number",
      "example": 1
    }
  }
}
object cloudforce-one_CreateRule
{
  "type": "object",
  "required": [
    "name",
    "namespaces",
    "content"
  ],
  "properties": {
    "name": {
      "type": "string",
      "example": "block-malicious-workers",
      "maxLength": 255,
      "minLength": 1,
      "x-auditable": true
    },
    "actions": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/cloudforce-one_RuleAction"
      }
    },
    "content": {
      "type": "string",
      "example": "rule example { condition: true }",
      "minLength": 1
    },
    "enabled": {
      "type": "boolean",
      "default": true,
      "example": true,
      "description": "Whether this rule is active for dice consumers."
    },
    "is_public": {
      "type": "boolean",
      "default": false,
      "example": false,
      "description": "Whether this rule is visible to other internal accounts.",
      "x-auditable": true
    },
    "namespaces": {
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 255,
        "minLength": 1
      },
      "example": [
        "yara/workers"
      ],
      "minItems": 1,
      "x-auditable": true
    },
    "description": {
      "type": "string",
      "example": "Detects malicious proxy workers",
      "maxLength": 1000,
      "description": "Human-readable description of the rule. Auto-extracted from YARA meta if present."
    }
  }
}
object cloudforce-one_DeleteAllResponse
{
  "type": "object",
  "required": [
    "deleted"
  ],
  "properties": {
    "deleted": {
      "type": "number",
      "example": 10
    }
  }
}
object cloudforce-one_ErrorResponse
{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "type": "string",
      "example": "Not found"
    }
  }
}
object cloudforce-one_Rule
{
  "type": "object",
  "required": [
    "id",
    "name",
    "description",
    "namespaces",
    "content",
    "is_public",
    "enabled",
    "created_at",
    "updated_at",
    "created_by",
    "updated_by"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid",
      "example": "550e8400-e29b-41d4-a716-446655440000",
      "x-auditable": true
    },
    "name": {
      "type": "string",
      "example": "block-malicious-workers",
      "x-auditable": true
    },
    "content": {
      "type": "string",
      "example": "rule example { condition: true }"
    },
    "enabled": {
      "type": "boolean",
      "example": true,
      "description": "Whether this rule is active for dice consumers."
    },
    "is_public": {
      "type": "boolean",
      "example": false,
      "description": "Whether this rule is visible to other internal accounts.",
      "x-auditable": true
    },
    "created_at": {
      "type": "number",
      "example": 1679529600000,
      "x-auditable": true
    },
    "created_by": {
      "type": "string",
      "example": "user@example.com",
      "x-auditable": true
    },
    "namespaces": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "yara/workers"
      ],
      "x-auditable": true
    },
    "updated_at": {
      "type": "number",
      "example": 1679529600000,
      "x-auditable": true
    },
    "updated_by": {
      "type": "string",
      "example": "user@example.com",
      "x-auditable": true
    },
    "description": {
      "type": "string",
      "example": "Detects malicious proxy workers"
    }
  }
}
object cloudforce-one_RuleAction
{
  "type": "object",
  "required": [
    "action_type",
    "action_config"
  ],
  "properties": {
    "enabled": {
      "type": "boolean",
      "default": true
    },
    "action_type": {
      "enum": [
        "alert_gchat",
        "webhook",
        "logging",
        "email",
        "pipeline",
        "remediation",
        "throttle",
        "delete"
      ],
      "type": "string",
      "example": "alert_gchat"
    },
    "action_config": {
      "type": "object",
      "description": "Action-specific configuration parameters.",
      "additionalProperties": {
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "number"
          },
          {
            "type": "boolean"
          },
          {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          }
        ]
      }
    }
  }
}
object cloudforce-one_RulesListResponse
{
  "type": "object",
  "required": [
    "rules",
    "total"
  ],
  "properties": {
    "rules": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/cloudforce-one_Rule"
      }
    },
    "total": {
      "type": "number",
      "example": 100
    }
  }
}
object cloudforce-one_StatsResponse
{
  "type": "object",
  "required": [
    "total_rules",
    "rules_by_namespace",
    "pending_approvals"
  ],
  "properties": {
    "total_rules": {
      "type": "number",
      "example": 42
    },
    "pending_approvals": {
      "type": "number",
      "example": 5
    },
    "rules_by_namespace": {
      "type": "object",
      "example": {
        "yara/workers": 30,
        "yara/dns_record": 12
      },
      "additionalProperties": {
        "type": "number"
      }
    }
  }
}
object cloudforce-one_SuccessResponse
{
  "type": "object",
  "required": [
    "success"
  ],
  "properties": {
    "success": {
      "type": "boolean",
      "example": true
    }
  }
}
object cloudforce-one_TreeNode
{
  "type": "object",
  "required": [
    "name",
    "path",
    "count",
    "children"
  ],
  "properties": {
    "name": {
      "type": "string",
      "example": "workers"
    },
    "path": {
      "type": "string",
      "example": "yara/workers"
    },
    "count": {
      "type": "number",
      "example": 15
    },
    "children": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/cloudforce-one_TreeNode"
      }
    }
  }
}
object cloudforce-one_TreeResponse
{
  "type": "object",
  "required": [
    "tree"
  ],
  "properties": {
    "tree": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/cloudforce-one_TreeNode"
      }
    }
  }
}
object cloudforce-one_UpdateRule
{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "example": "block-malicious-workers",
      "maxLength": 255,
      "minLength": 1,
      "x-auditable": true
    },
    "content": {
      "type": "string",
      "example": "rule example { condition: true }",
      "minLength": 1
    },
    "enabled": {
      "type": "boolean",
      "example": true,
      "description": "Whether this rule is active for dice consumers."
    },
    "is_public": {
      "type": "boolean",
      "example": false,
      "description": "Whether this rule is visible to other internal accounts.",
      "x-auditable": true
    },
    "namespaces": {
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 255,
        "minLength": 1
      },
      "example": [
        "yara/workers"
      ],
      "x-auditable": true
    },
    "description": {
      "type": "string",
      "example": "Detects malicious proxy workers",
      "maxLength": 1000,
      "description": "Human-readable description of the rule. Auto-extracted from YARA meta if present."
    }
  }
}
object cloudforce-one_ValidationResponse
{
  "type": "object",
  "required": [
    "valid"
  ],
  "properties": {
    "error": {
      "type": "string",
      "example": "Invalid YARA syntax"
    },
    "valid": {
      "type": "boolean",
      "example": true
    }
  }
}
object custom-indicator-feeds_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/custom-indicator-feeds_schemas-messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/custom-indicator-feeds_schemas-messages"
    }
  }
}
object custom-indicator-feeds_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/custom-indicator-feeds_api-response-common"
    }
  ]
}
object custom-indicator-feeds_api_response_common_failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/custom-indicator-feeds_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful"
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/custom-indicator-feeds_messages"
        }
      ],
      "example": []
    }
  }
}
object custom-indicator-feeds_create_feed
{
  "example": {
    "name": "example_feed_1",
    "description": "example feed description"
  },
  "properties": {
    "name": {
      "$ref": "#/components/schemas/custom-indicator-feeds_name"
    },
    "description": {
      "$ref": "#/components/schemas/custom-indicator-feeds_description"
    }
  }
}
object custom-indicator-feeds_create_feed_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/custom-indicator-feeds_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/custom-indicator-feeds_indicator_feed_item"
        }
      }
    }
  ]
}
string custom-indicator-feeds_description
{
  "type": "string",
  "description": "The description of the example test",
  "x-auditable": true
}
integer custom-indicator-feeds_feed_id
{
  "type": "integer",
  "example": 12,
  "description": "Indicator feed ID",
  "x-auditable": true
}
integer custom-indicator-feeds_id
{
  "type": "integer",
  "description": "The unique identifier for the indicator feed",
  "x-auditable": true
}
string custom-indicator-feeds_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "readOnly": true,
  "maxLength": 32,
  "description": "Identifier",
  "x-auditable": true
}
object custom-indicator-feeds_indicator_feed_item
{
  "example": {
    "id": 1,
    "name": "example_feed_1",
    "is_public": false,
    "created_on": "2023-05-12T12:21:56.777653Z",
    "description": "example feed description",
    "modified_on": "2023-06-18T03:13:34.123321Z",
    "is_attributable": false,
    "is_downloadable": false
  },
  "properties": {
    "id": {
      "$ref": "#/components/schemas/custom-indicator-feeds_id"
    },
    "name": {
      "$ref": "#/components/schemas/custom-indicator-feeds_name"
    },
    "is_public": {
      "$ref": "#/components/schemas/custom-indicator-feeds_is_public"
    },
    "created_on": {
      "type": "string",
      "format": "date-time",
      "description": "The date and time when the data entry was created",
      "x-auditable": true
    },
    "description": {
      "$ref": "#/components/schemas/custom-indicator-feeds_description"
    },
    "modified_on": {
      "type": "string",
      "format": "date-time",
      "description": "The date and time when the data entry was last modified",
      "x-auditable": true
    },
    "is_attributable": {
      "$ref": "#/components/schemas/custom-indicator-feeds_is_attributable"
    },
    "is_downloadable": {
      "$ref": "#/components/schemas/custom-indicator-feeds_is_downloadable"
    }
  }
}
object custom-indicator-feeds_indicator_feed_metadata
{
  "example": {
    "id": 1,
    "name": "example_feed_1",
    "is_public": false,
    "created_on": "2023-05-12T12:21:56.777653Z",
    "description": "example feed description",
    "modified_on": "2023-06-18T03:13:34.123321Z",
    "is_attributable": false,
    "is_downloadable": false,
    "latest_upload_status": "Complete"
  },
  "properties": {
    "id": {
      "$ref": "#/components/schemas/custom-indicator-feeds_id"
    },
    "name": {
      "$ref": "#/components/schemas/custom-indicator-feeds_name"
    },
    "is_public": {
      "$ref": "#/components/schemas/custom-indicator-feeds_is_public"
    },
    "created_on": {
      "type": "string",
      "format": "date-time",
      "description": "The date and time when the data entry was created",
      "x-auditable": true
    },
    "description": {
      "$ref": "#/components/schemas/custom-indicator-feeds_description"
    },
    "modified_on": {
      "type": "string",
      "format": "date-time",
      "description": "The date and time when the data entry was last modified",
      "x-auditable": true
    },
    "provider_id": {
      "$ref": "#/components/schemas/custom-indicator-feeds_provider_id"
    },
    "provider_name": {
      "$ref": "#/components/schemas/custom-indicator-feeds_provider_name"
    },
    "is_attributable": {
      "$ref": "#/components/schemas/custom-indicator-feeds_is_attributable"
    },
    "is_downloadable": {
      "$ref": "#/components/schemas/custom-indicator-feeds_is_downloadable"
    },
    "latest_upload_status": {
      "enum": [
        "Mirroring",
        "Unifying",
        "Loading",
        "Provisioning",
        "Complete",
        "Error"
      ],
      "type": "string",
      "description": "Status of the latest snapshot uploaded",
      "x-auditable": true
    }
  }
}
object custom-indicator-feeds_indicator_feed_metadata_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/custom-indicator-feeds_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/custom-indicator-feeds_indicator_feed_metadata"
        }
      }
    }
  ]
}
object custom-indicator-feeds_indicator_feed_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/custom-indicator-feeds_api-response-common"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/custom-indicator-feeds_indicator_feed_item"
          },
          "example": [
            {
              "id": 1,
              "name": "user_specified_name_1",
              "created_on": "2023-05-12T12:21:56.777653Z",
              "description": "user specified description 1",
              "modified_on": "2023-06-18T03:13:34.123321Z"
            },
            {
              "id": 2,
              "name": "user_specified_name_2",
              "created_on": "2023-05-21T21:43:52.867525Z",
              "description": "User specified description 2",
              "modified_on": "2023-06-28T18:46:18.764425Z"
            }
          ]
        }
      }
    }
  ]
}
object custom-indicator-feeds_indicator_feed_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/custom-indicator-feeds_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/custom-indicator-feeds_indicator_feed_item"
        }
      }
    }
  ]
}
boolean custom-indicator-feeds_is_attributable
{
  "type": "boolean",
  "description": "Whether the indicator feed can be attributed to a provider",
  "x-auditable": true
}
boolean custom-indicator-feeds_is_downloadable
{
  "type": "boolean",
  "description": "Whether the indicator feed can be downloaded",
  "x-auditable": true
}
boolean custom-indicator-feeds_is_public
{
  "type": "boolean",
  "description": "Whether the indicator feed is exposed to customers",
  "x-auditable": true
}
array custom-indicator-feeds_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "message": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string custom-indicator-feeds_name
{
  "type": "string",
  "description": "The name of the indicator feed",
  "x-auditable": true
}
object custom-indicator-feeds_permission_list_item
{
  "properties": {
    "id": {
      "$ref": "#/components/schemas/custom-indicator-feeds_id"
    },
    "name": {
      "$ref": "#/components/schemas/custom-indicator-feeds_name"
    },
    "is_public": {
      "$ref": "#/components/schemas/custom-indicator-feeds_is_public"
    },
    "description": {
      "$ref": "#/components/schemas/custom-indicator-feeds_description"
    },
    "is_attributable": {
      "$ref": "#/components/schemas/custom-indicator-feeds_is_attributable"
    },
    "is_downloadable": {
      "$ref": "#/components/schemas/custom-indicator-feeds_is_downloadable"
    }
  }
}
object custom-indicator-feeds_permission_list_item_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/custom-indicator-feeds_api-response-common"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/custom-indicator-feeds_permission_list_item"
          },
          "example": [
            {
              "id": 1,
              "name": "indicator_list_1",
              "is_public": false,
              "description": "An important indicator list",
              "is_attributable": false,
              "is_downloadable": false
            },
            {
              "id": 2,
              "name": "indicator_list_2",
              "is_public": true,
              "description": "An even more important indicator list",
              "is_attributable": true,
              "is_downloadable": false
            }
          ]
        }
      }
    }
  ]
}
object custom-indicator-feeds_permissions_request
{
  "properties": {
    "feed_id": {
      "type": "integer",
      "example": 1,
      "description": "The ID of the feed to add/remove permissions on",
      "x-auditable": true
    },
    "account_tag": {
      "type": "string",
      "example": "823f45f16fd2f7e21e1e054aga4d2859",
      "description": "The Cloudflare account tag of the account to change permissions on",
      "x-auditable": true
    }
  }
}
object custom-indicator-feeds_permissions_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/custom-indicator-feeds_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/custom-indicator-feeds_permissions_update"
        }
      }
    }
  ]
}
object custom-indicator-feeds_permissions_update
{
  "properties": {
    "success": {
      "type": "boolean",
      "description": "Whether the update succeeded or not",
      "x-auditable": true
    }
  }
}
string custom-indicator-feeds_provider_id
{
  "type": "string",
  "description": "The unique identifier for the provider",
  "x-auditable": true
}
string custom-indicator-feeds_provider_name
{
  "type": "string",
  "description": "The provider of the indicator feed",
  "x-auditable": true
}
array custom-indicator-feeds_schemas-messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
object custom-indicator-feeds_update_feed
{
  "properties": {
    "status": {
      "type": "string",
      "example": "unified",
      "description": "Current status of upload, should be unified",
      "x-auditable": true
    },
    "file_id": {
      "type": "integer",
      "example": 1,
      "description": "Feed id",
      "x-auditable": true
    },
    "filename": {
      "type": "string",
      "example": "snapshot_file.unified",
      "description": "Name of the file unified in our system",
      "x-auditable": true
    }
  }
}
object custom-indicator-feeds_update_feed_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/custom-indicator-feeds_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/custom-indicator-feeds_update_feed"
        }
      }
    }
  ]
}
object custom-indicator-feeds_update_public_field_request
{
  "properties": {
    "name": {
      "type": "string",
      "example": "indicator_list",
      "description": "The new name of the feed",
      "x-auditable": true
    },
    "is_public": {
      "type": "boolean",
      "example": true,
      "description": "The new is_public value of the feed",
      "x-auditable": true
    },
    "description": {
      "type": "string",
      "example": "This is an example description",
      "description": "The new description of the feed",
      "x-auditable": true
    },
    "is_attributable": {
      "type": "boolean",
      "example": true,
      "description": "The new is_attributable value of the feed",
      "x-auditable": true
    },
    "is_downloadable": {
      "type": "boolean",
      "example": true,
      "description": "The new is_downloadable value of the feed",
      "x-auditable": true
    }
  }
}
object custom-indicator-feeds_update_public_field_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/custom-indicator-feeds_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/custom-indicator-feeds_indicator_feed_item"
        }
      }
    }
  ]
}
object custom-pages_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/custom-pages_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result_info": {
          "type": "object",
          "properties": {
            "page": {
              "type": "number",
              "example": 1,
              "description": "Current page within paginated list of results."
            },
            "count": {
              "type": "number",
              "example": 1,
              "description": "Total number of results for the requested service."
            },
            "per_page": {
              "type": "number",
              "example": 20,
              "description": "Number of results per page of results."
            },
            "total_count": {
              "type": "number",
              "example": 2000,
              "description": "Total results available without any search parameters."
            },
            "total_pages": {
              "type": "number",
              "example": 100,
              "description": "The number of total pages in the entire result set."
            }
          }
        }
      }
    }
  ]
}
object custom-pages_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/custom-pages_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/custom-pages_messages"
    }
  }
}
object custom-pages_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/custom-pages_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/custom-pages_messages"
        }
      ],
      "example": []
    }
  }
}
object custom-pages_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/custom-pages_api-response-common"
    }
  ]
}
string custom-pages_asset_description
{
  "type": "string",
  "example": "Custom 500 error page",
  "description": "A short description of the custom asset."
}
string custom-pages_asset_name
{
  "type": "string",
  "example": "my_custom_error_page",
  "pattern": "^[A-Za-z0-9_]+$",
  "minLength": 1,
  "description": "The unique name of the custom asset. Can only contain letters (A-Z, a-z), numbers (0-9), and underscores (_).",
  "x-auditable": true
}
string custom-pages_asset_url
{
  "type": "string",
  "format": "uri",
  "example": "https://example.com/error.html",
  "description": "The URL where the asset content is fetched from."
}
object custom-pages_custom_asset
{
  "type": "object",
  "properties": {
    "url": {
      "$ref": "#/components/schemas/custom-pages_asset_url"
    },
    "name": {
      "$ref": "#/components/schemas/custom-pages_asset_name"
    },
    "size_bytes": {
      "type": "integer",
      "example": 1024,
      "readOnly": true,
      "description": "The size of the asset content in bytes."
    },
    "description": {
      "$ref": "#/components/schemas/custom-pages_asset_description"
    },
    "last_updated": {
      "$ref": "#/components/schemas/custom-pages_timestamp"
    }
  }
}
object custom-pages_custom_asset_result
{
  "allOf": [
    {
      "$ref": "#/components/schemas/custom-pages_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/custom-pages_custom_asset"
        }
      }
    }
  ]
}
object custom-pages_custom_asset_result_list
{
  "allOf": [
    {
      "$ref": "#/components/schemas/custom-pages_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/custom-pages_custom_asset"
          }
        }
      }
    }
  ]
}
object custom-pages_custom_page
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "example": "basic_challenge",
      "x-auditable": true
    },
    "url": {
      "$ref": "#/components/schemas/custom-pages_url"
    },
    "state": {
      "$ref": "#/components/schemas/custom-pages_state"
    },
    "created_on": {
      "$ref": "#/components/schemas/custom-pages_timestamp"
    },
    "description": {
      "type": "string",
      "example": "Basic Challenge",
      "x-auditable": true
    },
    "modified_on": {
      "$ref": "#/components/schemas/custom-pages_timestamp"
    },
    "preview_target": {
      "type": "string",
      "example": "block:basic-sec-captcha",
      "x-auditable": true
    },
    "required_tokens": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "::CAPTCHA_BOX::"
      ],
      "x-auditable": true
    }
  }
}
object custom-pages_custom_page_result
{
  "allOf": [
    {
      "$ref": "#/components/schemas/custom-pages_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/custom-pages_custom_page"
        }
      }
    }
  ]
}
object custom-pages_custom_page_result_list
{
  "allOf": [
    {
      "$ref": "#/components/schemas/custom-pages_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/custom-pages_custom_page"
          }
        }
      }
    }
  ]
}
string custom-pages_error_page_type
{
  "enum": [
    "1000_errors",
    "500_errors",
    "basic_challenge",
    "country_challenge",
    "ip_block",
    "managed_challenge",
    "ratelimit_block",
    "under_attack",
    "waf_block",
    "waf_challenge"
  ],
  "type": "string",
  "example": "ratelimit_block",
  "description": "Error Page Types",
  "x-auditable": true
}
string custom-pages_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Identifier.",
  "x-auditable": true
}
array custom-pages_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string custom-pages_state
{
  "enum": [
    "default",
    "customized"
  ],
  "type": "string",
  "example": "default",
  "description": "The custom page state.",
  "x-auditable": true
}
string custom-pages_timestamp
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-01T05:20:00.12345Z",
  "x-auditable": true
}
string custom-pages_url
{
  "type": "string",
  "format": "uri",
  "default": "",
  "example": "http://www.example.com",
  "description": "The URL associated with the custom page.",
  "x-auditable": true
}
string d1_account-identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "readOnly": true,
  "maxLength": 32,
  "description": "Account identifier tag.",
  "x-auditable": true
}
object d1_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/d1_messages"
    },
    "result": {
      "type": "object"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful"
    },
    "messages": {
      "$ref": "#/components/schemas/d1_messages"
    }
  }
}
object d1_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/d1_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful"
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/d1_messages"
        }
      ],
      "example": []
    }
  }
}
object d1_batch-query
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/d1_single-query"
    },
    {
      "type": "object",
      "title": "multiple queries",
      "required": [
        "batch"
      ],
      "properties": {
        "batch": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/d1_single-query"
          }
        }
      }
    }
  ],
  "description": "A single query object or a batch query object"
}
string d1_created-at
{
  "type": "string",
  "format": "date-time",
  "example": "2022-11-15T18:25:44.442097Z",
  "readOnly": true,
  "description": "Specifies the timestamp the resource was created as an ISO8601 string.",
  "x-auditable": true
}
object d1_database-details-response
{
  "type": "object",
  "properties": {
    "name": {
      "$ref": "#/components/schemas/d1_database-name"
    },
    "uuid": {
      "$ref": "#/components/schemas/d1_database-identifier"
    },
    "version": {
      "$ref": "#/components/schemas/d1_database-version"
    },
    "file_size": {
      "$ref": "#/components/schemas/d1_file-size"
    },
    "created_at": {
      "$ref": "#/components/schemas/d1_created-at"
    },
    "num_tables": {
      "$ref": "#/components/schemas/d1_table-count"
    },
    "jurisdiction": {
      "$ref": "#/components/schemas/d1_jurisdiction-nullable"
    },
    "read_replication": {
      "$ref": "#/components/schemas/d1_read-replication-details"
    }
  },
  "description": "The details of the D1 database."
}
string d1_database-identifier
{
  "type": "string",
  "example": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
  "readOnly": true,
  "description": "D1 database identifier (UUID).",
  "x-auditable": true
}
string d1_database-name
{
  "type": "string",
  "example": "my-database",
  "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_-]*$",
  "description": "D1 database name.",
  "x-auditable": true
}
object d1_database-response
{
  "type": "object",
  "properties": {
    "name": {
      "$ref": "#/components/schemas/d1_database-name"
    },
    "uuid": {
      "$ref": "#/components/schemas/d1_database-identifier"
    },
    "version": {
      "$ref": "#/components/schemas/d1_database-version"
    },
    "created_at": {
      "$ref": "#/components/schemas/d1_created-at"
    },
    "jurisdiction": {
      "$ref": "#/components/schemas/d1_jurisdiction-nullable"
    }
  }
}
object d1_database-update-partial-request-body
{
  "type": "object",
  "properties": {
    "read_replication": {
      "type": "object",
      "required": [
        "mode"
      ],
      "properties": {
        "mode": {
          "$ref": "#/components/schemas/d1_read-replication-mode"
        }
      },
      "description": "Configuration for D1 read replication."
    }
  }
}
object d1_database-update-request-body
{
  "type": "object",
  "required": [
    "read_replication"
  ],
  "properties": {
    "read_replication": {
      "type": "object",
      "required": [
        "mode"
      ],
      "properties": {
        "mode": {
          "$ref": "#/components/schemas/d1_read-replication-mode"
        }
      },
      "description": "Configuration for D1 read replication."
    }
  }
}
string d1_database-version
{
  "type": "string",
  "example": "production",
  "pattern": "^(alpha|beta|production)$",
  "x-auditable": true
}
number d1_file-size
{
  "type": "number",
  "example": 12,
  "description": "The D1 database's size, in bytes.",
  "x-auditable": true
}
string d1_jurisdiction
{
  "enum": [
    "eu",
    "fedramp"
  ],
  "type": "string",
  "example": "eu",
  "description": "Specify the location to restrict the D1 database to run and store data. If this option is present, the location hint is ignored.",
  "x-auditable": true
}
string d1_jurisdiction-nullable
{
  "enum": [
    "eu",
    "fedramp"
  ],
  "type": "string",
  "example": "eu",
  "nullable": true,
  "description": "Specify the location to restrict the D1 database to run and store data. If this option is present, the location hint is ignored.",
  "x-auditable": true
}
array d1_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "message": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
array d1_params
{
  "type": "array",
  "items": {
    "type": "string"
  },
  "example": [
    "firstParam",
    "secondParam"
  ]
}
string d1_primary-location-hint
{
  "enum": [
    "wnam",
    "enam",
    "weur",
    "eeur",
    "apac",
    "oc"
  ],
  "type": "string",
  "example": "wnam",
  "description": "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.",
  "x-auditable": true
}
object d1_query-meta
{
  "type": "object",
  "properties": {
    "changes": {
      "type": "number",
      "description": "Rough indication of how many rows were modified by the query, as provided by SQLite's `sqlite3_total_changes()`.",
      "x-auditable": true
    },
    "timings": {
      "type": "object",
      "properties": {
        "sql_duration_ms": {
          "type": "number",
          "description": "The duration of the SQL query execution inside the database. Does not include any network communication.",
          "x-auditable": true
        }
      },
      "description": "Various durations for the query."
    },
    "duration": {
      "type": "number",
      "description": "The duration of the SQL query execution inside the database. Does not include any network communication.",
      "x-auditable": true
    },
    "rows_read": {
      "type": "number",
      "description": "Number of rows read during the SQL query execution, including indices (not all rows are necessarily returned).",
      "x-auditable": true
    },
    "changed_db": {
      "type": "boolean",
      "description": "Denotes if the database has been altered in some way, like deleting rows.",
      "x-auditable": true
    },
    "size_after": {
      "type": "number",
      "description": "Size of the database after the query committed, in bytes.",
      "x-auditable": true
    },
    "last_row_id": {
      "type": "number",
      "description": "The row ID of the last inserted row in a table with an `INTEGER PRIMARY KEY` as provided by SQLite. Tables created with `WITHOUT ROWID` do not populate this.",
      "x-auditable": true
    },
    "rows_written": {
      "type": "number",
      "description": "Number of rows written during the SQL query execution, including indices.",
      "x-auditable": true
    },
    "served_by_colo": {
      "$ref": "#/components/schemas/d1_served-by-colo"
    },
    "served_by_region": {
      "$ref": "#/components/schemas/d1_served-by-region"
    },
    "served_by_primary": {
      "type": "boolean",
      "description": "Denotes if the query has been handled by the database primary instance.",
      "x-auditable": true
    }
  }
}
object d1_query-result-response
{
  "type": "object",
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/d1_query-meta"
    },
    "results": {
      "type": "array",
      "items": {
        "type": "object"
      }
    },
    "success": {
      "type": "boolean"
    }
  }
}
object d1_raw-result-response
{
  "type": "object",
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/d1_query-meta"
    },
    "results": {
      "type": "object",
      "properties": {
        "rows": {
          "type": "array",
          "items": {
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "type": "number"
                },
                {
                  "type": "string"
                },
                {
                  "type": "object"
                }
              ]
            }
          }
        },
        "columns": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      }
    },
    "success": {
      "type": "boolean"
    }
  }
}
object d1_read-replication-details
{
  "type": "object",
  "required": [
    "mode"
  ],
  "properties": {
    "mode": {
      "$ref": "#/components/schemas/d1_read-replication-mode"
    }
  },
  "description": "Configuration for D1 read replication."
}
string d1_read-replication-mode
{
  "enum": [
    "auto",
    "disabled"
  ],
  "type": "string",
  "example": "auto",
  "description": "The read replication mode for the database. Use 'auto' to create replicas and allow D1 automatically place them around the world, or 'disabled' to not use any database replicas (it can take a few hours for all replicas to be deleted).",
  "x-auditable": true
}
string d1_served-by-colo
{
  "type": "string",
  "example": "LHR",
  "description": "The three letters airport code of the colo that handled the query.",
  "x-auditable": true
}
string d1_served-by-region
{
  "enum": [
    "WNAM",
    "ENAM",
    "WEUR",
    "EEUR",
    "APAC",
    "OC"
  ],
  "type": "string",
  "example": "EEUR",
  "description": "Region location hint of the database instance that handled the query.",
  "x-auditable": true
}
object d1_single-query
{
  "type": "object",
  "title": "single query",
  "required": [
    "sql"
  ],
  "properties": {
    "sql": {
      "$ref": "#/components/schemas/d1_sql"
    },
    "params": {
      "$ref": "#/components/schemas/d1_params"
    }
  },
  "description": "A single query with or without parameters"
}
string d1_sql
{
  "type": "string",
  "example": "SELECT * FROM myTable WHERE field = ? OR field = ?;",
  "description": "Your SQL query. Supports multiple statements, joined by semicolons, which will be executed as a batch."
}
number d1_table-count
{
  "type": "number",
  "example": 12,
  "x-auditable": true
}
string d1_time-travel-bookmark
{
  "type": "string",
  "example": "00000001-00000002-00004e2f-0a83ea2fceebc654de0640c422be4653",
  "description": "A bookmark representing a specific state of the database at a specific point in time.",
  "x-auditable": true
}
object d1_time-travel-restore-response
{
  "type": "object",
  "properties": {
    "message": {
      "type": "string",
      "example": "Database restored successfully",
      "description": "A message describing the result of the restore operation.",
      "x-auditable": true
    },
    "bookmark": {
      "allOf": [
        {
          "$ref": "#/components/schemas/d1_time-travel-bookmark"
        },
        {
          "description": "The new bookmark representing the state of the database after the restore operation."
        }
      ]
    },
    "previous_bookmark": {
      "allOf": [
        {
          "$ref": "#/components/schemas/d1_time-travel-bookmark"
        },
        {
          "description": "The bookmark representing the state of the database before the restore operation. Can be used to undo the restore if needed."
        }
      ]
    }
  },
  "description": "Response from a time travel restore operation."
}
string d1_time-travel-timestamp
{
  "type": "string",
  "format": "date-time",
  "example": "2024-01-15T12:00:00Z",
  "description": "An ISO 8601 timestamp used for time travel operations. The database will be restored to the nearest available bookmark at or before this timestamp.",
  "x-auditable": true
}
string digital-experience-monitoring_account_identifier
{
  "type": "string",
  "example": "01a7362d577a6c3019a474fd6f485823",
  "readOnly": true,
  "maxLength": 32
}
object digital-experience-monitoring_aggregate_stat
{
  "type": "object",
  "required": [
    "timePeriod"
  ],
  "properties": {
    "avgMs": {
      "type": "integer",
      "nullable": true
    },
    "deltaPct": {
      "type": "number",
      "format": "float",
      "nullable": true
    },
    "timePeriod": {
      "$ref": "#/components/schemas/digital-experience-monitoring_aggregate_time_period"
    }
  }
}
object digital-experience-monitoring_aggregate_time_period
{
  "type": "object",
  "required": [
    "value",
    "units"
  ],
  "properties": {
    "units": {
      "enum": [
        "hours",
        "days",
        "testRuns"
      ],
      "type": "string"
    },
    "value": {
      "type": "integer"
    }
  }
}
object digital-experience-monitoring_aggregate_time_slot
{
  "type": "object",
  "required": [
    "timestamp",
    "avgMs"
  ],
  "properties": {
    "avgMs": {
      "type": "integer"
    },
    "timestamp": {
      "type": "string"
    }
  }
}
object digital-experience-monitoring_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/digital-experience-monitoring_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result_info": {
          "type": "object",
          "properties": {
            "page": {
              "type": "number",
              "example": 1,
              "description": "Current page within paginated list of results."
            },
            "count": {
              "type": "number",
              "example": 1,
              "description": "Total number of results for the requested service."
            },
            "per_page": {
              "type": "number",
              "example": 20,
              "description": "Number of results per page of results."
            },
            "total_count": {
              "type": "number",
              "example": 2000,
              "description": "Total results available without any search parameters."
            },
            "total_pages": {
              "type": "number",
              "example": 100,
              "description": "The number of total pages in the entire result set."
            }
          }
        }
      }
    }
  ]
}
object digital-experience-monitoring_api-response-collection-common
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/digital-experience-monitoring_api-response-common"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {},
          "nullable": true
        }
      }
    }
  ]
}
object digital-experience-monitoring_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/digital-experience-monitoring_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/digital-experience-monitoring_messages"
    }
  }
}
object digital-experience-monitoring_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/digital-experience-monitoring_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/digital-experience-monitoring_messages"
        }
      ],
      "example": []
    }
  }
}
object digital-experience-monitoring_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/digital-experience-monitoring_api-response-common"
    }
  ]
}
string digital-experience-monitoring_colo
{
  "type": "string",
  "example": "SJC",
  "description": "Cloudflare colo"
}
array digital-experience-monitoring_colos_response
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "airportCode",
      "countryCode",
      "city"
    ],
    "properties": {
      "city": {
        "type": "string",
        "example": "San Francisco",
        "description": "City"
      },
      "airportCode": {
        "type": "string",
        "example": "SFO",
        "description": "Airport code"
      },
      "countryCode": {
        "type": "string",
        "example": "US",
        "description": "Country code"
      }
    }
  },
  "description": "array of colos."
}
string digital-experience-monitoring_command_id
{
  "type": "string",
  "example": "5758fefe-ae7e-4538-a39b-1fef6abcb909",
  "description": "Unique identifier for a command"
}
object digital-experience-monitoring_commands_devices_response
{
  "type": "object",
  "properties": {
    "devices": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/digital-experience-monitoring_status"
          },
          "version": {
            "$ref": "#/components/schemas/digital-experience-monitoring_version"
          },
          "deviceId": {
            "type": "string",
            "description": "Device identifier (UUID v4)"
          },
          "eligible": {
            "type": "boolean",
            "description": "Whether the device is eligible for remote captures"
          },
          "platform": {
            "$ref": "#/components/schemas/digital-experience-monitoring_platform"
          },
          "timestamp": {
            "$ref": "#/components/schemas/digital-experience-monitoring_timestamp"
          },
          "deviceName": {
            "type": "string",
            "description": "Device identifier (human readable)"
          },
          "personEmail": {
            "type": "string",
            "description": "User contact email address"
          },
          "registrationId": {
            "type": "string",
            "description": "Device registration identifier (UUID v4). On multi-user devices, this uniquely identifies a user's registration on the device."
          },
          "ineligibleReason": {
            "type": "string",
            "description": "If the device is not eligible, the reason why."
          }
        }
      },
      "description": "List of eligible devices"
    }
  }
}
array digital-experience-monitoring_cpu_pct_by_app
{
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "name": {
        "type": "string"
      },
      "cpu_pct": {
        "type": "number",
        "format": "float"
      }
    }
  }
}
object digital-experience-monitoring_create_rule_body
{
  "type": "object",
  "required": [
    "name",
    "match"
  ],
  "properties": {
    "name": {
      "type": "string",
      "description": "The name of the Rule.",
      "x-auditable": true
    },
    "match": {
      "type": "string",
      "description": "The wirefilter expression to match."
    },
    "description": {
      "type": "string",
      "x-auditable": true
    }
  }
}
object digital-experience-monitoring_device
{
  "type": "object",
  "required": [
    "colo",
    "deviceId",
    "mode",
    "platform",
    "status",
    "timestamp",
    "version"
  ],
  "properties": {
    "colo": {
      "$ref": "#/components/schemas/digital-experience-monitoring_colo"
    },
    "mode": {
      "$ref": "#/components/schemas/digital-experience-monitoring_mode"
    },
    "metal": {
      "type": "string",
      "nullable": true
    },
    "cpuPct": {
      "type": "number",
      "format": "float",
      "nullable": true
    },
    "status": {
      "$ref": "#/components/schemas/digital-experience-monitoring_status"
    },
    "ispIpv4": {
      "$ref": "#/components/schemas/digital-experience-monitoring_ip_info"
    },
    "ispIpv6": {
      "$ref": "#/components/schemas/digital-experience-monitoring_ip_info"
    },
    "version": {
      "$ref": "#/components/schemas/digital-experience-monitoring_version"
    },
    "alwaysOn": {
      "type": "boolean",
      "nullable": true
    },
    "deviceId": {
      "type": "string",
      "description": "Device identifier (UUID v4)"
    },
    "platform": {
      "$ref": "#/components/schemas/digital-experience-monitoring_platform"
    },
    "timestamp": {
      "$ref": "#/components/schemas/digital-experience-monitoring_timestamp"
    },
    "batteryPct": {
      "type": "number",
      "format": "float",
      "nullable": true
    },
    "deviceIpv4": {
      "$ref": "#/components/schemas/digital-experience-monitoring_ip_info"
    },
    "deviceIpv6": {
      "$ref": "#/components/schemas/digital-experience-monitoring_ip_info"
    },
    "deviceName": {
      "type": "string",
      "description": "Device identifier (human readable)"
    },
    "ramUsedPct": {
      "type": "number",
      "format": "float",
      "nullable": true
    },
    "cpuPctByApp": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/digital-experience-monitoring_cpu_pct_by_app"
      },
      "nullable": true
    },
    "diskReadBps": {
      "type": "integer",
      "format": "int64",
      "nullable": true
    },
    "gatewayIpv4": {
      "$ref": "#/components/schemas/digital-experience-monitoring_ip_info"
    },
    "gatewayIpv6": {
      "$ref": "#/components/schemas/digital-experience-monitoring_ip_info"
    },
    "networkSsid": {
      "type": "string",
      "nullable": true
    },
    "personEmail": {
      "$ref": "#/components/schemas/digital-experience-monitoring_personEmail"
    },
    "diskUsagePct": {
      "type": "number",
      "format": "float",
      "nullable": true
    },
    "diskWriteBps": {
      "type": "integer",
      "format": "int64",
      "nullable": true
    },
    "dohSubdomain": {
      "type": "string",
      "nullable": true
    },
    "switchLocked": {
      "type": "boolean",
      "nullable": true
    },
    "batteryCycles": {
      "type": "integer",
      "format": "int64",
      "nullable": true
    },
    "connectionType": {
      "type": "string",
      "nullable": true
    },
    "networkRcvdBps": {
      "type": "integer",
      "format": "int64",
      "nullable": true
    },
    "networkSentBps": {
      "type": "integer",
      "format": "int64",
      "nullable": true
    },
    "ramAvailableKb": {
      "type": "integer",
      "format": "int64",
      "nullable": true
    },
    "registrationId": {
      "type": "string",
      "nullable": true,
      "description": "Device registration identifier (UUID v4). On multi-user devices, this uniquely identifies a user's registration on the device."
    },
    "batteryCharging": {
      "type": "boolean",
      "nullable": true
    },
    "firewallEnabled": {
      "type": "boolean",
      "nullable": true
    },
    "ramUsedPctByApp": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/digital-experience-monitoring_ram_used_pct_by_app"
      },
      "nullable": true
    },
    "wifiStrengthDbm": {
      "type": "integer",
      "format": "int64",
      "nullable": true
    },
    "estimatedLossPct": {
      "type": "number",
      "format": "float",
      "nullable": true
    },
    "handshakeLatencyMs": {
      "type": "number",
      "format": "int64",
      "nullable": true
    }
  }
}
object digital-experience-monitoring_device-dex-test-schemas-data
{
  "type": "object",
  "example": {
    "host": "https://dash.cloudflare.com",
    "kind": "http",
    "method": "GET"
  },
  "required": [
    "kind",
    "host"
  ],
  "properties": {
    "host": {
      "type": "string",
      "example": "https://dash.cloudflare.com",
      "description": "The desired endpoint to test.",
      "x-auditable": true
    },
    "kind": {
      "enum": [
        "http",
        "traceroute"
      ],
      "type": "string",
      "example": "http",
      "description": "The type of test.",
      "x-auditable": true
    },
    "method": {
      "enum": [
        "GET"
      ],
      "type": "string",
      "example": "GET",
      "description": "The HTTP request method type.",
      "x-auditable": true
    }
  },
  "description": "The configuration object which contains the details for the WARP client to conduct the test."
}
string digital-experience-monitoring_device-dex-test-schemas-description
{
  "type": "string",
  "example": "Checks the dash endpoint every 30 minutes",
  "description": "Additional details about the test."
}
boolean digital-experience-monitoring_device-dex-test-schemas-enabled
{
  "type": "boolean",
  "example": true,
  "description": "Determines whether or not the test is active."
}
object digital-experience-monitoring_device-dex-test-schemas-http
{
  "type": "object",
  "required": [
    "name",
    "interval",
    "enabled",
    "data"
  ],
  "properties": {
    "data": {
      "$ref": "#/components/schemas/digital-experience-monitoring_device-dex-test-schemas-data"
    },
    "name": {
      "$ref": "#/components/schemas/digital-experience-monitoring_device-dex-test-schemas-name"
    },
    "enabled": {
      "$ref": "#/components/schemas/digital-experience-monitoring_device-dex-test-schemas-enabled"
    },
    "test_id": {
      "$ref": "#/components/schemas/digital-experience-monitoring_schemas-test-id"
    },
    "interval": {
      "$ref": "#/components/schemas/digital-experience-monitoring_device-dex-test-schemas-interval"
    },
    "targeted": {
      "type": "boolean",
      "x-stainless-terraform-configurability": "computed"
    },
    "description": {
      "$ref": "#/components/schemas/digital-experience-monitoring_device-dex-test-schemas-description"
    },
    "target_policies": {
      "$ref": "#/components/schemas/digital-experience-monitoring_device-dex-test-target-policies"
    }
  }
}
string digital-experience-monitoring_device-dex-test-schemas-interval
{
  "type": "string",
  "example": "30m",
  "description": "How often the test will run."
}
string digital-experience-monitoring_device-dex-test-schemas-name
{
  "type": "string",
  "example": "HTTP dash health check",
  "description": "The name of the DEX test. Must be unique."
}
array digital-experience-monitoring_device-dex-test-target-policies
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/digital-experience-monitoring_dex_target_policy"
  },
  "description": "DEX rules targeted by this test"
}
string digital-experience-monitoring_device_id
{
  "type": "string",
  "example": "cb49c27f-7f97-49c5-b6f3-f7c01ead0fd7",
  "description": "Device-specific ID, given as UUID v4"
}
object digital-experience-monitoring_dex-delete-response-collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/digital-experience-monitoring_api-response-common"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "dex_tests": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/digital-experience-monitoring_device-dex-test-schemas-http"
              }
            }
          }
        }
      }
    }
  ]
}
object digital-experience-monitoring_dex-response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/digital-experience-monitoring_api-response-collection-common"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/digital-experience-monitoring_device-dex-test-schemas-http"
          }
        }
      }
    }
  ]
}
object digital-experience-monitoring_dex-rule
{
  "type": "object",
  "required": [
    "id",
    "name",
    "match",
    "created_at"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/digital-experience-monitoring_uuid"
    },
    "name": {
      "type": "string",
      "x-auditable": true
    },
    "match": {
      "type": "string"
    },
    "created_at": {
      "type": "string",
      "example": "2023-07-16 15:00:00+00",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed"
    },
    "updated_at": {
      "type": "string",
      "example": "2023-07-16 15:00:00+00",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed"
    },
    "description": {
      "type": "string"
    },
    "targeted_tests": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/digital-experience-monitoring_dex-targeted-test"
      },
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed"
    }
  }
}
object digital-experience-monitoring_dex-single_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/digital-experience-monitoring_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/digital-experience-monitoring_device-dex-test-schemas-http"
        }
      }
    }
  ]
}
object digital-experience-monitoring_dex-targeted-test
{
  "type": "object",
  "required": [
    "test_id",
    "name",
    "enabled",
    "data"
  ],
  "properties": {
    "data": {
      "$ref": "#/components/schemas/digital-experience-monitoring_device-dex-test-schemas-data"
    },
    "name": {
      "type": "string",
      "x-auditable": true
    },
    "enabled": {
      "type": "boolean",
      "x-auditable": true
    },
    "test_id": {
      "type": "string",
      "x-auditable": true
    }
  }
}
object digital-experience-monitoring_dex_target_policy
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/digital-experience-monitoring_uuid"
    },
    "name": {
      "type": "string",
      "description": "The name of the DEX rule",
      "x-stainless-terraform-configurability": "computed"
    },
    "default": {
      "type": "boolean",
      "description": "Whether the DEX rule is the account default",
      "x-stainless-terraform-configurability": "computed"
    }
  }
}
object digital-experience-monitoring_fleet_status_devices_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/digital-experience-monitoring_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/digital-experience-monitoring_device"
          }
        }
      }
    }
  ]
}
object digital-experience-monitoring_fleet_status_live_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/digital-experience-monitoring_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "deviceStats": {
              "type": "object",
              "properties": {
                "byColo": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/digital-experience-monitoring_live_stat"
                  },
                  "nullable": true
                },
                "byMode": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/digital-experience-monitoring_live_stat"
                  },
                  "nullable": true
                },
                "byStatus": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/digital-experience-monitoring_live_stat"
                  },
                  "nullable": true
                },
                "byVersion": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/digital-experience-monitoring_live_stat"
                  },
                  "nullable": true
                },
                "byPlatform": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/digital-experience-monitoring_live_stat"
                  },
                  "nullable": true
                },
                "uniqueDevicesTotal": {
                  "$ref": "#/components/schemas/digital-experience-monitoring_uniqueDevicesTotal"
                }
              }
            }
          }
        }
      }
    }
  ]
}
object digital-experience-monitoring_fleet_status_over_time_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/digital-experience-monitoring_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "deviceStats": {
              "type": "object",
              "properties": {
                "byMode": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/digital-experience-monitoring_schemas-aggregate_stat"
                  }
                },
                "byStatus": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/digital-experience-monitoring_schemas-aggregate_stat"
                  }
                },
                "uniqueDevicesTotal": {
                  "$ref": "#/components/schemas/digital-experience-monitoring_uniqueDevicesTotal"
                }
              }
            }
          }
        }
      }
    }
  ]
}
object digital-experience-monitoring_get_commands_quota_response
{
  "type": "object",
  "required": [
    "quota_usage",
    "quota",
    "reset_time"
  ],
  "properties": {
    "quota": {
      "type": "number",
      "description": "The remaining number of commands that can be initiated for an account"
    },
    "reset_time": {
      "type": "string",
      "format": "date-time",
      "description": "The time when the quota resets"
    },
    "quota_usage": {
      "type": "number",
      "description": "The number of commands that have been initiated for an account"
    }
  }
}
object digital-experience-monitoring_get_commands_response
{
  "type": "object",
  "properties": {
    "commands": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string"
          },
          "status": {
            "type": "string"
          },
          "filename": {
            "type": "string",
            "nullable": true
          },
          "device_id": {
            "type": "string"
          },
          "user_email": {
            "type": "string"
          },
          "created_date": {
            "type": "string",
            "format": "date-time"
          },
          "completed_date": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "registration_id": {
            "type": "string",
            "description": "Unique identifier for the device registration"
          }
        }
      }
    }
  }
}
object digital-experience-monitoring_http_details_percentiles_response
{
  "type": "object",
  "properties": {
    "dnsResponseTimeMs": {
      "$ref": "#/components/schemas/digital-experience-monitoring_percentiles"
    },
    "resourceFetchTimeMs": {
      "$ref": "#/components/schemas/digital-experience-monitoring_percentiles"
    },
    "serverResponseTimeMs": {
      "$ref": "#/components/schemas/digital-experience-monitoring_percentiles"
    }
  }
}
object digital-experience-monitoring_http_details_response
{
  "type": "object",
  "properties": {
    "host": {
      "type": "string",
      "example": "http://example.com",
      "description": "The url of the HTTP synthetic application test"
    },
    "kind": {
      "enum": [
        "http"
      ]
    },
    "name": {
      "type": "string",
      "example": "Atlassian Sign In Page",
      "description": "The name of the HTTP synthetic application test"
    },
    "method": {
      "type": "string",
      "example": "GET",
      "description": "The HTTP method to use when running the test"
    },
    "interval": {
      "type": "string",
      "example": "0h5m0s",
      "description": "The interval at which the HTTP synthetic application test is set to run."
    },
    "targeted": {
      "type": "boolean"
    },
    "httpStats": {
      "type": "object",
      "nullable": true,
      "required": [
        "uniqueDevicesTotal",
        "resourceFetchTimeMs",
        "serverResponseTimeMs",
        "dnsResponseTimeMs",
        "httpStatusCode",
        "availabilityPct"
      ],
      "properties": {
        "httpStatusCode": {
          "type": "array",
          "items": {
            "type": "object",
            "required": [
              "timestamp",
              "status200",
              "status300",
              "status400",
              "status500"
            ],
            "properties": {
              "status200": {
                "type": "integer"
              },
              "status300": {
                "type": "integer"
              },
              "status400": {
                "type": "integer"
              },
              "status500": {
                "type": "integer"
              },
              "timestamp": {
                "type": "string",
                "example": "2023-07-16 15:00:00+00"
              }
            }
          }
        },
        "availabilityPct": {
          "$ref": "#/components/schemas/digital-experience-monitoring_test_stat_pct_over_time"
        },
        "dnsResponseTimeMs": {
          "$ref": "#/components/schemas/digital-experience-monitoring_test_stat_over_time"
        },
        "uniqueDevicesTotal": {
          "type": "integer",
          "example": 57,
          "description": "Count of unique devices that have run this test in the given time period"
        },
        "resourceFetchTimeMs": {
          "$ref": "#/components/schemas/digital-experience-monitoring_test_stat_over_time"
        },
        "serverResponseTimeMs": {
          "$ref": "#/components/schemas/digital-experience-monitoring_test_stat_over_time"
        }
      }
    },
    "httpStatsByColo": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "colo",
          "uniqueDevicesTotal",
          "resourceFetchTimeMs",
          "serverResponseTimeMs",
          "dnsResponseTimeMs",
          "httpStatusCode",
          "availabilityPct"
        ],
        "properties": {
          "colo": {
            "type": "string",
            "example": "DFW"
          },
          "httpStatusCode": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "timestamp",
                "status200",
                "status300",
                "status400",
                "status500"
              ],
              "properties": {
                "status200": {
                  "type": "integer"
                },
                "status300": {
                  "type": "integer"
                },
                "status400": {
                  "type": "integer"
                },
                "status500": {
                  "type": "integer"
                },
                "timestamp": {
                  "type": "string",
                  "example": "2023-07-16 15:00:00+00"
                }
              }
            }
          },
          "availabilityPct": {
            "$ref": "#/components/schemas/digital-experience-monitoring_test_stat_pct_over_time"
          },
          "dnsResponseTimeMs": {
            "$ref": "#/components/schemas/digital-experience-monitoring_test_stat_over_time"
          },
          "uniqueDevicesTotal": {
            "type": "integer",
            "example": 57,
            "description": "Count of unique devices that have run this test in the given time period"
          },
          "resourceFetchTimeMs": {
            "$ref": "#/components/schemas/digital-experience-monitoring_test_stat_over_time"
          },
          "serverResponseTimeMs": {
            "$ref": "#/components/schemas/digital-experience-monitoring_test_stat_over_time"
          }
        }
      }
    },
    "target_policies": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "id",
          "name",
          "default"
        ],
        "properties": {
          "id": {
            "$ref": "#/components/schemas/digital-experience-monitoring_uuid"
          },
          "name": {
            "type": "string"
          },
          "default": {
            "type": "boolean",
            "description": "Whether the policy is the default for the account"
          }
        }
      },
      "nullable": true
    }
  }
}
object digital-experience-monitoring_ip_info
{
  "type": "object",
  "properties": {
    "asn": {
      "type": "integer",
      "nullable": true
    },
    "aso": {
      "type": "string",
      "nullable": true
    },
    "address": {
      "type": "string",
      "nullable": true
    },
    "netmask": {
      "type": "string",
      "nullable": true
    },
    "version": {
      "type": "string",
      "nullable": true
    },
    "location": {
      "type": "object",
      "properties": {
        "zip": {
          "type": "string",
          "nullable": true
        },
        "city": {
          "type": "string",
          "nullable": true
        },
        "state_iso": {
          "type": "string",
          "nullable": true
        },
        "country_iso": {
          "type": "string",
          "nullable": true
        }
      }
    }
  }
}
object digital-experience-monitoring_list_rules_response
{
  "type": "object",
  "properties": {
    "rules": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/digital-experience-monitoring_dex-rule"
      }
    }
  }
}
object digital-experience-monitoring_live_stat
{
  "type": "object",
  "properties": {
    "value": {
      "type": "string"
    },
    "uniqueDevicesTotal": {
      "$ref": "#/components/schemas/digital-experience-monitoring_uniqueDevicesTotal"
    }
  }
}
array digital-experience-monitoring_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string digital-experience-monitoring_mode
{
  "type": "string",
  "example": "proxy",
  "description": "The mode under which the WARP client is run"
}
number digital-experience-monitoring_page
{
  "type": "number",
  "default": 1,
  "example": 1,
  "minimum": 1,
  "description": "Page number of paginated results"
}
object digital-experience-monitoring_patch_rule_body
{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "description": "The name of the Rule.",
      "x-auditable": true
    },
    "match": {
      "type": "string",
      "description": "The wirefilter expression to match."
    },
    "description": {
      "type": "string",
      "x-auditable": true
    }
  }
}
number digital-experience-monitoring_per_page
{
  "type": "number",
  "example": 10,
  "maximum": 50,
  "minimum": 1,
  "description": "Number of items per page"
}
object digital-experience-monitoring_percentiles
{
  "type": "object",
  "properties": {
    "p50": {
      "type": "number",
      "nullable": true,
      "description": "p50 observed in the time period"
    },
    "p90": {
      "type": "number",
      "nullable": true,
      "description": "p90 observed in the time period"
    },
    "p95": {
      "type": "number",
      "nullable": true,
      "description": "p95 observed in the time period"
    },
    "p99": {
      "type": "number",
      "nullable": true,
      "description": "p99 observed in the time period"
    }
  }
}
string digital-experience-monitoring_personEmail
{
  "type": "string",
  "description": "User contact email address"
}
string digital-experience-monitoring_platform
{
  "type": "string",
  "example": "windows",
  "description": "Operating system"
}
object digital-experience-monitoring_post_commands_response
{
  "type": "object",
  "properties": {
    "commands": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier for the command"
          },
          "args": {
            "type": "object",
            "description": "Command arguments",
            "additionalProperties": {
              "type": "string",
              "description": "Command argument value as a string"
            }
          },
          "type": {
            "type": "string",
            "description": "Type of the command (e.g., \"pcap\" or \"warp-diag\")"
          },
          "status": {
            "enum": [
              "PENDING_EXEC",
              "PENDING_UPLOAD",
              "SUCCESS",
              "FAILED"
            ],
            "type": "string",
            "description": "Current status of the command"
          },
          "device_id": {
            "type": "string",
            "description": "Identifier for the device associated with the command"
          },
          "registration_id": {
            "type": "string",
            "description": "Unique identifier for the device registration"
          }
        }
      },
      "description": "List of created commands"
    }
  }
}
array digital-experience-monitoring_ram_used_pct_by_app
{
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "name": {
        "type": "string"
      },
      "ram_used_pct": {
        "type": "number",
        "format": "float"
      }
    }
  }
}
object digital-experience-monitoring_schemas-aggregate_stat
{
  "type": "object",
  "properties": {
    "value": {
      "type": "string"
    },
    "timestamp": {
      "$ref": "#/components/schemas/digital-experience-monitoring_timestamp"
    },
    "uniqueDevicesTotal": {
      "$ref": "#/components/schemas/digital-experience-monitoring_uniqueDevicesTotal"
    }
  }
}
string digital-experience-monitoring_schemas-test-id
{
  "type": "string",
  "example": "372e67954025e0ba6aaa6d586b9e0b59",
  "readOnly": true,
  "maxLength": 32,
  "description": "The unique identifier for the test."
}
number digital-experience-monitoring_since_minutes
{
  "type": "number",
  "default": 10,
  "example": 10,
  "maximum": 60,
  "minimum": 1,
  "description": "Number of minutes before current time"
}
string digital-experience-monitoring_sort_by
{
  "enum": [
    "colo",
    "device_id",
    "mode",
    "platform",
    "status",
    "timestamp",
    "version"
  ],
  "type": "string",
  "default": "timestamp",
  "description": "Dimension to sort results by"
}
string digital-experience-monitoring_source
{
  "enum": [
    "last_seen",
    "hourly",
    "raw"
  ],
  "type": "string",
  "default": "last_seen",
  "example": "last_seen",
  "description": "Specifies fleet status details source"
}
string digital-experience-monitoring_status
{
  "type": "string",
  "example": "connected",
  "description": "Network status"
}
object digital-experience-monitoring_test_stat_over_time
{
  "type": "object",
  "required": [
    "slots"
  ],
  "properties": {
    "avg": {
      "type": "integer",
      "nullable": true,
      "description": "average observed in the time period"
    },
    "max": {
      "type": "integer",
      "nullable": true,
      "description": "highest observed in the time period"
    },
    "min": {
      "type": "integer",
      "nullable": true,
      "description": "lowest observed in the time period"
    },
    "slots": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "timestamp",
          "value"
        ],
        "properties": {
          "value": {
            "type": "integer"
          },
          "timestamp": {
            "type": "string",
            "example": "2023-07-16 15:00:00+00"
          }
        }
      }
    }
  }
}
object digital-experience-monitoring_test_stat_pct_over_time
{
  "type": "object",
  "required": [
    "slots"
  ],
  "properties": {
    "avg": {
      "type": "number",
      "format": "float",
      "nullable": true,
      "description": "average observed in the time period"
    },
    "max": {
      "type": "number",
      "format": "float",
      "nullable": true,
      "description": "highest observed in the time period"
    },
    "min": {
      "type": "number",
      "format": "float",
      "nullable": true,
      "description": "lowest  observed in the time period"
    },
    "slots": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "timestamp",
          "value"
        ],
        "properties": {
          "value": {
            "type": "number",
            "format": "float"
          },
          "timestamp": {
            "type": "string",
            "example": "2023-07-16 15:00:00+00"
          }
        }
      }
    }
  }
}
object digital-experience-monitoring_tests_response
{
  "type": "object",
  "required": [
    "overviewMetrics",
    "tests"
  ],
  "properties": {
    "tests": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "id",
          "name",
          "kind",
          "interval",
          "enabled",
          "description",
          "updated",
          "created",
          "host"
        ],
        "properties": {
          "id": {
            "$ref": "#/components/schemas/digital-experience-monitoring_uuid"
          },
          "host": {
            "type": "string"
          },
          "kind": {
            "enum": [
              "http",
              "traceroute"
            ],
            "type": "string",
            "description": "test type, http or traceroute"
          },
          "name": {
            "type": "string",
            "description": "name given to this test"
          },
          "method": {
            "type": "string",
            "description": "for HTTP, the method to use when running the test"
          },
          "created": {
            "type": "string",
            "description": "date the test was created."
          },
          "enabled": {
            "type": "boolean",
            "description": "if true, then the test will run on targeted devices. Else, the test will not run."
          },
          "updated": {
            "type": "string"
          },
          "interval": {
            "type": "string",
            "description": "The interval at which the synthetic application test is set to run."
          },
          "targeted": {
            "type": "boolean"
          },
          "description": {
            "type": "string",
            "description": "the test description defined during configuration"
          },
          "httpResults": {
            "type": "object",
            "nullable": true,
            "required": [
              "resourceFetchTime"
            ],
            "properties": {
              "resourceFetchTime": {
                "$ref": "#/components/schemas/digital-experience-monitoring_timing_aggregates"
              }
            }
          },
          "target_policies": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "id",
                "name",
                "default"
              ],
              "properties": {
                "id": {
                  "$ref": "#/components/schemas/digital-experience-monitoring_uuid"
                },
                "name": {
                  "type": "string"
                },
                "default": {
                  "type": "boolean",
                  "description": "Whether the policy is the default for the account"
                }
              }
            },
            "nullable": true
          },
          "httpResultsByColo": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "colo",
                "resourceFetchTime"
              ],
              "properties": {
                "colo": {
                  "type": "string",
                  "example": "SJC",
                  "description": "Cloudflare colo"
                },
                "resourceFetchTime": {
                  "$ref": "#/components/schemas/digital-experience-monitoring_timing_aggregates"
                }
              }
            }
          },
          "tracerouteResults": {
            "type": "object",
            "nullable": true,
            "required": [
              "roundTripTime"
            ],
            "properties": {
              "roundTripTime": {
                "$ref": "#/components/schemas/digital-experience-monitoring_timing_aggregates"
              }
            }
          },
          "tracerouteResultsByColo": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "colo",
                "roundTripTime"
              ],
              "properties": {
                "colo": {
                  "type": "string",
                  "example": "SJC",
                  "description": "Cloudflare colo"
                },
                "roundTripTime": {
                  "$ref": "#/components/schemas/digital-experience-monitoring_timing_aggregates"
                }
              }
            }
          }
        }
      },
      "description": "array of test results objects."
    },
    "overviewMetrics": {
      "type": "object",
      "required": [
        "testsTotal"
      ],
      "properties": {
        "testsTotal": {
          "type": "integer",
          "description": "number of  tests."
        },
        "avgHttpAvailabilityPct": {
          "type": "number",
          "format": "float",
          "nullable": true,
          "description": "percentage availability for all HTTP test results in response"
        },
        "avgTracerouteAvailabilityPct": {
          "type": "number",
          "format": "float",
          "nullable": true,
          "description": "percentage availability for all traceroutes results in response"
        }
      }
    }
  }
}
string digital-experience-monitoring_time_now
{
  "type": "string",
  "example": "2023-10-11T00:00:00Z",
  "description": "Current time in ISO format"
}
string digital-experience-monitoring_timestamp
{
  "type": "string",
  "example": "2023-10-11T00:00:00Z",
  "description": "Timestamp in ISO format"
}
object digital-experience-monitoring_timing_aggregates
{
  "type": "object",
  "required": [
    "history"
  ],
  "properties": {
    "avgMs": {
      "type": "integer",
      "nullable": true
    },
    "history": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/digital-experience-monitoring_aggregate_stat"
      }
    },
    "overTime": {
      "type": "object",
      "nullable": true,
      "required": [
        "values",
        "timePeriod"
      ],
      "properties": {
        "values": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/digital-experience-monitoring_aggregate_time_slot"
          }
        },
        "timePeriod": {
          "$ref": "#/components/schemas/digital-experience-monitoring_aggregate_time_period"
        }
      }
    }
  }
}
object digital-experience-monitoring_traceroute_details_percentiles_response
{
  "type": "object",
  "properties": {
    "hopsCount": {
      "$ref": "#/components/schemas/digital-experience-monitoring_percentiles"
    },
    "packetLossPct": {
      "$ref": "#/components/schemas/digital-experience-monitoring_percentiles"
    },
    "roundTripTimeMs": {
      "$ref": "#/components/schemas/digital-experience-monitoring_percentiles"
    }
  }
}
object digital-experience-monitoring_traceroute_details_response
{
  "type": "object",
  "required": [
    "kind",
    "name",
    "host",
    "interval"
  ],
  "properties": {
    "host": {
      "type": "string",
      "example": "1.1.1.1",
      "description": "The host of the Traceroute synthetic application test"
    },
    "kind": {
      "enum": [
        "traceroute"
      ]
    },
    "name": {
      "type": "string",
      "example": "Atlassian Sign In Page",
      "description": "The name of the Traceroute synthetic application test"
    },
    "interval": {
      "type": "string",
      "example": "0h5m0s",
      "description": "The interval at which the Traceroute synthetic application test is set to run."
    },
    "targeted": {
      "type": "boolean"
    },
    "target_policies": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "id",
          "name",
          "default"
        ],
        "properties": {
          "id": {
            "$ref": "#/components/schemas/digital-experience-monitoring_uuid"
          },
          "name": {
            "type": "string"
          },
          "default": {
            "type": "boolean",
            "description": "Whether the policy is the default for the account"
          }
        }
      },
      "nullable": true
    },
    "tracerouteStats": {
      "type": "object",
      "nullable": true,
      "required": [
        "uniqueDevicesTotal",
        "roundTripTimeMs",
        "hopsCount",
        "packetLossPct",
        "availabilityPct"
      ],
      "properties": {
        "hopsCount": {
          "$ref": "#/components/schemas/digital-experience-monitoring_test_stat_over_time"
        },
        "packetLossPct": {
          "$ref": "#/components/schemas/digital-experience-monitoring_test_stat_pct_over_time"
        },
        "availabilityPct": {
          "$ref": "#/components/schemas/digital-experience-monitoring_test_stat_pct_over_time"
        },
        "roundTripTimeMs": {
          "$ref": "#/components/schemas/digital-experience-monitoring_test_stat_over_time"
        },
        "uniqueDevicesTotal": {
          "type": "integer",
          "example": 57,
          "description": "Count of unique devices that have run this test in the given time period"
        }
      }
    },
    "tracerouteStatsByColo": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "colo",
          "uniqueDevicesTotal",
          "roundTripTimeMs",
          "hopsCount",
          "packetLossPct",
          "availabilityPct"
        ],
        "properties": {
          "colo": {
            "type": "string",
            "example": "DFW"
          },
          "hopsCount": {
            "$ref": "#/components/schemas/digital-experience-monitoring_test_stat_over_time"
          },
          "packetLossPct": {
            "$ref": "#/components/schemas/digital-experience-monitoring_test_stat_pct_over_time"
          },
          "availabilityPct": {
            "$ref": "#/components/schemas/digital-experience-monitoring_test_stat_pct_over_time"
          },
          "roundTripTimeMs": {
            "$ref": "#/components/schemas/digital-experience-monitoring_test_stat_over_time"
          },
          "uniqueDevicesTotal": {
            "type": "integer",
            "example": 57,
            "description": "Count of unique devices that have run this test in the given time period"
          }
        }
      }
    }
  }
}
object digital-experience-monitoring_traceroute_test_network_path_response
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/digital-experience-monitoring_uuid"
    },
    "url": {
      "type": "string",
      "example": "1.1.1.1",
      "description": "The host of the Traceroute synthetic application test"
    },
    "kind": {
      "enum": [
        "traceroute"
      ]
    },
    "name": {
      "type": "string"
    },
    "interval": {
      "type": "string",
      "example": "0h5m0s",
      "description": "The interval at which the Traceroute synthetic application test is set to run."
    },
    "deviceName": {
      "type": "string"
    },
    "networkPath": {
      "type": "object",
      "nullable": true,
      "required": [
        "slots"
      ],
      "properties": {
        "slots": {
          "type": "array",
          "items": {
            "type": "object",
            "required": [
              "id",
              "timestamp",
              "clientToAppRttMs",
              "clientToCfIngressRttMs",
              "clientToCfEgressRttMs"
            ],
            "properties": {
              "id": {
                "$ref": "#/components/schemas/digital-experience-monitoring_uuid"
              },
              "timestamp": {
                "type": "string",
                "example": "2023-07-16 15:00:00+00"
              },
              "clientToAppRttMs": {
                "type": "integer",
                "nullable": true,
                "description": "Round trip time in ms of the client to app mile"
              },
              "clientToIspRttMs": {
                "type": "integer",
                "nullable": true,
                "description": "Round trip time in ms of the client to ISP mile"
              },
              "clientToCfEgressRttMs": {
                "type": "integer",
                "nullable": true,
                "description": "Round trip time in ms of the client to Cloudflare egress mile"
              },
              "clientToCfIngressRttMs": {
                "type": "integer",
                "nullable": true,
                "description": "Round trip time in ms of the client to Cloudflare ingress mile"
              }
            }
          }
        },
        "sampling": {
          "type": "object",
          "nullable": true,
          "required": [
            "value",
            "unit"
          ],
          "properties": {
            "unit": {
              "enum": [
                "hours"
              ]
            },
            "value": {
              "type": "integer"
            }
          },
          "description": "Specifies the sampling applied, if any, to the slots response. When sampled, results shown represent the first test run to the start of each sampling interval."
        }
      }
    }
  }
}
object digital-experience-monitoring_traceroute_test_result_network_path_response
{
  "type": "object",
  "required": [
    "resultId",
    "hops"
  ],
  "properties": {
    "hops": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "ttl"
        ],
        "properties": {
          "asn": {
            "type": "integer",
            "nullable": true
          },
          "aso": {
            "type": "string",
            "nullable": true
          },
          "ttl": {
            "type": "integer"
          },
          "mile": {
            "enum": [
              "client-to-app",
              "client-to-cf-egress",
              "client-to-cf-ingress",
              "client-to-isp"
            ],
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "rttMs": {
            "type": "integer",
            "nullable": true
          },
          "location": {
            "type": "object",
            "nullable": true,
            "properties": {
              "zip": {
                "type": "string",
                "nullable": true
              },
              "city": {
                "type": "string",
                "nullable": true
              },
              "state": {
                "type": "string",
                "nullable": true
              }
            }
          },
          "ipAddress": {
            "type": "string",
            "nullable": true
          },
          "packetLossPct": {
            "type": "number",
            "format": "float",
            "nullable": true
          }
        }
      },
      "description": "an array of the hops taken by the device to reach the end destination"
    },
    "testId": {
      "$ref": "#/components/schemas/digital-experience-monitoring_uuid"
    },
    "resultId": {
      "$ref": "#/components/schemas/digital-experience-monitoring_uuid"
    },
    "testName": {
      "type": "string",
      "description": "name of the tracroute test"
    },
    "deviceName": {
      "type": "string",
      "description": "name of the device associated with this network path response"
    }
  }
}
number digital-experience-monitoring_uniqueDevicesTotal
{
  "type": "number",
  "description": "Number of unique devices"
}
object digital-experience-monitoring_unique_devices_response
{
  "type": "object",
  "required": [
    "uniqueDevicesTotal"
  ],
  "properties": {
    "uniqueDevicesTotal": {
      "type": "integer",
      "description": "total number of unique devices"
    }
  }
}
string digital-experience-monitoring_uuid
{
  "type": "string",
  "example": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
  "maxLength": 36,
  "description": "API Resource UUID tag."
}
string digital-experience-monitoring_version
{
  "type": "string",
  "example": "1.0.0",
  "description": "WARP client version"
}
object digital-experience-monitoring_warp_config_change_event
{
  "type": "object",
  "properties": {
    "to": {
      "$ref": "#/components/schemas/digital-experience-monitoring_warp_config_details"
    },
    "from": {
      "$ref": "#/components/schemas/digital-experience-monitoring_warp_config_details"
    },
    "hostname": {
      "type": "string",
      "description": "The hostname of the machine the event is from"
    },
    "device_id": {
      "$ref": "#/components/schemas/digital-experience-monitoring_uuid"
    },
    "timestamp": {
      "$ref": "#/components/schemas/digital-experience-monitoring_timestamp"
    },
    "user_email": {
      "type": "string",
      "description": "Email tied to the device"
    },
    "serial_number": {
      "type": "string",
      "description": "The serial number of the machine the event is from"
    },
    "registration_id": {
      "$ref": "#/components/schemas/digital-experience-monitoring_uuid"
    },
    "device_registration": {
      "$ref": "#/components/schemas/digital-experience-monitoring_uuid"
    }
  }
}
object digital-experience-monitoring_warp_config_details
{
  "type": "object",
  "properties": {
    "account_tag": {
      "$ref": "#/components/schemas/digital-experience-monitoring_uuid"
    },
    "config_name": {
      "type": "string",
      "description": "The name of the WARP configuration."
    },
    "account_name": {
      "type": "string",
      "description": "The account name."
    }
  }
}
array digital-experience-monitoring_warp_events_response
{
  "type": "array",
  "items": {
    "oneOf": [
      {
        "$ref": "#/components/schemas/digital-experience-monitoring_warp_toggle_change_event"
      },
      {
        "$ref": "#/components/schemas/digital-experience-monitoring_warp_config_change_event"
      }
    ]
  }
}
object digital-experience-monitoring_warp_toggle_change_event
{
  "type": "object",
  "properties": {
    "toggle": {
      "enum": [
        "on",
        "off"
      ],
      "type": "string",
      "description": "The state of the WARP toggle."
    },
    "hostname": {
      "type": "string",
      "description": "The hostname of the machine the event is from"
    },
    "device_id": {
      "$ref": "#/components/schemas/digital-experience-monitoring_uuid"
    },
    "timestamp": {
      "$ref": "#/components/schemas/digital-experience-monitoring_timestamp"
    },
    "user_email": {
      "type": "string",
      "description": "Email tied to the device"
    },
    "account_tag": {
      "type": "string",
      "description": "The public account identifier."
    },
    "account_name": {
      "type": "string",
      "description": "The account name."
    },
    "serial_number": {
      "type": "string",
      "description": "The serial number of the machine the event is from"
    },
    "registration_id": {
      "$ref": "#/components/schemas/digital-experience-monitoring_uuid"
    },
    "device_registration": {
      "$ref": "#/components/schemas/digital-experience-monitoring_uuid"
    }
  }
}
object dlp_AddinAccountMapping
{
  "type": "object",
  "required": [
    "auth_requirements",
    "addin_identifier_token"
  ],
  "properties": {
    "auth_requirements": {
      "$ref": "#/components/schemas/dlp_AddinAuth"
    },
    "addin_identifier_token": {
      "type": "string",
      "format": "uuid"
    }
  }
}
object dlp_AddinAuth
{
  "oneOf": [
    {
      "type": "object",
      "required": [
        "allowed_microsoft_organizations",
        "type"
      ],
      "properties": {
        "type": {
          "enum": [
            "Org"
          ],
          "type": "string"
        },
        "allowed_microsoft_organizations": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      }
    },
    {
      "type": "object",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "enum": [
            "NoAuth"
          ],
          "type": "string"
        }
      }
    }
  ]
}
object dlp_Behavior
{
  "type": "object",
  "required": [
    "name",
    "description",
    "risk_level",
    "enabled"
  ],
  "properties": {
    "name": {
      "type": "string"
    },
    "enabled": {
      "type": "boolean"
    },
    "risk_level": {
      "$ref": "#/components/schemas/dlp_RiskLevel"
    },
    "description": {
      "type": "string"
    }
  }
}
object dlp_Behaviors
{
  "type": "object",
  "required": [
    "behaviors"
  ],
  "properties": {
    "behaviors": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/dlp_Behavior"
      }
    }
  }
}
string dlp_Confidence
{
  "enum": [
    "low",
    "medium",
    "high",
    "very_high"
  ],
  "type": "string"
}
object dlp_ContextAwareness
{
  "type": "object",
  "required": [
    "enabled",
    "skip"
  ],
  "deprecated": true,
  "properties": {
    "skip": {
      "$ref": "#/components/schemas/dlp_SkipConfig"
    },
    "enabled": {
      "type": "boolean",
      "description": "If true, scan the context of predefined entries to only return matches surrounded by keywords."
    }
  },
  "description": "Scan the context of predefined entries to only return matches surrounded by keywords."
}
object dlp_CreateEmailRule
{
  "type": "object",
  "required": [
    "name",
    "enabled",
    "conditions",
    "action"
  ],
  "properties": {
    "name": {
      "type": "string"
    },
    "action": {
      "$ref": "#/components/schemas/dlp_EmailRuleAction"
    },
    "enabled": {
      "type": "boolean"
    },
    "conditions": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/dlp_EmailRuleCondition"
      },
      "description": "Triggered if all conditions match."
    },
    "description": {
      "type": "string",
      "nullable": true
    }
  }
}
object dlp_CreateIntegrationBody
{
  "type": "object",
  "required": [
    "integration_type",
    "tenant_url"
  ],
  "properties": {
    "tenant_url": {
      "type": "string",
      "format": "uri",
      "description": "The base url of the tenant, e.g. \"https://tenant.okta.com\"."
    },
    "reference_id": {
      "type": "string",
      "nullable": true,
      "description": "A reference id that can be supplied by the client. Currently this should be set to the Access-Okta IDP ID (a UUIDv4).\nhttps://developers.cloudflare.com/api/operations/access-identity-providers-get-an-access-identity-provider"
    },
    "integration_type": {
      "$ref": "#/components/schemas/dlp_RiskScoreIntegrationType"
    }
  }
}
object dlp_CustomEntry
{
  "type": "object",
  "required": [
    "id",
    "name",
    "created_at",
    "updated_at",
    "pattern",
    "enabled"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid"
    },
    "name": {
      "type": "string"
    },
    "enabled": {
      "type": "boolean",
      "deprecated": true
    },
    "pattern": {
      "$ref": "#/components/schemas/dlp_Pattern"
    },
    "created_at": {
      "type": "string",
      "format": "date-time"
    },
    "profile_id": {
      "type": "string",
      "format": "uuid",
      "nullable": true,
      "deprecated": true
    },
    "updated_at": {
      "type": "string",
      "format": "date-time"
    },
    "description": {
      "type": "string",
      "nullable": true
    }
  }
}
object dlp_CustomEntryUpdate
{
  "allOf": [
    {
      "$ref": "#/components/schemas/dlp_CustomEntryUpdateType"
    },
    {
      "type": "object",
      "required": [
        "enabled"
      ],
      "properties": {
        "enabled": {
          "type": "boolean"
        }
      }
    }
  ]
}
object dlp_CustomEntryUpdateType
{
  "type": "object",
  "required": [
    "name",
    "pattern"
  ],
  "properties": {
    "name": {
      "type": "string"
    },
    "pattern": {
      "$ref": "#/components/schemas/dlp_Pattern"
    },
    "description": {
      "type": "string",
      "nullable": true
    }
  }
}
object dlp_CustomProfile
{
  "type": "object",
  "required": [
    "id",
    "name",
    "created_at",
    "updated_at",
    "allowed_match_count",
    "ocr_enabled"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid",
      "description": "The id of the profile (uuid)."
    },
    "name": {
      "type": "string",
      "description": "The name of the profile.",
      "x-auditable": true
    },
    "entries": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/dlp_Entry"
      },
      "deprecated": true,
      "x-stainless-skip": [
        "terraform"
      ]
    },
    "data_tags": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "uuid"
      },
      "description": "Data tags associated with this profile."
    },
    "created_at": {
      "type": "string",
      "format": "date-time",
      "description": "When the profile was created."
    },
    "updated_at": {
      "type": "string",
      "format": "date-time",
      "description": "When the profile was lasted updated."
    },
    "description": {
      "type": "string",
      "nullable": true,
      "description": "The description of the profile."
    },
    "ocr_enabled": {
      "type": "boolean",
      "default": false
    },
    "data_classes": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "uuid"
      },
      "description": "Data classes associated with this profile."
    },
    "shared_entries": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/dlp_Entry"
      },
      "x-stainless-terraform-configurability": "computed"
    },
    "context_awareness": {
      "$ref": "#/components/schemas/dlp_ContextAwareness"
    },
    "ai_context_enabled": {
      "type": "boolean",
      "default": false
    },
    "sensitivity_levels": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/dlp_SensitivityLevelRef"
      },
      "description": "Sensitivity levels associated with this profile."
    },
    "allowed_match_count": {
      "type": "integer",
      "format": "int32",
      "default": 0,
      "example": 5,
      "maximum": 1000,
      "minimum": 0,
      "description": "Related DLP policies will trigger when the match count exceeds the number set."
    },
    "confidence_threshold": {
      "allOf": [
        {
          "$ref": "#/components/schemas/dlp_Confidence"
        }
      ],
      "default": "low"
    }
  }
}
array dlp_CustomProfileArray
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/dlp_CustomProfile"
  }
}
object dlp_CustomProfileUpdate
{
  "type": "object",
  "required": [
    "name"
  ],
  "properties": {
    "name": {
      "type": "string"
    },
    "entries": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/dlp_ProfileEntryUpdate"
      },
      "nullable": true,
      "deprecated": true,
      "description": "Custom entries from this profile.\nIf this field is omitted, entries owned by this profile will not be changed."
    },
    "data_tags": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "uuid"
      },
      "nullable": true,
      "description": "Data tag IDs to associate with the profile. If omitted, existing associations are unchanged."
    },
    "description": {
      "type": "string",
      "nullable": true,
      "description": "The description of the profile."
    },
    "ocr_enabled": {
      "type": "boolean",
      "default": false
    },
    "data_classes": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "uuid"
      },
      "nullable": true,
      "description": "Data class IDs to associate with the profile. If omitted, existing associations are unchanged."
    },
    "shared_entries": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/dlp_SharedEntryUpdate"
      },
      "description": "Other entries, e.g. predefined or integration."
    },
    "context_awareness": {
      "$ref": "#/components/schemas/dlp_ContextAwareness"
    },
    "ai_context_enabled": {
      "type": "boolean",
      "default": false
    },
    "sensitivity_levels": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/dlp_SensitivityLevelRef"
      },
      "nullable": true,
      "description": "Sensitivity levels to associate with the profile. If omitted, existing associations are unchanged."
    },
    "allowed_match_count": {
      "type": "integer",
      "format": "int32",
      "nullable": true
    },
    "confidence_threshold": {
      "type": "string",
      "default": "low",
      "nullable": true
    }
  }
}
object dlp_Dataset
{
  "type": "object",
  "required": [
    "name",
    "id",
    "status",
    "num_cells",
    "created_at",
    "updated_at",
    "uploads",
    "secret",
    "encoding_version",
    "columns"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid"
    },
    "name": {
      "type": "string"
    },
    "secret": {
      "type": "boolean"
    },
    "status": {
      "$ref": "#/components/schemas/dlp_DatasetUploadStatus"
    },
    "columns": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/dlp_DatasetColumn"
      }
    },
    "uploads": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/dlp_DatasetUpload"
      }
    },
    "num_cells": {
      "type": "integer",
      "format": "int64"
    },
    "created_at": {
      "type": "string",
      "format": "date-time"
    },
    "updated_at": {
      "type": "string",
      "format": "date-time",
      "description": "Stores when the dataset was last updated.\n\nThis includes name or description changes as well as uploads."
    },
    "description": {
      "type": "string",
      "nullable": true,
      "description": "The description of the dataset."
    },
    "case_sensitive": {
      "type": "boolean"
    },
    "encoding_version": {
      "type": "integer",
      "format": "int32",
      "minimum": 0
    }
  }
}
array dlp_DatasetArray
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/dlp_Dataset"
  }
}
object dlp_DatasetColumn
{
  "type": "object",
  "required": [
    "entry_id",
    "upload_status",
    "header_name",
    "num_cells"
  ],
  "properties": {
    "entry_id": {
      "type": "string",
      "format": "uuid"
    },
    "num_cells": {
      "type": "integer",
      "format": "int64"
    },
    "header_name": {
      "type": "string"
    },
    "upload_status": {
      "$ref": "#/components/schemas/dlp_DatasetUploadStatus"
    }
  }
}
array dlp_DatasetColumnArray
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/dlp_DatasetColumn"
  }
}
object dlp_DatasetCreation
{
  "type": "object",
  "required": [
    "version",
    "max_cells",
    "dataset",
    "encoding_version"
  ],
  "properties": {
    "secret": {
      "type": "string",
      "format": "password",
      "description": "The secret to use for Exact Data Match datasets.\n\nThis is not present in Custom Wordlists."
    },
    "dataset": {
      "$ref": "#/components/schemas/dlp_Dataset"
    },
    "version": {
      "type": "integer",
      "format": "int64",
      "description": "The version to use when uploading the dataset."
    },
    "max_cells": {
      "type": "integer",
      "format": "int64",
      "minimum": 0
    },
    "encoding_version": {
      "type": "integer",
      "format": "int32",
      "minimum": 0,
      "description": "Encoding version to use for dataset."
    }
  }
}
object dlp_DatasetNewVersion
{
  "type": "object",
  "required": [
    "version",
    "max_cells",
    "encoding_version"
  ],
  "properties": {
    "secret": {
      "type": "string",
      "format": "password"
    },
    "columns": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/dlp_DatasetColumn"
      }
    },
    "version": {
      "type": "integer",
      "format": "int64"
    },
    "max_cells": {
      "type": "integer",
      "format": "int64",
      "minimum": 0
    },
    "case_sensitive": {
      "type": "boolean"
    },
    "encoding_version": {
      "type": "integer",
      "format": "int32",
      "minimum": 0
    }
  }
}
object dlp_DatasetUpdate
{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "nullable": true,
      "description": "The name of the dataset, must be unique."
    },
    "description": {
      "type": "string",
      "nullable": true,
      "description": "The description of the dataset."
    },
    "case_sensitive": {
      "type": "boolean",
      "description": "Determines if the words should be matched in a case-sensitive manner.\n\nOnly required for custom word lists."
    }
  }
}
object dlp_DatasetUpload
{
  "type": "object",
  "required": [
    "version",
    "status",
    "num_cells"
  ],
  "properties": {
    "status": {
      "$ref": "#/components/schemas/dlp_DatasetUploadStatus"
    },
    "version": {
      "type": "integer",
      "format": "int64"
    },
    "num_cells": {
      "type": "integer",
      "format": "int64"
    }
  }
}
string dlp_DatasetUploadStatus
{
  "enum": [
    "empty",
    "uploading",
    "pending",
    "processing",
    "failed",
    "complete"
  ],
  "type": "string"
}
object dlp_DlpSettings
{
  "type": "object",
  "required": [
    "payload_logging",
    "ai_context_analysis",
    "ocr"
  ],
  "properties": {
    "ocr": {
      "type": "boolean",
      "description": "Whether OCR is enabled at the account level."
    },
    "payload_logging": {
      "$ref": "#/components/schemas/dlp_PayloadLogSetting"
    },
    "ai_context_analysis": {
      "type": "boolean",
      "description": "Whether AI context analysis is enabled at the account level."
    }
  },
  "description": "DLP account-level settings response."
}
object dlp_DlpSettingsUpdate
{
  "type": "object",
  "properties": {
    "ocr": {
      "type": "boolean",
      "default": false,
      "nullable": true,
      "description": "Whether OCR is enabled at the account level.",
      "x-stainless-terraform-configurability": "computed_optional"
    },
    "payload_logging": {
      "allOf": [
        {
          "$ref": "#/components/schemas/dlp_PayloadLogSettingUpdate"
        }
      ],
      "x-stainless-terraform-configurability": "computed_optional"
    },
    "ai_context_analysis": {
      "type": "boolean",
      "default": false,
      "nullable": true,
      "description": "Whether AI context analysis is enabled at the account level.",
      "x-stainless-terraform-configurability": "computed_optional"
    }
  },
  "description": "Request model for updating DLP account-level settings.\nAll fields are optional. Missing fields behave differently for PUT vs PATCH:\n- PUT: missing fields reset to initial (unconfigured) values.\n- PATCH: missing fields keep existing values."
}
object dlp_DocumentFingerprint
{
  "type": "object",
  "required": [
    "id",
    "entry_id",
    "name",
    "description",
    "match_percent",
    "status",
    "created_at",
    "updated_at"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid"
    },
    "name": {
      "type": "string"
    },
    "status": {
      "$ref": "#/components/schemas/dlp_DatasetUploadStatus"
    },
    "version": {
      "type": "integer",
      "format": "int64",
      "nullable": true
    },
    "entry_id": {
      "type": "string",
      "format": "uuid"
    },
    "file_name": {
      "type": "string",
      "nullable": true
    },
    "created_at": {
      "type": "string",
      "format": "date-time"
    },
    "updated_at": {
      "type": "string",
      "format": "date-time"
    },
    "description": {
      "type": "string",
      "default": ""
    },
    "match_percent": {
      "type": "integer",
      "format": "int32"
    }
  }
}
array dlp_DocumentFingerprintArray
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/dlp_DocumentFingerprint"
  }
}
object dlp_DocumentFingerprintEntry
{
  "type": "object",
  "required": [
    "id",
    "name",
    "created_at",
    "updated_at",
    "enabled"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid"
    },
    "name": {
      "type": "string"
    },
    "enabled": {
      "type": "boolean"
    },
    "created_at": {
      "type": "string",
      "format": "date-time"
    },
    "updated_at": {
      "type": "string",
      "format": "date-time"
    }
  }
}
object dlp_DocumentFingerprintUpload
{
  "type": "object",
  "required": [
    "id",
    "entry_id",
    "name",
    "description",
    "match_percent",
    "version",
    "file_name",
    "status",
    "created_at",
    "updated_at"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid"
    },
    "name": {
      "type": "string"
    },
    "status": {
      "$ref": "#/components/schemas/dlp_DatasetUploadStatus"
    },
    "version": {
      "type": "integer",
      "format": "int64"
    },
    "entry_id": {
      "type": "string",
      "format": "uuid"
    },
    "file_name": {
      "type": "string"
    },
    "created_at": {
      "type": "string",
      "format": "date-time"
    },
    "updated_at": {
      "type": "string",
      "format": "date-time"
    },
    "description": {
      "type": "string"
    },
    "match_percent": {
      "type": "integer",
      "format": "int32"
    }
  }
}
object dlp_EmailRule
{
  "type": "object",
  "required": [
    "rule_id",
    "name",
    "priority",
    "enabled",
    "conditions",
    "action",
    "created_at",
    "updated_at"
  ],
  "properties": {
    "name": {
      "type": "string"
    },
    "action": {
      "$ref": "#/components/schemas/dlp_EmailRuleAction"
    },
    "enabled": {
      "type": "boolean"
    },
    "rule_id": {
      "type": "string",
      "format": "uuid"
    },
    "priority": {
      "type": "integer",
      "format": "int32",
      "minimum": 0
    },
    "conditions": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/dlp_EmailRuleCondition"
      },
      "description": "Triggered if all conditions match."
    },
    "created_at": {
      "type": "string",
      "format": "date-time"
    },
    "updated_at": {
      "type": "string",
      "format": "date-time"
    },
    "description": {
      "type": "string",
      "nullable": true
    }
  }
}
object dlp_EmailRuleAction
{
  "oneOf": [
    {
      "type": "object",
      "required": [
        "action"
      ],
      "properties": {
        "action": {
          "enum": [
            "Block"
          ],
          "type": "string"
        },
        "message": {
          "type": "string",
          "nullable": true
        }
      }
    }
  ]
}
array dlp_EmailRuleArray
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/dlp_EmailRule"
  }
}
object dlp_EmailRuleCondition
{
  "type": "object",
  "required": [
    "selector",
    "operator",
    "value"
  ],
  "properties": {
    "value": {
      "$ref": "#/components/schemas/dlp_EmailRuleValue"
    },
    "operator": {
      "$ref": "#/components/schemas/dlp_EmailRuleOperator"
    },
    "selector": {
      "$ref": "#/components/schemas/dlp_EmailRuleSelector"
    }
  }
}
string dlp_EmailRuleOperator
{
  "enum": [
    "InList",
    "NotInList",
    "MatchRegex",
    "NotMatchRegex"
  ],
  "type": "string"
}
string dlp_EmailRuleSelector
{
  "enum": [
    "Recipients",
    "Sender",
    "DLPProfiles"
  ],
  "type": "string"
}
object dlp_EmailRuleValue
{
  "oneOf": [
    {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    {
      "type": "string"
    }
  ]
}
object dlp_Empty
{
  "type": "object",
  "nullable": true
}
object dlp_Entry
{
  "oneOf": [
    {
      "allOf": [
        {
          "$ref": "#/components/schemas/dlp_CustomEntry"
        },
        {
          "type": "object",
          "required": [
            "type"
          ],
          "properties": {
            "type": {
              "enum": [
                "custom"
              ],
              "type": "string"
            }
          }
        }
      ],
      "title": "Custom Entry"
    },
    {
      "allOf": [
        {
          "$ref": "#/components/schemas/dlp_PredefinedEntry"
        },
        {
          "type": "object",
          "required": [
            "type"
          ],
          "properties": {
            "type": {
              "enum": [
                "predefined"
              ],
              "type": "string"
            }
          }
        }
      ],
      "title": "Predefined Entry"
    },
    {
      "allOf": [
        {
          "$ref": "#/components/schemas/dlp_IntegrationEntry"
        },
        {
          "type": "object",
          "required": [
            "type"
          ],
          "properties": {
            "type": {
              "enum": [
                "integration"
              ],
              "type": "string"
            }
          }
        }
      ],
      "title": "Integration Entry"
    },
    {
      "allOf": [
        {
          "$ref": "#/components/schemas/dlp_ExactDataEntry"
        },
        {
          "type": "object",
          "required": [
            "type"
          ],
          "properties": {
            "type": {
              "enum": [
                "exact_data"
              ],
              "type": "string"
            }
          }
        }
      ],
      "title": "Exact Data Entry"
    },
    {
      "allOf": [
        {
          "$ref": "#/components/schemas/dlp_DocumentFingerprintEntry"
        },
        {
          "type": "object",
          "required": [
            "type"
          ],
          "properties": {
            "type": {
              "enum": [
                "document_fingerprint"
              ],
              "type": "string"
            }
          }
        }
      ],
      "title": "Document Fingerprint Entry"
    },
    {
      "allOf": [
        {
          "$ref": "#/components/schemas/dlp_WordListEntry"
        },
        {
          "type": "object",
          "required": [
            "type"
          ],
          "properties": {
            "type": {
              "enum": [
                "word_list"
              ],
              "type": "string"
            }
          }
        }
      ],
      "title": "Word List Entry"
    }
  ]
}
object dlp_EntryConfidence
{
  "type": "object",
  "required": [
    "available",
    "ai_context_available"
  ],
  "properties": {
    "available": {
      "type": "boolean",
      "description": "Indicates whether this entry has any form of validation that is not an AI remote service."
    },
    "ai_context_available": {
      "type": "boolean",
      "description": "Indicates whether this entry has AI remote service validation."
    }
  }
}
object dlp_EntryOfNewProfile
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/dlp_NewCustomEntry"
    },
    {
      "$ref": "#/components/schemas/dlp_NewWordListEntry"
    }
  ]
}
object dlp_EntryProfile
{
  "type": "object",
  "required": [
    "id",
    "name"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid"
    },
    "name": {
      "type": "string"
    }
  },
  "description": "Computed entry field for a profile that an entry is shared into."
}
object dlp_EntryUpdate
{
  "allOf": [
    {
      "$ref": "#/components/schemas/dlp_EntryUpdateType"
    },
    {
      "type": "object",
      "required": [
        "enabled"
      ],
      "properties": {
        "enabled": {
          "type": "boolean"
        }
      }
    }
  ]
}
object dlp_EntryUpdateType
{
  "oneOf": [
    {
      "allOf": [
        {
          "$ref": "#/components/schemas/dlp_CustomEntryUpdateType"
        },
        {
          "type": "object",
          "required": [
            "type"
          ],
          "properties": {
            "type": {
              "enum": [
                "custom"
              ],
              "type": "string"
            }
          }
        }
      ]
    },
    {
      "type": "object",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "enum": [
            "predefined"
          ],
          "type": "string"
        }
      }
    },
    {
      "type": "object",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "enum": [
            "integration"
          ],
          "type": "string"
        }
      }
    }
  ]
}
object dlp_EntryWithSharedProfiles
{
  "allOf": [
    {
      "$ref": "#/components/schemas/dlp_EntryWithUploadStatus"
    },
    {
      "type": "object",
      "required": [
        "profiles"
      ],
      "properties": {
        "profiles": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/dlp_EntryProfile"
          },
          "x-stainless-terraform-configurability": "computed_optional"
        }
      }
    }
  ]
}
object dlp_EntryWithUploadStatus
{
  "allOf": [
    {
      "$ref": "#/components/schemas/dlp_Entry"
    },
    {
      "type": "object",
      "properties": {
        "upload_status": {
          "allOf": [
            {
              "$ref": "#/components/schemas/dlp_DatasetUploadStatus"
            }
          ],
          "x-stainless-terraform-configurability": "computed_optional"
        }
      }
    }
  ]
}
object dlp_ExactDataEntry
{
  "type": "object",
  "required": [
    "id",
    "name",
    "created_at",
    "updated_at",
    "enabled",
    "secret",
    "case_sensitive"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid"
    },
    "name": {
      "type": "string"
    },
    "secret": {
      "type": "boolean"
    },
    "enabled": {
      "type": "boolean"
    },
    "created_at": {
      "type": "string",
      "format": "date-time"
    },
    "updated_at": {
      "type": "string",
      "format": "date-time"
    },
    "case_sensitive": {
      "type": "boolean",
      "description": "Only applies to custom word lists.\nDetermines if the words should be matched in a case-sensitive manner\nCannot be set to false if secret is true"
    }
  }
}
object dlp_IntegrationEntry
{
  "type": "object",
  "required": [
    "id",
    "name",
    "created_at",
    "updated_at",
    "enabled"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid"
    },
    "name": {
      "type": "string"
    },
    "enabled": {
      "type": "boolean"
    },
    "created_at": {
      "type": "string",
      "format": "date-time"
    },
    "profile_id": {
      "type": "string",
      "format": "uuid",
      "nullable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    },
    "updated_at": {
      "type": "string",
      "format": "date-time"
    }
  }
}
object dlp_IntegrationProfile
{
  "type": "object",
  "required": [
    "id",
    "name",
    "entries",
    "shared_entries",
    "created_at",
    "updated_at"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid"
    },
    "name": {
      "type": "string"
    },
    "entries": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/dlp_Entry"
      },
      "deprecated": true
    },
    "created_at": {
      "type": "string",
      "format": "date-time"
    },
    "updated_at": {
      "type": "string",
      "format": "date-time"
    },
    "description": {
      "type": "string",
      "nullable": true,
      "description": "The description of the profile."
    },
    "shared_entries": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/dlp_Entry"
      },
      "x-stainless-terraform-configurability": "computed"
    }
  }
}
object dlp_Limits
{
  "type": "object",
  "required": [
    "max_custom_regex_entries",
    "used_custom_regex_entries",
    "max_dataset_cells",
    "used_dataset_cells",
    "max_document_fingerprints",
    "used_document_fingerprints"
  ],
  "properties": {
    "max_dataset_cells": {
      "type": "integer",
      "format": "int64",
      "minimum": 0,
      "description": "Maximum number of dataset cells allowed for the account, across all EDM and CWL datasets."
    },
    "used_dataset_cells": {
      "type": "integer",
      "format": "int64",
      "minimum": 0,
      "description": "Number of dataset cells currently configured for the account, across all EDM and CWL datasets. Document fingerprints do not count towards this limit."
    },
    "max_custom_regex_entries": {
      "type": "integer",
      "format": "int64",
      "minimum": 0,
      "description": "Maximum number of custom regex entries allowed for the account."
    },
    "max_document_fingerprints": {
      "type": "integer",
      "format": "int64",
      "minimum": 0,
      "description": "Maximum number of document fingerprints allowed for the account."
    },
    "used_custom_regex_entries": {
      "type": "integer",
      "format": "int64",
      "minimum": 0,
      "description": "Number of custom regex entries currently configured for the account."
    },
    "used_document_fingerprints": {
      "type": "integer",
      "format": "int64",
      "minimum": 0,
      "description": "Number of document fingerprints currently configured for the account."
    }
  }
}
object dlp_NewCustomEntry
{
  "type": "object",
  "required": [
    "name",
    "pattern",
    "enabled"
  ],
  "properties": {
    "name": {
      "type": "string"
    },
    "enabled": {
      "type": "boolean"
    },
    "pattern": {
      "$ref": "#/components/schemas/dlp_Pattern"
    },
    "description": {
      "type": "string",
      "nullable": true
    }
  }
}
object dlp_NewCustomEntryWithId
{
  "allOf": [
    {
      "$ref": "#/components/schemas/dlp_NewCustomEntry"
    },
    {
      "type": "object",
      "required": [
        "entry_id"
      ],
      "properties": {
        "entry_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  ]
}
object dlp_NewCustomProfile
{
  "type": "object",
  "required": [
    "name"
  ],
  "properties": {
    "name": {
      "type": "string"
    },
    "entries": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/dlp_EntryOfNewProfile"
      },
      "x-stainless-skip": [
        "terraform"
      ]
    },
    "data_tags": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "uuid"
      },
      "description": "Data tag IDs to associate with the profile."
    },
    "description": {
      "type": "string",
      "nullable": true,
      "description": "The description of the profile."
    },
    "ocr_enabled": {
      "type": "boolean",
      "default": false
    },
    "data_classes": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "uuid"
      },
      "description": "Data class IDs to associate with the profile."
    },
    "shared_entries": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/dlp_NewSharedEntry"
      },
      "description": "Entries from other profiles (e.g. pre-defined Cloudflare profiles, or your Microsoft Information Protection profiles)."
    },
    "context_awareness": {
      "$ref": "#/components/schemas/dlp_ContextAwareness"
    },
    "ai_context_enabled": {
      "type": "boolean",
      "default": false
    },
    "sensitivity_levels": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/dlp_SensitivityLevelRef"
      },
      "description": "Sensitivity levels to associate with the profile."
    },
    "allowed_match_count": {
      "type": "integer",
      "format": "int32",
      "default": 0,
      "example": 5,
      "maximum": 1000,
      "minimum": 0,
      "description": "Related DLP policies will trigger when the match count exceeds the number set."
    },
    "confidence_threshold": {
      "type": "string",
      "default": "low",
      "nullable": true
    }
  }
}
object dlp_NewDataset
{
  "type": "object",
  "required": [
    "name"
  ],
  "properties": {
    "name": {
      "type": "string"
    },
    "secret": {
      "type": "boolean",
      "description": "Generate a secret dataset.\n\nIf true, the response will include a secret to use with the EDM encoder.\nIf false, the response has no secret and the dataset is uploaded in plaintext."
    },
    "description": {
      "type": "string",
      "nullable": true,
      "description": "The description of the dataset."
    },
    "case_sensitive": {
      "type": "boolean",
      "description": "Only applies to custom word lists.\nDetermines if the words should be matched in a case-sensitive manner\nCannot be set to false if `secret` is true or undefined"
    },
    "encoding_version": {
      "type": "integer",
      "format": "int32",
      "minimum": 0,
      "description": "Dataset encoding version\n\nNon-secret custom word lists with no header are always version 1.\nSecret EDM lists with no header are version 1.\nMulticolumn CSV with headers are version 2.\nOmitting this field provides the default value 0, which is interpreted\nthe same as 1."
    }
  }
}
object dlp_NewDatasetColumn
{
  "allOf": [
    {
      "oneOf": [
        {
          "type": "object",
          "title": "Existing Column",
          "required": [
            "entry_id"
          ],
          "properties": {
            "entry_id": {
              "type": "string",
              "format": "uuid"
            }
          }
        },
        {
          "type": "object",
          "title": "New Column",
          "required": [
            "entry_name"
          ],
          "properties": {
            "entry_name": {
              "type": "string"
            }
          }
        }
      ]
    },
    {
      "type": "object",
      "required": [
        "header_name",
        "num_cells"
      ],
      "properties": {
        "num_cells": {
          "type": "integer",
          "format": "int64",
          "minimum": 0
        },
        "header_name": {
          "type": "string"
        }
      }
    }
  ]
}
object dlp_NewDocumentFingerprint
{
  "type": "object",
  "required": [
    "name",
    "match_percent"
  ],
  "properties": {
    "name": {
      "type": "string"
    },
    "description": {
      "type": "string",
      "default": ""
    },
    "match_percent": {
      "type": "integer",
      "format": "int32"
    }
  }
}
object dlp_NewEntry
{
  "type": "object",
  "required": [
    "name",
    "pattern",
    "enabled"
  ],
  "properties": {
    "name": {
      "type": "string"
    },
    "enabled": {
      "type": "boolean"
    },
    "pattern": {
      "$ref": "#/components/schemas/dlp_Pattern"
    },
    "profile_id": {
      "type": "string",
      "format": "uuid"
    },
    "description": {
      "type": "string",
      "nullable": true
    }
  }
}
object dlp_NewPredefinedEntry
{
  "type": "object",
  "required": [
    "enabled",
    "entry_id"
  ],
  "properties": {
    "enabled": {
      "type": "boolean"
    },
    "entry_id": {
      "type": "string",
      "format": "uuid"
    },
    "profile_id": {
      "type": "string",
      "format": "uuid",
      "nullable": true,
      "description": "This field is not used as the owning profile.\nFor predefined entries it is already set to a predefined profile."
    }
  },
  "description": "Used to create a new predefined or integration entry.\n\nPredefined or integration entries can not be updated via the API so\nthese fields will update the entry's settings."
}
object dlp_NewPredefinedProfile
{
  "allOf": [
    {
      "$ref": "#/components/schemas/dlp_PredefinedProfileUpdate"
    },
    {
      "type": "object",
      "required": [
        "profile_id"
      ],
      "properties": {
        "profile_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  ]
}
object dlp_NewSharedEntry
{
  "type": "object",
  "required": [
    "entry_id",
    "enabled"
  ],
  "properties": {
    "enabled": {
      "type": "boolean"
    },
    "entry_id": {
      "type": "string",
      "format": "uuid"
    }
  }
}
object dlp_NewWordListEntry
{
  "type": "object",
  "required": [
    "name",
    "words",
    "enabled"
  ],
  "properties": {
    "name": {
      "type": "string"
    },
    "words": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "enabled": {
      "type": "boolean"
    }
  }
}
object dlp_Pattern
{
  "type": "object",
  "required": [
    "regex"
  ],
  "properties": {
    "regex": {
      "type": "string"
    },
    "validation": {
      "allOf": [
        {
          "$ref": "#/components/schemas/dlp_Validation"
        }
      ]
    }
  }
}
string dlp_PayloadLogMaskingLevel
{
  "enum": [
    "full",
    "partial",
    "clear",
    "default"
  ],
  "type": "string",
  "description": "Masking level for payload logs.\n\n- `full`: The entire payload is masked.\n- `partial`: Only partial payload content is masked.\n- `clear`: No masking is applied to the payload content.\n- `default`: DLP uses its default masking behavior."
}
object dlp_PayloadLogSetting
{
  "type": "object",
  "required": [
    "updated_at"
  ],
  "properties": {
    "public_key": {
      "type": "string",
      "nullable": true,
      "description": "Base64-encoded public key for encrypting payload logs. Null when payload logging is disabled."
    },
    "updated_at": {
      "type": "string",
      "format": "date-time"
    },
    "masking_level": {
      "allOf": [
        {
          "$ref": "#/components/schemas/dlp_PayloadLogMaskingLevel"
        }
      ]
    }
  }
}
object dlp_PayloadLogSettingUpdate
{
  "type": "object",
  "properties": {
    "public_key": {
      "type": "string",
      "nullable": true,
      "description": "Base64-encoded public key for encrypting payload logs.\n\n- Set to a non-empty base64 string to enable payload logging with the given key.\n- Set to an empty string to disable payload logging.\n- Omit or set to null to leave unchanged (PATCH) or reset to disabled (PUT)."
    },
    "masking_level": {
      "allOf": [
        {
          "$ref": "#/components/schemas/dlp_PayloadLogMaskingLevel"
        }
      ],
      "default": "default"
    }
  },
  "description": "Request model for payload log settings within the DLP settings endpoint.\nUnlike the legacy endpoint, null and missing are treated identically here\n(both mean \"not provided\" for PATCH, \"reset to default\" for PUT)."
}
object dlp_PayloadLogSettingUpdateLegacy
{
  "type": "object",
  "properties": {
    "public_key": {
      "type": "string",
      "nullable": true,
      "description": "Base64-encoded public key for encrypting payload logs.\n\n- Set to null or empty string to disable payload logging.\n- Set to a non-empty base64 string to enable payload logging with the given key.\n\nFor customers with configurable payload masking feature rolled out:\n- If the field is missing, the existing setting will be kept. Note that this is different from setting to null or empty string.\n\nFor all other customers:\n- If the field is missing, the existing setting will be cleared."
    },
    "masking_level": {
      "allOf": [
        {
          "$ref": "#/components/schemas/dlp_PayloadLogMaskingLevel"
        }
      ]
    }
  },
  "description": "Request model for the legacy payload log settings endpoint."
}
object dlp_PredefinedEntry
{
  "type": "object",
  "required": [
    "id",
    "name",
    "enabled",
    "confidence"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid"
    },
    "name": {
      "type": "string"
    },
    "enabled": {
      "type": "boolean"
    },
    "variant": {
      "allOf": [
        {
          "$ref": "#/components/schemas/dlp_PredefinedEntryVariant"
        }
      ]
    },
    "confidence": {
      "$ref": "#/components/schemas/dlp_EntryConfidence"
    },
    "profile_id": {
      "type": "string",
      "format": "uuid",
      "nullable": true,
      "deprecated": true
    }
  }
}
object dlp_PredefinedEntryUpdate
{
  "type": "object",
  "required": [
    "enabled"
  ],
  "properties": {
    "enabled": {
      "type": "boolean"
    }
  }
}
object dlp_PredefinedEntryVariant
{
  "oneOf": [
    {
      "type": "object",
      "required": [
        "topic_type",
        "type"
      ],
      "properties": {
        "type": {
          "enum": [
            "PromptTopic"
          ],
          "type": "string"
        },
        "topic_type": {
          "$ref": "#/components/schemas/dlp_PromptTopicType"
        },
        "description": {
          "type": "string",
          "nullable": true
        }
      }
    }
  ]
}
object dlp_PredefinedProfile
{
  "type": "object",
  "required": [
    "id",
    "name",
    "entries",
    "allowed_match_count"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid",
      "description": "The id of the predefined profile (uuid)."
    },
    "name": {
      "type": "string",
      "description": "The name of the predefined profile."
    },
    "entries": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/dlp_Entry"
      },
      "deprecated": true
    },
    "ocr_enabled": {
      "type": "boolean",
      "default": false
    },
    "open_access": {
      "type": "boolean",
      "description": "Whether this profile can be accessed by anyone."
    },
    "context_awareness": {
      "$ref": "#/components/schemas/dlp_ContextAwareness"
    },
    "ai_context_enabled": {
      "type": "boolean",
      "default": false
    },
    "allowed_match_count": {
      "type": "integer",
      "format": "int32"
    },
    "confidence_threshold": {
      "allOf": [
        {
          "$ref": "#/components/schemas/dlp_Confidence"
        }
      ],
      "default": "low"
    }
  }
}
object dlp_PredefinedProfileConfig
{
  "type": "object",
  "required": [
    "id",
    "name",
    "entries",
    "enabled_entries",
    "allowed_match_count",
    "confidence_threshold"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid",
      "description": "The id of the predefined profile (uuid)."
    },
    "name": {
      "type": "string",
      "description": "The name of the predefined profile."
    },
    "entries": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/dlp_Entry"
      },
      "deprecated": true,
      "description": "This field has been deprecated for `enabled_entries`."
    },
    "ocr_enabled": {
      "type": "boolean",
      "default": false
    },
    "open_access": {
      "type": "boolean",
      "description": "Whether this profile can be accessed by anyone."
    },
    "enabled_entries": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "uuid"
      },
      "description": "Entries to enable for this predefined profile. Any entries not provided will be disabled."
    },
    "ai_context_enabled": {
      "type": "boolean",
      "default": false
    },
    "allowed_match_count": {
      "type": "integer",
      "format": "int32"
    },
    "confidence_threshold": {
      "type": "string",
      "default": "low",
      "nullable": true
    }
  }
}
object dlp_PredefinedProfileConfigUpdate
{
  "type": "object",
  "properties": {
    "entries": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/dlp_PredefinedProfileEntryUpdate"
      },
      "deprecated": true,
      "x-stainless-terraform-configurability": "computed_optional"
    },
    "ocr_enabled": {
      "type": "boolean",
      "default": false
    },
    "enabled_entries": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "uuid"
      },
      "nullable": true
    },
    "ai_context_enabled": {
      "type": "boolean",
      "default": false
    },
    "allowed_match_count": {
      "type": "integer",
      "format": "int32",
      "default": 0,
      "example": 5,
      "maximum": 1000,
      "minimum": 0,
      "nullable": true
    },
    "confidence_threshold": {
      "type": "string",
      "default": "low",
      "nullable": true
    }
  }
}
object dlp_PredefinedProfileEntryUpdate
{
  "type": "object",
  "required": [
    "id",
    "enabled"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid"
    },
    "enabled": {
      "type": "boolean"
    }
  }
}
object dlp_PredefinedProfileUpdate
{
  "type": "object",
  "properties": {
    "entries": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/dlp_PredefinedProfileEntryUpdate"
      },
      "deprecated": true
    },
    "ocr_enabled": {
      "type": "boolean",
      "default": false
    },
    "context_awareness": {
      "$ref": "#/components/schemas/dlp_ContextAwareness"
    },
    "ai_context_enabled": {
      "type": "boolean",
      "default": false
    },
    "allowed_match_count": {
      "type": "integer",
      "format": "int32",
      "default": 0,
      "example": 5,
      "maximum": 1000,
      "minimum": 0,
      "nullable": true
    },
    "confidence_threshold": {
      "type": "string",
      "default": "low",
      "nullable": true
    }
  }
}
object dlp_Profile
{
  "oneOf": [
    {
      "allOf": [
        {
          "$ref": "#/components/schemas/dlp_CustomProfile"
        },
        {
          "type": "object",
          "required": [
            "type"
          ],
          "properties": {
            "type": {
              "enum": [
                "custom"
              ],
              "type": "string"
            }
          }
        }
      ],
      "title": "Custom Profile"
    },
    {
      "allOf": [
        {
          "$ref": "#/components/schemas/dlp_PredefinedProfile"
        },
        {
          "type": "object",
          "required": [
            "type"
          ],
          "properties": {
            "type": {
              "enum": [
                "predefined"
              ],
              "type": "string"
            }
          }
        }
      ],
      "title": "Predefined Profile"
    },
    {
      "allOf": [
        {
          "$ref": "#/components/schemas/dlp_IntegrationProfile"
        },
        {
          "type": "object",
          "required": [
            "type"
          ],
          "properties": {
            "type": {
              "enum": [
                "integration"
              ],
              "type": "string"
            }
          }
        }
      ],
      "title": "Integration Profile"
    }
  ]
}
array dlp_ProfileArray
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/dlp_Profile"
  }
}
object dlp_ProfileEntryUpdate
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/dlp_NewCustomEntryWithId"
    },
    {
      "$ref": "#/components/schemas/dlp_NewCustomEntry"
    }
  ]
}
string dlp_PromptTopicType
{
  "enum": [
    "Intent",
    "Content"
  ],
  "type": "string"
}
object dlp_RegexValidationQuery
{
  "type": "object",
  "required": [
    "regex"
  ],
  "properties": {
    "regex": {
      "type": "string"
    },
    "max_match_bytes": {
      "type": "integer",
      "format": "int32",
      "minimum": 0,
      "nullable": true,
      "description": "Maximum number of bytes that the regular expression can match.\n\nIf this is `null` then there is no limit on the length. Patterns can use\n`*` and `+`. Otherwise repeats should use a range `{m,n}` to restrict\npatterns to the length. If this field is missing, then a default length\nlimit is used.\n\nNote that the length is specified in bytes. Since regular expressions\nuse UTF-8 the pattern `.` can match up to 4 bytes. Hence `.{1,256}`\nhas a maximum length of 1024 bytes."
    }
  }
}
object dlp_RegexValidationResult
{
  "type": "object",
  "required": [
    "valid"
  ],
  "properties": {
    "valid": {
      "type": "boolean"
    }
  }
}
object dlp_RiskEvent
{
  "type": "object",
  "required": [
    "id",
    "risk_level",
    "name",
    "timestamp"
  ],
  "properties": {
    "id": {
      "type": "string"
    },
    "name": {
      "type": "string"
    },
    "timestamp": {
      "type": "string",
      "format": "date-time"
    },
    "risk_level": {
      "$ref": "#/components/schemas/dlp_RiskLevel"
    },
    "event_details": {}
  }
}
object dlp_RiskEvents
{
  "type": "object",
  "required": [
    "name",
    "email",
    "events"
  ],
  "properties": {
    "name": {
      "type": "string"
    },
    "email": {
      "type": "string"
    },
    "events": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/dlp_RiskEvent"
      }
    },
    "risk_level": {
      "allOf": [
        {
          "$ref": "#/components/schemas/dlp_RiskLevel"
        }
      ]
    },
    "last_reset_time": {
      "type": "string",
      "format": "date-time",
      "nullable": true
    }
  }
}
string dlp_RiskLevel
{
  "enum": [
    "low",
    "medium",
    "high"
  ],
  "type": "string"
}
object dlp_RiskScoreIntegration
{
  "type": "object",
  "required": [
    "id",
    "account_tag",
    "integration_type",
    "reference_id",
    "tenant_url",
    "well_known_url",
    "active",
    "created_at"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid",
      "description": "The id of the integration, a UUIDv4."
    },
    "active": {
      "type": "boolean",
      "description": "Whether this integration is enabled and should export changes in risk score."
    },
    "created_at": {
      "type": "string",
      "format": "date-time",
      "description": "When the integration was created in RFC3339 format."
    },
    "tenant_url": {
      "type": "string",
      "description": "The base URL for the tenant. E.g. \"https://tenant.okta.com\"."
    },
    "account_tag": {
      "type": "string",
      "description": "The Cloudflare account tag."
    },
    "reference_id": {
      "type": "string",
      "description": "A reference ID defined by the client.\nShould be set to the Access-Okta IDP integration ID.\nUseful when the risk-score integration needs to be associated with a secondary asset and recalled using that ID."
    },
    "well_known_url": {
      "type": "string",
      "description": "The URL for the Shared Signals Framework configuration, e.g. \"/.well-known/sse-configuration/{integration_uuid}/\". https://openid.net/specs/openid-sse-framework-1_0.html#rfc.section.6.2.1."
    },
    "integration_type": {
      "$ref": "#/components/schemas/dlp_RiskScoreIntegrationType"
    }
  }
}
array dlp_RiskScoreIntegrationArray
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/dlp_RiskScoreIntegration"
  }
}
string dlp_RiskScoreIntegrationType
{
  "enum": [
    "Okta"
  ],
  "type": "string"
}
object dlp_RiskSummary
{
  "type": "object",
  "required": [
    "users"
  ],
  "properties": {
    "users": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/dlp_UserRiskInfo"
      }
    }
  }
}
object dlp_SensitivityGroup
{
  "type": "object",
  "required": [
    "id",
    "name",
    "created_at",
    "updated_at",
    "levels"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid"
    },
    "name": {
      "type": "string"
    },
    "levels": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/dlp_SensitivityLevel"
      }
    },
    "created_at": {
      "type": "string",
      "format": "date-time"
    },
    "updated_at": {
      "type": "string",
      "format": "date-time"
    },
    "description": {
      "type": "string",
      "nullable": true
    },
    "template_id": {
      "type": "string",
      "format": "uuid",
      "nullable": true
    }
  }
}
object dlp_SensitivityLevel
{
  "type": "object",
  "required": [
    "id",
    "name",
    "created_at",
    "updated_at"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid"
    },
    "name": {
      "type": "string"
    },
    "created_at": {
      "type": "string",
      "format": "date-time"
    },
    "updated_at": {
      "type": "string",
      "format": "date-time"
    },
    "description": {
      "type": "string",
      "nullable": true
    }
  }
}
object dlp_SensitivityLevelRef
{
  "type": "object",
  "required": [
    "group_id",
    "level_id"
  ],
  "properties": {
    "group_id": {
      "type": "string",
      "format": "uuid"
    },
    "level_id": {
      "type": "string",
      "format": "uuid"
    }
  },
  "description": "A reference pairing a sensitivity group with a specific level within that group."
}
object dlp_SharedEntryUpdate
{
  "type": "object",
  "required": [
    "entry_id",
    "enabled"
  ],
  "properties": {
    "enabled": {
      "type": "boolean"
    },
    "entry_id": {
      "type": "string",
      "format": "uuid"
    }
  }
}
object dlp_SkipConfig
{
  "type": "object",
  "required": [
    "files"
  ],
  "properties": {
    "files": {
      "type": "boolean",
      "description": "If the content type is a file, skip context analysis and return all matches."
    }
  },
  "description": "Content types to exclude from context analysis and return all matches."
}
object dlp_UpdateAddinAccountMapping
{
  "type": "object",
  "required": [
    "auth_requirements"
  ],
  "properties": {
    "auth_requirements": {
      "$ref": "#/components/schemas/dlp_AddinAuth"
    }
  }
}
object dlp_UpdateBehavior
{
  "type": "object",
  "required": [
    "risk_level",
    "enabled"
  ],
  "properties": {
    "enabled": {
      "type": "boolean"
    },
    "risk_level": {
      "$ref": "#/components/schemas/dlp_RiskLevel"
    }
  }
}
object dlp_UpdateBehaviors
{
  "type": "object",
  "required": [
    "behaviors"
  ],
  "properties": {
    "behaviors": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/dlp_UpdateBehavior"
      }
    }
  }
}
object dlp_UpdateDocumentFingerprint
{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "nullable": true
    },
    "description": {
      "type": "string",
      "nullable": true
    },
    "match_percent": {
      "type": "integer",
      "format": "int32",
      "nullable": true
    }
  }
}
object dlp_UpdateEmailRulePriorities
{
  "type": "object",
  "required": [
    "new_priorities"
  ],
  "properties": {
    "new_priorities": {
      "type": "object",
      "additionalProperties": {
        "type": "integer",
        "format": "int32",
        "minimum": 0
      }
    }
  },
  "description": "Used to update multiple email rule priorities as an atomic action,\nto support patterns such as swapping the priorities of two email rules."
}
object dlp_UpdateIntegrationBody
{
  "type": "object",
  "required": [
    "tenant_url",
    "active"
  ],
  "properties": {
    "active": {
      "type": "boolean",
      "description": "Whether this integration is enabled. If disabled, no risk changes will be exported to the third-party."
    },
    "tenant_url": {
      "type": "string",
      "format": "uri",
      "description": "The base url of the tenant, e.g. \"https://tenant.okta.com\"."
    },
    "reference_id": {
      "type": "string",
      "nullable": true,
      "description": "A reference id that can be supplied by the client. Currently this should be set to the Access-Okta IDP ID (a UUIDv4).\nhttps://developers.cloudflare.com/api/operations/access-identity-providers-get-an-access-identity-provider"
    }
  }
}
object dlp_UserRiskInfo
{
  "type": "object",
  "required": [
    "user_id",
    "name",
    "email",
    "max_risk_level",
    "event_count",
    "last_event"
  ],
  "properties": {
    "name": {
      "type": "string"
    },
    "email": {
      "type": "string"
    },
    "user_id": {
      "type": "string",
      "format": "uuid"
    },
    "last_event": {
      "type": "string",
      "format": "date-time"
    },
    "event_count": {
      "type": "integer",
      "minimum": 0
    },
    "max_risk_level": {
      "$ref": "#/components/schemas/dlp_RiskLevel"
    }
  }
}
string dlp_Validation
{
  "enum": [
    "luhn"
  ],
  "type": "string",
  "deprecated": true
}
object dlp_WordListEntry
{
  "type": "object",
  "required": [
    "id",
    "name",
    "created_at",
    "updated_at",
    "word_list",
    "enabled"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid"
    },
    "name": {
      "type": "string"
    },
    "enabled": {
      "type": "boolean"
    },
    "word_list": {},
    "created_at": {
      "type": "string",
      "format": "date-time"
    },
    "profile_id": {
      "type": "string",
      "format": "uuid",
      "nullable": true
    },
    "updated_at": {
      "type": "string",
      "format": "date-time"
    }
  }
}
object dlp_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dlp_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result_info": {
          "type": "object",
          "properties": {
            "page": {
              "type": "number",
              "example": 1,
              "description": "Current page within paginated list of results."
            },
            "count": {
              "type": "number",
              "example": 1,
              "description": "Total number of results for the requested service."
            },
            "per_page": {
              "type": "number",
              "example": 20,
              "description": "Number of results per page of results."
            },
            "total_count": {
              "type": "number",
              "example": 2000,
              "description": "Total results available without any search parameters."
            },
            "total_pages": {
              "type": "number",
              "example": 100,
              "description": "The number of total pages in the entire result set."
            }
          }
        }
      }
    }
  ]
}
object dlp_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/dlp_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/dlp_messages"
    }
  }
}
object dlp_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/dlp_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/dlp_messages"
        }
      ],
      "example": []
    }
  }
}
object dlp_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dlp_api-response-common"
    }
  ]
}
array dlp_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
object dls_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dls_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result_info": {
          "type": "object",
          "properties": {
            "page": {
              "type": "number",
              "example": 1,
              "description": "Current page within paginated list of results."
            },
            "count": {
              "type": "number",
              "example": 1,
              "description": "Total number of results for the requested service."
            },
            "per_page": {
              "type": "number",
              "example": 20,
              "description": "Number of results per page of results."
            },
            "total_count": {
              "type": "number",
              "example": 2000,
              "description": "Total results available without any search parameters."
            },
            "total_pages": {
              "type": "number",
              "example": 100,
              "description": "The number of total pages in the entire result set."
            }
          }
        }
      }
    }
  ]
}
object dls_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/dls_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/dls_messages"
    }
  }
}
object dls_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/dls_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/dls_messages"
        }
      ],
      "example": []
    }
  }
}
string dls_hostname
{
  "type": "string",
  "example": "foo.example.com",
  "description": "DNS hostname to be regionalized, must be a subdomain of the zone. Wildcards are supported for one level, e.g `*.example.com`",
  "x-auditable": true
}
string dls_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Identifier.",
  "x-auditable": true
}
array dls_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string dls_region_key
{
  "type": "string",
  "example": "ca",
  "description": "Identifying key for the region",
  "x-auditable": true
}
object dls_regional_hostname_response
{
  "type": "object",
  "required": [
    "hostname",
    "region_key",
    "created_on"
  ],
  "properties": {
    "routing": {
      "$ref": "#/components/schemas/dls_routing"
    },
    "hostname": {
      "$ref": "#/components/schemas/dls_hostname"
    },
    "created_on": {
      "allOf": [
        {
          "$ref": "#/components/schemas/dls_timestamp"
        },
        {
          "description": "When the regional hostname was created"
        },
        {
          "example": "2014-01-01T05:20:00.12345Z"
        }
      ]
    },
    "region_key": {
      "$ref": "#/components/schemas/dls_region_key"
    }
  }
}
string dls_routing
{
  "type": "string",
  "default": "dns",
  "example": "dns",
  "description": "Configure which routing method to use for the regional hostname",
  "x-auditable": true
}
string dls_timestamp
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-01T05:20:00.12345Z",
  "x-auditable": true
}
object dns-analytics_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/dns-analytics_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/dns-analytics_messages"
    }
  }
}
object dns-analytics_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/dns-analytics_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/dns-analytics_messages"
        }
      ],
      "example": []
    }
  }
}
object dns-analytics_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-analytics_api-response-common"
    }
  ]
}
array dns-analytics_data
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "dimensions"
    ],
    "properties": {
      "dimensions": {
        "type": "array",
        "items": {
          "type": "string",
          "example": "NODATA",
          "description": "Dimension value."
        },
        "description": "Array of dimension values, representing the combination of dimension values corresponding to this row."
      }
    }
  },
  "description": "Array with one row per combination of dimension values."
}
string dns-analytics_dimensions
{
  "type": "string",
  "example": "queryType",
  "description": "A comma-separated list of dimensions to group results by."
}
string dns-analytics_filters
{
  "type": "string",
  "example": "responseCode==NOERROR,queryType==A",
  "description": "Segmentation filter in 'attribute operator value' format."
}
string dns-analytics_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Identifier.",
  "x-auditable": true
}
integer dns-analytics_limit
{
  "type": "integer",
  "default": 100000,
  "example": 100,
  "description": "Limit number of returned metrics."
}
array dns-analytics_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string dns-analytics_metrics
{
  "type": "string",
  "example": "queryCount,uncachedCount",
  "description": "A comma-separated list of metrics to query."
}
object dns-analytics_query
{
  "type": "object",
  "required": [
    "dimensions",
    "metrics",
    "since",
    "until",
    "limit"
  ],
  "properties": {
    "sort": {
      "type": "array",
      "items": {
        "type": "string",
        "example": "+responseCode",
        "description": "Dimension name (may be prefixed by - (descending) or + (ascending)."
      },
      "example": [
        "+responseCode",
        "-queryName"
      ],
      "description": "Array of dimensions to sort by, where each dimension may be prefixed by - (descending) or + (ascending)."
    },
    "limit": {
      "$ref": "#/components/schemas/dns-analytics_limit"
    },
    "since": {
      "$ref": "#/components/schemas/dns-analytics_since"
    },
    "until": {
      "$ref": "#/components/schemas/dns-analytics_until"
    },
    "filters": {
      "$ref": "#/components/schemas/dns-analytics_filters"
    },
    "metrics": {
      "type": "array",
      "items": {
        "type": "string",
        "example": "queries",
        "description": "Metric name."
      },
      "example": [
        "queryCount",
        "responseTimeAvg"
      ],
      "description": "Array of metric names."
    },
    "dimensions": {
      "type": "array",
      "items": {
        "type": "string",
        "example": "responseCode",
        "description": "Dimension name."
      },
      "example": [
        "responseCode",
        "queryName"
      ],
      "description": "Array of dimension names."
    }
  }
}
object dns-analytics_report
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-analytics_result"
    },
    {
      "type": "object",
      "required": [
        "data"
      ],
      "properties": {
        "data": {
          "type": "array",
          "items": {
            "type": "object",
            "required": [
              "metrics"
            ],
            "properties": {
              "metrics": {
                "type": "array",
                "items": {
                  "type": "number",
                  "description": "Nominal metric value."
                },
                "description": "Array with one item per requested metric. Each item is a single value."
              }
            }
          }
        }
      }
    }
  ]
}
object dns-analytics_report_bytime
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-analytics_result"
    },
    {
      "type": "object",
      "required": [
        "time_intervals",
        "query",
        "data"
      ],
      "properties": {
        "data": {
          "type": "array",
          "items": {
            "type": "object",
            "required": [
              "metrics"
            ],
            "properties": {
              "metrics": {
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "type": "number",
                    "description": "Nominal metric value."
                  },
                  "description": "Nominal metric values, broken down by time interval."
                },
                "description": "Array with one item per requested metric. Each item is an array of values, broken down by time interval."
              }
            }
          }
        },
        "query": {
          "type": "object",
          "required": [
            "time_delta"
          ],
          "properties": {
            "time_delta": {
              "$ref": "#/components/schemas/dns-analytics_time_delta"
            }
          }
        },
        "time_intervals": {
          "type": "array",
          "items": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "date-time",
              "example": "2023-11-11T12:00:00Z",
              "description": "Time value."
            },
            "description": "Array with exactly two items, representing the start and end time (respectively) of this time interval."
          },
          "description": "Array of time intervals in the response data. Each interval is represented as an array containing two values: the start time, and the end time.\n"
        }
      }
    }
  ]
}
object dns-analytics_result
{
  "type": "object",
  "required": [
    "rows",
    "totals",
    "min",
    "max",
    "data_lag",
    "query",
    "data"
  ],
  "properties": {
    "max": {
      "type": "object",
      "description": "Maximum results for each metric (object mapping metric names to values). Currently always an empty object."
    },
    "min": {
      "type": "object",
      "description": "Minimum results for each metric (object mapping metric names to values). Currently always an empty object."
    },
    "data": {
      "$ref": "#/components/schemas/dns-analytics_data"
    },
    "rows": {
      "type": "number",
      "example": 100,
      "minimum": 0,
      "description": "Total number of rows in the result."
    },
    "query": {
      "$ref": "#/components/schemas/dns-analytics_query"
    },
    "totals": {
      "type": "object",
      "description": "Total results for metrics across all data (object mapping metric names to values)."
    },
    "data_lag": {
      "type": "number",
      "example": 60,
      "minimum": 0,
      "description": "Number of seconds between current time and last processed event, in another words how many seconds of data could be missing."
    }
  }
}
string dns-analytics_since
{
  "type": "string",
  "format": "date-time",
  "example": "2023-11-11T12:00:00Z",
  "description": "Start date and time of requesting data period in ISO 8601 format."
}
string dns-analytics_sort
{
  "type": "string",
  "example": "+responseCode,-queryName",
  "description": "A comma-separated list of dimensions to sort by, where each dimension may be prefixed by - (descending) or + (ascending)."
}
string dns-analytics_time_delta
{
  "enum": [
    "all",
    "auto",
    "year",
    "quarter",
    "month",
    "week",
    "day",
    "hour",
    "dekaminute",
    "minute"
  ],
  "type": "string",
  "example": "hour",
  "description": "Unit of time to group data by."
}
string dns-analytics_until
{
  "type": "string",
  "format": "date-time",
  "example": "2023-11-11T13:00:00Z",
  "description": "End date and time of requesting data period in ISO 8601 format."
}
object dns-custom-nameservers_CustomNS
{
  "type": "object",
  "title": "Custom NS",
  "required": [
    "dns_records",
    "ns_name",
    "status",
    "zone_tag"
  ],
  "properties": {
    "ns_set": {
      "$ref": "#/components/schemas/dns-custom-nameservers_ns_set"
    },
    "status": {
      "enum": [
        "moved",
        "pending",
        "verified"
      ],
      "type": "string",
      "example": "verified",
      "deprecated": true,
      "description": "Verification status of the nameserver.",
      "x-auditable": true
    },
    "ns_name": {
      "$ref": "#/components/schemas/dns-custom-nameservers_ns_name"
    },
    "zone_tag": {
      "$ref": "#/components/schemas/dns-custom-nameservers_schemas-identifier"
    },
    "dns_records": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "type": {
            "enum": [
              "A",
              "AAAA"
            ],
            "type": "string",
            "example": "A",
            "description": "DNS record type.",
            "x-auditable": true
          },
          "value": {
            "type": "string",
            "example": "1.1.1.1",
            "description": "DNS record contents (an IPv4 or IPv6 address).",
            "x-auditable": true
          }
        }
      },
      "description": "A and AAAA records associated with the nameserver.",
      "x-stainless-collection-type": "set"
    }
  },
  "description": "A single account custom nameserver."
}
object dns-custom-nameservers_CustomNSInput
{
  "type": "object",
  "title": "Custom NS Input",
  "required": [
    "ns_name"
  ],
  "properties": {
    "ns_set": {
      "$ref": "#/components/schemas/dns-custom-nameservers_ns_set"
    },
    "ns_name": {
      "$ref": "#/components/schemas/dns-custom-nameservers_ns_name"
    }
  }
}
object dns-custom-nameservers_acns_response_collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-custom-nameservers_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/dns-custom-nameservers_CustomNS"
          }
        }
      }
    }
  ]
}
object dns-custom-nameservers_acns_response_single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-custom-nameservers_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/dns-custom-nameservers_CustomNS"
        }
      }
    }
  ]
}
object dns-custom-nameservers_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-custom-nameservers_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result_info": {
          "type": "object",
          "properties": {
            "page": {
              "type": "number",
              "example": 1,
              "description": "Current page within paginated list of results."
            },
            "count": {
              "type": "number",
              "example": 1,
              "description": "Total number of results for the requested service."
            },
            "per_page": {
              "type": "number",
              "example": 20,
              "description": "Number of results per page of results."
            },
            "total_count": {
              "type": "number",
              "example": 2000,
              "description": "Total results available without any search parameters."
            }
          }
        }
      }
    }
  ]
}
object dns-custom-nameservers_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/dns-custom-nameservers_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/dns-custom-nameservers_messages"
    }
  }
}
object dns-custom-nameservers_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/dns-custom-nameservers_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/dns-custom-nameservers_messages"
        }
      ],
      "example": []
    }
  }
}
object dns-custom-nameservers_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-custom-nameservers_api-response-common"
    }
  ]
}
object dns-custom-nameservers_empty_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-custom-nameservers_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "type": "string",
            "description": "Unused",
            "x-auditable": true
          },
          "maxItems": 0
        }
      }
    }
  ]
}
object dns-custom-nameservers_get_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-custom-nameservers_api-response-collection"
    },
    {
      "$ref": "#/components/schemas/dns-custom-nameservers_zone_metadata"
    }
  ]
}
string dns-custom-nameservers_identifier
{
  "type": "string",
  "example": "372e67954025e0ba6aaa6d586b9e0b59",
  "readOnly": true,
  "maxLength": 32,
  "description": "Account identifier tag.",
  "x-auditable": true
}
array dns-custom-nameservers_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string dns-custom-nameservers_ns_name
{
  "type": "string",
  "format": "hostname",
  "example": "ns1.example.com",
  "description": "The FQDN of the name server.",
  "x-auditable": true
}
number dns-custom-nameservers_ns_set
{
  "type": "number",
  "default": 1,
  "example": 1,
  "maximum": 5,
  "minimum": 1,
  "description": "The number of the set that this name server belongs to.",
  "x-auditable": true
}
object dns-custom-nameservers_schemas-empty_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-custom-nameservers_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "type": "string",
            "description": "Unused",
            "x-auditable": true
          },
          "maxItems": 0
        }
      }
    }
  ]
}
string dns-custom-nameservers_schemas-identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Identifier.",
  "x-auditable": true
}
object dns-custom-nameservers_zone_metadata
{
  "type": "object",
  "properties": {
    "ns_set": {
      "type": "number",
      "default": 1,
      "example": 1,
      "maximum": 5,
      "minimum": 1,
      "description": "The number of the name server set to assign to the zone.",
      "x-auditable": true
    },
    "enabled": {
      "type": "boolean",
      "example": true,
      "description": "Whether zone uses account-level custom nameservers.",
      "x-auditable": true
    }
  }
}
object dns-firewall_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-firewall_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result_info": {
          "type": "object",
          "properties": {
            "page": {
              "type": "number",
              "example": 1,
              "description": "Current page within paginated list of results."
            },
            "count": {
              "type": "number",
              "example": 1,
              "description": "Total number of results for the requested service."
            },
            "per_page": {
              "type": "number",
              "example": 20,
              "description": "Number of results per page of results."
            },
            "total_count": {
              "type": "number",
              "example": 2000,
              "description": "Total results available without any search parameters."
            },
            "total_pages": {
              "type": "number",
              "example": 100,
              "description": "The number of total pages in the entire result set."
            }
          }
        }
      }
    }
  ]
}
object dns-firewall_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/dns-firewall_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/dns-firewall_messages"
    }
  }
}
object dns-firewall_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/dns-firewall_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/dns-firewall_messages"
        }
      ],
      "example": []
    }
  }
}
object dns-firewall_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-firewall_api-response-common"
    }
  ]
}
object dns-firewall_attack_mitigation
{
  "type": "object",
  "nullable": true,
  "properties": {
    "enabled": {
      "type": "boolean",
      "example": true,
      "description": "When enabled, automatically mitigate random-prefix attacks to protect upstream DNS servers",
      "x-auditable": true
    },
    "only_when_upstream_unhealthy": {
      "type": "boolean",
      "default": true,
      "example": false,
      "description": "Only mitigate attacks when upstream servers seem unhealthy",
      "x-auditable": true
    }
  },
  "description": "Attack mitigation settings"
}
boolean dns-firewall_deprecate_any_requests
{
  "type": "boolean",
  "example": true,
  "description": "Whether to refuse to answer queries for the ANY type",
  "x-auditable": true
}
object dns-firewall_dns-firewall-cluster
{
  "type": "object",
  "properties": {
    "name": {
      "$ref": "#/components/schemas/dns-firewall_name"
    },
    "retries": {
      "$ref": "#/components/schemas/dns-firewall_retries"
    },
    "ratelimit": {
      "$ref": "#/components/schemas/dns-firewall_ratelimit"
    },
    "ecs_fallback": {
      "$ref": "#/components/schemas/dns-firewall_ecs_fallback"
    },
    "upstream_ips": {
      "$ref": "#/components/schemas/dns-firewall_upstream_ips"
    },
    "attack_mitigation": {
      "$ref": "#/components/schemas/dns-firewall_attack_mitigation"
    },
    "maximum_cache_ttl": {
      "$ref": "#/components/schemas/dns-firewall_maximum_cache_ttl"
    },
    "minimum_cache_ttl": {
      "$ref": "#/components/schemas/dns-firewall_minimum_cache_ttl"
    },
    "negative_cache_ttl": {
      "$ref": "#/components/schemas/dns-firewall_negative_cache_ttl"
    },
    "deprecate_any_requests": {
      "$ref": "#/components/schemas/dns-firewall_deprecate_any_requests"
    }
  }
}
object dns-firewall_dns-firewall-cluster-patch
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-firewall_dns-firewall-cluster"
    }
  ]
}
object dns-firewall_dns-firewall-cluster-post
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-firewall_dns-firewall-cluster"
    }
  ],
  "required": [
    "name",
    "upstream_ips"
  ]
}
object dns-firewall_dns-firewall-cluster-response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-firewall_dns-firewall-cluster"
    },
    {
      "type": "object",
      "required": [
        "id",
        "dns_firewall_ips",
        "modified_on"
      ],
      "properties": {
        "id": {
          "$ref": "#/components/schemas/dns-firewall_identifier"
        },
        "modified_on": {
          "$ref": "#/components/schemas/dns-firewall_modified_on"
        },
        "dns_firewall_ips": {
          "$ref": "#/components/schemas/dns-firewall_dns_firewall_ips"
        }
      }
    }
  ],
  "required": [
    "name",
    "upstream_ips",
    "minimum_cache_ttl",
    "maximum_cache_ttl",
    "negative_cache_ttl",
    "deprecate_any_requests",
    "ecs_fallback",
    "ratelimit",
    "retries"
  ]
}
object dns-firewall_dns-firewall-reverse-dns
{
  "type": "object",
  "properties": {
    "ptr": {
      "type": "object",
      "description": "Map of cluster IP addresses to PTR record contents",
      "additionalProperties": {
        "type": "string",
        "description": "PTR record content"
      }
    }
  }
}
object dns-firewall_dns-firewall-reverse-dns-patch
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-firewall_dns-firewall-reverse-dns"
    }
  ]
}
object dns-firewall_dns-firewall-reverse-dns-response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-firewall_dns-firewall-reverse-dns"
    }
  ],
  "required": [
    "ptr"
  ]
}
array dns-firewall_dns_firewall_ips
{
  "type": "array",
  "items": {
    "type": "string",
    "anyOf": [
      {
        "type": "string",
        "format": "ipv4",
        "example": "203.0.113.1",
        "description": "Cloudflare-assigned DNS IPv4 address",
        "x-auditable": true
      },
      {
        "type": "string",
        "format": "ipv6",
        "example": "2001:DB8:ab::CF",
        "description": "Cloudflare-assigned DNS IPv6 address",
        "x-auditable": true
      }
    ]
  },
  "example": [
    "203.0.113.1",
    "203.0.113.254",
    "2001:DB8:AB::CF",
    "2001:DB8:CD::CF"
  ],
  "x-stainless-collection-type": "set"
}
object dns-firewall_dns_firewall_response_collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-firewall_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/dns-firewall_dns-firewall-cluster-response"
          }
        }
      }
    }
  ]
}
object dns-firewall_dns_firewall_reverse_dns_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-firewall_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/dns-firewall_dns-firewall-reverse-dns-response"
        }
      }
    }
  ]
}
object dns-firewall_dns_firewall_single_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-firewall_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/dns-firewall_dns-firewall-cluster-response"
        }
      }
    }
  ]
}
boolean dns-firewall_ecs_fallback
{
  "type": "boolean",
  "example": false,
  "description": "Whether to forward client IP (resolver) subnet if no EDNS Client Subnet is sent",
  "x-auditable": true
}
string dns-firewall_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Identifier.",
  "x-auditable": true
}
number dns-firewall_maximum_cache_ttl
{
  "type": "number",
  "default": 900,
  "example": 900,
  "maximum": 36000,
  "minimum": 30,
  "description": "By default, Cloudflare attempts to cache responses for as long as\nindicated by the TTL received from upstream nameservers. This setting\nsets an upper bound on this duration. For caching purposes, higher TTLs\nwill be decreased to the maximum value defined by this setting.\n\nThis setting does not affect the TTL value in the DNS response\nCloudflare returns to clients. Cloudflare will always forward the TTL\nvalue received from upstream nameservers.\n",
  "x-auditable": true
}
array dns-firewall_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
number dns-firewall_minimum_cache_ttl
{
  "type": "number",
  "default": 60,
  "example": 60,
  "maximum": 36000,
  "minimum": 30,
  "description": "By default, Cloudflare attempts to cache responses for as long as\nindicated by the TTL received from upstream nameservers. This setting\nsets a lower bound on this duration. For caching purposes, lower TTLs\nwill be increased to the minimum value defined by this setting.\n\nThis setting does not affect the TTL value in the DNS response\nCloudflare returns to clients. Cloudflare will always forward the TTL\nvalue received from upstream nameservers.\n\nNote that, even with this setting, there is no guarantee that a\nresponse will be cached for at least the specified duration. Cached\nresponses may be removed earlier for capacity or other operational\nreasons.\n",
  "x-auditable": true
}
string dns-firewall_modified_on
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-01T05:20:00.12345Z",
  "description": "Last modification of DNS Firewall cluster",
  "x-auditable": true
}
string dns-firewall_name
{
  "type": "string",
  "example": "My Awesome DNS Firewall cluster",
  "maxLength": 160,
  "minLength": 1,
  "description": "DNS Firewall cluster name",
  "x-auditable": true
}
number dns-firewall_negative_cache_ttl
{
  "type": "number",
  "example": 900,
  "maximum": 36000,
  "minimum": 30,
  "nullable": true,
  "description": "This setting controls how long DNS Firewall should cache negative\nresponses (e.g., NXDOMAIN) from the upstream servers.\n\nThis setting does not affect the TTL value in the DNS response\nCloudflare returns to clients. Cloudflare will always forward the TTL\nvalue received from upstream nameservers.\n",
  "x-auditable": true
}
number dns-firewall_ratelimit
{
  "type": "number",
  "example": 600,
  "maximum": 1000000000,
  "minimum": 100,
  "nullable": true,
  "description": "Ratelimit in queries per second per datacenter (applies to DNS queries sent to the upstream nameservers configured on the cluster)",
  "x-auditable": true
}
number dns-firewall_retries
{
  "type": "number",
  "default": 2,
  "example": 2,
  "maximum": 2,
  "minimum": 0,
  "description": "Number of retries for fetching DNS responses from upstream nameservers (not counting the initial attempt)",
  "x-auditable": true
}
array dns-firewall_upstream_ips
{
  "type": "array",
  "items": {
    "type": "string",
    "anyOf": [
      {
        "type": "string",
        "format": "ipv4",
        "example": "192.0.2.1",
        "description": "Upstream DNS Server IPv4 address",
        "x-auditable": true
      },
      {
        "type": "string",
        "format": "ipv6",
        "example": "2001:DB8:100::CF",
        "description": "Upstream DNS Server IPv6 address",
        "x-auditable": true
      }
    ]
  },
  "example": [
    "192.0.2.1",
    "198.51.100.1",
    "2001:DB8:100::CF"
  ],
  "minLength": 1,
  "x-stainless-collection-type": "set"
}
object dns-records_AAAARecord
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-records_dns-record-shared-fields"
    },
    {
      "type": "object",
      "properties": {
        "type": {
          "enum": [
            "AAAA"
          ],
          "type": "string",
          "example": "AAAA",
          "description": "Record type.",
          "x-auditable": true
        },
        "content": {
          "type": "string",
          "format": "ipv6",
          "example": "2400:cb00:2049::1",
          "description": "A valid IPv6 address.",
          "x-auditable": true
        },
        "private_routing": {
          "type": "boolean",
          "default": false,
          "example": true,
          "description": "Enables private network routing to the origin.",
          "x-auditable": true
        }
      }
    }
  ],
  "title": "AAAA Record"
}
object dns-records_ARecord
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-records_dns-record-shared-fields"
    },
    {
      "type": "object",
      "properties": {
        "type": {
          "enum": [
            "A"
          ],
          "type": "string",
          "example": "A",
          "description": "Record type.",
          "x-auditable": true
        },
        "content": {
          "type": "string",
          "format": "ipv4",
          "example": "198.51.100.4",
          "description": "A valid IPv4 address.",
          "x-auditable": true
        },
        "private_routing": {
          "type": "boolean",
          "default": false,
          "example": true,
          "description": "Enables private network routing to the origin.",
          "x-auditable": true
        }
      }
    }
  ],
  "title": "A Record"
}
object dns-records_CAARecord
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-records_dns-record-shared-fields"
    },
    {
      "type": "object",
      "properties": {
        "data": {
          "type": "object",
          "properties": {
            "tag": {
              "type": "string",
              "example": "issue",
              "description": "Name of the property controlled by this record (e.g.: issue, issuewild, iodef).",
              "x-auditable": true
            },
            "flags": {
              "type": "number",
              "example": 1,
              "maximum": 255,
              "minimum": 0,
              "description": "Flags for the CAA record.",
              "x-auditable": true
            },
            "value": {
              "type": "string",
              "description": "Value of the record. This field's semantics depend on the chosen tag.",
              "x-auditable": true
            }
          },
          "description": "Components of a CAA record."
        },
        "type": {
          "enum": [
            "CAA"
          ],
          "type": "string",
          "example": "CAA",
          "description": "Record type.",
          "x-auditable": true
        },
        "content": {
          "type": "string",
          "readOnly": true,
          "description": "Formatted CAA content. See 'data' to set CAA properties.",
          "x-auditable": true
        }
      }
    }
  ],
  "title": "CAA Record"
}
object dns-records_CERTRecord
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-records_dns-record-shared-fields"
    },
    {
      "type": "object",
      "properties": {
        "data": {
          "type": "object",
          "properties": {
            "type": {
              "type": "number",
              "example": 9,
              "maximum": 65535,
              "minimum": 0,
              "description": "Type.",
              "x-auditable": true
            },
            "key_tag": {
              "type": "number",
              "example": 1,
              "maximum": 65535,
              "minimum": 0,
              "description": "Key Tag.",
              "x-auditable": true
            },
            "algorithm": {
              "type": "number",
              "example": 8,
              "maximum": 255,
              "minimum": 0,
              "description": "Algorithm.",
              "x-auditable": true
            },
            "certificate": {
              "type": "string",
              "description": "Certificate.",
              "x-auditable": true
            }
          },
          "description": "Components of a CERT record."
        },
        "type": {
          "enum": [
            "CERT"
          ],
          "type": "string",
          "example": "CERT",
          "description": "Record type.",
          "x-auditable": true
        },
        "content": {
          "type": "string",
          "readOnly": true,
          "description": "Formatted CERT content. See 'data' to set CERT properties.",
          "x-auditable": true
        }
      }
    }
  ],
  "title": "CERT Record"
}
object dns-records_CNAMERecord
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-records_dns-record-shared-fields"
    },
    {
      "type": "object",
      "properties": {
        "type": {
          "enum": [
            "CNAME"
          ],
          "type": "string",
          "example": "CNAME",
          "description": "Record type.",
          "x-auditable": true
        },
        "content": {
          "type": "string",
          "description": "A valid hostname. Must not match the record's name.",
          "x-auditable": true
        },
        "settings": {
          "type": "object",
          "properties": {
            "flatten_cname": {
              "type": "boolean",
              "default": false,
              "example": true,
              "description": "If enabled, causes the CNAME record to be resolved externally and the resulting address records (e.g., A and AAAA) to be returned instead of the CNAME record itself. This setting is unavailable for proxied records, since they are always flattened.",
              "x-auditable": true
            }
          }
        }
      }
    }
  ],
  "title": "CNAME Record"
}
object dns-records_DNSKEYRecord
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-records_dns-record-shared-fields"
    },
    {
      "type": "object",
      "properties": {
        "data": {
          "type": "object",
          "properties": {
            "flags": {
              "type": "number",
              "example": 1,
              "maximum": 65535,
              "minimum": 0,
              "description": "Flags.",
              "x-auditable": true
            },
            "protocol": {
              "type": "number",
              "example": 3,
              "maximum": 255,
              "minimum": 0,
              "description": "Protocol.",
              "x-auditable": true
            },
            "algorithm": {
              "type": "number",
              "example": 5,
              "maximum": 255,
              "minimum": 0,
              "description": "Algorithm.",
              "x-auditable": true
            },
            "public_key": {
              "type": "string",
              "description": "Public Key.",
              "x-auditable": true
            }
          },
          "description": "Components of a DNSKEY record."
        },
        "type": {
          "enum": [
            "DNSKEY"
          ],
          "type": "string",
          "example": "DNSKEY",
          "description": "Record type.",
          "x-auditable": true
        },
        "content": {
          "type": "string",
          "readOnly": true,
          "description": "Formatted DNSKEY content. See 'data' to set DNSKEY properties.",
          "x-auditable": true
        }
      }
    }
  ],
  "title": "DNSKEY Record"
}
object dns-records_DSRecord
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-records_dns-record-shared-fields"
    },
    {
      "type": "object",
      "properties": {
        "data": {
          "type": "object",
          "properties": {
            "digest": {
              "type": "string",
              "description": "Digest.",
              "x-auditable": true
            },
            "key_tag": {
              "type": "number",
              "example": 1,
              "maximum": 65535,
              "minimum": 0,
              "description": "Key Tag.",
              "x-auditable": true
            },
            "algorithm": {
              "type": "number",
              "example": 3,
              "maximum": 255,
              "minimum": 0,
              "description": "Algorithm.",
              "x-auditable": true
            },
            "digest_type": {
              "type": "number",
              "example": 1,
              "maximum": 255,
              "minimum": 0,
              "description": "Digest Type.",
              "x-auditable": true
            }
          },
          "description": "Components of a DS record."
        },
        "type": {
          "enum": [
            "DS"
          ],
          "type": "string",
          "example": "DS",
          "description": "Record type.",
          "x-auditable": true
        },
        "content": {
          "type": "string",
          "readOnly": true,
          "description": "Formatted DS content. See 'data' to set DS properties.",
          "x-auditable": true
        }
      }
    }
  ],
  "title": "DS Record"
}
object dns-records_HTTPSRecord
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-records_dns-record-shared-fields"
    },
    {
      "type": "object",
      "properties": {
        "data": {
          "type": "object",
          "properties": {
            "value": {
              "type": "string",
              "example": "alpn=\"h3,h2\" ipv4hint=\"127.0.0.1\" ipv6hint=\"::1\"",
              "description": "Value.",
              "x-auditable": true
            },
            "target": {
              "type": "string",
              "example": ".",
              "description": "Target.",
              "x-auditable": true
            },
            "priority": {
              "type": "number",
              "example": 1,
              "maximum": 65535,
              "minimum": 0,
              "description": "Priority.",
              "x-auditable": true
            }
          },
          "description": "Components of a HTTPS record."
        },
        "type": {
          "enum": [
            "HTTPS"
          ],
          "type": "string",
          "example": "HTTPS",
          "description": "Record type.",
          "x-auditable": true
        },
        "content": {
          "type": "string",
          "readOnly": true,
          "description": "Formatted HTTPS content. See 'data' to set HTTPS properties.",
          "x-auditable": true
        }
      }
    }
  ],
  "title": "HTTPS Record"
}
object dns-records_LOCRecord
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-records_dns-record-shared-fields"
    },
    {
      "type": "object",
      "properties": {
        "data": {
          "type": "object",
          "properties": {
            "size": {
              "type": "number",
              "example": 100,
              "maximum": 90000000,
              "minimum": 0,
              "description": "Size of location in meters.",
              "x-auditable": true
            },
            "altitude": {
              "type": "number",
              "example": 0,
              "maximum": 42849672.95,
              "minimum": -100000,
              "description": "Altitude of location in meters.",
              "x-auditable": true
            },
            "lat_degrees": {
              "type": "number",
              "example": 37,
              "maximum": 90,
              "minimum": 0,
              "description": "Degrees of latitude.",
              "x-auditable": true
            },
            "lat_minutes": {
              "type": "number",
              "example": 46,
              "maximum": 59,
              "minimum": 0,
              "description": "Minutes of latitude.",
              "x-auditable": true
            },
            "lat_seconds": {
              "type": "number",
              "example": 46,
              "maximum": 59.999,
              "minimum": 0,
              "description": "Seconds of latitude.",
              "x-auditable": true
            },
            "long_degrees": {
              "type": "number",
              "example": 122,
              "maximum": 180,
              "minimum": 0,
              "description": "Degrees of longitude.",
              "x-auditable": true
            },
            "long_minutes": {
              "type": "number",
              "example": 23,
              "maximum": 59,
              "minimum": 0,
              "description": "Minutes of longitude.",
              "x-auditable": true
            },
            "long_seconds": {
              "type": "number",
              "example": 35,
              "maximum": 59.999,
              "minimum": 0,
              "description": "Seconds of longitude.",
              "x-auditable": true
            },
            "lat_direction": {
              "enum": [
                "N",
                "S"
              ],
              "type": "string",
              "example": "N",
              "description": "Latitude direction.",
              "x-auditable": true
            },
            "long_direction": {
              "enum": [
                "E",
                "W"
              ],
              "type": "string",
              "example": "W",
              "description": "Longitude direction.",
              "x-auditable": true
            },
            "precision_horz": {
              "type": "number",
              "example": 0,
              "maximum": 90000000,
              "minimum": 0,
              "description": "Horizontal precision of location.",
              "x-auditable": true
            },
            "precision_vert": {
              "type": "number",
              "example": 0,
              "maximum": 90000000,
              "minimum": 0,
              "description": "Vertical precision of location.",
              "x-auditable": true
            }
          },
          "description": "Components of a LOC record."
        },
        "type": {
          "enum": [
            "LOC"
          ],
          "type": "string",
          "example": "LOC",
          "description": "Record type.",
          "x-auditable": true
        },
        "content": {
          "type": "string",
          "example": "IN LOC 37 46 46 N 122 23 35 W 0m 100m 0m 0m",
          "readOnly": true,
          "description": "Formatted LOC content. See 'data' to set LOC properties.",
          "x-auditable": true
        }
      }
    }
  ],
  "title": "LOC Record"
}
object dns-records_MXRecord
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-records_dns-record-shared-fields"
    },
    {
      "type": "object",
      "properties": {
        "type": {
          "enum": [
            "MX"
          ],
          "type": "string",
          "example": "MX",
          "description": "Record type.",
          "x-auditable": true
        },
        "content": {
          "type": "string",
          "format": "hostname",
          "example": "mx.example.com",
          "description": "A valid mail server hostname.",
          "x-auditable": true
        },
        "priority": {
          "$ref": "#/components/schemas/dns-records_priority"
        }
      }
    }
  ],
  "title": "MX Record"
}
object dns-records_NAPTRRecord
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-records_dns-record-shared-fields"
    },
    {
      "type": "object",
      "properties": {
        "data": {
          "type": "object",
          "properties": {
            "flags": {
              "type": "string",
              "description": "Flags.",
              "x-auditable": true
            },
            "order": {
              "type": "number",
              "example": 100,
              "maximum": 65535,
              "minimum": 0,
              "description": "Order.",
              "x-auditable": true
            },
            "regex": {
              "type": "string",
              "description": "Regex.",
              "x-auditable": true
            },
            "service": {
              "type": "string",
              "description": "Service.",
              "x-auditable": true
            },
            "preference": {
              "type": "number",
              "example": 10,
              "maximum": 65535,
              "minimum": 0,
              "description": "Preference.",
              "x-auditable": true
            },
            "replacement": {
              "type": "string",
              "description": "Replacement.",
              "x-auditable": true
            }
          },
          "description": "Components of a NAPTR record."
        },
        "type": {
          "enum": [
            "NAPTR"
          ],
          "type": "string",
          "example": "NAPTR",
          "description": "Record type.",
          "x-auditable": true
        },
        "content": {
          "type": "string",
          "readOnly": true,
          "description": "Formatted NAPTR content. See 'data' to set NAPTR properties.",
          "x-auditable": true
        }
      }
    }
  ],
  "title": "NAPTR Record"
}
object dns-records_NSRecord
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-records_dns-record-shared-fields"
    },
    {
      "type": "object",
      "properties": {
        "type": {
          "enum": [
            "NS"
          ],
          "type": "string",
          "example": "NS",
          "description": "Record type.",
          "x-auditable": true
        },
        "content": {
          "type": "string",
          "example": "ns1.example.com",
          "description": "A valid name server host name.",
          "x-auditable": true
        }
      }
    }
  ],
  "title": "NS Record"
}
object dns-records_OPENPGPKEYRecord
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-records_dns-record-shared-fields"
    },
    {
      "type": "object",
      "properties": {
        "type": {
          "enum": [
            "OPENPGPKEY"
          ],
          "type": "string",
          "example": "OPENPGPKEY",
          "description": "Record type.",
          "x-auditable": true
        },
        "content": {
          "type": "string",
          "description": "A single Base64-encoded OpenPGP Transferable Public Key (RFC 4880 Section 11.1)",
          "x-auditable": true
        }
      }
    }
  ],
  "title": "OPENPGPKEY Record"
}
object dns-records_PTRRecord
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-records_dns-record-shared-fields"
    },
    {
      "type": "object",
      "properties": {
        "type": {
          "enum": [
            "PTR"
          ],
          "type": "string",
          "example": "PTR",
          "description": "Record type.",
          "x-auditable": true
        },
        "content": {
          "type": "string",
          "example": "example.com",
          "description": "Domain name pointing to the address.",
          "x-auditable": true
        }
      }
    }
  ],
  "title": "PTR Record"
}
object dns-records_SMIMEARecord
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-records_dns-record-shared-fields"
    },
    {
      "type": "object",
      "properties": {
        "data": {
          "type": "object",
          "properties": {
            "usage": {
              "type": "number",
              "example": 3,
              "maximum": 255,
              "minimum": 0,
              "description": "Usage.",
              "x-auditable": true
            },
            "selector": {
              "type": "number",
              "example": 0,
              "maximum": 255,
              "minimum": 0,
              "description": "Selector.",
              "x-auditable": true
            },
            "certificate": {
              "type": "string",
              "description": "Certificate.",
              "x-auditable": true
            },
            "matching_type": {
              "type": "number",
              "example": 0,
              "maximum": 255,
              "minimum": 0,
              "description": "Matching Type.",
              "x-auditable": true
            }
          },
          "description": "Components of a SMIMEA record."
        },
        "type": {
          "enum": [
            "SMIMEA"
          ],
          "type": "string",
          "example": "SMIMEA",
          "description": "Record type.",
          "x-auditable": true
        },
        "content": {
          "type": "string",
          "readOnly": true,
          "description": "Formatted SMIMEA content. See 'data' to set SMIMEA properties.",
          "x-auditable": true
        }
      }
    }
  ],
  "title": "SMIMEA Record"
}
object dns-records_SRVRecord
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-records_dns-record-shared-fields"
    },
    {
      "type": "object",
      "properties": {
        "data": {
          "type": "object",
          "properties": {
            "port": {
              "type": "number",
              "example": 8806,
              "maximum": 65535,
              "minimum": 0,
              "description": "The port of the service.",
              "x-auditable": true
            },
            "target": {
              "type": "string",
              "format": "hostname",
              "example": "example.com",
              "description": "A valid hostname.",
              "x-auditable": true
            },
            "weight": {
              "type": "number",
              "example": 5,
              "maximum": 65535,
              "minimum": 0,
              "description": "The record weight.",
              "x-auditable": true
            },
            "priority": {
              "$ref": "#/components/schemas/dns-records_priority"
            }
          },
          "description": "Components of a SRV record."
        },
        "type": {
          "enum": [
            "SRV"
          ],
          "type": "string",
          "example": "SRV",
          "description": "Record type.",
          "x-auditable": true
        },
        "content": {
          "type": "string",
          "example": "10 IN SRV 5 8806 example.com.",
          "readOnly": true,
          "description": "Priority, weight, port, and SRV target. See 'data' for setting the individual component values.",
          "x-auditable": true
        }
      }
    }
  ],
  "title": "SRV Record"
}
object dns-records_SSHFPRecord
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-records_dns-record-shared-fields"
    },
    {
      "type": "object",
      "properties": {
        "data": {
          "type": "object",
          "properties": {
            "type": {
              "type": "number",
              "example": 1,
              "maximum": 255,
              "minimum": 0,
              "description": "Type.",
              "x-auditable": true
            },
            "algorithm": {
              "type": "number",
              "example": 2,
              "maximum": 255,
              "minimum": 0,
              "description": "Algorithm.",
              "x-auditable": true
            },
            "fingerprint": {
              "type": "string",
              "description": "Fingerprint.",
              "x-auditable": true
            }
          },
          "description": "Components of a SSHFP record."
        },
        "type": {
          "enum": [
            "SSHFP"
          ],
          "type": "string",
          "example": "SSHFP",
          "description": "Record type.",
          "x-auditable": true
        },
        "content": {
          "type": "string",
          "readOnly": true,
          "description": "Formatted SSHFP content. See 'data' to set SSHFP properties.",
          "x-auditable": true
        }
      }
    }
  ],
  "title": "SSHFP Record"
}
object dns-records_SVCBRecord
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-records_dns-record-shared-fields"
    },
    {
      "type": "object",
      "properties": {
        "data": {
          "type": "object",
          "properties": {
            "value": {
              "type": "string",
              "example": "alpn=\"h3,h2\" ipv4hint=\"127.0.0.1\" ipv6hint=\"::1\"",
              "description": "Value.",
              "x-auditable": true
            },
            "target": {
              "type": "string",
              "example": ".",
              "description": "Target.",
              "x-auditable": true
            },
            "priority": {
              "type": "number",
              "example": 1,
              "maximum": 65535,
              "minimum": 0,
              "description": "Priority.",
              "x-auditable": true
            }
          },
          "description": "Components of a SVCB record."
        },
        "type": {
          "enum": [
            "SVCB"
          ],
          "type": "string",
          "example": "SVCB",
          "description": "Record type.",
          "x-auditable": true
        },
        "content": {
          "type": "string",
          "readOnly": true,
          "description": "Formatted SVCB content. See 'data' to set SVCB properties.",
          "x-auditable": true
        }
      }
    }
  ],
  "title": "SVCB Record"
}
object dns-records_TLSARecord
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-records_dns-record-shared-fields"
    },
    {
      "type": "object",
      "properties": {
        "data": {
          "type": "object",
          "properties": {
            "usage": {
              "type": "number",
              "example": 0,
              "maximum": 255,
              "minimum": 0,
              "description": "Usage.",
              "x-auditable": true
            },
            "selector": {
              "type": "number",
              "example": 0,
              "maximum": 255,
              "minimum": 0,
              "description": "Selector.",
              "x-auditable": true
            },
            "certificate": {
              "type": "string",
              "description": "Certificate.",
              "x-auditable": true
            },
            "matching_type": {
              "type": "number",
              "example": 1,
              "maximum": 255,
              "minimum": 0,
              "description": "Matching Type.",
              "x-auditable": true
            }
          },
          "description": "Components of a TLSA record."
        },
        "type": {
          "enum": [
            "TLSA"
          ],
          "type": "string",
          "example": "TLSA",
          "description": "Record type.",
          "x-auditable": true
        },
        "content": {
          "type": "string",
          "readOnly": true,
          "description": "Formatted TLSA content. See 'data' to set TLSA properties.",
          "x-auditable": true
        }
      }
    }
  ],
  "title": "TLSA Record"
}
object dns-records_TXTRecord
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-records_dns-record-shared-fields"
    },
    {
      "type": "object",
      "properties": {
        "type": {
          "enum": [
            "TXT"
          ],
          "type": "string",
          "example": "TXT",
          "description": "Record type.",
          "x-auditable": true
        },
        "content": {
          "type": "string",
          "example": "\"v=spf1 include:example.com -all\"",
          "description": "Text content for the record. The content must consist of quoted \"character strings\" (RFC 1035), each with a length of up to 255 bytes. Strings exceeding this allowed maximum length are automatically split.\n\nLearn more at <https://www.cloudflare.com/learning/dns/dns-records/dns-txt-record/>.",
          "x-auditable": true
        }
      }
    }
  ],
  "title": "TXT Record"
}
object dns-records_URIRecord
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-records_dns-record-shared-fields"
    },
    {
      "type": "object",
      "properties": {
        "data": {
          "type": "object",
          "properties": {
            "target": {
              "type": "string",
              "example": "http://example.com/example.html",
              "description": "The record content.",
              "x-auditable": true
            },
            "weight": {
              "type": "number",
              "example": 20,
              "maximum": 65535,
              "minimum": 0,
              "description": "The record weight.",
              "x-auditable": true
            }
          },
          "description": "Components of a URI record."
        },
        "type": {
          "enum": [
            "URI"
          ],
          "type": "string",
          "example": "URI",
          "description": "Record type.",
          "x-auditable": true
        },
        "content": {
          "type": "string",
          "readOnly": true,
          "description": "Formatted URI content. See 'data' to set URI properties.",
          "x-auditable": true
        },
        "priority": {
          "$ref": "#/components/schemas/dns-records_priority"
        }
      }
    }
  ],
  "title": "URI Record"
}
object dns-records_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-records_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result_info": {
          "type": "object",
          "properties": {
            "page": {
              "type": "number",
              "example": 1,
              "description": "Current page within paginated list of results."
            },
            "count": {
              "type": "number",
              "example": 1,
              "description": "Total number of results for the requested service."
            },
            "per_page": {
              "type": "number",
              "example": 20,
              "description": "Number of results per page of results."
            },
            "total_count": {
              "type": "number",
              "example": 2000,
              "description": "Total results available without any search parameters."
            },
            "total_pages": {
              "type": "number",
              "example": 100,
              "description": "The number of total pages in the entire result set."
            }
          }
        }
      }
    }
  ]
}
object dns-records_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/dns-records_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/dns-records_messages"
    }
  }
}
object dns-records_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/dns-records_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/dns-records_messages"
        }
      ],
      "example": []
    }
  }
}
object dns-records_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-records_api-response-common"
    }
  ]
}
string dns-records_comment
{
  "type": "string",
  "example": "Domain verification record",
  "description": "Comments or notes about the DNS record. This field has no effect on DNS responses.",
  "x-auditable": true
}
string dns-records_direction
{
  "enum": [
    "asc",
    "desc"
  ],
  "type": "string",
  "default": "asc",
  "description": "Direction to order DNS records in."
}
object dns-records_dns-record-batch-delete
{
  "type": "object",
  "allOf": [
    {
      "type": "object",
      "properties": {
        "id": {
          "$ref": "#/components/schemas/dns-records_identifier"
        }
      }
    }
  ],
  "required": [
    "id"
  ]
}
object dns-records_dns-record-batch-patch
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-records_dns-record-patch"
    }
  ],
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/dns-records_identifier"
    }
  }
}
object dns-records_dns-record-batch-post
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-records_dns-record-post"
    }
  ]
}
object dns-records_dns-record-batch-put
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-records_dns-record-post"
    }
  ],
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/dns-records_identifier"
    }
  }
}
object dns-records_dns-record-patch
{
  "type": "object",
  "anyOf": [
    {
      "$ref": "#/components/schemas/dns-records_dns-record-without-data"
    },
    {
      "$ref": "#/components/schemas/dns-records_dns-record-with-data"
    }
  ]
}
object dns-records_dns-record-post
{
  "type": "object",
  "anyOf": [
    {
      "$ref": "#/components/schemas/dns-records_dns-record-without-data"
    },
    {
      "$ref": "#/components/schemas/dns-records_dns-record-with-data"
    }
  ]
}
object dns-records_dns-record-response
{
  "type": "object",
  "allOf": [
    {
      "type": "object",
      "anyOf": [
        {
          "$ref": "#/components/schemas/dns-records_dns-record-without-data"
        },
        {
          "$ref": "#/components/schemas/dns-records_dns-record-with-data"
        }
      ]
    },
    {
      "type": "object",
      "required": [
        "id",
        "proxiable",
        "created_on",
        "modified_on",
        "meta"
      ],
      "properties": {
        "id": {
          "$ref": "#/components/schemas/dns-records_identifier"
        },
        "meta": {
          "type": "object",
          "readOnly": true,
          "description": "Extra Cloudflare-specific information about the record.",
          "x-stainless-terraform-configurability": "computed"
        },
        "proxiable": {
          "type": "boolean",
          "example": true,
          "readOnly": true,
          "description": "Whether the record can be proxied by Cloudflare or not.",
          "x-stainless-terraform-configurability": "computed"
        },
        "created_on": {
          "type": "string",
          "format": "date-time",
          "example": "2014-01-01T05:20:00.12345Z",
          "readOnly": true,
          "description": "When the record was created.",
          "x-stainless-terraform-configurability": "computed"
        },
        "modified_on": {
          "type": "string",
          "format": "date-time",
          "example": "2014-01-01T05:20:00.12345Z",
          "readOnly": true,
          "description": "When the record was last modified.",
          "x-stainless-terraform-configurability": "computed"
        },
        "tags_modified_on": {
          "type": "string",
          "format": "date-time",
          "example": "2025-01-01T05:20:00.12345Z",
          "readOnly": true,
          "description": "When the record tags were last modified. Omitted if there are no tags.",
          "x-stainless-terraform-configurability": "computed"
        },
        "comment_modified_on": {
          "type": "string",
          "format": "date-time",
          "example": "2024-01-01T05:20:00.12345Z",
          "readOnly": true,
          "description": "When the record comment was last modified. Omitted if there is no comment.",
          "x-stainless-terraform-configurability": "computed"
        }
      }
    }
  ],
  "required": [
    "name",
    "type",
    "content",
    "data",
    "proxied",
    "ttl",
    "settings",
    "comment",
    "tags"
  ],
  "discriminator": {
    "propertyName": "type"
  }
}
object dns-records_dns-record-scan-batch-accept
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-records_dns-record-patch"
    }
  ]
}
object dns-records_dns-record-scan-batch-reject
{
  "type": "object",
  "allOf": [
    {
      "type": "object",
      "properties": {
        "id": {
          "$ref": "#/components/schemas/dns-records_identifier"
        }
      }
    }
  ],
  "required": [
    "id"
  ]
}
object dns-records_dns-record-shared-fields
{
  "type": "object",
  "properties": {
    "ttl": {
      "$ref": "#/components/schemas/dns-records_ttl"
    },
    "name": {
      "$ref": "#/components/schemas/dns-records_name"
    },
    "tags": {
      "$ref": "#/components/schemas/dns-records_tags"
    },
    "comment": {
      "$ref": "#/components/schemas/dns-records_comment"
    },
    "proxied": {
      "$ref": "#/components/schemas/dns-records_proxied"
    },
    "settings": {
      "$ref": "#/components/schemas/dns-records_settings"
    }
  }
}
object dns-records_dns-record-with-data
{
  "type": "object",
  "oneOf": [
    {
      "$ref": "#/components/schemas/dns-records_CAARecord"
    },
    {
      "$ref": "#/components/schemas/dns-records_CERTRecord"
    },
    {
      "$ref": "#/components/schemas/dns-records_DNSKEYRecord"
    },
    {
      "$ref": "#/components/schemas/dns-records_DSRecord"
    },
    {
      "$ref": "#/components/schemas/dns-records_HTTPSRecord"
    },
    {
      "$ref": "#/components/schemas/dns-records_LOCRecord"
    },
    {
      "$ref": "#/components/schemas/dns-records_NAPTRRecord"
    },
    {
      "$ref": "#/components/schemas/dns-records_SMIMEARecord"
    },
    {
      "$ref": "#/components/schemas/dns-records_SRVRecord"
    },
    {
      "$ref": "#/components/schemas/dns-records_SSHFPRecord"
    },
    {
      "$ref": "#/components/schemas/dns-records_SVCBRecord"
    },
    {
      "$ref": "#/components/schemas/dns-records_TLSARecord"
    },
    {
      "$ref": "#/components/schemas/dns-records_URIRecord"
    }
  ]
}
object dns-records_dns-record-without-data
{
  "type": "object",
  "oneOf": [
    {
      "$ref": "#/components/schemas/dns-records_ARecord"
    },
    {
      "$ref": "#/components/schemas/dns-records_AAAARecord"
    },
    {
      "$ref": "#/components/schemas/dns-records_CNAMERecord"
    },
    {
      "$ref": "#/components/schemas/dns-records_MXRecord"
    },
    {
      "$ref": "#/components/schemas/dns-records_NSRecord"
    },
    {
      "$ref": "#/components/schemas/dns-records_OPENPGPKEYRecord"
    },
    {
      "$ref": "#/components/schemas/dns-records_PTRRecord"
    },
    {
      "$ref": "#/components/schemas/dns-records_TXTRecord"
    }
  ]
}
object dns-records_dns-request-batch-object
{
  "type": "object",
  "properties": {
    "puts": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/dns-records_dns-record-batch-put"
      }
    },
    "posts": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/dns-records_dns-record-batch-post"
      }
    },
    "deletes": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/dns-records_dns-record-batch-delete"
      }
    },
    "patches": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/dns-records_dns-record-batch-patch"
      }
    }
  }
}
object dns-records_dns-request-review-scan-object
{
  "type": "object",
  "properties": {
    "accepts": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/dns-records_dns-record-scan-batch-accept"
      }
    },
    "rejects": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/dns-records_dns-record-scan-batch-reject"
      }
    }
  }
}
object dns-records_dns-response-batch-object
{
  "type": "object",
  "properties": {
    "puts": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/dns-records_dns-record-response"
      }
    },
    "posts": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/dns-records_dns-record-response"
      }
    },
    "deletes": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/dns-records_dns-record-response"
      }
    },
    "patches": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/dns-records_dns-record-response"
      }
    }
  }
}
object dns-records_dns-response-review-scan-object
{
  "type": "object",
  "properties": {
    "accepts": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/dns-records_dns-record-response"
      }
    },
    "rejects": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/dns-records_identifier"
      }
    }
  }
}
object dns-records_dns_response_account_usage
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-records_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "required": [
            "record_usage",
            "record_quota"
          ],
          "properties": {
            "record_quota": {
              "type": "integer",
              "example": 1000000,
              "minimum": 0,
              "nullable": true,
              "description": "Maximum number of DNS records allowed across all public zones in the account. Null if using zone-level quota."
            },
            "record_usage": {
              "type": "integer",
              "example": 5000,
              "minimum": 0,
              "description": "Current number of DNS records across all public zones in the account."
            },
            "internal_record_quota": {
              "type": "integer",
              "example": 1000000,
              "minimum": 0,
              "description": "Maximum number of DNS records allowed across all internal zones in the account. Only present if internal DNS is enabled."
            },
            "internal_record_usage": {
              "type": "integer",
              "example": 5000,
              "minimum": 0,
              "description": "Current number of DNS records across all internal zones in the account. Only present if internal DNS is enabled."
            }
          }
        }
      }
    }
  ]
}
object dns-records_dns_response_batch
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-records_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/dns-records_dns-response-batch-object"
        }
      }
    }
  ]
}
object dns-records_dns_response_collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-records_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/dns-records_dns-record-response"
          }
        }
      }
    }
  ]
}
object dns-records_dns_response_import_scan
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-records_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "recs_added": {
              "type": "number",
              "example": 5,
              "description": "Number of DNS records added."
            },
            "total_records_parsed": {
              "type": "number",
              "example": 5,
              "description": "Total number of DNS records parsed."
            }
          }
        }
      }
    }
  ]
}
object dns-records_dns_response_review_scan
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-records_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/dns-records_dns-response-review-scan-object"
        }
      }
    }
  ]
}
object dns-records_dns_response_single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-records_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/dns-records_dns-record-response"
        }
      }
    }
  ]
}
object dns-records_dns_response_trigger_scan
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-records_api-response-single"
    }
  ]
}
object dns-records_dns_response_zone_usage
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-records_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "required": [
            "record_usage",
            "record_quota"
          ],
          "properties": {
            "record_quota": {
              "type": "integer",
              "example": 200,
              "minimum": 0,
              "nullable": true,
              "description": "Maximum number of DNS records allowed for the zone. Null if using account-level quota."
            },
            "record_usage": {
              "type": "integer",
              "example": 150,
              "minimum": 0,
              "description": "Current number of DNS records in the zone."
            }
          }
        }
      }
    }
  ]
}
string dns-records_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Identifier.",
  "x-auditable": true
}
string dns-records_match
{
  "enum": [
    "any",
    "all"
  ],
  "type": "string",
  "default": "all",
  "example": "any",
  "description": "Whether to match all search requirements or at least one (any). If set to `all`, acts like a logical AND between filters. If set to `any`, acts like a logical OR instead. Note that the interaction between tag filters is controlled by the `tag-match` parameter instead.\n"
}
array dns-records_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string dns-records_name
{
  "type": "string",
  "example": "example.com",
  "maxLength": 255,
  "minLength": 1,
  "description": "Complete DNS record name, including the zone name, in Punycode.",
  "x-auditable": true
}
string dns-records_order
{
  "enum": [
    "type",
    "name",
    "content",
    "ttl",
    "proxied"
  ],
  "type": "string",
  "default": "type",
  "description": "Field to order DNS records by."
}
number dns-records_page
{
  "type": "number",
  "default": 1,
  "minimum": 1,
  "description": "Page number of paginated results."
}
number dns-records_per_page
{
  "type": "number",
  "default": 100,
  "example": 5,
  "maximum": 5000000,
  "minimum": 1,
  "description": "Number of DNS records per page."
}
number dns-records_priority
{
  "type": "number",
  "example": 10,
  "maximum": 65535,
  "minimum": 0,
  "description": "Required for MX and URI records; ignored for other record types (but may still be returned by the API). Records with lower priorities are preferred. This field is to be deprecated in favor of the priority field within the data map.",
  "x-auditable": true
}
boolean dns-records_proxied
{
  "type": "boolean",
  "default": false,
  "example": true,
  "description": "Whether the record is receiving the performance and security benefits of Cloudflare.",
  "x-auditable": true
}
string dns-records_search
{
  "type": "string",
  "example": "www.cloudflare.com",
  "description": "Allows searching in multiple properties of a DNS 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. This parameter works independently of the `match` setting. For automated searches, please use the other available parameters.\n"
}
object dns-records_settings
{
  "type": "object",
  "properties": {
    "ipv4_only": {
      "type": "boolean",
      "default": false,
      "example": true,
      "description": "When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6.",
      "x-auditable": true
    },
    "ipv6_only": {
      "type": "boolean",
      "default": false,
      "example": true,
      "description": "When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6.",
      "x-auditable": true
    }
  },
  "description": "Settings for the DNS record."
}
string dns-records_tag_match
{
  "enum": [
    "any",
    "all"
  ],
  "type": "string",
  "default": "all",
  "example": "any",
  "description": "Whether to match all tag search requirements or at least one (any). If set to `all`, acts like a logical AND between tag filters. If set to `any`, acts like a logical OR instead. Note that the regular `match` parameter is still used to combine the resulting condition with other filters that aren't related to tags.\n"
}
array dns-records_tags
{
  "type": "array",
  "items": {
    "type": "string",
    "example": "owner:dns-team",
    "description": "Individual tag of the form name:value (the name must consist of only letters, numbers, underscores and hyphens)",
    "x-auditable": true
  },
  "default": [],
  "description": "Custom tags for the DNS record. This field has no effect on DNS responses.",
  "x-stainless-collection-type": "set"
}
number dns-records_ttl
{
  "type": "number",
  "anyOf": [
    {
      "type": "number",
      "example": 3600,
      "maximum": 86400,
      "minimum": 30
    },
    {
      "enum": [
        1
      ],
      "type": "number"
    }
  ],
  "default": 1,
  "example": 3600,
  "description": "Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones.",
  "x-auditable": true
}
string dns-records_type
{
  "enum": [
    "A",
    "AAAA",
    "CAA",
    "CERT",
    "CNAME",
    "DNSKEY",
    "DS",
    "HTTPS",
    "LOC",
    "MX",
    "NAPTR",
    "NS",
    "OPENPGPKEY",
    "PTR",
    "SMIMEA",
    "SRV",
    "SSHFP",
    "SVCB",
    "TLSA",
    "TXT",
    "URI"
  ],
  "type": "string",
  "example": "A",
  "description": "Record type.",
  "x-auditable": true
}
object dns-settings_account_settings
{
  "type": "object",
  "required": [
    "zone_defaults"
  ],
  "properties": {
    "zone_defaults": {
      "$ref": "#/components/schemas/dns-settings_dns-settings-account-response"
    }
  }
}
object dns-settings_account_settings_patch
{
  "type": "object",
  "properties": {
    "zone_defaults": {
      "$ref": "#/components/schemas/dns-settings_dns-settings-account-patch"
    }
  }
}
object dns-settings_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-settings_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result_info": {
          "type": "object",
          "properties": {
            "page": {
              "type": "number",
              "example": 1,
              "description": "Current page within paginated list of results."
            },
            "count": {
              "type": "number",
              "example": 1,
              "description": "Total number of results for the requested service."
            },
            "per_page": {
              "type": "number",
              "example": 20,
              "description": "Number of results per page of results."
            },
            "total_count": {
              "type": "number",
              "example": 2000,
              "description": "Total results available without any search parameters."
            },
            "total_pages": {
              "type": "number",
              "example": 100,
              "description": "The number of total pages in the entire result set."
            }
          }
        }
      }
    }
  ]
}
object dns-settings_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/dns-settings_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/dns-settings_messages"
    }
  }
}
object dns-settings_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/dns-settings_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/dns-settings_messages"
        }
      ],
      "example": []
    }
  }
}
object dns-settings_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-settings_api-response-common"
    }
  ]
}
string dns-settings_created_time
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-01T05:20:00.12345Z",
  "readOnly": true,
  "description": "When the view was created.",
  "x-auditable": true
}
string dns-settings_direction
{
  "enum": [
    "asc",
    "desc"
  ],
  "type": "string",
  "default": "asc",
  "description": "Direction to order DNS views in."
}
object dns-settings_dns-settings-account-patch
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-settings_dns-settings-patch"
    },
    {
      "type": "object",
      "properties": {
        "nameservers": {
          "type": "object",
          "properties": {
            "type": {
              "enum": [
                "cloudflare.standard",
                "cloudflare.standard.random",
                "custom.account",
                "custom.tenant"
              ],
              "type": "string",
              "example": "cloudflare.standard",
              "description": "Nameserver type",
              "x-auditable": true
            }
          },
          "description": "Settings determining the nameservers through which the zone should be available."
        }
      }
    }
  ]
}
object dns-settings_dns-settings-account-response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-settings_dns-settings-response"
    },
    {
      "type": "object",
      "required": [
        "nameservers"
      ],
      "properties": {
        "nameservers": {
          "type": "object",
          "required": [
            "type"
          ],
          "properties": {
            "type": {
              "enum": [
                "cloudflare.standard",
                "cloudflare.standard.random",
                "custom.account",
                "custom.tenant"
              ],
              "type": "string",
              "example": "cloudflare.standard",
              "description": "Nameserver type",
              "x-auditable": true
            }
          },
          "description": "Settings determining the nameservers through which the zone should be available."
        }
      }
    }
  ]
}
object dns-settings_dns-settings-base
{
  "type": "object",
  "properties": {
    "soa": {
      "$ref": "#/components/schemas/dns-settings_soa-base"
    },
    "ns_ttl": {
      "$ref": "#/components/schemas/dns-settings_ns_ttl"
    },
    "zone_mode": {
      "$ref": "#/components/schemas/dns-settings_zone_mode"
    },
    "internal_dns": {
      "$ref": "#/components/schemas/dns-settings_internal_dns_base"
    },
    "foundation_dns": {
      "$ref": "#/components/schemas/dns-settings_foundation_dns"
    },
    "multi_provider": {
      "$ref": "#/components/schemas/dns-settings_multi_provider"
    },
    "flatten_all_cnames": {
      "$ref": "#/components/schemas/dns-settings_flatten_all_cnames"
    },
    "secondary_overrides": {
      "$ref": "#/components/schemas/dns-settings_secondary_overrides"
    }
  }
}
object dns-settings_dns-settings-patch
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-settings_dns-settings-base"
    }
  ]
}
object dns-settings_dns-settings-response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-settings_dns-settings-base"
    },
    {
      "type": "object",
      "required": [
        "flatten_all_cnames",
        "foundation_dns",
        "multi_provider",
        "secondary_overrides",
        "soa",
        "ns_ttl",
        "zone_mode",
        "internal_dns"
      ],
      "properties": {
        "soa": {
          "$ref": "#/components/schemas/dns-settings_soa-response"
        },
        "internal_dns": {
          "$ref": "#/components/schemas/dns-settings_internal_dns_response"
        }
      }
    }
  ]
}
object dns-settings_dns-settings-zone-patch
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-settings_dns-settings-patch"
    },
    {
      "type": "object",
      "properties": {
        "nameservers": {
          "type": "object",
          "properties": {
            "type": {
              "enum": [
                "cloudflare.standard",
                "custom.account",
                "custom.tenant",
                "custom.zone"
              ],
              "type": "string",
              "example": "cloudflare.standard",
              "description": "Nameserver type",
              "x-auditable": true
            },
            "ns_set": {
              "type": "integer",
              "example": 1,
              "maximum": 5,
              "minimum": 1,
              "description": "Configured nameserver set to be used for this zone",
              "x-auditable": true
            }
          },
          "description": "Settings determining the nameservers through which the zone should be available."
        }
      }
    }
  ]
}
object dns-settings_dns-settings-zone-response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-settings_dns-settings-response"
    },
    {
      "type": "object",
      "required": [
        "nameservers"
      ],
      "properties": {
        "nameservers": {
          "type": "object",
          "required": [
            "type"
          ],
          "properties": {
            "type": {
              "enum": [
                "cloudflare.standard",
                "custom.account",
                "custom.tenant",
                "custom.zone"
              ],
              "type": "string",
              "example": "cloudflare.standard",
              "description": "Nameserver type",
              "x-auditable": true
            },
            "ns_set": {
              "type": "integer",
              "example": 1,
              "maximum": 5,
              "minimum": 1,
              "description": "Configured nameserver set to be used for this zone",
              "x-auditable": true
            }
          },
          "description": "Settings determining the nameservers through which the zone should be available."
        }
      }
    }
  ]
}
object dns-settings_dns-view
{
  "type": "object",
  "properties": {
    "name": {
      "$ref": "#/components/schemas/dns-settings_name"
    },
    "zones": {
      "$ref": "#/components/schemas/dns-settings_zones"
    },
    "created_time": {
      "$ref": "#/components/schemas/dns-settings_created_time"
    },
    "modified_time": {
      "$ref": "#/components/schemas/dns-settings_modified_time"
    }
  }
}
object dns-settings_dns-view-patch
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-settings_dns-view"
    }
  ]
}
object dns-settings_dns-view-post
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-settings_dns-view"
    }
  ],
  "required": [
    "name",
    "zones"
  ]
}
object dns-settings_dns-view-response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-settings_dns-view"
    },
    {
      "type": "object",
      "required": [
        "id"
      ],
      "properties": {
        "id": {
          "$ref": "#/components/schemas/dns-settings_identifier"
        }
      }
    }
  ],
  "required": [
    "id",
    "name",
    "zones",
    "created_time",
    "modified_time"
  ]
}
object dns-settings_dns_response_single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-settings_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/dns-settings_account_settings"
        }
      }
    }
  ],
  "required": [
    "result"
  ]
}
object dns-settings_dns_view_response_collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-settings_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/dns-settings_dns-view-response"
          }
        }
      }
    }
  ]
}
object dns-settings_dns_view_response_single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-settings_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/dns-settings_dns-view-response"
        }
      }
    }
  ]
}
boolean dns-settings_flatten_all_cnames
{
  "type": "boolean",
  "example": false,
  "description": "Whether to flatten all CNAME records in the zone. Note that, due to DNS limitations, a CNAME record at the zone apex will always be flattened.",
  "x-auditable": true
}
boolean dns-settings_foundation_dns
{
  "type": "boolean",
  "example": false,
  "description": "Whether to enable Foundation DNS Advanced Nameservers on the zone.",
  "x-auditable": true
}
string dns-settings_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Identifier.",
  "x-auditable": true
}
object dns-settings_internal_dns_base
{
  "type": "object",
  "properties": {
    "reference_zone_id": {
      "type": "string",
      "example": {
        "type": "string",
        "example": "023e105f4ecef8ad9ca31a8372d0c353",
        "maxLength": 32,
        "description": "Identifier.",
        "x-auditable": true
      },
      "description": "The ID of the zone to fallback to."
    }
  },
  "description": "Settings for this internal zone."
}
object dns-settings_internal_dns_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-settings_internal_dns_base"
    },
    {
      "type": "object",
      "required": [
        "reference_zone_id"
      ]
    }
  ]
}
string dns-settings_match
{
  "enum": [
    "any",
    "all"
  ],
  "type": "string",
  "default": "all",
  "example": "any",
  "description": "Whether to match all search requirements or at least one (any). If set to `all`, acts like a logical AND between filters. If set to `any`, acts like a logical OR instead.\n"
}
array dns-settings_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string dns-settings_modified_time
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-01T05:20:00.12345Z",
  "readOnly": true,
  "description": "When the view was last modified.",
  "x-auditable": true
}
boolean dns-settings_multi_provider
{
  "type": "boolean",
  "example": false,
  "description": "Whether to enable multi-provider DNS, which causes Cloudflare to activate the zone even when non-Cloudflare NS records exist, and to respect NS records at the zone apex during outbound zone transfers.",
  "x-auditable": true
}
string dns-settings_name
{
  "type": "string",
  "example": "my view",
  "maxLength": 255,
  "minLength": 1,
  "description": "The name of the view.",
  "x-auditable": true
}
number dns-settings_ns_ttl
{
  "type": "number",
  "example": 86400,
  "maximum": 86400,
  "minimum": 30,
  "description": "The time to live (TTL) of the zone's nameserver (NS) records.",
  "x-auditable": true
}
string dns-settings_order
{
  "enum": [
    "name",
    "created_on",
    "modified_on"
  ],
  "type": "string",
  "default": "type",
  "description": "Field to order DNS views by."
}
number dns-settings_page
{
  "type": "number",
  "default": 1,
  "minimum": 1,
  "description": "Page number of paginated results."
}
number dns-settings_per_page
{
  "type": "number",
  "default": 100,
  "example": 5,
  "maximum": 5000000,
  "minimum": 1,
  "description": "Number of DNS views per page."
}
object dns-settings_schemas-dns_response_single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-settings_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/dns-settings_dns-settings-zone-response"
        }
      }
    }
  ],
  "required": [
    "result"
  ]
}
boolean dns-settings_secondary_overrides
{
  "type": "boolean",
  "example": false,
  "description": "Allows a Secondary DNS zone to use (proxied) override records and CNAME flattening at the zone apex.",
  "x-auditable": true
}
object dns-settings_soa-base
{
  "type": "object",
  "properties": {
    "ttl": {
      "type": "number",
      "example": 3600,
      "maximum": 86400,
      "minimum": 300,
      "description": "The time to live (TTL) of the SOA record itself.",
      "x-auditable": true
    },
    "mname": {
      "type": "string",
      "example": "kristina.ns.cloudflare.com",
      "nullable": true,
      "description": "The primary nameserver, which may be used for outbound zone transfers. If null, a Cloudflare-assigned value will be used.",
      "x-auditable": true
    },
    "retry": {
      "type": "number",
      "example": 2400,
      "maximum": 86400,
      "minimum": 600,
      "description": "Time in seconds after which secondary servers should retry queries after the primary server was unresponsive.",
      "x-auditable": true
    },
    "rname": {
      "type": "string",
      "example": "admin.example.com",
      "description": "The email address of the zone administrator, with the first label representing the local part of the email address.",
      "x-auditable": true
    },
    "expire": {
      "type": "number",
      "example": 604800,
      "maximum": 2419200,
      "minimum": 86400,
      "description": "Time in seconds of being unable to query the primary server after which secondary servers should stop serving the zone.",
      "x-auditable": true
    },
    "min_ttl": {
      "type": "number",
      "example": 1800,
      "maximum": 86400,
      "minimum": 60,
      "description": "The time to live (TTL) for negative caching of records within the zone.",
      "x-auditable": true
    },
    "refresh": {
      "type": "number",
      "example": 10000,
      "maximum": 86400,
      "minimum": 600,
      "description": "Time in seconds after which secondary servers should re-check the SOA record to see if the zone has been updated.",
      "x-auditable": true
    }
  },
  "description": "Components of the zone's SOA record."
}
object dns-settings_soa-response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dns-settings_soa-base"
    },
    {
      "type": "object",
      "required": [
        "mname",
        "rname",
        "refresh",
        "retry",
        "expire",
        "min_ttl",
        "ttl"
      ]
    }
  ]
}
string dns-settings_zone_mode
{
  "enum": [
    "standard",
    "cdn_only",
    "dns_only"
  ],
  "type": "string",
  "example": "dns_only",
  "description": "Whether the zone mode is a regular or CDN/DNS only zone.",
  "x-auditable": true
}
array dns-settings_zones
{
  "type": "array",
  "items": {
    "type": "string",
    "example": "372e67954025e0ba6aaa6d586b9e0b59",
    "maxLength": 32,
    "minLength": 32,
    "description": "The zone ID.",
    "x-auditable": true
  },
  "description": "The list of zones linked to this view.",
  "x-stainless-collection-type": "set"
}
string dnssec_algorithm
{
  "type": "string",
  "example": "13",
  "nullable": true,
  "readOnly": true,
  "description": "Algorithm key code.",
  "x-auditable": true
}
object dnssec_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/dnssec_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/dnssec_messages"
    }
  }
}
object dnssec_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/dnssec_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/dnssec_messages"
        }
      ],
      "example": []
    }
  }
}
object dnssec_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dnssec_api-response-common"
    }
  ]
}
object dnssec_delete_dnssec_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/dnssec_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "string",
          "example": ""
        }
      }
    }
  ]
}
string dnssec_digest
{
  "type": "string",
  "example": "48E939042E82C22542CB377B580DFDC52A361CEFDC72E7F9107E2B6BD9306A45",
  "nullable": true,
  "readOnly": true,
  "description": "Digest hash.",
  "x-auditable": true
}
string dnssec_digest_algorithm
{
  "type": "string",
  "example": "SHA256",
  "nullable": true,
  "readOnly": true,
  "description": "Type of digest algorithm.",
  "x-auditable": true
}
string dnssec_digest_type
{
  "type": "string",
  "example": "2",
  "nullable": true,
  "readOnly": true,
  "description": "Coded type for digest algorithm.",
  "x-auditable": true
}
object dnssec_dnskey_record
{
  "type": "object",
  "properties": {
    "Hdr": {
      "$ref": "#/components/schemas/dnssec_dnskey_record_header"
    },
    "Flags": {
      "type": "integer",
      "example": 256,
      "nullable": true,
      "readOnly": true
    },
    "Protocol": {
      "type": "integer",
      "example": 3,
      "nullable": true,
      "readOnly": true
    },
    "Algorithm": {
      "type": "integer",
      "example": 13,
      "nullable": true,
      "readOnly": true
    },
    "PublicKey": {
      "type": "string",
      "example": "oXiGYrSTO+LSCJ3mohc8EP+CzF9KxBj8/ydXJ22pKuZP3VAC3/Md/k7xZfz470CoRyZJ6gV6vml07IC3d8xqhA==",
      "nullable": true,
      "readOnly": true
    }
  }
}
object dnssec_dnskey_record_header
{
  "type": "object",
  "properties": {
    "Ttl": {
      "type": "integer",
      "example": 3600,
      "nullable": true,
      "readOnly": true
    },
    "Name": {
      "type": "string",
      "example": "example.com.",
      "nullable": true,
      "readOnly": true
    },
    "Class": {
      "type": "integer",
      "example": 1,
      "nullable": true,
      "readOnly": true
    },
    "Rrtype": {
      "type": "integer",
      "example": 48,
      "nullable": true,
      "readOnly": true
    },
    "Rdlength": {
      "type": "integer",
      "example": 0,
      "nullable": true,
      "readOnly": true
    }
  }
}
object dnssec_dnskey_signing_key
{
  "type": "object",
  "properties": {
    "kek": {
      "type": "string",
      "example": "edge_kek_default",
      "nullable": true,
      "readOnly": true,
      "description": "Key encryption key name used to encrypt the private key."
    },
    "pubkey": {
      "type": "string",
      "example": "256 3 13 oXiGYrSTO+LSCJ3mohc8EP+CzF9KxBj8/ydXJ22pKuZP3VAC3/Md/k7xZfz470CoRyZJ6gV6vml07IC3d8xqhA==",
      "nullable": true,
      "readOnly": true,
      "description": "Public key content associated with the signing key."
    },
    "privkey": {
      "type": "string",
      "format": "byte",
      "example": "U3ZlbidzIHZlcnkgc2VjcmV0IGtleQ==",
      "nullable": true,
      "readOnly": true,
      "description": "Encrypted private key material for the signing key."
    }
  }
}
object dnssec_dnssec
{
  "type": "object",
  "properties": {
    "ds": {
      "$ref": "#/components/schemas/dnssec_ds"
    },
    "flags": {
      "$ref": "#/components/schemas/dnssec_flags"
    },
    "digest": {
      "$ref": "#/components/schemas/dnssec_digest"
    },
    "status": {
      "$ref": "#/components/schemas/dnssec_status"
    },
    "key_tag": {
      "$ref": "#/components/schemas/dnssec_key_tag"
    },
    "key_type": {
      "$ref": "#/components/schemas/dnssec_key_type"
    },
    "algorithm": {
      "$ref": "#/components/schemas/dnssec_algorithm"
    },
    "public_key": {
      "$ref": "#/components/schemas/dnssec_public_key"
    },
    "digest_type": {
      "$ref": "#/components/schemas/dnssec_digest_type"
    },
    "modified_on": {
      "$ref": "#/components/schemas/dnssec_modified_on"
    },
    "digest_algorithm": {
      "$ref": "#/components/schemas/dnssec_digest_algorithm"
    },
    "dnssec_presigned": {
      "$ref": "#/components/schemas/dnssec_dnssec_presigned"
    },
    "dnssec_use_nsec3": {
      "$ref": "#/components/schemas/dnssec_dnssec_use_nsec3"
    },
    "dnssec_multi_signer": {
      "$ref": "#/components/schemas/dnssec_dnssec_multi_signer"
    }
  }
}
string dnssec_dnssec_key_state
{
  "enum": [
    "active",
    "publish",
    "external",
    "retired",
    "revoked",
    "removed"
  ],
  "type": "string",
  "example": "active",
  "description": "Lifecycle state tag attached to the DNSSEC key.",
  "x-auditable": true
}
boolean dnssec_dnssec_multi_signer
{
  "type": "boolean",
  "example": false,
  "description": "If true, multi-signer DNSSEC is enabled on the zone, allowing multiple\nproviders to serve a DNSSEC-signed zone at the same time.\nThis is required for DNSKEY records (except those automatically\ngenerated by Cloudflare) to be added to the zone.\n\nSee [Multi-signer DNSSEC](https://developers.cloudflare.com/dns/dnssec/multi-signer-dnssec/) for details.",
  "x-auditable": true
}
boolean dnssec_dnssec_presigned
{
  "type": "boolean",
  "example": true,
  "description": "If true, allows Cloudflare to transfer in a DNSSEC-signed zone\nincluding signatures from an external provider, without requiring\nCloudflare to sign any records on the fly.\n\nNote that this feature has some limitations.\nSee [Cloudflare as Secondary](https://developers.cloudflare.com/dns/zone-setups/zone-transfers/cloudflare-as-secondary/setup/#dnssec) for details.",
  "x-auditable": true
}
object dnssec_dnssec_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/dnssec_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/dnssec_dnssec"
        }
      }
    }
  ]
}
boolean dnssec_dnssec_use_nsec3
{
  "type": "boolean",
  "example": false,
  "description": "If true, enables the use of NSEC3 together with DNSSEC on the zone.\nCombined with setting dnssec_presigned to true, this enables the use of\nNSEC3 records when transferring in from an external provider.\nIf dnssec_presigned is instead set to false (default), NSEC3 records will be\ngenerated and signed at request time.\n\nSee [DNSSEC with NSEC3](https://developers.cloudflare.com/dns/dnssec/enable-nsec3/) for details.",
  "x-auditable": true
}
object dnssec_dnssec_zsk
{
  "type": "object",
  "properties": {
    "Tag": {
      "$ref": "#/components/schemas/dnssec_dnssec_key_state"
    },
    "Name": {
      "type": "string",
      "example": "zsk_default",
      "readOnly": true,
      "description": "Internal key name for the ZSK."
    },
    "DNSKEY": {
      "$ref": "#/components/schemas/dnssec_dnskey_record"
    },
    "Location": {
      "$ref": "#/components/schemas/dnssec_key_storage_location"
    },
    "SigningKey": {
      "$ref": "#/components/schemas/dnssec_dnskey_signing_key"
    }
  }
}
object dnssec_dnssec_zsk_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/dnssec_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/dnssec_dnssec_zsk"
          }
        }
      }
    }
  ]
}
string dnssec_ds
{
  "type": "string",
  "example": "example.com. 3600 IN DS 16953 13 2 48E939042E82C22542CB377B580DFDC52A361CEFDC72E7F9107E2B6BD9306A45",
  "nullable": true,
  "readOnly": true,
  "description": "Full DS record.",
  "x-auditable": true
}
number dnssec_flags
{
  "type": "number",
  "example": 257,
  "nullable": true,
  "readOnly": true,
  "description": "Flag for DNSSEC record.",
  "x-auditable": true
}
string dnssec_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Identifier.",
  "x-auditable": true
}
string dnssec_key_storage_location
{
  "enum": [
    "database",
    "vault"
  ],
  "type": "string",
  "example": "database",
  "description": "Storage backend where the DNSSEC key material is stored.",
  "x-auditable": true
}
number dnssec_key_tag
{
  "type": "number",
  "example": 42,
  "nullable": true,
  "readOnly": true,
  "description": "Code for key tag.",
  "x-auditable": true
}
string dnssec_key_type
{
  "type": "string",
  "example": "ECDSAP256SHA256",
  "nullable": true,
  "readOnly": true,
  "description": "Algorithm key type.",
  "x-auditable": true
}
array dnssec_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string dnssec_modified_on
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-01T05:20:00Z",
  "nullable": true,
  "readOnly": true,
  "description": "When DNSSEC was last modified.",
  "x-auditable": true
}
string dnssec_public_key
{
  "type": "string",
  "example": "oXiGYrSTO+LSCJ3mohc8EP+CzF9KxBj8/ydXJ22pKuZP3VAC3/Md/k7xZfz470CoRyZJ6gV6vml07IC3d8xqhA==",
  "nullable": true,
  "readOnly": true,
  "description": "Public key for DS record.",
  "x-auditable": true
}
string dnssec_status
{
  "enum": [
    "active",
    "pending",
    "disabled",
    "pending-disabled",
    "error"
  ],
  "example": "active",
  "description": "Status of DNSSEC, based on user-desired state and presence of necessary records.",
  "x-auditable": true
}
object dos_DnsProtectionRule
{
  "type": "object",
  "required": [
    "id",
    "scope",
    "name",
    "mode",
    "profile_sensitivity",
    "rate_sensitivity",
    "burst_sensitivity",
    "created_on",
    "modified_on"
  ],
  "properties": {
    "id": {
      "type": "string",
      "description": "The unique ID of the DNS Protection rule.",
      "x-auditable": true
    },
    "mode": {
      "type": "string",
      "description": "The mode for DNS Protection. Must be one of 'enabled', 'disabled', 'monitoring'.",
      "x-auditable": true
    },
    "name": {
      "type": "string",
      "description": "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'.",
      "x-auditable": true
    },
    "scope": {
      "type": "string",
      "description": "The scope for the DNS Protection rule. Must be one of 'global', 'region', or 'datacenter'.",
      "x-auditable": true
    },
    "created_on": {
      "type": "string",
      "format": "date-time",
      "description": "The creation timestamp of the DNS Protection rule.",
      "x-auditable": true
    },
    "modified_on": {
      "type": "string",
      "format": "date-time",
      "description": "The last modification timestamp of the DNS Protection rule.",
      "x-auditable": true
    },
    "rate_sensitivity": {
      "type": "string",
      "description": "The rate sensitivity. Must be one of 'low', 'medium', 'high'.",
      "x-auditable": true
    },
    "burst_sensitivity": {
      "type": "string",
      "description": "The burst sensitivity. Must be one of 'low', 'medium', 'high'.",
      "x-auditable": true
    },
    "profile_sensitivity": {
      "type": "string",
      "description": "The profile sensitivity. Recommended setting is 'low'. Must be one of 'low', 'medium', 'high', or 'very_high'.",
      "x-auditable": true
    }
  },
  "additionalProperties": false
}
object dos_DnsProtectionRuleUpdate
{
  "type": "object",
  "properties": {
    "mode": {
      "type": "string",
      "description": "The new mode for DNS Protection. Optional. Must be one of 'enabled', 'disabled', 'monitoring'.",
      "x-auditable": true
    },
    "rate_sensitivity": {
      "type": "string",
      "description": "The new rate sensitivity. Optional. Must be one of 'low', 'medium', 'high'.",
      "x-auditable": true
    },
    "burst_sensitivity": {
      "type": "string",
      "description": "The new burst sensitivity. Optional. Must be one of 'low', 'medium', 'high'.",
      "x-auditable": true
    },
    "profile_sensitivity": {
      "type": "string",
      "description": "The new profile sensitivity. Optional. Recommended setting is 'low'. Must be one of 'low', 'medium', 'high', or 'very_high'.",
      "x-auditable": true
    }
  },
  "additionalProperties": false
}
object dos_ExpressionFilter
{
  "type": "object",
  "required": [
    "id",
    "expression",
    "mode",
    "created_on",
    "modified_on"
  ],
  "properties": {
    "id": {
      "type": "string",
      "description": "The unique ID of the expression filter.",
      "x-auditable": true
    },
    "mode": {
      "type": "string",
      "description": "The filter's mode. Must be one of 'enabled', 'disabled', 'monitoring'.",
      "x-auditable": true
    },
    "created_on": {
      "type": "string",
      "format": "date-time",
      "description": "The creation timestamp of the expression filter.",
      "x-auditable": true
    },
    "expression": {
      "type": "string",
      "example": "ip.dst in { 192.0.2.0/24 198.51.100.0/24 } and tcp.srcport in { 80 443 10000..65535 }",
      "description": "The filter expression.",
      "x-auditable": true
    },
    "modified_on": {
      "type": "string",
      "format": "date-time",
      "description": "The last modification timestamp of the expression filter.",
      "x-auditable": true
    }
  },
  "additionalProperties": false
}
object dos_ExpressionFilterUpdate
{
  "type": "object",
  "properties": {
    "mode": {
      "type": "string",
      "description": "The new mode for the filter. Optional. Must be one of 'enabled', 'disabled', 'monitoring'.",
      "x-auditable": true
    },
    "expression": {
      "type": "string",
      "example": "ip.dst in { 192.0.2.0/24 198.51.100.0/24 } and tcp.srcport in { 80 443 10000..65535 }",
      "description": "The new filter expression. Optional.",
      "x-auditable": true
    }
  },
  "additionalProperties": false
}
object dos_InfraPrefix
{
  "type": "object",
  "required": [
    "id",
    "prefix",
    "comment",
    "enabled",
    "created_on",
    "modified_on"
  ],
  "properties": {
    "id": {
      "type": "string",
      "description": "The unique ID of the allowlist prefix.",
      "x-auditable": true
    },
    "prefix": {
      "type": "string",
      "description": "The allowlist prefix in CIDR format.",
      "x-auditable": true
    },
    "comment": {
      "type": "string",
      "description": "An optional comment describing the allowlist prefix.",
      "x-auditable": true
    },
    "enabled": {
      "type": "boolean",
      "description": "Whether to enable the allowlist prefix into effect. Defaults to false.",
      "x-auditable": true
    },
    "created_on": {
      "type": "string",
      "format": "date-time",
      "description": "The creation timestamp of the allowlist prefix.",
      "x-auditable": true
    },
    "modified_on": {
      "type": "string",
      "format": "date-time",
      "description": "The last modification timestamp of the allowlist prefix.",
      "x-auditable": true
    }
  },
  "additionalProperties": false
}
object dos_InfraPrefixUpdate
{
  "type": "object",
  "properties": {
    "comment": {
      "type": "string",
      "description": "A comment describing the allowlist prefix. Optional.",
      "x-auditable": true
    },
    "enabled": {
      "type": "boolean",
      "description": "Whether to enable the allowlist prefix into effect. Optional.",
      "x-auditable": true
    }
  },
  "additionalProperties": false
}
object dos_NewDnsProtectionRule
{
  "type": "object",
  "required": [
    "scope",
    "name",
    "mode",
    "profile_sensitivity",
    "rate_sensitivity",
    "burst_sensitivity"
  ],
  "properties": {
    "mode": {
      "type": "string",
      "description": "The mode for DNS Protection. Must be one of 'enabled', 'disabled', 'monitoring'.",
      "x-auditable": true
    },
    "name": {
      "type": "string",
      "description": "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'.",
      "x-auditable": true
    },
    "scope": {
      "type": "string",
      "description": "The scope for the DNS Protection rule. Must be one of 'global', 'region', or 'datacenter'.",
      "x-auditable": true
    },
    "rate_sensitivity": {
      "type": "string",
      "description": "The rate sensitivity. Must be one of 'low', 'medium', 'high'.",
      "x-auditable": true
    },
    "burst_sensitivity": {
      "type": "string",
      "description": "The burst sensitivity. Must be one of 'low', 'medium', 'high'.",
      "x-auditable": true
    },
    "profile_sensitivity": {
      "type": "string",
      "description": "The profile sensitivity. Recommended setting is 'low'. Must be one of 'low', 'medium', 'high', or 'very_high'.",
      "x-auditable": true
    }
  },
  "additionalProperties": false
}
object dos_NewExpressionFilter
{
  "type": "object",
  "required": [
    "expression",
    "mode"
  ],
  "properties": {
    "mode": {
      "type": "string",
      "description": "The filter's mode. Must be one of 'enabled', 'disabled', 'monitoring'.",
      "x-auditable": true
    },
    "expression": {
      "type": "string",
      "example": "ip.dst in { 192.0.2.0/24 198.51.100.0/24 } and tcp.srcport in { 80 443 10000..65535 }",
      "description": "The filter expression.",
      "x-auditable": true
    }
  },
  "additionalProperties": false
}
object dos_NewInfraPrefix
{
  "type": "object",
  "required": [
    "prefix",
    "comment",
    "enabled"
  ],
  "properties": {
    "prefix": {
      "type": "string",
      "description": "The allowlist prefix to add in CIDR format.",
      "x-auditable": true
    },
    "comment": {
      "type": "string",
      "description": "An comment describing the allowlist prefix.",
      "x-auditable": true
    },
    "enabled": {
      "type": "boolean",
      "description": "Whether to enable the allowlist prefix into effect.",
      "x-auditable": true
    }
  },
  "additionalProperties": false
}
object dos_NewPrefix
{
  "type": "object",
  "required": [
    "prefix",
    "comment",
    "excluded"
  ],
  "properties": {
    "prefix": {
      "type": "string",
      "example": "192.0.2.0/24",
      "description": "The prefix to add in CIDR format.",
      "x-auditable": true
    },
    "comment": {
      "type": "string",
      "description": "A comment describing the prefix.",
      "x-auditable": true
    },
    "excluded": {
      "type": "boolean",
      "description": "Whether to exclude the prefix from protection.",
      "x-auditable": true
    }
  },
  "additionalProperties": false
}
object dos_NewSynProtectionRule
{
  "type": "object",
  "required": [
    "scope",
    "name",
    "mode",
    "rate_sensitivity",
    "burst_sensitivity"
  ],
  "properties": {
    "mode": {
      "type": "string",
      "description": "The mode for SYN Protection. Must be one of 'enabled', 'disabled', 'monitoring'.",
      "x-auditable": true
    },
    "name": {
      "type": "string",
      "description": "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'.",
      "x-auditable": true
    },
    "scope": {
      "type": "string",
      "description": "The scope for the SYN Protection rule. Must be one of 'global', 'region', or 'datacenter'.",
      "x-auditable": true
    },
    "mitigation_type": {
      "type": "string",
      "description": "The type of mitigation. Must be one of 'challenge' or 'retransmit'. Optional. Defaults to 'challenge'.",
      "x-auditable": true
    },
    "rate_sensitivity": {
      "type": "string",
      "description": "The rate sensitivity. Must be one of 'low', 'medium', 'high'.",
      "x-auditable": true
    },
    "burst_sensitivity": {
      "type": "string",
      "description": "The burst sensitivity. Must be one of 'low', 'medium', 'high'.",
      "x-auditable": true
    }
  },
  "additionalProperties": false
}
object dos_NewTcpFlowProtectionRule
{
  "type": "object",
  "required": [
    "scope",
    "name",
    "mode",
    "rate_sensitivity",
    "burst_sensitivity"
  ],
  "properties": {
    "mode": {
      "type": "string",
      "description": "The mode for the TCP Flow Protection. Must be one of 'enabled', 'disabled', 'monitoring'.",
      "x-auditable": true
    },
    "name": {
      "type": "string",
      "description": "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'.",
      "x-auditable": true
    },
    "scope": {
      "type": "string",
      "description": "The scope for the TCP Flow Protection rule.",
      "x-auditable": true
    },
    "rate_sensitivity": {
      "type": "string",
      "description": "The rate sensitivity. Must be one of 'low', 'medium', 'high'.",
      "x-auditable": true
    },
    "burst_sensitivity": {
      "type": "string",
      "description": "The burst sensitivity. Must be one of 'low', 'medium', 'high'.",
      "x-auditable": true
    }
  },
  "additionalProperties": false
}
object dos_Prefix
{
  "type": "object",
  "required": [
    "id",
    "prefix",
    "comment",
    "excluded",
    "created_on",
    "modified_on"
  ],
  "properties": {
    "id": {
      "type": "string",
      "description": "The unique ID of the prefix.",
      "x-auditable": true
    },
    "prefix": {
      "type": "string",
      "example": "192.0.2.0/24",
      "description": "The prefix in CIDR format.",
      "x-auditable": true
    },
    "comment": {
      "type": "string",
      "description": "A comment describing the prefix.",
      "x-auditable": true
    },
    "excluded": {
      "type": "boolean",
      "description": "Whether to exclude the prefix from protection.",
      "x-auditable": true
    },
    "created_on": {
      "type": "string",
      "format": "date-time",
      "description": "The creation timestamp of the prefix.",
      "x-auditable": true
    },
    "modified_on": {
      "type": "string",
      "format": "date-time",
      "description": "The last modification timestamp of the prefix.",
      "x-auditable": true
    }
  },
  "additionalProperties": false
}
object dos_PrefixUpdate
{
  "type": "object",
  "properties": {
    "comment": {
      "type": "string",
      "description": "A new comment for the prefix. Optional.",
      "x-auditable": true
    },
    "excluded": {
      "type": "boolean",
      "description": "Whether to exclude the prefix from protection. Optional.",
      "x-auditable": true
    }
  },
  "additionalProperties": false
}
object dos_ProtectionStatus
{
  "type": "object",
  "required": [
    "enabled"
  ],
  "properties": {
    "enabled": {
      "type": "boolean",
      "x-auditable": true
    }
  },
  "additionalProperties": false
}
object dos_SynProtectionRule
{
  "type": "object",
  "required": [
    "id",
    "scope",
    "name",
    "mode",
    "mitigation_type",
    "rate_sensitivity",
    "burst_sensitivity",
    "created_on",
    "modified_on"
  ],
  "properties": {
    "id": {
      "type": "string",
      "description": "The unique ID of the SYN Protection rule.",
      "x-auditable": true
    },
    "mode": {
      "type": "string",
      "description": "The mode for SYN Protection. Must be one of 'enabled', 'disabled', 'monitoring'.",
      "x-auditable": true
    },
    "name": {
      "type": "string",
      "description": "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'.",
      "x-auditable": true
    },
    "scope": {
      "type": "string",
      "description": "The scope for the SYN Protection rule. Must be one of 'global', 'region', or 'datacenter'.",
      "x-auditable": true
    },
    "created_on": {
      "type": "string",
      "format": "date-time",
      "description": "The creation timestamp of the SYN Protection rule.",
      "x-auditable": true
    },
    "modified_on": {
      "type": "string",
      "format": "date-time",
      "description": "The last modification timestamp of the SYN Protection rule.",
      "x-auditable": true
    },
    "mitigation_type": {
      "type": "string",
      "description": "The type of mitigation for SYN Protection. Must be one of 'challenge' or 'retransmit'.",
      "x-auditable": true
    },
    "rate_sensitivity": {
      "type": "string",
      "description": "The rate sensitivity. Must be one of 'low', 'medium', 'high'.",
      "x-auditable": true
    },
    "burst_sensitivity": {
      "type": "string",
      "description": "The burst sensitivity. Must be one of 'low', 'medium', 'high'.",
      "x-auditable": true
    }
  },
  "additionalProperties": false
}
object dos_SynProtectionRuleUpdate
{
  "type": "object",
  "properties": {
    "mode": {
      "type": "string",
      "description": "The new mode for SYN Protection. Optional. Must be one of 'enabled', 'disabled', 'monitoring'.",
      "x-auditable": true
    },
    "mitigation_type": {
      "type": "string",
      "description": "The new mitigation type. Optional. Must be one of 'challenge' or 'retransmit'.",
      "x-auditable": true
    },
    "rate_sensitivity": {
      "type": "string",
      "description": "The new rate sensitivity. Optional. Must be one of 'low', 'medium', 'high'.",
      "x-auditable": true
    },
    "burst_sensitivity": {
      "type": "string",
      "description": "The new burst sensitivity. Optional. Must be one of 'low', 'medium', 'high'.",
      "x-auditable": true
    }
  },
  "additionalProperties": false
}
object dos_TcpFlowProtectionRule
{
  "type": "object",
  "required": [
    "id",
    "scope",
    "name",
    "mode",
    "rate_sensitivity",
    "burst_sensitivity",
    "created_on",
    "modified_on"
  ],
  "properties": {
    "id": {
      "type": "string",
      "description": "The unique ID of the TCP Flow Protection rule.",
      "x-auditable": true
    },
    "mode": {
      "type": "string",
      "description": "The mode for TCP Flow Protection. Must be one of 'enabled', 'disabled', 'monitoring'.",
      "x-auditable": true
    },
    "name": {
      "type": "string",
      "description": "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'.",
      "x-auditable": true
    },
    "scope": {
      "type": "string",
      "description": "The scope for the TCP Flow Protection rule. Must be one of 'global', 'region', or 'datacenter'.",
      "x-auditable": true
    },
    "created_on": {
      "type": "string",
      "format": "date-time",
      "description": "The creation timestamp of the TCP Flow Protection rule.",
      "x-auditable": true
    },
    "modified_on": {
      "type": "string",
      "format": "date-time",
      "description": "The last modification timestamp of the TCP Flow Protection rule.",
      "x-auditable": true
    },
    "rate_sensitivity": {
      "type": "string",
      "description": "The rate sensitivity. Must be one of 'low', 'medium', 'high'.",
      "x-auditable": true
    },
    "burst_sensitivity": {
      "type": "string",
      "description": "The burst sensitivity. Must be one of 'low', 'medium', 'high'.",
      "x-auditable": true
    }
  },
  "additionalProperties": false
}
object dos_TcpFlowProtectionRuleUpdate
{
  "type": "object",
  "properties": {
    "mode": {
      "type": "string",
      "description": "The new mode for TCP Flow Protection. Optional. Must be one of 'enabled', 'disabled', 'monitoring'.",
      "x-auditable": true
    },
    "rate_sensitivity": {
      "type": "string",
      "description": "The new rate sensitivity. Optional. Must be one of 'low', 'medium', 'high'.",
      "x-auditable": true
    },
    "burst_sensitivity": {
      "type": "string",
      "description": "The new burst sensitivity. Optional. Must be one of 'low', 'medium', 'high'.",
      "x-auditable": true
    }
  },
  "additionalProperties": false
}
object dos_UpdateProtectionStatus
{
  "type": "object",
  "required": [
    "enabled"
  ],
  "properties": {
    "enabled": {
      "type": "boolean",
      "description": "Enables or disables protection.",
      "x-auditable": true
    }
  },
  "additionalProperties": false
}
object dos_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/dos_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result_info": {
          "type": "object",
          "properties": {
            "page": {
              "type": "number",
              "example": 1,
              "description": "Current page within paginated list of results."
            },
            "count": {
              "type": "number",
              "example": 1,
              "description": "Total number of results for the requested service."
            },
            "per_page": {
              "type": "number",
              "example": 20,
              "description": "Number of results per page of results."
            },
            "total_count": {
              "type": "number",
              "example": 2000,
              "description": "Total results available without any search parameters."
            },
            "total_pages": {
              "type": "number",
              "example": 100,
              "description": "The number of total pages in the entire result set."
            }
          }
        }
      }
    }
  ]
}
object dos_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/dos_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/dos_messages"
    }
  }
}
object dos_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/dos_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/dos_messages"
        }
      ],
      "example": []
    }
  }
}
object dos_api-response-common-paginated
{
  "$ref": "#/components/schemas/dos_api-response-collection"
}
integer dos_asn
{
  "type": "integer"
}
string dos_asn_country
{
  "type": "string",
  "example": "US"
}
string dos_asn_description
{
  "type": "string",
  "example": "CLOUDFLARENET"
}
string dos_asn_type
{
  "enum": [
    "hosting_provider",
    "isp",
    "organization"
  ],
  "type": "string",
  "example": "hosting_provider",
  "description": "Infrastructure type of this ASN."
}
object dos_dns-protection-rule-list-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/dos_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/dos_DnsProtectionRule"
          }
        }
      }
    }
  ]
}
object dos_dns-protection-rule-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/dos_api-response-common"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/dos_DnsProtectionRule"
        }
      }
    }
  ]
}
object dos_expression-filter-list-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/dos_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/dos_ExpressionFilter"
          }
        }
      }
    }
  ]
}
object dos_expression-filter-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/dos_api-response-common"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/dos_ExpressionFilter"
        }
      }
    }
  ]
}
string dos_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Identifier.",
  "x-auditable": true
}
object dos_infra-prefix-list-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/dos_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/dos_InfraPrefix"
          }
        }
      }
    }
  ]
}
object dos_infra-prefix-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/dos_api-response-common"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/dos_InfraPrefix"
        }
      }
    }
  ]
}
array dos_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
object dos_prefix-list-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/dos_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/dos_Prefix"
          }
        }
      }
    }
  ]
}
object dos_prefix-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/dos_api-response-common"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/dos_Prefix"
        }
      }
    }
  ]
}
object dos_protection-status-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/dos_api-response-common"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/dos_ProtectionStatus"
        }
      }
    }
  ]
}
object dos_syn-protection-rule-list-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/dos_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/dos_SynProtectionRule"
          }
        }
      }
    }
  ]
}
object dos_syn-protection-rule-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/dos_api-response-common"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/dos_SynProtectionRule"
        }
      }
    }
  ]
}
object dos_tcp-flow-protection-rule-list-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/dos_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/dos_TcpFlowProtectionRule"
          }
        }
      }
    }
  ]
}
object dos_tcp-flow-protection-rule-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/dos_api-response-common"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/dos_TcpFlowProtectionRule"
        }
      }
    }
  ]
}
string dos_timestamp
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-01T05:20:00.12345Z",
  "x-auditable": true
}
string dos_uuid
{
  "type": "string",
  "example": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
  "maxLength": 36,
  "description": "UUID.",
  "x-auditable": true
}
string email-security_AccountId
{
  "type": "string",
  "title": "account_id",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "readOnly": true,
  "maxLength": 32,
  "minLength": 32,
  "description": "Account Identifier"
}
object email-security_ActionEntry
{
  "type": "object",
  "required": [
    "operation"
  ],
  "properties": {
    "status": {
      "type": "string"
    },
    "success": {
      "type": "boolean"
    },
    "operation": {
      "enum": [
        "PREVIEW",
        "QUARANTINE_RELEASE",
        "SUBMISSION",
        "MOVE"
      ],
      "type": "string"
    },
    "properties": {
      "allOf": [
        {
          "type": "object",
          "properties": {
            "folder": {
              "type": "string",
              "nullable": true
            },
            "service": {
              "type": "string",
              "nullable": true
            },
            "requested_by": {
              "type": "string",
              "nullable": true
            },
            "submission_id": {
              "type": "string",
              "nullable": true
            },
            "submission_type": {
              "type": "string",
              "nullable": true
            },
            "requested_disposition": {
              "type": "string",
              "nullable": true
            }
          }
        },
        {
          "type": "object",
          "nullable": true
        }
      ]
    },
    "started_at": {
      "type": "string",
      "format": "date-time",
      "description": "Timestamp when the action was initiated."
    },
    "completed_at": {
      "type": "string",
      "format": "date-time",
      "description": "Timestamp when the action completed."
    }
  },
  "description": "A single action entry returned by the `/unisearch/actions` endpoint."
}
object email-security_AllowPolicy
{
  "allOf": [
    {
      "type": "object",
      "example": {
        "pattern": "test@example.com",
        "comments": "Trust all messages send from test@example.com",
        "is_regex": false,
        "is_spoof": false,
        "is_sender": true,
        "is_recipient": false,
        "pattern_type": "EMAIL",
        "verify_sender": true,
        "is_trusted_sender": true,
        "is_exempt_recipient": false,
        "is_acceptable_sender": false
      },
      "required": [
        "is_exempt_recipient",
        "is_trusted_sender",
        "is_acceptable_sender",
        "pattern",
        "is_regex",
        "verify_sender",
        "pattern_type"
      ],
      "properties": {
        "pattern": {
          "type": "string",
          "maxLength": 1024,
          "minLength": 1,
          "x-auditable": true
        },
        "comments": {
          "type": "string",
          "nullable": true,
          "maxLength": 1024,
          "x-auditable": true
        },
        "is_regex": {
          "type": "boolean",
          "x-auditable": true
        },
        "is_spoof": {
          "type": "boolean",
          "deprecated": true,
          "x-auditable": true
        },
        "is_sender": {
          "type": "boolean",
          "deprecated": true,
          "x-auditable": true
        },
        "is_recipient": {
          "type": "boolean",
          "deprecated": true,
          "x-auditable": true
        },
        "pattern_type": {
          "$ref": "#/components/schemas/email-security_PatternType"
        },
        "verify_sender": {
          "type": "boolean",
          "description": "Enforce DMARC, SPF or DKIM authentication.\nWhen on, Email Security only honors policies that pass authentication.",
          "x-auditable": true
        },
        "is_trusted_sender": {
          "type": "boolean",
          "description": "Messages from this sender will bypass all detections and link following.",
          "x-auditable": true
        },
        "is_exempt_recipient": {
          "type": "boolean",
          "description": "Messages to this recipient will bypass all detections.",
          "x-auditable": true
        },
        "is_acceptable_sender": {
          "type": "boolean",
          "description": "Messages from this sender will be exempted from Spam, Spoof and Bulk dispositions.\nNote: This will not exempt messages with Malicious or Suspicious dispositions.",
          "x-auditable": true
        }
      },
      "additionalProperties": false
    },
    {
      "type": "object",
      "required": [
        "id",
        "created_at",
        "last_modified"
      ],
      "properties": {
        "id": {
          "$ref": "#/components/schemas/email-security_AllowPolicyId"
        },
        "created_at": {
          "type": "string",
          "format": "date-time",
          "x-auditable": true
        },
        "last_modified": {
          "type": "string",
          "format": "date-time",
          "x-auditable": true
        }
      }
    }
  ],
  "example": {
    "id": 2401,
    "pattern": "test@example.com",
    "comments": "Trust all messages send from test@example.com",
    "is_regex": false,
    "is_spoof": false,
    "is_sender": true,
    "created_at": "2023-11-14T22:13:20Z",
    "is_recipient": false,
    "pattern_type": "EMAIL",
    "last_modified": "2023-11-14T22:13:20Z",
    "verify_sender": true,
    "is_trusted_sender": true,
    "is_exempt_recipient": false,
    "is_acceptable_sender": false
  }
}
integer email-security_AllowPolicyId
{
  "type": "integer",
  "title": "identifier",
  "format": "int32",
  "example": 2401,
  "description": "The unique identifier for the allow policy."
}
object email-security_ApiResponseCommon
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/email-security_Message"
      },
      "example": []
    },
    "success": {
      "type": "boolean",
      "example": true
    },
    "messages": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/email-security_Message"
      },
      "example": []
    }
  }
}
object email-security_Attachment
{
  "type": "object",
  "required": [
    "size"
  ],
  "properties": {
    "name": {
      "type": "string",
      "nullable": true
    },
    "size": {
      "type": "integer",
      "minimum": 0
    },
    "detection": {
      "allOf": [
        {
          "$ref": "#/components/schemas/email-security_DispositionLabel"
        },
        {
          "type": "string",
          "nullable": true
        }
      ]
    },
    "encrypted": {
      "type": "boolean",
      "nullable": true
    },
    "content_type": {
      "type": "string",
      "nullable": true
    }
  }
}
object email-security_BlockedSender
{
  "allOf": [
    {
      "type": "object",
      "example": {
        "pattern": "test@example.com",
        "comments": "block sender with email test@example.com",
        "is_regex": false,
        "pattern_type": "EMAIL"
      },
      "required": [
        "pattern",
        "is_regex",
        "pattern_type"
      ],
      "properties": {
        "pattern": {
          "type": "string",
          "maxLength": 1024,
          "minLength": 1,
          "x-auditable": true
        },
        "comments": {
          "type": "string",
          "nullable": true,
          "maxLength": 1024,
          "x-auditable": true
        },
        "is_regex": {
          "type": "boolean",
          "x-auditable": true
        },
        "pattern_type": {
          "$ref": "#/components/schemas/email-security_PatternType"
        }
      },
      "additionalProperties": false
    },
    {
      "type": "object",
      "required": [
        "id",
        "created_at",
        "last_modified"
      ],
      "properties": {
        "id": {
          "$ref": "#/components/schemas/email-security_BlockedSenderId"
        },
        "created_at": {
          "type": "string",
          "format": "date-time",
          "x-auditable": true
        },
        "last_modified": {
          "type": "string",
          "format": "date-time",
          "x-auditable": true
        }
      }
    }
  ],
  "example": {
    "id": 2402,
    "pattern": "test@example.com",
    "comments": "block sender with email test@example.com",
    "is_regex": false,
    "created_at": "2023-11-14T22:13:20Z",
    "pattern_type": "EMAIL",
    "last_modified": "2023-11-14T22:13:20Z"
  }
}
integer email-security_BlockedSenderId
{
  "type": "integer",
  "title": "identifier",
  "format": "int32",
  "example": 2402,
  "description": "The unique identifier for the allow policy."
}
object email-security_CreateAllowPolicy
{
  "type": "object",
  "example": {
    "pattern": "test@example.com",
    "comments": "Trust all messages send from test@example.com",
    "is_regex": false,
    "is_spoof": false,
    "is_sender": true,
    "is_recipient": false,
    "pattern_type": "EMAIL",
    "verify_sender": true,
    "is_trusted_sender": true,
    "is_exempt_recipient": false,
    "is_acceptable_sender": false
  },
  "required": [
    "is_exempt_recipient",
    "is_trusted_sender",
    "is_acceptable_sender",
    "pattern",
    "is_regex",
    "verify_sender",
    "pattern_type"
  ],
  "properties": {
    "pattern": {
      "type": "string",
      "maxLength": 1024,
      "minLength": 1,
      "x-auditable": true
    },
    "comments": {
      "type": "string",
      "nullable": true,
      "maxLength": 1024,
      "x-auditable": true
    },
    "is_regex": {
      "type": "boolean",
      "x-auditable": true
    },
    "is_spoof": {
      "type": "boolean",
      "deprecated": true,
      "x-auditable": true
    },
    "is_sender": {
      "type": "boolean",
      "deprecated": true,
      "x-auditable": true
    },
    "is_recipient": {
      "type": "boolean",
      "deprecated": true,
      "x-auditable": true
    },
    "pattern_type": {
      "$ref": "#/components/schemas/email-security_PatternType"
    },
    "verify_sender": {
      "type": "boolean",
      "description": "Enforce DMARC, SPF or DKIM authentication.\nWhen on, Email Security only honors policies that pass authentication.",
      "x-auditable": true
    },
    "is_trusted_sender": {
      "type": "boolean",
      "description": "Messages from this sender will bypass all detections and link following.",
      "x-auditable": true
    },
    "is_exempt_recipient": {
      "type": "boolean",
      "description": "Messages to this recipient will bypass all detections.",
      "x-auditable": true
    },
    "is_acceptable_sender": {
      "type": "boolean",
      "description": "Messages from this sender will be exempted from Spam, Spoof and Bulk dispositions.\nNote: This will not exempt messages with Malicious or Suspicious dispositions.",
      "x-auditable": true
    }
  },
  "additionalProperties": false
}
object email-security_CreateBlockedSender
{
  "type": "object",
  "example": {
    "pattern": "test@example.com",
    "comments": "block sender with email test@example.com",
    "is_regex": false,
    "pattern_type": "EMAIL"
  },
  "required": [
    "pattern",
    "is_regex",
    "pattern_type"
  ],
  "properties": {
    "pattern": {
      "type": "string",
      "maxLength": 1024,
      "minLength": 1,
      "x-auditable": true
    },
    "comments": {
      "type": "string",
      "nullable": true,
      "maxLength": 1024,
      "x-auditable": true
    },
    "is_regex": {
      "type": "boolean",
      "x-auditable": true
    },
    "pattern_type": {
      "$ref": "#/components/schemas/email-security_PatternType"
    }
  },
  "additionalProperties": false
}
object email-security_CreateDisplayName
{
  "type": "object",
  "required": [
    "name",
    "email",
    "is_email_regex"
  ],
  "properties": {
    "name": {
      "type": "string",
      "maxLength": 1024,
      "x-auditable": true
    },
    "email": {
      "type": "string",
      "x-auditable": true
    },
    "is_email_regex": {
      "type": "boolean",
      "x-auditable": true
    }
  }
}
object email-security_CreateTrustedDomain
{
  "type": "object",
  "example": {
    "pattern": "example.com",
    "comments": null,
    "is_regex": false,
    "is_recent": true,
    "is_similarity": false
  },
  "required": [
    "is_recent",
    "is_similarity",
    "is_regex",
    "pattern"
  ],
  "properties": {
    "pattern": {
      "type": "string",
      "maxLength": 1024,
      "minLength": 1,
      "x-auditable": true
    },
    "comments": {
      "type": "string",
      "nullable": true,
      "maxLength": 1024,
      "x-auditable": true
    },
    "is_regex": {
      "type": "boolean",
      "x-auditable": true
    },
    "is_recent": {
      "type": "boolean",
      "description": "Select to prevent recently registered domains from triggering a\nSuspicious or Malicious disposition.",
      "x-auditable": true
    },
    "is_similarity": {
      "type": "boolean",
      "description": "Select for partner or other approved domains that have similar\nspelling to your connected domains. Prevents listed domains from\ntriggering a Spoof disposition.",
      "x-auditable": true
    }
  },
  "additionalProperties": false
}
object email-security_CursorWithLegacyResultInfo
{
  "type": "object",
  "required": [
    "per_page",
    "count",
    "page",
    "total_count"
  ],
  "properties": {
    "next": {
      "type": "string",
      "nullable": true
    },
    "page": {
      "type": "integer",
      "format": "int32",
      "minimum": 0,
      "deprecated": true,
      "description": "Deprecated: Returns always 0"
    },
    "count": {
      "type": "integer",
      "format": "int32",
      "minimum": 0
    },
    "per_page": {
      "type": "integer",
      "format": "int32",
      "minimum": 0,
      "description": "number of items per page"
    },
    "previous": {
      "type": "string",
      "nullable": true
    },
    "total_count": {
      "type": "integer",
      "format": "int32",
      "minimum": 0,
      "deprecated": true,
      "description": "Deprecated: Returns always 0"
    }
  }
}
string email-security_DeliveryMode
{
  "enum": [
    "DIRECT",
    "BCC",
    "JOURNAL",
    "API",
    "RETRO_SCAN"
  ],
  "type": "string"
}
object email-security_DisplayName
{
  "allOf": [
    {
      "type": "object",
      "required": [
        "name",
        "email",
        "is_email_regex"
      ],
      "properties": {
        "name": {
          "type": "string",
          "maxLength": 1024,
          "x-auditable": true
        },
        "email": {
          "type": "string",
          "x-auditable": true
        },
        "is_email_regex": {
          "type": "boolean",
          "x-auditable": true
        }
      }
    },
    {
      "type": "object",
      "required": [
        "id",
        "created_at",
        "last_modified"
      ],
      "properties": {
        "id": {
          "type": "integer",
          "title": "identifier",
          "format": "int32",
          "example": 2403
        },
        "comments": {
          "type": "string",
          "nullable": true
        },
        "created_at": {
          "type": "string",
          "format": "date-time"
        },
        "provenance": {
          "type": "string",
          "nullable": true
        },
        "directory_id": {
          "allOf": [
            {
              "type": "integer",
              "format": "int64"
            },
            {
              "type": "integer",
              "nullable": true
            }
          ]
        },
        "last_modified": {
          "type": "string",
          "format": "date-time"
        },
        "directory_node_id": {
          "allOf": [
            {
              "type": "integer",
              "format": "int64"
            },
            {
              "type": "integer",
              "nullable": true
            }
          ]
        },
        "external_directory_node_id": {
          "type": "string",
          "nullable": true,
          "deprecated": true
        }
      }
    }
  ]
}
string email-security_DispositionLabel
{
  "enum": [
    "MALICIOUS",
    "MALICIOUS-BEC",
    "SUSPICIOUS",
    "SPOOF",
    "SPAM",
    "BULK",
    "ENCRYPTED",
    "EXTERNAL",
    "UNKNOWN",
    "NONE"
  ],
  "type": "string"
}
object email-security_Domain
{
  "type": "object",
  "example": {
    "id": 2400,
    "domain": "example.com",
    "folder": "Inbox",
    "regions": [
      "GLOBAL"
    ],
    "transport": "example.com",
    "created_at": "2023-11-14T22:13:20Z",
    "spf_status": "good",
    "dmarc_status": "good",
    "authorization": null,
    "last_modified": "2023-11-14T22:13:20Z",
    "lookback_hops": 2,
    "inbox_provider": "Microsoft",
    "integration_id": "a5dbb180-60ea-4578-84bb-d01a5d4e50c3",
    "o365_tenant_id": "c3c3239d-8858-47df-9618-0e2d9bdf6aa8",
    "ip_restrictions": [],
    "emails_processed": null,
    "drop_dispositions": [
      "MALICIOUS",
      "SPAM"
    ],
    "require_tls_inbound": false,
    "require_tls_outbound": true,
    "allowed_delivery_modes": [
      "API"
    ]
  },
  "required": [
    "id",
    "created_at",
    "last_modified",
    "domain",
    "allowed_delivery_modes",
    "lookback_hops",
    "ip_restrictions",
    "transport",
    "drop_dispositions",
    "regions"
  ],
  "properties": {
    "id": {
      "type": "integer",
      "format": "int32",
      "example": 2400,
      "description": "The unique identifier for the domain."
    },
    "domain": {
      "type": "string"
    },
    "folder": {
      "allOf": [
        {
          "$ref": "#/components/schemas/email-security_ScannableFolder"
        },
        {
          "type": "string",
          "nullable": true
        }
      ]
    },
    "regions": {
      "type": "array",
      "items": {
        "enum": [
          "GLOBAL",
          "AU",
          "DE",
          "IN",
          "US"
        ],
        "type": "string"
      }
    },
    "transport": {
      "type": "string"
    },
    "created_at": {
      "type": "string",
      "format": "date-time"
    },
    "spf_status": {
      "allOf": [
        {
          "enum": [
            "none",
            "good",
            "neutral",
            "open",
            "invalid"
          ],
          "type": "string"
        },
        {
          "type": "string",
          "nullable": true
        }
      ]
    },
    "dmarc_status": {
      "allOf": [
        {
          "enum": [
            "none",
            "good",
            "invalid"
          ],
          "type": "string"
        },
        {
          "type": "string",
          "nullable": true
        }
      ]
    },
    "authorization": {
      "allOf": [
        {
          "type": "object",
          "required": [
            "authorized",
            "timestamp"
          ],
          "properties": {
            "timestamp": {
              "type": "string",
              "format": "date-time"
            },
            "authorized": {
              "type": "boolean"
            },
            "status_message": {
              "type": "string",
              "nullable": true
            }
          }
        },
        {
          "type": "object",
          "nullable": true
        }
      ]
    },
    "last_modified": {
      "type": "string",
      "format": "date-time"
    },
    "lookback_hops": {
      "type": "integer",
      "format": "int32"
    },
    "inbox_provider": {
      "allOf": [
        {
          "enum": [
            "Microsoft",
            "Google"
          ],
          "type": "string"
        },
        {
          "type": "string",
          "nullable": true
        }
      ]
    },
    "integration_id": {
      "type": "string",
      "format": "uuid",
      "nullable": true
    },
    "o365_tenant_id": {
      "type": "string",
      "nullable": true
    },
    "ip_restrictions": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "192.0.2.0/24",
        "2001:db8::/32"
      ]
    },
    "emails_processed": {
      "allOf": [
        {
          "type": "object",
          "required": [
            "total_emails_processed",
            "total_emails_processed_previous",
            "timestamp"
          ],
          "properties": {
            "timestamp": {
              "type": "string",
              "format": "date-time"
            },
            "total_emails_processed": {
              "type": "integer",
              "format": "int32",
              "minimum": 0
            },
            "total_emails_processed_previous": {
              "type": "integer",
              "format": "int32",
              "minimum": 0
            }
          }
        },
        {
          "type": "object",
          "nullable": true
        }
      ]
    },
    "drop_dispositions": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/email-security_DispositionLabel"
      }
    },
    "require_tls_inbound": {
      "type": "boolean",
      "nullable": true
    },
    "require_tls_outbound": {
      "type": "boolean",
      "nullable": true
    },
    "allowed_delivery_modes": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/email-security_DeliveryMode"
      }
    }
  }
}
object email-security_InvestigateMessage
{
  "type": "object",
  "example": {
    "id": "4Njp3P0STMz2c02Q-2022-12-30T02:44:49-2a539d65",
    "to": [
      "email@example.com"
    ],
    "ts": "2019-11-20T23:22:01",
    "from": "d1994@example.com",
    "replyto": "email@example.com",
    "sent_at": "2019-11-21T00:22:01Z",
    "subject": "listen, I highly recommend u to read that email, just to ensure not a thing will take place",
    "to_name": [
      "Recipient Name"
    ],
    "alert_id": "4Njp3P0STMz2c02Q-2022-12-30T02:44:49",
    "edf_hash": null,
    "findings": null,
    "from_name": "Sender Name",
    "sent_date": "2019-11-21T00:22:01",
    "action_log": [],
    "message_id": "<4VAZPrAdg7IGNxdt1DWRNu0gvOeL_iZiwP4BQfo4DaE.Yw-woXuugQbeFhBpzwFQtqq_v2v1HOKznoMBqbciQpE@example.com>",
    "postfix_id": "47JJcT1w6GztQV7",
    "properties": {},
    "scanned_at": "2019-11-20T23:22:01Z",
    "validation": {
      "spf": "fail",
      "dkim": "pass",
      "dmarc": "none",
      "comment": null
    },
    "envelope_to": [
      "email@example.com"
    ],
    "delivery_mode": "DIRECT",
    "envelope_from": "d1994@example.com",
    "is_quarantined": false,
    "client_recipients": [
      "email@example.com"
    ],
    "detection_reasons": [
      "Selector is a source of spam/uce : Smtp-Helo-Server-Ip=<b>127.0.0[dot]186</b>"
    ],
    "final_disposition": "MALICIOUS",
    "threat_categories": [
      "IPReputation",
      "ASNReputation"
    ],
    "is_phish_submission": false,
    "postfix_id_outbound": null,
    "htmltext_structure_hash": null,
    "post_delivery_operations": []
  },
  "required": [
    "id",
    "ts",
    "client_recipients",
    "postfix_id",
    "detection_reasons",
    "action_log",
    "is_quarantined",
    "is_phish_submission",
    "properties"
  ],
  "properties": {
    "id": {
      "type": "string",
      "x-auditable": true
    },
    "to": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "nullable": true
    },
    "ts": {
      "type": "string",
      "deprecated": true,
      "description": "Deprecated, use `scanned_at` instead"
    },
    "from": {
      "type": "string",
      "nullable": true
    },
    "replyto": {
      "type": "string",
      "nullable": true
    },
    "sent_at": {
      "type": "string",
      "format": "date-time"
    },
    "subject": {
      "type": "string",
      "nullable": true
    },
    "to_name": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "nullable": true
    },
    "alert_id": {
      "type": "string",
      "nullable": true
    },
    "edf_hash": {
      "type": "string",
      "nullable": true
    },
    "findings": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true
          },
          "field": {
            "type": "string",
            "nullable": true
          },
          "score": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "value": {
            "type": "string",
            "nullable": true
          },
          "detail": {
            "type": "string",
            "nullable": true
          },
          "reason": {
            "type": "string",
            "nullable": true
          },
          "portion": {
            "type": "string",
            "nullable": true
          },
          "detection": {
            "allOf": [
              {
                "$ref": "#/components/schemas/email-security_DispositionLabel"
              },
              {
                "type": "string",
                "nullable": true
              }
            ]
          },
          "attachment": {
            "type": "string",
            "nullable": true
          }
        }
      },
      "nullable": true,
      "deprecated": true,
      "description": "Deprecated."
    },
    "from_name": {
      "type": "string",
      "nullable": true
    },
    "sent_date": {
      "type": "string",
      "nullable": true,
      "deprecated": true,
      "description": "Deprecated, use `sent_at` instead"
    },
    "action_log": {
      "deprecated": true,
      "description": "Deprecated: use `/investigate/{id}/action_log` instead."
    },
    "message_id": {
      "type": "string",
      "nullable": true
    },
    "postfix_id": {
      "$ref": "#/components/schemas/email-security_PostfixId"
    },
    "properties": {
      "type": "object",
      "properties": {
        "allowlisted_pattern": {
          "type": "string"
        },
        "blocklisted_message": {
          "type": "boolean"
        },
        "blocklisted_pattern": {
          "type": "string"
        },
        "allowlisted_pattern_type": {
          "allOf": [
            {
              "enum": [
                "quarantine_release",
                "acceptable_sender",
                "allowed_sender",
                "allowed_recipient",
                "domain_similarity",
                "domain_recency",
                "managed_acceptable_sender",
                "outbound_ndr"
              ],
              "type": "string"
            }
          ]
        },
        "whitelisted_pattern_type": {
          "allOf": [
            {
              "enum": [
                "quarantine_release",
                "acceptable_sender",
                "allowed_sender",
                "allowed_recipient",
                "domain_similarity",
                "domain_recency",
                "managed_acceptable_sender",
                "outbound_ndr"
              ],
              "type": "string"
            }
          ]
        }
      }
    },
    "scanned_at": {
      "type": "string",
      "format": "date-time"
    },
    "validation": {
      "allOf": [
        {
          "type": "object",
          "properties": {
            "spf": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/email-security_ValidationStatus"
                },
                {
                  "type": "string",
                  "nullable": true
                }
              ]
            },
            "dkim": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/email-security_ValidationStatus"
                },
                {
                  "type": "string",
                  "nullable": true
                }
              ]
            },
            "dmarc": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/email-security_ValidationStatus"
                },
                {
                  "type": "string",
                  "nullable": true
                }
              ]
            },
            "comment": {
              "type": "string",
              "nullable": true
            }
          }
        },
        {
          "type": "object",
          "nullable": true
        }
      ]
    },
    "envelope_to": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "nullable": true
    },
    "delivery_mode": {
      "allOf": [
        {
          "$ref": "#/components/schemas/email-security_MessageDeliveryMode"
        },
        {
          "type": "string",
          "nullable": true
        }
      ]
    },
    "envelope_from": {
      "type": "string",
      "nullable": true
    },
    "is_quarantined": {
      "type": "boolean"
    },
    "client_recipients": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "detection_reasons": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "final_disposition": {
      "allOf": [
        {
          "$ref": "#/components/schemas/email-security_DispositionLabel"
        },
        {
          "type": "string",
          "nullable": true
        }
      ]
    },
    "threat_categories": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "nullable": true
    },
    "is_phish_submission": {
      "type": "boolean"
    },
    "postfix_id_outbound": {
      "type": "string",
      "nullable": true
    },
    "htmltext_structure_hash": {
      "type": "string",
      "nullable": true
    },
    "post_delivery_operations": {
      "type": "array",
      "items": {
        "enum": [
          "PREVIEW",
          "QUARANTINE_RELEASE",
          "SUBMISSION",
          "MOVE"
        ],
        "type": "string"
      }
    }
  }
}
object email-security_Link
{
  "type": "object",
  "required": [
    "href"
  ],
  "properties": {
    "href": {
      "type": "string"
    },
    "text": {
      "type": "string",
      "nullable": true
    }
  }
}
object email-security_Message
{
  "type": "object",
  "required": [
    "code",
    "message"
  ],
  "properties": {
    "code": {
      "type": "integer",
      "format": "int32",
      "minimum": 1000
    },
    "message": {
      "type": "string"
    }
  }
}
string email-security_MessageDeliveryMode
{
  "enum": [
    "DIRECT",
    "BCC",
    "JOURNAL",
    "REVIEW_SUBMISSION",
    "DMARC_UNVERIFIED",
    "DMARC_FAILURE_REPORT",
    "DMARC_AGGREGATE_REPORT",
    "THREAT_INTEL_SUBMISSION",
    "SIMULATION_SUBMISSION",
    "API",
    "RETRO_SCAN"
  ],
  "type": "string"
}
object email-security_MessageHeader
{
  "type": "object",
  "required": [
    "name",
    "value"
  ],
  "properties": {
    "name": {
      "type": "string"
    },
    "value": {
      "type": "string"
    }
  }
}
object email-security_MoveResponseItem
{
  "type": "object",
  "required": [
    "completed_timestamp",
    "success",
    "item_count"
  ],
  "properties": {
    "status": {
      "type": "string",
      "nullable": true
    },
    "success": {
      "type": "boolean"
    },
    "operation": {
      "type": "string",
      "nullable": true
    },
    "recipient": {
      "type": "string",
      "nullable": true
    },
    "item_count": {
      "type": "integer",
      "format": "int32",
      "deprecated": true
    },
    "message_id": {
      "type": "string",
      "nullable": true
    },
    "destination": {
      "type": "string",
      "nullable": true
    },
    "completed_at": {
      "type": "string",
      "format": "date-time"
    },
    "completed_timestamp": {
      "type": "string",
      "format": "date-time",
      "deprecated": true,
      "description": "Deprecated, use `completed_at` instead"
    }
  }
}
string email-security_PatternType
{
  "enum": [
    "EMAIL",
    "DOMAIN",
    "IP",
    "UNKNOWN"
  ],
  "type": "string"
}
object email-security_PhishGuardReport
{
  "type": "object",
  "required": [
    "id",
    "created_at",
    "updated_at",
    "ts",
    "title",
    "content",
    "fields",
    "priority",
    "disposition"
  ],
  "properties": {
    "id": {
      "type": "integer",
      "format": "int32"
    },
    "ts": {
      "type": "string",
      "format": "date-time"
    },
    "tags": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/email-security_PhishGuardReportTag"
      },
      "nullable": true
    },
    "title": {
      "type": "string"
    },
    "fields": {
      "type": "object",
      "required": [
        "to",
        "ts"
      ],
      "properties": {
        "to": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "ts": {
          "type": "string",
          "format": "date-time"
        },
        "from": {
          "type": "string",
          "nullable": true
        },
        "postfix_id": {
          "type": "string",
          "nullable": true
        }
      }
    },
    "content": {
      "type": "string"
    },
    "priority": {
      "type": "string"
    },
    "created_at": {
      "type": "string",
      "format": "date-time"
    },
    "updated_at": {
      "type": "string",
      "format": "date-time"
    },
    "disposition": {
      "$ref": "#/components/schemas/email-security_DispositionLabel"
    }
  }
}
object email-security_PhishGuardReportTag
{
  "type": "object",
  "required": [
    "category",
    "value"
  ],
  "properties": {
    "value": {
      "type": "string"
    },
    "category": {
      "type": "string"
    }
  }
}
string email-security_PostfixId
{
  "type": "string",
  "title": "postfix_id",
  "example": "4Njp3P0STMz2c02Q",
  "description": "The identifier of the message."
}
object email-security_ReleaseResponse
{
  "allOf": [
    {
      "type": "object",
      "properties": {
        "failed": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "nullable": true
        },
        "delivered": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "nullable": true
        },
        "undelivered": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "nullable": true
        }
      }
    },
    {
      "type": "object",
      "required": [
        "id",
        "postfix_id"
      ],
      "properties": {
        "id": {
          "type": "string"
        },
        "postfix_id": {
          "$ref": "#/components/schemas/email-security_PostfixId"
        }
      }
    }
  ]
}
object email-security_ResultInfo
{
  "type": "object",
  "required": [
    "count",
    "page",
    "per_page",
    "total_count"
  ],
  "properties": {
    "page": {
      "type": "integer",
      "format": "int32",
      "example": 1,
      "description": "Current page within paginated list of results"
    },
    "count": {
      "type": "integer",
      "format": "int32",
      "example": 1,
      "description": "Total number of results for the requested service"
    },
    "per_page": {
      "type": "integer",
      "format": "int32",
      "example": 20,
      "description": "Number of results per page of results"
    },
    "total_count": {
      "type": "integer",
      "format": "int32",
      "example": 2000,
      "description": "Total results available without any search parameters"
    }
  }
}
string email-security_ScannableFolder
{
  "enum": [
    "AllItems",
    "Inbox"
  ],
  "type": "string"
}
string email-security_SortingDirection
{
  "enum": [
    "asc",
    "desc"
  ],
  "type": "string"
}
object email-security_Submission
{
  "type": "object",
  "required": [
    "submission_id",
    "requested_ts"
  ],
  "properties": {
    "type": {
      "type": "string",
      "nullable": true
    },
    "status": {
      "type": "string",
      "nullable": true
    },
    "outcome": {
      "type": "string",
      "nullable": true
    },
    "subject": {
      "type": "string",
      "nullable": true
    },
    "escalated_as": {
      "allOf": [
        {
          "$ref": "#/components/schemas/email-security_DispositionLabel"
        },
        {
          "type": "string",
          "nullable": true
        }
      ]
    },
    "escalated_at": {
      "type": "string",
      "format": "date-time",
      "nullable": true
    },
    "escalated_by": {
      "type": "string",
      "nullable": true
    },
    "requested_at": {
      "type": "string",
      "format": "date-time",
      "nullable": true
    },
    "requested_by": {
      "type": "string",
      "nullable": true
    },
    "requested_ts": {
      "type": "string",
      "format": "date-time",
      "deprecated": true,
      "description": "deprecated as of 2026-04-01, use `requested_at` instead."
    },
    "submission_id": {
      "type": "string"
    },
    "customer_status": {
      "allOf": [
        {
          "enum": [
            "escalated",
            "reviewed",
            "unreviewed"
          ],
          "type": "string"
        },
        {
          "type": "string",
          "nullable": true
        }
      ]
    },
    "original_edf_hash": {
      "type": "string",
      "nullable": true
    },
    "original_postfix_id": {
      "type": "string",
      "nullable": true
    },
    "outcome_disposition": {
      "allOf": [
        {
          "$ref": "#/components/schemas/email-security_DispositionLabel"
        },
        {
          "type": "string",
          "nullable": true
        }
      ]
    },
    "original_disposition": {
      "allOf": [
        {
          "$ref": "#/components/schemas/email-security_DispositionLabel"
        },
        {
          "type": "string",
          "nullable": true
        }
      ]
    },
    "requested_disposition": {
      "allOf": [
        {
          "$ref": "#/components/schemas/email-security_DispositionLabel"
        },
        {
          "type": "string",
          "nullable": true
        }
      ]
    },
    "escalated_submission_id": {
      "type": "string",
      "nullable": true
    }
  }
}
object email-security_ThreatCategory
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "integer",
      "format": "int64"
    },
    "name": {
      "type": "string",
      "nullable": true
    },
    "description": {
      "type": "string",
      "nullable": true
    }
  }
}
object email-security_TraceLine
{
  "type": "object",
  "required": [
    "ts",
    "lineno",
    "message"
  ],
  "properties": {
    "ts": {
      "type": "string",
      "format": "date-time"
    },
    "lineno": {
      "type": "integer",
      "format": "int64"
    },
    "message": {
      "type": "string"
    }
  }
}
object email-security_TrustedDomain
{
  "allOf": [
    {
      "type": "object",
      "example": {
        "pattern": "example.com",
        "comments": null,
        "is_regex": false,
        "is_recent": true,
        "is_similarity": false
      },
      "required": [
        "is_recent",
        "is_similarity",
        "is_regex",
        "pattern"
      ],
      "properties": {
        "pattern": {
          "type": "string",
          "maxLength": 1024,
          "minLength": 1,
          "x-auditable": true
        },
        "comments": {
          "type": "string",
          "nullable": true,
          "maxLength": 1024,
          "x-auditable": true
        },
        "is_regex": {
          "type": "boolean",
          "x-auditable": true
        },
        "is_recent": {
          "type": "boolean",
          "description": "Select to prevent recently registered domains from triggering a\nSuspicious or Malicious disposition.",
          "x-auditable": true
        },
        "is_similarity": {
          "type": "boolean",
          "description": "Select for partner or other approved domains that have similar\nspelling to your connected domains. Prevents listed domains from\ntriggering a Spoof disposition.",
          "x-auditable": true
        }
      },
      "additionalProperties": false
    },
    {
      "type": "object",
      "required": [
        "id",
        "created_at",
        "last_modified"
      ],
      "properties": {
        "id": {
          "type": "integer",
          "title": "identifier",
          "format": "int32",
          "example": 2401,
          "description": "The unique identifier for the trusted domain."
        },
        "created_at": {
          "type": "string",
          "format": "date-time",
          "x-auditable": true
        },
        "last_modified": {
          "type": "string",
          "format": "date-time",
          "x-auditable": true
        }
      }
    }
  ],
  "example": {
    "id": 2401,
    "pattern": "example.com",
    "comments": null,
    "is_regex": false,
    "is_recent": true,
    "created_at": "2023-11-14T22:13:20Z",
    "is_similarity": false,
    "last_modified": "2023-11-14T22:13:20Z"
  }
}
integer email-security_TrustedDomainId
{
  "type": "integer",
  "title": "identifier",
  "format": "int32",
  "example": 2401,
  "description": "The unique identifier for the trusted domain."
}
object email-security_UpdateAllowPolicy
{
  "type": "object",
  "properties": {
    "pattern": {
      "type": "string",
      "nullable": true,
      "maxLength": 1024,
      "minLength": 1,
      "x-auditable": true
    },
    "comments": {
      "type": "string",
      "nullable": true,
      "maxLength": 1024,
      "x-auditable": true
    },
    "is_regex": {
      "type": "boolean",
      "nullable": true,
      "x-auditable": true
    },
    "pattern_type": {
      "allOf": [
        {
          "$ref": "#/components/schemas/email-security_PatternType"
        },
        {
          "type": "string",
          "nullable": true
        }
      ]
    },
    "verify_sender": {
      "type": "boolean",
      "nullable": true,
      "description": "Enforce DMARC, SPF or DKIM authentication.\nWhen on, Email Security only honors policies that pass authentication.",
      "x-auditable": true
    },
    "is_trusted_sender": {
      "type": "boolean",
      "nullable": true,
      "description": "Messages from this sender will bypass all detections and link following.",
      "x-auditable": true
    },
    "is_exempt_recipient": {
      "type": "boolean",
      "nullable": true,
      "description": "Messages to this recipient will bypass all detections.",
      "x-auditable": true
    },
    "is_acceptable_sender": {
      "type": "boolean",
      "nullable": true,
      "description": "Messages from this sender will be exempted from Spam, Spoof and Bulk dispositions.\nNote: This will not exempt messages with Malicious or Suspicious dispositions.",
      "x-auditable": true
    }
  },
  "additionalProperties": false
}
object email-security_UpdateBlockedSender
{
  "type": "object",
  "properties": {
    "pattern": {
      "type": "string",
      "nullable": true,
      "minLength": 1,
      "x-auditable": true
    },
    "comments": {
      "type": "string",
      "nullable": true,
      "x-auditable": true
    },
    "is_regex": {
      "type": "boolean",
      "nullable": true,
      "x-auditable": true
    },
    "pattern_type": {
      "allOf": [
        {
          "$ref": "#/components/schemas/email-security_PatternType"
        },
        {
          "type": "string",
          "nullable": true
        }
      ]
    }
  },
  "additionalProperties": false
}
object email-security_UpdateTrustedDomain
{
  "type": "object",
  "properties": {
    "pattern": {
      "type": "string",
      "maxLength": 1024,
      "minLength": 1,
      "x-auditable": true
    },
    "comments": {
      "type": "string",
      "maxLength": 1024,
      "x-auditable": true
    },
    "is_regex": {
      "type": "boolean",
      "x-auditable": true
    },
    "is_recent": {
      "type": "boolean",
      "description": "Select to prevent recently registered domains from triggering a\nSuspicious or Malicious disposition.",
      "x-auditable": true
    },
    "is_similarity": {
      "type": "boolean",
      "description": "Select for partner or other approved domains that have similar\nspelling to your connected domains. Prevents listed domains from\ntriggering a Spoof disposition.",
      "x-auditable": true
    }
  },
  "additionalProperties": false
}
string email-security_ValidationStatus
{
  "enum": [
    "pass",
    "neutral",
    "fail",
    "error",
    "none"
  ],
  "type": "string"
}
array email-sending_EmailAddressList
{
  "type": "array",
  "items": {
    "type": "string"
  },
  "example": [
    "recipient-a@example.com",
    "recipient-b@example.com"
  ],
  "description": "A list of email address strings."
}
object email-sending_EmailAddressObject
{
  "type": "object",
  "example": {
    "name": "John Doe",
    "address": "user@example.com"
  },
  "required": [
    "address",
    "name"
  ],
  "properties": {
    "name": {
      "type": "string",
      "example": "John Doe",
      "description": "Display name for the email address (e.g., 'John Doe')."
    },
    "address": {
      "type": "string",
      "example": "user@example.com",
      "description": "Email address (e.g., 'user@example.com')."
    }
  }
}
string email-sending_EmailAddressString
{
  "type": "string",
  "example": "user@example.com",
  "description": "An email address as a plain string."
}
object email-sending_EmailAttachment
{
  "type": "object",
  "example": {
    "type": "application/pdf",
    "content": "JVBERi0xLjQK...",
    "filename": "report.pdf",
    "disposition": "attachment"
  },
  "required": [
    "disposition",
    "filename",
    "type",
    "content"
  ],
  "properties": {
    "type": {
      "type": "string",
      "example": "application/pdf",
      "description": "MIME type of the attachment (e.g., 'application/pdf', 'text/plain')."
    },
    "content": {
      "type": "string",
      "example": "JVBERi0xLjQK...",
      "description": "Base64-encoded content of the attachment."
    },
    "filename": {
      "type": "string",
      "example": "report.pdf",
      "description": "Filename for the attachment."
    },
    "disposition": {
      "enum": [
        "attachment"
      ],
      "type": "string",
      "description": "Must be 'attachment'. Indicates a standard file attachment."
    }
  }
}
object email-sending_EmailBuilder
{
  "type": "object",
  "example": {
    "to": [
      "recipient@example.com"
    ],
    "from": "sender@example.com",
    "html": "<h1>Hello</h1><p>Please find your report attached.</p>",
    "text": "Hello\n\nPlease find your report attached.",
    "subject": "Monthly Report",
    "attachments": [
      {
        "type": "application/pdf",
        "content": "JVBERi0xLjQK...",
        "filename": "report.pdf",
        "disposition": "attachment"
      }
    ]
  },
  "required": [
    "from",
    "to",
    "subject"
  ],
  "properties": {
    "cc": {
      "oneOf": [
        {
          "$ref": "#/components/schemas/email-sending_EmailAddressString"
        },
        {
          "$ref": "#/components/schemas/email-sending_EmailAddressList"
        }
      ],
      "description": "CC recipient(s). A single email string or an array of email strings."
    },
    "to": {
      "oneOf": [
        {
          "$ref": "#/components/schemas/email-sending_EmailAddressString"
        },
        {
          "$ref": "#/components/schemas/email-sending_EmailAddressList"
        }
      ],
      "description": "Recipient(s). A single email string or an array of email strings."
    },
    "bcc": {
      "oneOf": [
        {
          "$ref": "#/components/schemas/email-sending_EmailAddressString"
        },
        {
          "$ref": "#/components/schemas/email-sending_EmailAddressList"
        }
      ],
      "description": "BCC recipient(s). A single email string or an array of email strings."
    },
    "from": {
      "oneOf": [
        {
          "$ref": "#/components/schemas/email-sending_EmailAddressString"
        },
        {
          "$ref": "#/components/schemas/email-sending_EmailAddressObject"
        }
      ],
      "description": "Sender email address. Either a plain string or an object with address and name."
    },
    "html": {
      "type": "string",
      "example": "<h1>Hello</h1><p>Please find your report attached.</p>",
      "description": "HTML body of the email. At least one of text or html must be provided."
    },
    "text": {
      "type": "string",
      "example": "Hello\n\nPlease find your report attached.",
      "description": "Plain text body of the email. At least one of text or html must be provided."
    },
    "headers": {
      "type": "object",
      "example": {
        "X-Custom-Header": "value"
      },
      "description": "Custom email headers as key-value pairs.",
      "additionalProperties": {
        "type": "string"
      }
    },
    "subject": {
      "type": "string",
      "example": "Monthly Report",
      "description": "Email subject line."
    },
    "reply_to": {
      "oneOf": [
        {
          "$ref": "#/components/schemas/email-sending_EmailAddressString"
        },
        {
          "$ref": "#/components/schemas/email-sending_EmailAddressObject"
        }
      ],
      "description": "Reply-to address. Either a plain string or an object with address and name."
    },
    "attachments": {
      "type": "array",
      "items": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/email-sending_EmailInlineAttachment"
          },
          {
            "$ref": "#/components/schemas/email-sending_EmailAttachment"
          }
        ],
        "discriminator": {
          "mapping": {
            "inline": "#/components/schemas/email-sending_EmailInlineAttachment",
            "attachment": "#/components/schemas/email-sending_EmailAttachment"
          },
          "propertyName": "disposition"
        }
      },
      "description": "File attachments and inline images."
    }
  },
  "additionalProperties": false
}
object email-sending_EmailInlineAttachment
{
  "type": "object",
  "example": {
    "type": "image/png",
    "content": "iVBORw0KGgoAAAANSUhEUgAA...",
    "filename": "logo.png",
    "content_id": "logo",
    "disposition": "inline"
  },
  "required": [
    "disposition",
    "content_id",
    "filename",
    "type",
    "content"
  ],
  "properties": {
    "type": {
      "type": "string",
      "example": "image/png",
      "description": "MIME type of the attachment (e.g., 'image/png', 'text/plain')."
    },
    "content": {
      "type": "string",
      "example": "iVBORw0KGgoAAAANSUhEUgAA...",
      "description": "Base64-encoded content of the attachment."
    },
    "filename": {
      "type": "string",
      "example": "logo.png",
      "description": "Filename for the attachment."
    },
    "content_id": {
      "type": "string",
      "example": "logo",
      "description": "Content ID used to reference this attachment in HTML via cid: URI (e.g., <img src=\"cid:logo\">)."
    },
    "disposition": {
      "enum": [
        "inline"
      ],
      "type": "string",
      "description": "Must be 'inline'. Indicates the attachment is embedded in the email body."
    }
  }
}
object email-sending_EmailSendResponse
{
  "type": "object",
  "example": {
    "queued": [],
    "delivered": [
      "recipient@example.com"
    ],
    "permanent_bounces": []
  },
  "required": [
    "delivered",
    "queued",
    "permanent_bounces"
  ],
  "properties": {
    "queued": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "email"
      },
      "example": [],
      "description": "Email addresses for which delivery was queued for later."
    },
    "delivered": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "email"
      },
      "example": [
        "recipient@example.com"
      ],
      "description": "Email addresses to which the message was delivered immediately."
    },
    "permanent_bounces": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "email"
      },
      "example": [],
      "description": "Email addresses that permanently bounced."
    }
  }
}
object email-sending_SendRawRequest
{
  "type": "object",
  "example": {
    "from": "sender@example.com",
    "recipients": [
      "recipient@example.com"
    ],
    "mime_message": "From: sender@example.com\r\nTo: recipient@example.com\r\nSubject: Hello\r\nContent-Type: text/plain\r\n\r\nHello, World!"
  },
  "required": [
    "from",
    "recipients",
    "mime_message"
  ],
  "properties": {
    "from": {
      "type": "string",
      "format": "email",
      "example": "sender@example.com",
      "description": "Sender email address."
    },
    "recipients": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "email"
      },
      "example": [
        "recipient@example.com"
      ],
      "description": "List of recipient email addresses."
    },
    "mime_message": {
      "type": "string",
      "example": "From: sender@example.com\r\nTo: recipient@example.com\r\nSubject: Hello\r\nContent-Type: text/plain\r\n\r\nHello, World!",
      "description": "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."
    }
  },
  "additionalProperties": false
}
object email_account_id
{
  "$ref": "#/components/schemas/email_identifier"
}
object email_addresses
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/email_destination_address_properties"
    }
  ]
}
object email_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/email_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result_info": {
          "type": "object",
          "properties": {
            "page": {
              "type": "number",
              "example": 1,
              "description": "Current page within paginated list of results."
            },
            "count": {
              "type": "number",
              "example": 1,
              "description": "Total number of results for the requested service."
            },
            "per_page": {
              "type": "number",
              "example": 20,
              "description": "Number of results per page of results."
            },
            "total_count": {
              "type": "number",
              "example": 2000,
              "description": "Total results available without any search parameters."
            },
            "total_pages": {
              "type": "number",
              "example": 100,
              "description": "The number of total pages in the entire result set."
            }
          }
        }
      }
    }
  ]
}
object email_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/email_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/email_messages"
    }
  }
}
object email_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/email_api-response-common"
    }
  ]
}
object email_catch_all_rule
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/email_rule_identifier"
    },
    "tag": {
      "$ref": "#/components/schemas/email_rule_tag"
    },
    "name": {
      "$ref": "#/components/schemas/email_rule_name"
    },
    "actions": {
      "$ref": "#/components/schemas/email_rule_catchall-actions"
    },
    "enabled": {
      "$ref": "#/components/schemas/email_rule_enabled"
    },
    "matchers": {
      "$ref": "#/components/schemas/email_rule_catchall-matchers"
    }
  }
}
object email_catch_all_rule_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/email_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/email_catch_all_rule"
        }
      }
    }
  ]
}
object email_create_destination_address_properties
{
  "type": "object",
  "required": [
    "email"
  ],
  "properties": {
    "email": {
      "$ref": "#/components/schemas/email_email"
    }
  }
}
object email_create_rule_properties
{
  "type": "object",
  "required": [
    "actions",
    "matchers"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/email_rule_name"
    },
    "actions": {
      "$ref": "#/components/schemas/email_rule_actions"
    },
    "enabled": {
      "$ref": "#/components/schemas/email_rule_enabled"
    },
    "matchers": {
      "$ref": "#/components/schemas/email_rule_matchers"
    },
    "priority": {
      "$ref": "#/components/schemas/email_rule_priority"
    }
  }
}
object email_create_sending_subdomain_properties
{
  "type": "object",
  "required": [
    "name"
  ],
  "properties": {
    "name": {
      "type": "string",
      "example": "sub.example.com",
      "description": "The subdomain name. Must be within the zone."
    }
  }
}
string email_created
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-02T02:20:00Z",
  "readOnly": true,
  "description": "The date and time the destination address has been created."
}
string email_destination_address_identifier
{
  "type": "string",
  "example": "ea95132c15732412d22c1476fa83f27a",
  "readOnly": true,
  "maxLength": 32,
  "description": "Destination address identifier.",
  "x-auditable": true
}
object email_destination_address_properties
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/email_destination_address_identifier"
    },
    "tag": {
      "$ref": "#/components/schemas/email_destination_address_tag"
    },
    "email": {
      "$ref": "#/components/schemas/email_email"
    },
    "created": {
      "$ref": "#/components/schemas/email_created"
    },
    "modified": {
      "$ref": "#/components/schemas/email_modified"
    },
    "verified": {
      "$ref": "#/components/schemas/email_verified"
    }
  }
}
object email_destination_address_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/email_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/email_addresses"
        }
      }
    }
  ]
}
string email_destination_address_tag
{
  "type": "string",
  "example": "ea95132c15732412d22c1476fa83f27a",
  "readOnly": true,
  "maxLength": 32,
  "deprecated": true,
  "description": "Destination address tag. (Deprecated, replaced by destination address identifier)"
}
object email_destination_addresses_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/email_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/email_addresses"
          }
        },
        "result_info": {
          "type": "object",
          "properties": {
            "page": {
              "example": 1
            },
            "count": {
              "example": 1
            },
            "per_page": {
              "example": 20
            },
            "total_count": {
              "example": 1
            }
          }
        }
      }
    }
  ]
}
object email_dns_record
{
  "type": "object",
  "properties": {
    "ttl": {
      "type": "number",
      "anyOf": [
        {
          "type": "number",
          "example": 3600,
          "maximum": 86400,
          "minimum": 1
        },
        {
          "enum": [
            1
          ],
          "type": "number"
        }
      ],
      "example": 1,
      "description": "Time to live, in seconds, of the DNS record. Must be between 60 and 86400, or 1 for 'automatic'.",
      "x-auditable": true
    },
    "name": {
      "type": "string",
      "example": "example.com",
      "maxLength": 255,
      "description": "DNS record name (or @ for the zone apex).",
      "x-auditable": true
    },
    "type": {
      "enum": [
        "A",
        "AAAA",
        "CNAME",
        "HTTPS",
        "TXT",
        "SRV",
        "LOC",
        "MX",
        "NS",
        "CERT",
        "DNSKEY",
        "DS",
        "NAPTR",
        "SMIMEA",
        "SSHFP",
        "SVCB",
        "TLSA",
        "URI"
      ],
      "type": "string",
      "example": "NS",
      "readOnly": true,
      "description": "DNS record type.",
      "x-auditable": true
    },
    "content": {
      "type": "string",
      "example": "route1.mx.cloudflare.net",
      "description": "DNS record content."
    },
    "priority": {
      "type": "number",
      "example": 12,
      "maximum": 65535,
      "minimum": 0,
      "description": "Required for MX, SRV and URI records. Unused by other record types. Records with lower priorities are preferred.",
      "x-auditable": true
    }
  },
  "description": "List of records needed to enable an Email Routing zone."
}
object email_dns_settings_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/email_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/email_dns_record"
          }
        }
      }
    }
  ]
}
string email_email
{
  "type": "string",
  "example": "user@example.com",
  "maxLength": 90,
  "description": "The contact email address of the user.",
  "x-auditable": true
}
object email_email_routing_dns_query_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/email_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "errors": {
              "$ref": "#/components/schemas/email_email_routing_get_response_dns_errors"
            },
            "record": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/email_dns_record"
              }
            }
          }
        }
      }
    }
  ]
}
object email_email_routing_get_response_dns_error
{
  "type": "object",
  "properties": {
    "code": {
      "type": "string"
    },
    "missing": {
      "$ref": "#/components/schemas/email_dns_record"
    }
  }
}
array email_email_routing_get_response_dns_errors
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/email_email_routing_get_response_dns_error"
  }
}
string email_email_setting_created
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-02T02:20:00Z",
  "readOnly": true,
  "description": "The date and time the settings have been created."
}
object email_email_setting_dns_request_body
{
  "type": "object",
  "nullable": true,
  "properties": {
    "name": {
      "$ref": "#/components/schemas/email_email_setting_name"
    }
  }
}
boolean email_email_setting_enabled
{
  "enum": [
    true,
    false
  ],
  "type": "boolean",
  "example": true,
  "readOnly": true,
  "description": "State of the zone settings for Email Routing.",
  "x-auditable": true
}
string email_email_setting_identifier
{
  "type": "string",
  "example": "75610dab9e69410a82cf7e400a09ecec",
  "readOnly": true,
  "maxLength": 32,
  "description": "Email Routing settings identifier.",
  "x-auditable": true
}
string email_email_setting_modified
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-02T02:20:00Z",
  "readOnly": true,
  "description": "The date and time the settings have been modified."
}
string email_email_setting_name
{
  "type": "string",
  "example": "example.net",
  "description": "Domain of your zone.",
  "x-auditable": true
}
boolean email_email_setting_skip-wizard
{
  "enum": [
    true,
    false
  ],
  "type": "boolean",
  "example": true,
  "readOnly": true,
  "description": "Flag to check if the user skipped the configuration wizard."
}
string email_email_setting_status
{
  "enum": [
    "ready",
    "unconfigured",
    "misconfigured",
    "misconfigured/locked",
    "unlocked"
  ],
  "type": "string",
  "example": "ready",
  "readOnly": true,
  "description": "Show the state of your account, and the type or configuration error."
}
string email_email_setting_tag
{
  "type": "string",
  "example": "75610dab9e69410a82cf7e400a09ecec",
  "readOnly": true,
  "maxLength": 32,
  "deprecated": true,
  "description": "Email Routing settings tag. (Deprecated, replaced by Email Routing settings identifier)"
}
object email_email_settings_properties
{
  "type": "object",
  "required": [
    "id",
    "name",
    "enabled"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/email_email_setting_identifier"
    },
    "tag": {
      "$ref": "#/components/schemas/email_email_setting_tag"
    },
    "name": {
      "$ref": "#/components/schemas/email_email_setting_name"
    },
    "status": {
      "$ref": "#/components/schemas/email_email_setting_status"
    },
    "created": {
      "$ref": "#/components/schemas/email_email_setting_created"
    },
    "enabled": {
      "$ref": "#/components/schemas/email_email_setting_enabled"
    },
    "modified": {
      "$ref": "#/components/schemas/email_email_setting_modified"
    },
    "skip_wizard": {
      "$ref": "#/components/schemas/email_email_setting_skip-wizard"
    }
  }
}
object email_email_settings_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/email_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/email_settings"
        }
      }
    }
  ]
}
string email_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Identifier.",
  "x-auditable": true
}
array email_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string email_modified
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-02T02:20:00Z",
  "readOnly": true,
  "description": "The date and time the destination address was last modified."
}
object email_rule_action
{
  "type": "object",
  "required": [
    "type"
  ],
  "properties": {
    "type": {
      "enum": [
        "drop",
        "forward",
        "worker"
      ],
      "type": "string",
      "example": "forward",
      "description": "Type of supported action.",
      "x-auditable": true
    },
    "value": {
      "type": "array",
      "items": {
        "type": "string",
        "example": "destinationaddress@example.net",
        "maxLength": 90,
        "description": "Value for action.",
        "x-auditable": true
      }
    }
  },
  "description": "Actions pattern."
}
array email_rule_actions
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/email_rule_action"
  },
  "maxItems": 1,
  "minItems": 1,
  "description": "List actions patterns."
}
object email_rule_catchall-action
{
  "type": "object",
  "required": [
    "type"
  ],
  "properties": {
    "type": {
      "enum": [
        "drop",
        "forward",
        "worker"
      ],
      "type": "string",
      "example": "forward",
      "description": "Type of action for catch-all rule.",
      "x-auditable": true
    },
    "value": {
      "type": "array",
      "items": {
        "type": "string",
        "example": "destinationaddress@example.net",
        "maxLength": 90,
        "description": "Input value for action.",
        "x-auditable": true
      }
    }
  },
  "description": "Action for the catch-all routing rule."
}
array email_rule_catchall-actions
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/email_rule_catchall-action"
  },
  "maxItems": 1,
  "minItems": 1,
  "description": "List actions for the catch-all routing rule."
}
object email_rule_catchall-matcher
{
  "type": "object",
  "required": [
    "type"
  ],
  "properties": {
    "type": {
      "enum": [
        "all"
      ],
      "type": "string",
      "example": "all",
      "description": "Type of matcher. Default is 'all'.",
      "x-auditable": true
    }
  },
  "description": "Matcher for catch-all routing rule."
}
array email_rule_catchall-matchers
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/email_rule_catchall-matcher"
  },
  "description": "List of matchers for the catch-all routing rule."
}
boolean email_rule_enabled
{
  "enum": [
    true,
    false
  ],
  "type": "boolean",
  "default": true,
  "example": true,
  "description": "Routing rule status.",
  "x-auditable": true
}
string email_rule_identifier
{
  "type": "string",
  "example": "a7e6fb77503c41d8a7f3113c6918f10c",
  "readOnly": true,
  "maxLength": 32,
  "description": "Routing rule identifier.",
  "x-auditable": true
}
object email_rule_matcher
{
  "type": "object",
  "required": [
    "type"
  ],
  "properties": {
    "type": {
      "enum": [
        "all",
        "literal"
      ],
      "type": "string",
      "example": "literal",
      "description": "Type of matcher.",
      "x-auditable": true
    },
    "field": {
      "enum": [
        "to"
      ],
      "type": "string",
      "example": "to",
      "description": "Field for type matcher.",
      "x-auditable": true
    },
    "value": {
      "type": "string",
      "example": "test@example.com",
      "maxLength": 90,
      "description": "Value for matcher.",
      "x-auditable": true
    }
  },
  "description": "Matching pattern to forward your actions."
}
array email_rule_matchers
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/email_rule_matcher"
  },
  "description": "Matching patterns to forward to your actions."
}
string email_rule_name
{
  "type": "string",
  "example": "Send to user@example.net rule.",
  "maxLength": 256,
  "description": "Routing rule name.",
  "x-auditable": true
}
number email_rule_priority
{
  "type": "number",
  "default": 0,
  "minimum": 0,
  "description": "Priority of the routing rule.",
  "x-auditable": true
}
object email_rule_properties
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/email_rule_identifier"
    },
    "tag": {
      "$ref": "#/components/schemas/email_rule_tag"
    },
    "name": {
      "$ref": "#/components/schemas/email_rule_name"
    },
    "actions": {
      "$ref": "#/components/schemas/email_rule_actions"
    },
    "enabled": {
      "$ref": "#/components/schemas/email_rule_enabled"
    },
    "matchers": {
      "$ref": "#/components/schemas/email_rule_matchers"
    },
    "priority": {
      "$ref": "#/components/schemas/email_rule_priority"
    }
  }
}
object email_rule_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/email_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/email_rules"
        }
      }
    }
  ]
}
string email_rule_tag
{
  "type": "string",
  "example": "a7e6fb77503c41d8a7f3113c6918f10c",
  "readOnly": true,
  "maxLength": 32,
  "deprecated": true,
  "description": "Routing rule tag. (Deprecated, replaced by routing rule identifier)"
}
object email_rules
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/email_rule_properties"
    }
  ]
}
object email_rules_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/email_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/email_rules"
          }
        },
        "result_info": {
          "type": "object",
          "properties": {
            "page": {
              "example": 1
            },
            "count": {
              "example": 1
            },
            "per_page": {
              "example": 20
            },
            "total_count": {
              "example": 1
            }
          }
        }
      }
    }
  ]
}
object email_sending_limits_properties
{
  "type": "object",
  "properties": {
    "quota": {
      "type": "object",
      "nullable": true,
      "readOnly": true,
      "properties": {
        "unit": {
          "enum": [
            "day",
            "hour"
          ],
          "type": "string",
          "example": "day",
          "description": "The time period for the quota."
        },
        "value": {
          "type": "integer",
          "example": 1000,
          "description": "The quota limit."
        }
      },
      "description": "The resolved daily sending quota for the account. Null when the quota is not yet available."
    }
  }
}
object email_sending_limits_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/email_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/email_sending_limits_properties"
        }
      }
    }
  ]
}
object email_sending_subdomain
{
  "allOf": [
    {
      "$ref": "#/components/schemas/email_sending_subdomain_properties"
    }
  ]
}
object email_sending_subdomain_config_error
{
  "type": "object",
  "required": [
    "code"
  ],
  "properties": {
    "code": {
      "enum": [
        "mx.missing",
        "mx.foreign",
        "spf.missing",
        "spf.foreign",
        "spf.multiple",
        "dkim.missing",
        "dkim.conflict",
        "dmarc.missing",
        "dmarc.multiple"
      ],
      "type": "string",
      "example": "dkim.conflict",
      "description": "Error code identifying the type of issue."
    },
    "missing": {
      "$ref": "#/components/schemas/email_dns_record"
    },
    "existing": {
      "$ref": "#/components/schemas/email_dns_record"
    },
    "multiple": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/email_dns_record"
      }
    }
  },
  "description": "A DNS record status detected during preview."
}
string email_sending_subdomain_identifier
{
  "type": "string",
  "example": "aabbccdd11223344aabbccdd11223344",
  "readOnly": true,
  "maxLength": 32,
  "description": "Sending subdomain identifier.",
  "x-auditable": true
}
object email_sending_subdomain_preview_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/email_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "errors": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/email_sending_subdomain_config_error"
              },
              "description": "DNS issues detected — missing records that will be created and conflicts with existing records."
            },
            "records": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/email_dns_record"
              },
              "description": "DNS records that would be created for the subdomain."
            }
          }
        }
      }
    }
  ]
}
object email_sending_subdomain_properties
{
  "type": "object",
  "required": [
    "tag",
    "name",
    "enabled"
  ],
  "properties": {
    "tag": {
      "$ref": "#/components/schemas/email_sending_subdomain_identifier"
    },
    "name": {
      "type": "string",
      "example": "sub.example.com",
      "description": "The subdomain domain name.",
      "x-auditable": true
    },
    "created": {
      "$ref": "#/components/schemas/email_created"
    },
    "enabled": {
      "type": "boolean",
      "readOnly": true,
      "description": "Whether Email Sending is enabled on this subdomain."
    },
    "modified": {
      "$ref": "#/components/schemas/email_modified"
    },
    "dkim_selector": {
      "type": "string",
      "example": "cf-bounce",
      "readOnly": true,
      "description": "The DKIM selector used for email signing."
    },
    "return_path_domain": {
      "type": "string",
      "example": "cf-bounce.sub.example.com",
      "readOnly": true,
      "description": "The return-path domain used for bounce handling."
    }
  }
}
object email_sending_subdomain_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/email_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/email_sending_subdomain"
        }
      }
    }
  ]
}
object email_sending_subdomains_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/email_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/email_sending_subdomain"
          }
        }
      }
    }
  ]
}
object email_settings
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/email_email_settings_properties"
    }
  ]
}
object email_update_catch_all_rule_properties
{
  "type": "object",
  "required": [
    "actions",
    "matchers"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/email_rule_name"
    },
    "actions": {
      "$ref": "#/components/schemas/email_rule_catchall-actions"
    },
    "enabled": {
      "$ref": "#/components/schemas/email_rule_enabled"
    },
    "matchers": {
      "$ref": "#/components/schemas/email_rule_catchall-matchers"
    }
  }
}
object email_update_rule_properties
{
  "type": "object",
  "required": [
    "actions",
    "matchers"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/email_rule_name"
    },
    "actions": {
      "$ref": "#/components/schemas/email_rule_actions"
    },
    "enabled": {
      "$ref": "#/components/schemas/email_rule_enabled"
    },
    "matchers": {
      "$ref": "#/components/schemas/email_rule_matchers"
    },
    "priority": {
      "$ref": "#/components/schemas/email_rule_priority"
    }
  }
}
string email_verified
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-02T02:20:00Z",
  "readOnly": true,
  "description": "The date and time the destination address has been verified. Null means not verified yet."
}
object email_zone_id
{
  "$ref": "#/components/schemas/email_identifier"
}
string firewall_account_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Defines an account identifier."
}
object firewall_action
{
  "type": "object",
  "anyOf": [
    {
      "type": "object",
      "properties": {
        "mode": {
          "$ref": "#/components/schemas/firewall_mode"
        },
        "timeout": {
          "$ref": "#/components/schemas/firewall_timeout"
        },
        "response": {
          "$ref": "#/components/schemas/firewall_custom_response"
        }
      }
    }
  ],
  "description": "The action to perform when the threshold of matched traffic within the configured period is exceeded."
}
string firewall_action_mode
{
  "enum": [
    "simulate",
    "block",
    "challenge"
  ],
  "type": "string",
  "default": "challenge",
  "description": "The default action performed by the rules in the WAF package."
}
string firewall_anomaly_description
{
  "type": "string",
  "example": "Covers OWASP Top 10 vulnerabilities and more.",
  "readOnly": true,
  "description": "A summary of the purpose/function of the WAF package."
}
string firewall_anomaly_detection_mode
{
  "type": "string",
  "example": "anomaly",
  "readOnly": true,
  "description": "When a WAF package uses anomaly detection, each rule is given a score when triggered. If the total score of all triggered rules exceeds the sensitivity defined on the WAF package, the action defined on the package will be taken."
}
string firewall_anomaly_name
{
  "type": "string",
  "example": "OWASP ModSecurity Core Rule Set",
  "readOnly": true,
  "description": "The name of the WAF package."
}
object firewall_anomaly_package
{
  "allOf": [
    {
      "$ref": "#/components/schemas/firewall_package_definition"
    },
    {
      "type": "object",
      "properties": {
        "name": {
          "$ref": "#/components/schemas/firewall_anomaly_name"
        },
        "action_mode": {
          "$ref": "#/components/schemas/firewall_action_mode"
        },
        "description": {
          "$ref": "#/components/schemas/firewall_anomaly_description"
        },
        "sensitivity": {
          "$ref": "#/components/schemas/firewall_sensitivity"
        },
        "detection_mode": {
          "$ref": "#/components/schemas/firewall_anomaly_detection_mode"
        }
      }
    }
  ],
  "title": "Anomaly detection WAF package (OWASP)",
  "required": [
    "id",
    "name",
    "description",
    "zone_id",
    "detection_mode",
    "sensitivity",
    "action_mode"
  ]
}
object firewall_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/firewall_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "type": "object"
          },
          "nullable": true
        },
        "result_info": {
          "$ref": "#/components/schemas/firewall_result_info"
        }
      }
    }
  ]
}
object firewall_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/firewall_messages"
    },
    "result": {
      "anyOf": [
        {
          "type": "object"
        },
        {
          "type": "array",
          "items": {
            "type": "object"
          }
        },
        {
          "type": "string"
        }
      ]
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Defines whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/firewall_messages"
    }
  }
}
object firewall_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/firewall_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Defines whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/firewall_messages"
        }
      ],
      "example": []
    }
  }
}
object firewall_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/firewall_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "anyOf": [
            {
              "type": "object",
              "nullable": true
            },
            {
              "type": "string",
              "nullable": true
            }
          ]
        }
      }
    }
  ]
}
object firewall_api-response-single-id
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/firewall_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "nullable": true,
          "required": [
            "id"
          ],
          "properties": {
            "id": {
              "$ref": "#/components/schemas/firewall_identifier"
            }
          }
        }
      }
    }
  ]
}
object firewall_asn_configuration
{
  "type": "object",
  "title": "An ASN configuration.",
  "properties": {
    "value": {
      "type": "string",
      "example": "AS12345",
      "description": "The AS number to match."
    },
    "target": {
      "enum": [
        "asn"
      ],
      "type": "string",
      "example": "asn",
      "description": "The configuration target. You must set the target to `asn` when specifying an Autonomous System Number (ASN) in the rule."
    }
  }
}
string firewall_body
{
  "type": "string",
  "example": "<error>This request has been rate-limited.</error>",
  "maxLength": 10240,
  "description": "The response body to return. The value must conform to the configured content type."
}
array firewall_bypass
{
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "name": {
        "enum": [
          "url"
        ],
        "type": "string",
        "example": "url"
      },
      "value": {
        "type": "string",
        "example": "api.example.com/*",
        "description": "The URL to bypass."
      }
    }
  },
  "description": "Criteria specifying when the current rate limit should be bypassed. You can specify that the rate limit should not apply to one or more URLs."
}
object firewall_cidr_configuration
{
  "type": "object",
  "title": "An IP address range configuration.",
  "properties": {
    "value": {
      "type": "string",
      "example": "198.51.100.4/16",
      "description": "The IP address range to match. You can only use prefix lengths `/16` and `/24` for IPv4 ranges, and prefix lengths `/32`, `/48`, and `/64` for IPv6 ranges."
    },
    "target": {
      "enum": [
        "ip_range"
      ],
      "type": "string",
      "example": "ip_range",
      "description": "The configuration target. You must set the target to `ip_range` when specifying an IP address range in the rule."
    }
  }
}
string firewall_components-schemas-action
{
  "type": "string",
  "example": "execute",
  "pattern": "^[a-z_]+$",
  "description": "The action to perform when the rule matches."
}
string firewall_components-schemas-description
{
  "type": "string",
  "example": "Enable Cloudflare Magento ruleset for shop.example.com",
  "nullable": true,
  "maxLength": 1024,
  "description": "An informative summary of the current URI-based WAF override.",
  "x-auditable": true
}
string firewall_components-schemas-identifier
{
  "type": "string",
  "example": "de677e5818985db1285d0e80225f06e5",
  "readOnly": true,
  "maxLength": 32,
  "description": "The unique identifier of the resource."
}
string firewall_components-schemas-mode
{
  "enum": [
    "block",
    "challenge",
    "js_challenge",
    "managed_challenge"
  ],
  "example": "js_challenge",
  "maxLength": 12,
  "description": "The action to apply to a matched request."
}
boolean firewall_components-schemas-paused
{
  "type": "boolean",
  "example": false,
  "description": "When true, indicates that the firewall rule is currently paused."
}
number firewall_components-schemas-priority
{
  "type": "number",
  "example": 50,
  "maximum": 2147483647,
  "minimum": 0,
  "description": "The priority of the rule. Optional value used to define the processing order. A lower number indicates a higher priority. If not provided, rules with a defined priority will be processed before rules without a priority."
}
string firewall_components-schemas-ref
{
  "type": "string",
  "example": "my_ref",
  "description": "The reference of the rule (the rule ID by default)."
}
string firewall_components-ua-rule-id
{
  "type": "string",
  "example": "372e67954025e0ba6aaa6d586b9e0b59",
  "readOnly": true,
  "maxLength": 32,
  "description": "The unique identifier of the User Agent Blocking rule.",
  "x-auditable": true
}
object firewall_configuration
{
  "type": "object",
  "oneOf": [
    {
      "$ref": "#/components/schemas/firewall_ip_configuration"
    },
    {
      "$ref": "#/components/schemas/firewall_ipv6_configuration"
    },
    {
      "$ref": "#/components/schemas/firewall_cidr_configuration"
    },
    {
      "$ref": "#/components/schemas/firewall_asn_configuration"
    },
    {
      "$ref": "#/components/schemas/firewall_country_configuration"
    }
  ],
  "description": "The rule configuration."
}
array firewall_configurations
{
  "type": "array",
  "items": {
    "anyOf": [
      {
        "$ref": "#/components/schemas/firewall_schemas-ip_configuration"
      },
      {
        "$ref": "#/components/schemas/firewall_schemas-cidr_configuration"
      }
    ]
  },
  "description": "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."
}
string firewall_content_type
{
  "type": "string",
  "example": "text/xml",
  "maxLength": 50,
  "description": "The content type of the body. Must be one of the following: `text/plain`, `text/xml`, or `application/json`.",
  "x-auditable": true
}
object firewall_country_configuration
{
  "type": "object",
  "title": "A country configuration.",
  "properties": {
    "value": {
      "type": "string",
      "example": "US",
      "description": "The two-letter ISO-3166-1 alpha-2 code to match. For more information, refer to [IP Access rules: Parameters](https://developers.cloudflare.com/waf/tools/ip-access-rules/parameters/#country).",
      "x-auditable": true
    },
    "target": {
      "enum": [
        "country"
      ],
      "type": "string",
      "example": "country",
      "description": "The configuration target. You must set the target to `country` when specifying a country code in the rule."
    }
  }
}
string firewall_created_on
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-01T05:20:00.12345Z",
  "readOnly": true,
  "description": "The timestamp of when the rule was created.",
  "x-auditable": true
}
object firewall_custom_response
{
  "type": "object",
  "anyOf": [
    {
      "type": "object",
      "properties": {
        "body": {
          "$ref": "#/components/schemas/firewall_body"
        },
        "content_type": {
          "$ref": "#/components/schemas/firewall_content_type"
        }
      }
    }
  ],
  "description": "A custom content type and reponse to return when the threshold is exceeded. The custom response configured in this object will override the custom error for the zone. This object is optional.\nNotes: If you omit this object, Cloudflare will use the default HTML error page. If \"mode\" is \"challenge\", \"managed_challenge\", or \"js_challenge\", Cloudflare will use the zone challenge pages and you should not provide the \"response\" object."
}
boolean firewall_delete_filter_if_unused
{
  "type": "boolean",
  "description": "When true, indicates that Cloudflare should also delete the associated filter if there are no other firewall rules referencing the filter."
}
boolean firewall_deleted
{
  "type": "boolean",
  "example": true,
  "description": "When true, indicates that the firewall rule was deleted."
}
object firewall_deleted-filter
{
  "type": "object",
  "required": [
    "id",
    "deleted"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/firewall_filters_components-schemas-id"
    },
    "deleted": {
      "$ref": "#/components/schemas/firewall_deleted"
    }
  },
  "additionalProperties": false
}
string firewall_description
{
  "type": "string",
  "example": "Prevent multiple login failures to mitigate brute force attacks",
  "maxLength": 1024,
  "description": "An informative summary of the rule. This value is sanitized and any tags will be removed.",
  "x-auditable": true
}
string firewall_description_search
{
  "type": "string",
  "example": "abusive",
  "description": "A string to search for in the description of existing rules.",
  "x-auditable": true
}
string firewall_detection_mode
{
  "enum": [
    "anomaly",
    "traditional"
  ],
  "type": "string",
  "example": "traditional",
  "readOnly": true,
  "description": "The mode that defines how rules within the package are evaluated during the course of a request. When a package uses anomaly detection mode (`anomaly` value), each rule is given a score when triggered. If the total score of all triggered rules exceeds the sensitivity defined in the WAF package, the action configured in the package will be performed. Traditional detection mode (`traditional` value) will decide the action to take when it is triggered by the request. If multiple rules are triggered, the action providing the highest protection will be applied (for example, a 'block' action will win over a 'challenge' action)."
}
boolean firewall_disabled
{
  "type": "boolean",
  "example": false,
  "description": "When true, indicates that the rate limit is currently disabled.",
  "x-auditable": true
}
string firewall_email
{
  "type": "string",
  "example": "user@example.com",
  "maxLength": 90,
  "description": "The contact email address of the user."
}
boolean firewall_enabled
{
  "type": "boolean",
  "default": "true",
  "example": true,
  "description": "Whether the rule should be executed."
}
string firewall_expression
{
  "type": "string",
  "example": "(http.request.uri.path ~ \".*wp-login.php\" or http.request.uri.path ~ \".*xmlrpc.php\") and ip.addr ne 172.16.22.155",
  "description": "The filter expression. For more information, refer to [Expressions](https://developers.cloudflare.com/ruleset-engine/rules-language/expressions/)."
}
object firewall_filter
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/firewall_filters_components-schemas-id"
    },
    "ref": {
      "$ref": "#/components/schemas/firewall_schemas-ref"
    },
    "paused": {
      "$ref": "#/components/schemas/firewall_filters_components-schemas-paused"
    },
    "expression": {
      "$ref": "#/components/schemas/firewall_expression"
    },
    "description": {
      "$ref": "#/components/schemas/firewall_filters_components-schemas-description"
    }
  },
  "additionalProperties": false
}
object firewall_filter-delete-response-collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/firewall_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "id": {
                "$ref": "#/components/schemas/firewall_filters_components-schemas-id"
              }
            }
          }
        }
      }
    }
  ]
}
object firewall_filter-delete-response-single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/firewall_api-response-single"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "type": "object",
          "required": [
            "id"
          ],
          "properties": {
            "id": {
              "$ref": "#/components/schemas/firewall_filters_components-schemas-id"
            }
          }
        }
      }
    }
  ]
}
object firewall_filter-response-collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/firewall_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/firewall_filter"
          }
        }
      }
    }
  ]
}
object firewall_filter-response-single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/firewall_api-response-single"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "$ref": "#/components/schemas/firewall_filter"
        }
      }
    }
  ]
}
object firewall_filter-rule-base
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/firewall_firewall-rules_components-schemas-id"
    },
    "ref": {
      "$ref": "#/components/schemas/firewall_ref"
    },
    "action": {
      "$ref": "#/components/schemas/firewall_schemas-action"
    },
    "paused": {
      "$ref": "#/components/schemas/firewall_components-schemas-paused"
    },
    "priority": {
      "$ref": "#/components/schemas/firewall_components-schemas-priority"
    },
    "products": {
      "$ref": "#/components/schemas/firewall_products"
    },
    "description": {
      "$ref": "#/components/schemas/firewall_firewall-rules_components-schemas-description"
    }
  }
}
object firewall_filter-rule-response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/firewall_filter-rule-base"
    },
    {
      "type": "object",
      "properties": {
        "filter": {
          "oneOf": [
            {
              "$ref": "#/components/schemas/firewall_filter"
            },
            {
              "$ref": "#/components/schemas/firewall_deleted-filter"
            }
          ]
        }
      }
    }
  ]
}
object firewall_filter-rule-update-request
{
  "allOf": [
    {
      "$ref": "#/components/schemas/firewall_filter"
    },
    {
      "type": "object",
      "properties": {
        "id": {
          "allOf": [
            {
              "$ref": "#/components/schemas/firewall_filters_components-schemas-id"
            }
          ]
        }
      }
    }
  ]
}
object firewall_filter-rules-response-collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/firewall_api-response-collection"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/firewall_filter-rule-response"
          }
        }
      }
    }
  ]
}
object firewall_filter-rules-response-collection-delete
{
  "allOf": [
    {
      "$ref": "#/components/schemas/firewall_api-response-collection"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/firewall_filter-rule-response"
          }
        }
      }
    }
  ]
}
object firewall_filter-rules-single-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/firewall_api-response-single"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "$ref": "#/components/schemas/firewall_filter-rule-response"
        }
      }
    }
  ]
}
object firewall_filter-rules-single-response-delete
{
  "allOf": [
    {
      "$ref": "#/components/schemas/firewall_api-response-single"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "$ref": "#/components/schemas/firewall_filter-rule-response"
        }
      }
    }
  ]
}
object firewall_filters
{
  "type": "object",
  "properties": {
    "mode": {
      "$ref": "#/components/schemas/firewall_schemas-mode"
    },
    "match": {
      "enum": [
        "any",
        "all"
      ],
      "type": "string",
      "default": "all",
      "description": "When set to `all`, all the search requirements must match. When set to `any`, only one of the search requirements has to match.",
      "x-auditable": true
    },
    "notes": {
      "type": "string",
      "example": "my note",
      "description": "The string to search for in the notes of existing IP Access rules.\nNotes: For example, the string 'attack' would match IP Access rules with notes 'Attack 26/02' and 'Attack 27/02'. The search is case insensitive.",
      "x-auditable": true
    },
    "configuration.value": {
      "type": "string",
      "example": "198.51.100.4",
      "description": "The target value to search for in existing rules: an IP address, an IP address range, or a country code, depending on the provided `configuration.target`.\nNotes: You can search for a single IPv4 address, an IP address range with a subnet of '/16' or '/24', or a two-letter ISO-3166-1 alpha-2 country code."
    },
    "configuration.target": {
      "enum": [
        "ip",
        "ip_range",
        "asn",
        "country"
      ],
      "type": "string",
      "example": "ip",
      "description": "The target to search in existing rules.",
      "x-auditable": true
    }
  }
}
string firewall_filters_components-schemas-description
{
  "type": "string",
  "example": "Restrict access from these browsers on this address range.",
  "maxLength": 500,
  "description": "An informative summary of the filter."
}
string firewall_filters_components-schemas-id
{
  "type": "string",
  "example": "372e67954025e0ba6aaa6d586b9e0b61",
  "readOnly": true,
  "maxLength": 32,
  "minLength": 32,
  "description": "The unique identifier of the filter."
}
boolean firewall_filters_components-schemas-paused
{
  "type": "boolean",
  "example": false,
  "description": "When true, indicates that the filter is currently paused."
}
string firewall_firewall-rules_components-schemas-description
{
  "type": "string",
  "example": "Blocks traffic identified during investigation for MIR-31",
  "maxLength": 500,
  "description": "An informative summary of the firewall rule."
}
string firewall_firewall-rules_components-schemas-id
{
  "type": "string",
  "example": "372e67954025e0ba6aaa6d586b9e0b60",
  "readOnly": true,
  "maxLength": 32,
  "description": "The unique identifier of the firewall rule."
}
object firewall_firewalluablock
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/firewall_components-ua-rule-id"
    },
    "mode": {
      "$ref": "#/components/schemas/firewall_components-schemas-mode"
    },
    "paused": {
      "$ref": "#/components/schemas/firewall_schemas-paused"
    },
    "description": {
      "$ref": "#/components/schemas/firewall_firewalluablock_components-schemas-description"
    },
    "configuration": {
      "$ref": "#/components/schemas/firewall_schemas-configuration"
    }
  }
}
string firewall_firewalluablock_components-schemas-description
{
  "type": "string",
  "example": "Prevent access from abusive clients identified by this User Agent to mitigate a DDoS attack",
  "maxLength": 1024,
  "description": "An informative summary of the rule."
}
object firewall_firewalluablock_response_collection
{
  "allOf": [
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/firewall_firewalluablock"
          }
        }
      }
    },
    {
      "$ref": "#/components/schemas/firewall_api-response-collection"
    }
  ]
}
object firewall_firewalluablock_response_single
{
  "allOf": [
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/firewall_firewalluablock"
        }
      }
    },
    {
      "$ref": "#/components/schemas/firewall_api-response-single"
    }
  ]
}
object firewall_groups
{
  "type": "object",
  "example": {
    "ea8687e59929c1fd05ba97574ad43f77": "default"
  },
  "description": "An object that allows you to enable or disable WAF rule groups for the current WAF override. Each key of this object must be the ID of a WAF rule group, and each value must be a valid WAF action (usually `default` or `disable`). When creating a new URI-based WAF override, you must provide a `groups` object or a `rules` object.",
  "additionalProperties": true
}
string firewall_header_name
{
  "type": "string",
  "example": "Cf-Cache-Status",
  "description": "The name of the response header to match.",
  "x-auditable": true
}
string firewall_header_op
{
  "enum": [
    "eq",
    "ne"
  ],
  "type": "string",
  "example": "ne",
  "description": "The operator used when matching: `eq` means \"equal\" and `ne` means \"not equal\".",
  "x-auditable": true
}
string firewall_header_value
{
  "type": "string",
  "example": "HIT",
  "description": "The value of the response header, which must match exactly.",
  "x-auditable": true
}
string firewall_id
{
  "type": "string",
  "example": "372e67954025e0ba6aaa6d586b9e0b59",
  "readOnly": true,
  "maxLength": 32,
  "description": "The unique identifier of the rate limit.",
  "x-auditable": true
}
string firewall_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "readOnly": true,
  "maxLength": 32,
  "description": "Defines an identifier."
}
object firewall_ip_configuration
{
  "type": "object",
  "title": "An IP address configuration.",
  "properties": {
    "value": {
      "type": "string",
      "example": "198.51.100.4",
      "description": "The IP address to match. This address will be compared to the IP address of incoming requests."
    },
    "target": {
      "enum": [
        "ip"
      ],
      "type": "string",
      "example": "ip",
      "description": "The configuration target. You must set the target to `ip` when specifying an IP address in the rule."
    }
  }
}
string firewall_ip_range_search
{
  "type": "string",
  "example": "1.2.3.0/16",
  "description": "A single IP address range to search for in existing rules.",
  "x-auditable": true
}
string firewall_ip_search
{
  "type": "string",
  "example": "1.2.3.4",
  "description": "A single IP address to search for in existing rules."
}
object firewall_ipv6_configuration
{
  "type": "object",
  "title": "An IPv6 address configuration.",
  "properties": {
    "value": {
      "type": "string",
      "example": "2001:DB8:100::CF",
      "description": "The IPv6 address to match."
    },
    "target": {
      "enum": [
        "ip6"
      ],
      "type": "string",
      "example": "ip6",
      "description": "The configuration target. You must set the target to `ip6` when specifying an IPv6 address in the rule."
    }
  }
}
string firewall_lockdowns_components-schemas-description
{
  "type": "string",
  "example": "Restrict access to these endpoints to requests from a known IP address",
  "maxLength": 1024,
  "description": "An informative summary of the rule."
}
string firewall_lockdowns_components-schemas-id
{
  "type": "string",
  "example": "372e67954025e0ba6aaa6d586b9e0b59",
  "readOnly": true,
  "maxLength": 32,
  "description": "The unique identifier of the Zone Lockdown rule.",
  "x-auditable": true
}
object firewall_match
{
  "type": "object",
  "oneOf": [
    {
      "type": "object",
      "properties": {
        "headers": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "op": {
                "$ref": "#/components/schemas/firewall_header_op"
              },
              "name": {
                "$ref": "#/components/schemas/firewall_header_name"
              },
              "value": {
                "$ref": "#/components/schemas/firewall_header_value"
              }
            }
          }
        },
        "request": {
          "type": "object",
          "properties": {
            "url": {
              "$ref": "#/components/schemas/firewall_url"
            },
            "methods": {
              "$ref": "#/components/schemas/firewall_methods"
            },
            "schemes": {
              "$ref": "#/components/schemas/firewall_schemes"
            }
          }
        },
        "response": {
          "type": "object",
          "properties": {
            "origin_traffic": {
              "$ref": "#/components/schemas/firewall_origin_traffic"
            }
          }
        }
      }
    }
  ],
  "description": "Determines which traffic the rate limit counts towards the threshold."
}
array firewall_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "message": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
array firewall_methods
{
  "type": "array",
  "items": {
    "enum": [
      "GET",
      "POST",
      "PUT",
      "DELETE",
      "PATCH",
      "HEAD",
      "_ALL_"
    ],
    "type": "string",
    "example": "GET",
    "description": "An HTTP method or `_ALL_` to indicate all methods.",
    "x-auditable": true
  },
  "example": [
    "GET",
    "POST"
  ],
  "description": "The HTTP methods to match. You can specify a subset (for example, `['POST','PUT']`) or all methods (`['_ALL_']`). This field is optional when creating a rate limit."
}
string firewall_mode
{
  "enum": [
    "simulate",
    "ban",
    "challenge",
    "js_challenge",
    "managed_challenge"
  ],
  "type": "string",
  "example": "challenge",
  "description": "The action to perform.",
  "x-auditable": true
}
string firewall_modified_on
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-01T05:20:00.12345Z",
  "readOnly": true,
  "description": "The timestamp of when the rule was last modified.",
  "x-auditable": true
}
string firewall_name
{
  "type": "string",
  "example": "USER",
  "readOnly": true,
  "description": "The name of the WAF package."
}
string firewall_notes
{
  "type": "string",
  "example": "This rule is enabled because of an event that occurred on date X.",
  "description": "An informative summary of the rule, typically used as a reminder or explanation.",
  "x-auditable": true
}
boolean firewall_origin_traffic
{
  "type": "boolean",
  "description": "When true, only the uncached traffic served from your origin servers will count towards rate limiting. In this case, any cached traffic served by Cloudflare will not count towards rate limiting. This field is optional.\nNotes: This field is deprecated. Instead, use response headers and set \"origin_traffic\" to \"false\" to avoid legacy behaviour interacting with the \"response_headers\" property.",
  "x-auditable": true
}
object firewall_override
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/firewall_overrides-id"
    },
    "urls": {
      "$ref": "#/components/schemas/firewall_urls"
    },
    "rules": {
      "$ref": "#/components/schemas/firewall_rules"
    },
    "groups": {
      "$ref": "#/components/schemas/firewall_groups"
    },
    "paused": {
      "$ref": "#/components/schemas/firewall_paused"
    },
    "priority": {
      "$ref": "#/components/schemas/firewall_priority"
    },
    "description": {
      "$ref": "#/components/schemas/firewall_components-schemas-description"
    },
    "rewrite_action": {
      "$ref": "#/components/schemas/firewall_rewrite_action"
    }
  }
}
object firewall_override_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/firewall_api-response-collection"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/firewall_override"
          }
        }
      }
    }
  ]
}
object firewall_override_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/firewall_api-response-single"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "$ref": "#/components/schemas/firewall_override"
        }
      }
    }
  ]
}
string firewall_overrides-id
{
  "type": "string",
  "example": "de677e5818985db1285d0e80225f06e5",
  "readOnly": true,
  "maxLength": 32,
  "description": "The unique identifier of the WAF override.",
  "x-auditable": true
}
object firewall_package
{
  "type": "object",
  "oneOf": [
    {
      "$ref": "#/components/schemas/firewall_package_definition"
    },
    {
      "$ref": "#/components/schemas/firewall_anomaly_package"
    }
  ]
}
object firewall_package_definition
{
  "type": "object",
  "title": "Traditional WAF package",
  "required": [
    "id",
    "name",
    "description",
    "detection_mode",
    "zone_id"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/firewall_identifier"
    },
    "name": {
      "$ref": "#/components/schemas/firewall_name"
    },
    "status": {
      "$ref": "#/components/schemas/firewall_status"
    },
    "zone_id": {
      "$ref": "#/components/schemas/firewall_identifier"
    },
    "description": {
      "$ref": "#/components/schemas/firewall_schemas-description"
    },
    "detection_mode": {
      "$ref": "#/components/schemas/firewall_detection_mode"
    }
  }
}
string firewall_package_id
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "readOnly": true,
  "maxLength": 32,
  "description": "Defines a package identifier."
}
object firewall_package_response_collection
{
  "anyOf": [
    {
      "$ref": "#/components/schemas/firewall_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/firewall_package"
          }
        }
      }
    }
  ]
}
object firewall_package_response_single
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/firewall_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object"
        }
      }
    }
  ]
}
boolean firewall_paused
{
  "type": "boolean",
  "description": "When true, indicates that the rule is currently paused.",
  "x-auditable": true
}
number firewall_period
{
  "type": "number",
  "example": 900,
  "maximum": 86400,
  "minimum": 10,
  "description": "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.",
  "x-auditable": true
}
number firewall_priority
{
  "type": "number",
  "example": 1,
  "maximum": 1000000000,
  "minimum": -1000000000,
  "description": "The relative priority of the current URI-based WAF override when multiple overrides match a single URL. A lower number indicates higher priority. Higher priority overrides may overwrite values set by lower priority overrides.",
  "x-auditable": true
}
array firewall_products
{
  "type": "array",
  "items": {
    "enum": [
      "zoneLockdown",
      "uaBlock",
      "bic",
      "hot",
      "securityLevel",
      "rateLimit",
      "waf"
    ],
    "type": "string",
    "example": "waf",
    "description": "A list of products to bypass for a request when using the `bypass` action."
  }
}
object firewall_rate-limits
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/firewall_ratelimit"
    }
  ]
}
string firewall_rate_limit_id
{
  "type": "string",
  "example": "372e67954025e0ba6aaa6d586b9e0b59",
  "readOnly": true,
  "maxLength": 32,
  "description": "Defines the unique identifier of the rate limit."
}
object firewall_ratelimit
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/firewall_id"
    },
    "match": {
      "$ref": "#/components/schemas/firewall_match"
    },
    "action": {
      "$ref": "#/components/schemas/firewall_action"
    },
    "bypass": {
      "$ref": "#/components/schemas/firewall_bypass"
    },
    "period": {
      "$ref": "#/components/schemas/firewall_period"
    },
    "disabled": {
      "$ref": "#/components/schemas/firewall_disabled"
    },
    "threshold": {
      "$ref": "#/components/schemas/firewall_threshold"
    },
    "description": {
      "$ref": "#/components/schemas/firewall_description"
    }
  }
}
object firewall_ratelimit_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/firewall_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/firewall_rate-limits"
          }
        }
      }
    }
  ]
}
object firewall_ratelimit_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/firewall_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/firewall_rate-limits"
        }
      }
    }
  ]
}
string firewall_ref
{
  "type": "string",
  "example": "MIR-31",
  "maxLength": 50,
  "description": "A short reference tag. Allows you to select related firewall rules."
}
object firewall_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/firewall_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/firewall_schemas-rule"
          }
        }
      }
    }
  ]
}
object firewall_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/firewall_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/firewall_schemas-rule"
        }
      }
    }
  ]
}
object firewall_result_info
{
  "type": "object",
  "properties": {
    "page": {
      "type": "number",
      "example": 1,
      "description": "Defines the current page within paginated list of results."
    },
    "count": {
      "type": "number",
      "example": 1,
      "description": "Defines the total number of results for the requested service."
    },
    "per_page": {
      "type": "number",
      "example": 20,
      "description": "Defines the number of results per page of results."
    },
    "total_count": {
      "type": "number",
      "example": 2000,
      "description": "Defines the total results available without any search parameters."
    }
  }
}
object firewall_rewrite_action
{
  "type": "object",
  "properties": {
    "block": {
      "$ref": "#/components/schemas/firewall_waf_rewrite_action"
    },
    "default": {
      "$ref": "#/components/schemas/firewall_waf_rewrite_action"
    },
    "disable": {
      "$ref": "#/components/schemas/firewall_waf_rewrite_action"
    },
    "simulate": {
      "$ref": "#/components/schemas/firewall_waf_rewrite_action"
    },
    "challenge": {
      "$ref": "#/components/schemas/firewall_waf_rewrite_action"
    }
  },
  "description": "Specifies that, when a WAF rule matches, its configured action will be replaced by the action configured in this object."
}
object firewall_rule
{
  "type": "object",
  "required": [
    "id",
    "mode",
    "allowed_modes",
    "configuration"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/firewall_schemas-identifier"
    },
    "mode": {
      "$ref": "#/components/schemas/firewall_schemas-mode"
    },
    "notes": {
      "$ref": "#/components/schemas/firewall_notes"
    },
    "created_on": {
      "type": "string",
      "format": "date-time",
      "example": "2014-01-01T05:20:00.12345Z",
      "readOnly": true,
      "description": "The timestamp of when the rule was created."
    },
    "modified_on": {
      "type": "string",
      "format": "date-time",
      "example": "2014-01-01T05:20:00.12345Z",
      "readOnly": true,
      "description": "The timestamp of when the rule was last modified."
    },
    "allowed_modes": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/firewall_schemas-mode"
      },
      "example": [
        "whitelist",
        "block",
        "challenge",
        "js_challenge",
        "managed_challenge"
      ],
      "readOnly": true,
      "description": "The available actions that a rule can apply to a matched request."
    },
    "configuration": {
      "$ref": "#/components/schemas/firewall_configuration"
    }
  }
}
object firewall_rule_collection_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/firewall_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/firewall_rule"
          }
        }
      }
    }
  ]
}
string firewall_rule_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Unique identifier for a rule."
}
object firewall_rule_single_id_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/firewall_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "id": {
              "$ref": "#/components/schemas/firewall_schemas-identifier"
            }
          }
        }
      }
    }
  ]
}
object firewall_rule_single_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/firewall_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/firewall_rule"
        }
      }
    }
  ]
}
object firewall_rules
{
  "type": "object",
  "example": {
    "100015": "disable"
  },
  "description": "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.",
  "additionalProperties": {
    "allOf": [
      {
        "$ref": "#/components/schemas/firewall_waf_action"
      }
    ],
    "example": "default"
  }
}
string firewall_rules_components-schemas-description
{
  "type": "string",
  "default": "",
  "example": "Execute the OWASP ruleset when the IP address is not 1.1.1.1",
  "description": "An informative description of the rule."
}
string firewall_schemas-action
{
  "enum": [
    "block",
    "challenge",
    "js_challenge",
    "managed_challenge",
    "allow",
    "log",
    "bypass"
  ],
  "type": "string",
  "example": "block",
  "description": "The action to apply to a matched request. The `log` action is only available on an Enterprise plan."
}
object firewall_schemas-cidr_configuration
{
  "type": "object",
  "title": "An IP address range configuration.",
  "properties": {
    "value": {
      "type": "string",
      "example": "198.51.100.4/16",
      "description": "The IP address range to match. You can only use prefix lengths `/16` and `/24`."
    },
    "target": {
      "enum": [
        "ip_range"
      ],
      "type": "string",
      "example": "ip_range",
      "description": "The configuration target. You must set the target to `ip_range` when specifying an IP address range in the Zone Lockdown rule."
    }
  }
}
object firewall_schemas-configuration
{
  "type": "object",
  "properties": {
    "value": {
      "type": "string",
      "example": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_5) AppleWebKit/603.2.4 (KHTML, like Gecko) Version/10.1.1 Safari/603.2.4",
      "description": "The exact user agent string to match. This value will be compared to the received `User-Agent` HTTP header value."
    },
    "target": {
      "type": "string",
      "example": "ua",
      "description": "The configuration target for this rule. You must set the target to `ua` for User Agent Blocking rules."
    }
  },
  "description": "The configuration object for the current rule."
}
string firewall_schemas-description
{
  "type": "string",
  "example": "null",
  "readOnly": true,
  "description": "A summary of the purpose/function of the WAF package."
}
string firewall_schemas-description_search
{
  "type": "string",
  "example": "endpoints",
  "description": "A string to search for in the description of existing rules.",
  "x-auditable": true
}
string firewall_schemas-expression
{
  "type": "string",
  "example": "ip.src ne 1.1.1.1",
  "description": "The expression defining which traffic will match the rule."
}
string firewall_schemas-identifier
{
  "type": "string",
  "example": "92f17202ed8bd63d69a66b86a49a8f6b",
  "readOnly": true,
  "maxLength": 32,
  "description": "The unique identifier of the IP Access rule.",
  "x-auditable": true
}
object firewall_schemas-ip_configuration
{
  "type": "object",
  "title": "An IP address configuration.",
  "properties": {
    "value": {
      "type": "string",
      "example": "198.51.100.4",
      "description": "The IP address to match. This address will be compared to the IP address of incoming requests."
    },
    "target": {
      "enum": [
        "ip"
      ],
      "type": "string",
      "example": "ip",
      "description": "The configuration target. You must set the target to `ip` when specifying an IP address in the Zone Lockdown rule."
    }
  }
}
string firewall_schemas-mode
{
  "enum": [
    "block",
    "challenge",
    "whitelist",
    "js_challenge",
    "managed_challenge"
  ],
  "type": "string",
  "example": "challenge",
  "description": "The action to apply to a matched request.",
  "x-auditable": true
}
boolean firewall_schemas-paused
{
  "type": "boolean",
  "example": false,
  "description": "When true, indicates that the rule is currently paused.",
  "x-auditable": true
}
number firewall_schemas-priority
{
  "type": "number",
  "example": 5,
  "description": "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.",
  "x-auditable": true
}
string firewall_schemas-ref
{
  "type": "string",
  "example": "FIL-100",
  "maxLength": 50,
  "description": "A short reference tag. Allows you to select related filters."
}
object firewall_schemas-rule
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/firewall_rule"
    },
    {
      "type": "object",
      "properties": {
        "scope": {
          "type": "object",
          "readOnly": true,
          "properties": {
            "id": {
              "$ref": "#/components/schemas/firewall_identifier"
            },
            "type": {
              "enum": [
                "user",
                "organization"
              ],
              "type": "string",
              "example": "user",
              "readOnly": true,
              "description": "Defines the scope of the rule."
            },
            "email": {
              "$ref": "#/components/schemas/firewall_email"
            }
          },
          "description": "All zones owned by the user will have the rule applied."
        }
      }
    }
  ],
  "required": [
    "id",
    "mode",
    "allowed_modes",
    "configuration",
    "scope"
  ]
}
array firewall_schemas-urls
{
  "type": "array",
  "items": {
    "type": "string",
    "example": "api.mysite.com/some/endpoint*",
    "x-auditable": true
  },
  "description": "The URLs to include in the rule definition. You can use wildcards. Each entered URL will be escaped before use, which means you can only use simple wildcard patterns."
}
array firewall_schemes
{
  "type": "array",
  "items": {
    "type": "string",
    "example": "HTTPS",
    "description": "An HTTP scheme or `_ALL_` to indicate all schemes."
  },
  "example": [
    "HTTP",
    "HTTPS"
  ],
  "description": "The HTTP schemes to match. You can specify one scheme (`['HTTPS']`), both schemes (`['HTTP','HTTPS']`), or all schemes (`['_ALL_']`). This field is optional.",
  "x-auditable": true
}
string firewall_sensitivity
{
  "enum": [
    "high",
    "medium",
    "low",
    "off"
  ],
  "type": "string",
  "default": "high",
  "description": "The sensitivity of the WAF package."
}
string firewall_status
{
  "enum": [
    "active"
  ],
  "type": "string",
  "default": "active",
  "readOnly": true,
  "description": "When set to `active`, indicates that the WAF package will be applied to the zone."
}
number firewall_threshold
{
  "type": "number",
  "example": 60,
  "minimum": 1,
  "description": "The threshold that will trigger the configured mitigation action. Configure this value along with the `period` property to establish a threshold per period.",
  "x-auditable": true
}
number firewall_timeout
{
  "type": "number",
  "example": 86400,
  "maximum": 86400,
  "minimum": 1,
  "description": "The time in seconds during which Cloudflare will perform the mitigation action. Must be an integer value greater than or equal to the period.\nNotes: If \"mode\" is \"challenge\", \"managed_challenge\", or \"js_challenge\", Cloudflare will use the zone's Challenge Passage time and you should not provide this value.",
  "x-auditable": true
}
object firewall_ua_configuration
{
  "type": "object",
  "title": "A user agent configuration.",
  "properties": {
    "value": {
      "type": "string",
      "example": "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)",
      "description": "the user agent to exactly match",
      "x-auditable": true
    },
    "target": {
      "enum": [
        "ua"
      ],
      "type": "string",
      "example": "ua",
      "description": "The configuration target. You must set the target to `ua` when specifying a user agent in the rule."
    }
  }
}
string firewall_uri_search
{
  "type": "string",
  "example": "/some/path",
  "description": "A single URI to search for in the list of URLs of existing rules.",
  "x-auditable": true
}
string firewall_url
{
  "type": "string",
  "example": "*.example.org/path*",
  "maxLength": 1024,
  "description": "The URL pattern to match, composed of a host and a path such as `example.org/path*`. Normalization is applied before the pattern is matched. `*` wildcards are expanded to match applicable traffic. Query strings are not matched. Set the value to `*` to match all traffic to your zone.",
  "x-auditable": true
}
array firewall_urls
{
  "type": "array",
  "items": {
    "type": "string",
    "example": "shop.example.com/*",
    "x-auditable": true
  },
  "description": "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."
}
string firewall_waf_action
{
  "enum": [
    "challenge",
    "block",
    "simulate",
    "disable",
    "default"
  ],
  "description": "The WAF rule action to apply."
}
string firewall_waf_rewrite_action
{
  "enum": [
    "challenge",
    "block",
    "simulate",
    "disable",
    "default"
  ],
  "description": "The WAF rule action to apply.",
  "x-auditable": true
}
object firewall_zonelockdown
{
  "type": "object",
  "required": [
    "id",
    "created_on",
    "modified_on",
    "paused",
    "description",
    "urls",
    "configurations"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/firewall_lockdowns_components-schemas-id"
    },
    "urls": {
      "$ref": "#/components/schemas/firewall_schemas-urls"
    },
    "paused": {
      "$ref": "#/components/schemas/firewall_schemas-paused"
    },
    "created_on": {
      "$ref": "#/components/schemas/firewall_created_on"
    },
    "description": {
      "$ref": "#/components/schemas/firewall_lockdowns_components-schemas-description"
    },
    "modified_on": {
      "$ref": "#/components/schemas/firewall_modified_on"
    },
    "configurations": {
      "$ref": "#/components/schemas/firewall_configurations"
    }
  },
  "additionalProperties": false
}
object firewall_zonelockdown_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/firewall_api-response-collection"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/firewall_zonelockdown"
          }
        }
      }
    }
  ]
}
object firewall_zonelockdown_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/firewall_api-response-single"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "$ref": "#/components/schemas/firewall_zonelockdown"
        }
      }
    }
  ]
}
object fraud_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/fraud_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/fraud_messages"
    }
  }
}
object fraud_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/fraud_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/fraud_messages"
        }
      ],
      "example": []
    }
  }
}
object fraud_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/fraud_api-response-common"
    }
  ]
}
object fraud_fraud_settings
{
  "type": "object",
  "properties": {
    "user_profiles": {
      "$ref": "#/components/schemas/fraud_user_profiles_status"
    },
    "username_expressions": {
      "$ref": "#/components/schemas/fraud_username_expressions"
    }
  },
  "additionalProperties": false
}
object fraud_fraud_settings_response_body
{
  "allOf": [
    {
      "$ref": "#/components/schemas/fraud_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/fraud_fraud_settings"
        }
      }
    }
  ]
}
string fraud_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Identifier.",
  "x-auditable": true
}
array fraud_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string fraud_user_profiles_status
{
  "enum": [
    "enabled",
    "disabled"
  ],
  "type": "string",
  "example": "disabled",
  "description": "Whether Fraud User Profiles is enabled for the zone.",
  "x-auditable": true
}
array fraud_username_expressions
{
  "type": "array",
  "items": {
    "type": "string",
    "x-auditable": true
  },
  "example": [
    "http.request.body.form[\"username\"][0]",
    "lookup_json_string(http.request.body.raw, \"username\")"
  ],
  "maxItems": 10,
  "description": "List of expressions to detect usernames in write HTTP requests.\n\n- Maximum of 10 expressions.\n- Omit or set to null to leave unchanged on update.\n- Provide an empty array `[]` to clear all expressions on update.\n- Invalid expressions will result in a 10400 Bad Request with details in the `messages` array.\n"
}
object google-tag-gateway_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/google-tag-gateway_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/google-tag-gateway_messages"
    }
  }
}
object google-tag-gateway_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/google-tag-gateway_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/google-tag-gateway_messages"
        }
      ],
      "example": []
    }
  }
}
object google-tag-gateway_google-tag-gateway-config
{
  "type": "object",
  "title": "Google Tag Gateway configuration",
  "required": [
    "enabled",
    "endpoint",
    "hideOriginalIp",
    "measurementId"
  ],
  "properties": {
    "enabled": {
      "type": "boolean",
      "example": true,
      "description": "Enables or disables Google Tag Gateway for this zone.",
      "x-auditable": true
    },
    "endpoint": {
      "type": "string",
      "example": "/metrics",
      "description": "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).",
      "x-auditable": true
    },
    "setUpTag": {
      "type": "boolean",
      "example": true,
      "nullable": true,
      "description": "Set up the associated Google Tag on the zone automatically when enabled.",
      "x-auditable": true
    },
    "measurementId": {
      "type": "string",
      "example": "GTM-P2F3N47Q",
      "description": "Specify the Google Tag Manager container or measurement ID (e.g. GTM-XXXXXXX or G-XXXXXXXXXX).",
      "x-auditable": true
    },
    "hideOriginalIp": {
      "type": "boolean",
      "example": true,
      "description": "Hides the original client IP address from Google when enabled.",
      "x-auditable": true
    }
  },
  "description": "Google Tag Gateway configuration for a zone."
}
string google-tag-gateway_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Identifier.",
  "x-auditable": true
}
array google-tag-gateway_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
object google-tag-gateway_zone-identifier
{
  "$ref": "#/components/schemas/google-tag-gateway_identifier"
}
string healthchecks_address
{
  "type": "string",
  "example": "www.example.com",
  "description": "The hostname or IP address of the origin server to run health checks on.",
  "x-auditable": true
}
object healthchecks_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/healthchecks_api-response-common"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {},
          "nullable": true
        },
        "result_info": {
          "$ref": "#/components/schemas/healthchecks_result_info"
        }
      }
    }
  ]
}
object healthchecks_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/healthchecks_messages"
    },
    "result": {
      "anyOf": [
        {
          "type": "object"
        },
        {
          "type": "array",
          "items": {}
        },
        {
          "type": "string"
        }
      ]
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/healthchecks_messages"
    }
  }
}
object healthchecks_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/healthchecks_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/healthchecks_messages"
        }
      ],
      "example": []
    }
  }
}
object healthchecks_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/healthchecks_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "oneOf": [
            {
              "type": "object"
            },
            {
              "type": "string"
            }
          ]
        }
      }
    }
  ]
}
array healthchecks_check_regions
{
  "type": "array",
  "items": {
    "enum": [
      "WNAM",
      "ENAM",
      "WEU",
      "EEU",
      "NSAM",
      "SSAM",
      "OC",
      "ME",
      "NAF",
      "SAF",
      "IN",
      "SEAS",
      "NEAS",
      "ALL_REGIONS"
    ],
    "type": "string",
    "description": "WNAM: Western North America, ENAM: Eastern North America, WEU: Western Europe, EEU: Eastern Europe, NSAM: Northern South America, SSAM: Southern South America, OC: Oceania, ME: Middle East, NAF: North Africa, SAF: South Africa, IN: India, SEAS: South East Asia, NEAS: North East Asia, ALL_REGIONS: all regions (BUSINESS and ENTERPRISE customers only)."
  },
  "example": [
    "WEU",
    "ENAM"
  ],
  "nullable": true,
  "description": "A list of regions from which to run health checks. Null means Cloudflare will pick a default region.",
  "x-auditable": true
}
integer healthchecks_consecutive_fails
{
  "type": "integer",
  "default": 1,
  "description": "The number of consecutive fails required from a health check before changing the health to unhealthy.",
  "x-auditable": true
}
integer healthchecks_consecutive_successes
{
  "type": "integer",
  "default": 1,
  "description": "The number of consecutive successes required from a health check before changing the health to healthy.",
  "x-auditable": true
}
string healthchecks_description
{
  "type": "string",
  "example": "Health check for www.example.com",
  "description": "A human-readable description of the health check.",
  "x-auditable": true
}
string healthchecks_failure_reason
{
  "type": "string",
  "example": "",
  "readOnly": true,
  "description": "The current failure reason if status is unhealthy.",
  "x-auditable": true
}
object healthchecks_healthchecks
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/healthchecks_identifier"
    },
    "name": {
      "$ref": "#/components/schemas/healthchecks_name"
    },
    "type": {
      "$ref": "#/components/schemas/healthchecks_type"
    },
    "status": {
      "$ref": "#/components/schemas/healthchecks_status"
    },
    "address": {
      "$ref": "#/components/schemas/healthchecks_address"
    },
    "retries": {
      "$ref": "#/components/schemas/healthchecks_retries"
    },
    "timeout": {
      "$ref": "#/components/schemas/healthchecks_timeout"
    },
    "interval": {
      "$ref": "#/components/schemas/healthchecks_interval"
    },
    "suspended": {
      "$ref": "#/components/schemas/healthchecks_suspended"
    },
    "created_on": {
      "$ref": "#/components/schemas/healthchecks_timestamp"
    },
    "tcp_config": {
      "$ref": "#/components/schemas/healthchecks_tcp_config"
    },
    "description": {
      "$ref": "#/components/schemas/healthchecks_description"
    },
    "http_config": {
      "$ref": "#/components/schemas/healthchecks_http_config"
    },
    "modified_on": {
      "$ref": "#/components/schemas/healthchecks_timestamp"
    },
    "check_regions": {
      "$ref": "#/components/schemas/healthchecks_check_regions"
    },
    "failure_reason": {
      "$ref": "#/components/schemas/healthchecks_failure_reason"
    },
    "consecutive_fails": {
      "$ref": "#/components/schemas/healthchecks_consecutive_fails"
    },
    "consecutive_successes": {
      "$ref": "#/components/schemas/healthchecks_consecutive_successes"
    }
  }
}
object healthchecks_http_config
{
  "type": "object",
  "nullable": true,
  "properties": {
    "path": {
      "type": "string",
      "default": "/",
      "example": "/health",
      "description": "The endpoint path to health check against.",
      "x-auditable": true
    },
    "port": {
      "type": "integer",
      "default": 80,
      "description": "Port number to connect to for the health check. Defaults to 80 if type is HTTP or 443 if type is HTTPS.",
      "x-auditable": true
    },
    "header": {
      "type": "object",
      "example": {
        "Host": [
          "example.com"
        ],
        "X-App-ID": [
          "abc123"
        ]
      },
      "nullable": true,
      "description": "The HTTP request headers to send in the health check. It is recommended you set a Host header by default. The User-Agent header cannot be overridden.",
      "additionalProperties": {
        "type": "array",
        "items": {
          "type": "string",
          "x-auditable": true
        }
      }
    },
    "method": {
      "enum": [
        "GET",
        "HEAD"
      ],
      "type": "string",
      "default": "GET",
      "description": "The HTTP method to use for the health check.",
      "x-auditable": true
    },
    "expected_body": {
      "type": "string",
      "default": "",
      "example": "success",
      "description": "A case-insensitive sub-string to look for in the response body. If this string is not found, the origin will be marked as unhealthy.",
      "x-auditable": true
    },
    "allow_insecure": {
      "type": "boolean",
      "default": false,
      "description": "Do not validate the certificate when the health check uses HTTPS.",
      "x-auditable": true
    },
    "expected_codes": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "default": "200",
      "example": [
        "2xx",
        "302"
      ],
      "nullable": true,
      "description": "The expected HTTP response codes (e.g. \"200\") or code ranges (e.g. \"2xx\" for all codes starting with 2) of the health check.",
      "x-auditable": true
    },
    "follow_redirects": {
      "type": "boolean",
      "default": false,
      "description": "Follow redirects if the origin returns a 3xx status code.",
      "x-auditable": true
    }
  },
  "description": "Parameters specific to an HTTP or HTTPS health check."
}
object healthchecks_id_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/healthchecks_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "id": {
              "$ref": "#/components/schemas/healthchecks_identifier"
            }
          }
        }
      }
    }
  ]
}
string healthchecks_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "readOnly": true,
  "maxLength": 32,
  "description": "Identifier",
  "x-auditable": true
}
integer healthchecks_interval
{
  "type": "integer",
  "default": 60,
  "description": "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.",
  "x-auditable": true
}
array healthchecks_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "message": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string healthchecks_name
{
  "type": "string",
  "example": "server-1",
  "description": "A short name to identify the health check. Only alphanumeric characters, hyphens and underscores are allowed.",
  "x-auditable": true
}
object healthchecks_query_healthcheck
{
  "type": "object",
  "required": [
    "name",
    "address"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/healthchecks_name"
    },
    "type": {
      "$ref": "#/components/schemas/healthchecks_type"
    },
    "address": {
      "$ref": "#/components/schemas/healthchecks_address"
    },
    "retries": {
      "$ref": "#/components/schemas/healthchecks_retries"
    },
    "timeout": {
      "$ref": "#/components/schemas/healthchecks_timeout"
    },
    "interval": {
      "$ref": "#/components/schemas/healthchecks_interval"
    },
    "suspended": {
      "$ref": "#/components/schemas/healthchecks_suspended"
    },
    "tcp_config": {
      "$ref": "#/components/schemas/healthchecks_tcp_config"
    },
    "description": {
      "$ref": "#/components/schemas/healthchecks_description"
    },
    "http_config": {
      "$ref": "#/components/schemas/healthchecks_http_config"
    },
    "check_regions": {
      "$ref": "#/components/schemas/healthchecks_check_regions"
    },
    "consecutive_fails": {
      "$ref": "#/components/schemas/healthchecks_consecutive_fails"
    },
    "consecutive_successes": {
      "$ref": "#/components/schemas/healthchecks_consecutive_successes"
    }
  }
}
object healthchecks_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/healthchecks_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/healthchecks_healthchecks"
          }
        }
      }
    }
  ]
}
object healthchecks_result_info
{
  "type": "object",
  "properties": {
    "page": {
      "type": "number",
      "example": 1,
      "description": "Current page within paginated list of results"
    },
    "count": {
      "type": "number",
      "example": 1,
      "description": "Total number of results for the requested service"
    },
    "per_page": {
      "type": "number",
      "example": 20,
      "description": "Number of results per page of results"
    },
    "total_count": {
      "type": "number",
      "example": 2000,
      "description": "Total results available without any search parameters"
    }
  }
}
integer healthchecks_retries
{
  "type": "integer",
  "default": 2,
  "description": "The number of retries to attempt in case of a timeout before marking the origin as unhealthy. Retries are attempted immediately.",
  "x-auditable": true
}
object healthchecks_single_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/healthchecks_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/healthchecks_healthchecks"
        }
      }
    }
  ]
}
string healthchecks_status
{
  "enum": [
    "unknown",
    "healthy",
    "unhealthy",
    "suspended"
  ],
  "type": "string",
  "example": "healthy",
  "readOnly": true,
  "description": "The current status of the origin server according to the health check.",
  "x-auditable": true
}
boolean healthchecks_suspended
{
  "type": "boolean",
  "default": false,
  "description": "If suspended, no health checks are sent to the origin.",
  "x-auditable": true
}
object healthchecks_tcp_config
{
  "type": "object",
  "nullable": true,
  "properties": {
    "port": {
      "type": "integer",
      "default": 80,
      "description": "Port number to connect to for the health check. Defaults to 80.",
      "x-auditable": true
    },
    "method": {
      "enum": [
        "connection_established"
      ],
      "type": "string",
      "default": "connection_established",
      "description": "The TCP connection method to use for the health check.",
      "x-auditable": true
    }
  },
  "description": "Parameters specific to TCP health check."
}
integer healthchecks_timeout
{
  "type": "integer",
  "default": 5,
  "description": "The timeout (in seconds) before marking the health check as failed.",
  "x-auditable": true
}
string healthchecks_timestamp
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-01T05:20:00.12345Z",
  "readOnly": true,
  "x-auditable": true
}
string healthchecks_type
{
  "type": "string",
  "default": "HTTP",
  "example": "HTTPS",
  "description": "The protocol to use for the health check. Currently supported protocols are 'HTTP', 'HTTPS' and 'TCP'.",
  "x-auditable": true
}
object hyperdrive_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/hyperdrive_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result_info": {
          "$ref": "#/components/schemas/hyperdrive_result_info"
        }
      }
    }
  ]
}
object hyperdrive_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/hyperdrive_messages"
    },
    "result": {
      "type": "object"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Return the status of the API call success."
    },
    "messages": {
      "$ref": "#/components/schemas/hyperdrive_messages"
    }
  }
}
object hyperdrive_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/hyperdrive_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Return the status of the API call success."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/hyperdrive_messages"
        }
      ],
      "example": []
    }
  }
}
object hyperdrive_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/hyperdrive_api-response-common"
    }
  ]
}
object hyperdrive_hyperdrive-caching
{
  "type": "object",
  "oneOf": [
    {
      "$ref": "#/components/schemas/hyperdrive_hyperdrive-caching-disabled"
    },
    {
      "$ref": "#/components/schemas/hyperdrive_hyperdrive-caching-enabled"
    }
  ],
  "discriminator": {
    "mapping": {
      "true": "#/components/schemas/hyperdrive-caching-disabled",
      "false": "#/components/schemas/hyperdrive-caching-enabled"
    },
    "propertyName": "disabled"
  }
}
object hyperdrive_hyperdrive-caching-common
{
  "type": "object",
  "properties": {
    "disabled": {
      "type": "boolean",
      "description": "Set to true to disable caching of SQL responses. Default is false.",
      "x-auditable": true
    }
  }
}
object hyperdrive_hyperdrive-caching-disabled
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/hyperdrive_hyperdrive-caching-common"
    }
  ]
}
object hyperdrive_hyperdrive-caching-enabled
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/hyperdrive_hyperdrive-caching-common"
    },
    {
      "type": "object",
      "properties": {
        "max_age": {
          "type": "integer",
          "example": 60,
          "description": "Specify the maximum duration (in seconds) items should persist in the cache. Defaults to 60 seconds if not specified.",
          "x-auditable": true
        },
        "stale_while_revalidate": {
          "type": "integer",
          "example": 15,
          "description": "Specify the number of seconds the cache may serve a stale response. Defaults to 15 seconds if not specified.",
          "x-auditable": true
        }
      }
    }
  ]
}
object hyperdrive_hyperdrive-config
{
  "type": "object",
  "required": [
    "id",
    "name",
    "origin"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/hyperdrive_identifier"
    },
    "mtls": {
      "$ref": "#/components/schemas/hyperdrive_hyperdrive-mtls"
    },
    "name": {
      "$ref": "#/components/schemas/hyperdrive_hyperdrive-name"
    },
    "origin": {
      "type": "object",
      "oneOf": [
        {
          "allOf": [
            {
              "$ref": "#/components/schemas/hyperdrive_hyperdrive-database-full"
            },
            {
              "$ref": "#/components/schemas/hyperdrive_internet-origin"
            }
          ],
          "title": "Public Database"
        },
        {
          "allOf": [
            {
              "$ref": "#/components/schemas/hyperdrive_hyperdrive-database-full"
            },
            {
              "$ref": "#/components/schemas/hyperdrive_over-access-origin"
            }
          ],
          "title": "Access-protected Database behind Cloudflare Tunnel"
        },
        {
          "allOf": [
            {
              "$ref": "#/components/schemas/hyperdrive_hyperdrive-database-full"
            },
            {
              "$ref": "#/components/schemas/hyperdrive_vpc-service-origin"
            }
          ],
          "title": "Database reachable through a Workers VPC"
        }
      ]
    },
    "caching": {
      "$ref": "#/components/schemas/hyperdrive_hyperdrive-caching"
    },
    "created_on": {
      "type": "string",
      "format": "date-time",
      "example": "2017-01-01T00:00:00Z",
      "readOnly": true,
      "description": "Defines the creation time of the Hyperdrive configuration.",
      "x-auditable": true
    },
    "modified_on": {
      "type": "string",
      "format": "date-time",
      "example": "2017-01-01T00:00:00Z",
      "readOnly": true,
      "description": "Defines the last modified time of the Hyperdrive configuration.",
      "x-auditable": true
    },
    "origin_connection_limit": {
      "$ref": "#/components/schemas/hyperdrive_hyperdrive-origin-connection-limit"
    }
  }
}
object hyperdrive_hyperdrive-config-patch
{
  "type": "object",
  "properties": {
    "mtls": {
      "$ref": "#/components/schemas/hyperdrive_hyperdrive-mtls"
    },
    "name": {
      "$ref": "#/components/schemas/hyperdrive_hyperdrive-name"
    },
    "origin": {
      "type": "object",
      "anyOf": [
        {
          "$ref": "#/components/schemas/hyperdrive_hyperdrive-database"
        },
        {
          "oneOf": [
            {
              "$ref": "#/components/schemas/hyperdrive_internet-origin"
            },
            {
              "$ref": "#/components/schemas/hyperdrive_over-access-origin"
            },
            {
              "$ref": "#/components/schemas/hyperdrive_vpc-service-origin"
            }
          ],
          "title": "Origin Database"
        }
      ]
    },
    "caching": {
      "$ref": "#/components/schemas/hyperdrive_hyperdrive-caching"
    },
    "origin_connection_limit": {
      "$ref": "#/components/schemas/hyperdrive_hyperdrive-origin-connection-limit"
    }
  }
}
object hyperdrive_hyperdrive-config-response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/hyperdrive_hyperdrive-config"
    }
  ],
  "required": [
    "caching"
  ]
}
object hyperdrive_hyperdrive-database
{
  "type": "object",
  "title": "Connection Options",
  "properties": {
    "user": {
      "type": "string",
      "example": "postgres",
      "description": "Set the user of your origin database.",
      "x-auditable": true
    },
    "scheme": {
      "$ref": "#/components/schemas/hyperdrive_hyperdrive-scheme"
    },
    "database": {
      "type": "string",
      "example": "postgres",
      "description": "Set the name of your origin database.",
      "x-auditable": true
    },
    "password": {
      "type": "string",
      "writeOnly": true,
      "description": "Set the password needed to access your origin database. The API never returns this write-only value.",
      "x-sensitive": true
    }
  }
}
object hyperdrive_hyperdrive-database-full
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/hyperdrive_hyperdrive-database"
    }
  ],
  "required": [
    "scheme",
    "database",
    "user",
    "password"
  ]
}
object hyperdrive_hyperdrive-mtls
{
  "type": "object",
  "title": "mTLS",
  "properties": {
    "sslmode": {
      "type": "string",
      "example": "verify-full",
      "description": "Set SSL mode to 'require', 'verify-ca', or 'verify-full' to verify the CA."
    },
    "ca_certificate_id": {
      "type": "string",
      "example": "00000000-0000-0000-0000-0000000000",
      "description": "Define CA certificate ID obtained after uploading CA cert."
    },
    "mtls_certificate_id": {
      "type": "string",
      "example": "00000000-0000-0000-0000-0000000000",
      "description": "Define mTLS certificate ID obtained after uploading client cert."
    }
  },
  "description": "mTLS configuration for the origin connection. Cannot be used with VPC Service origins; TLS must be managed on the VPC Service."
}
string hyperdrive_hyperdrive-name
{
  "type": "string",
  "example": "example-hyperdrive",
  "description": "The name of the Hyperdrive configuration. Used to identify the configuration in the Cloudflare dashboard and API.",
  "x-auditable": true
}
object hyperdrive_hyperdrive-origin
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/hyperdrive_hyperdrive-database"
    },
    {
      "oneOf": [
        {
          "$ref": "#/components/schemas/hyperdrive_internet-origin"
        },
        {
          "$ref": "#/components/schemas/hyperdrive_over-access-origin"
        },
        {
          "$ref": "#/components/schemas/hyperdrive_vpc-service-origin"
        }
      ]
    }
  ]
}
integer hyperdrive_hyperdrive-origin-connection-limit
{
  "type": "integer",
  "example": 60,
  "maximum": 100,
  "minimum": 5,
  "description": "The (soft) maximum number of connections the Hyperdrive is allowed to make to the origin database.\n\nMaximum allowed: 20 for free tier accounts, 100 for paid tier accounts.\nIf not specified, defaults to 20 for free tier and 60 for paid tier.\nContact Cloudflare if you need a higher limit.\n",
  "x-auditable": true
}
string hyperdrive_hyperdrive-scheme
{
  "enum": [
    "postgres",
    "postgresql",
    "mysql"
  ],
  "type": "string",
  "description": "Specifies the URL scheme used to connect to your origin database.",
  "x-auditable": true
}
string hyperdrive_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "readOnly": true,
  "maxLength": 32,
  "description": "Define configurations using a unique string identifier.",
  "x-auditable": true
}
object hyperdrive_internet-origin
{
  "type": "object",
  "title": "Public Database",
  "required": [
    "host",
    "port"
  ],
  "properties": {
    "host": {
      "type": "string",
      "example": "database.example.com",
      "description": "Defines the host (hostname or IP) of your origin database.",
      "x-auditable": true
    },
    "port": {
      "type": "integer",
      "example": 5432,
      "description": "Defines the port of your origin database. Defaults to 5432 for PostgreSQL or 3306 for MySQL if not specified.",
      "x-auditable": true
    }
  }
}
array hyperdrive_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "message": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
object hyperdrive_over-access-origin
{
  "type": "object",
  "title": "Access-protected Database behind Cloudflare Tunnel",
  "required": [
    "host",
    "access_client_id",
    "access_client_secret"
  ],
  "properties": {
    "host": {
      "type": "string",
      "example": "database.example.com",
      "description": "Defines the host (hostname or IP) of your origin database.",
      "x-auditable": true
    },
    "access_client_id": {
      "type": "string",
      "example": "0123456789abcdef0123456789abcdef.access",
      "description": "Defines the Client ID of the Access token to use when connecting to the origin database.",
      "x-auditable": true
    },
    "access_client_secret": {
      "type": "string",
      "example": "0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef",
      "writeOnly": true,
      "description": "Defines the Client Secret of the Access Token to use when connecting to the origin database. The API never returns this write-only value.",
      "x-sensitive": true
    }
  }
}
object hyperdrive_result_info
{
  "type": "object",
  "properties": {
    "page": {
      "type": "number",
      "example": 1,
      "description": "Defines the current page within paginated list of results."
    },
    "count": {
      "type": "number",
      "example": 1,
      "description": "Defines the total number of results for the requested service."
    },
    "per_page": {
      "type": "number",
      "example": 20,
      "description": "Defines the number of results per page of results."
    },
    "total_count": {
      "type": "number",
      "example": 2000,
      "description": "Defines the total results available without any search parameters."
    }
  }
}
object hyperdrive_vpc-service-origin
{
  "type": "object",
  "title": "Database reachable through a Workers VPC",
  "required": [
    "service_id"
  ],
  "properties": {
    "service_id": {
      "type": "string",
      "example": "0123456789abcdef0123456789abcdef",
      "description": "The identifier of the Workers VPC Service to connect through. Hyperdrive will egress through the specified VPC Service to reach the origin database.",
      "x-auditable": true
    }
  },
  "description": "Connect to a database through a Workers VPC Service. TLS settings (mTLS, sslmode) cannot be configured on the Hyperdrive when using a VPC Service origin; TLS must be managed on the VPC Service itself.\n"
}
string iam_access
{
  "enum": [
    "allow",
    "deny"
  ],
  "type": "string",
  "example": "allow",
  "description": "Allow or deny operations against the resources.",
  "x-auditable": true
}
object iam_account
{
  "type": "object",
  "required": [
    "id",
    "name",
    "type"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/iam_common_components-schemas-identifier"
    },
    "name": {
      "type": "string",
      "example": "Demo Account",
      "maxLength": 100,
      "description": "Account name",
      "x-auditable": true
    },
    "type": {
      "$ref": "#/components/schemas/iam_account-type"
    },
    "settings": {
      "type": "object",
      "properties": {
        "enforce_twofactor": {
          "type": "boolean",
          "default": false,
          "description": "Indicates whether membership in this account requires that\nTwo-Factor Authentication is enabled",
          "x-auditable": true,
          "x-stainless-terraform-configurability": "computed_optional"
        },
        "abuse_contact_email": {
          "type": "string",
          "description": "Sets an abuse contact email to notify for abuse reports.",
          "x-auditable": true
        }
      },
      "description": "Account settings"
    },
    "created_on": {
      "type": "string",
      "format": "date-time",
      "example": "2014-03-01T12:21:02.0000Z",
      "readOnly": true,
      "description": "Timestamp for the creation of the account",
      "x-auditable": true
    },
    "managed_by": {
      "type": "object",
      "properties": {
        "parent_org_id": {
          "type": "string",
          "example": "4536bcfad5faccb111b47003c79917fa",
          "readOnly": true,
          "maxLength": 32,
          "description": "ID of the parent Organization, if one exists",
          "x-auditable": true
        },
        "parent_org_name": {
          "type": "string",
          "example": "Demo Parent Organization",
          "readOnly": true,
          "description": "Name of the parent Organization, if one exists",
          "x-auditable": true
        }
      },
      "description": "Parent container details"
    }
  }
}
string iam_account-type
{
  "enum": [
    "standard",
    "enterprise"
  ]
}
object iam_account_identifier
{
  "allOf": [
    {
      "$ref": "#/components/schemas/iam_common_components-schemas-identifier"
    }
  ],
  "title": "Account Identifier",
  "description": "Account identifier tag."
}
object iam_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/iam_api-response-common"
    },
    {
      "properties": {
        "result_info": {
          "$ref": "#/components/schemas/iam_result_info"
        }
      }
    }
  ]
}
object iam_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/iam_schemas-messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/iam_schemas-messages"
    }
  }
}
object iam_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/iam_schemas-messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/iam_schemas-messages"
        }
      ],
      "example": []
    }
  }
}
object iam_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/iam_api-response-common"
    }
  ]
}
object iam_api-response-single-id
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/iam_api-response-common"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "nullable": true,
          "required": [
            "id"
          ],
          "properties": {
            "id": {
              "$ref": "#/components/schemas/iam_common_components-schemas-identifier"
            }
          }
        }
      }
    }
  ]
}
boolean iam_api_access_enabled
{
  "type": "boolean",
  "example": true,
  "nullable": true,
  "description": "Enterprise only. Indicates whether or not API access is enabled specifically for this user on a given account.",
  "x-auditable": true
}
array iam_cidr_list
{
  "type": "array",
  "items": {
    "type": "string",
    "example": "199.27.128.0/21",
    "description": "IPv4/IPv6 CIDR.",
    "x-auditable": true
  },
  "example": [
    "199.27.128.0/21",
    "2400:cb00::/32"
  ],
  "description": "List of IPv4/IPv6 CIDR addresses."
}
string iam_code
{
  "type": "string",
  "example": "05dd05cce12bbed97c0d87cd78e89bc2fd41a6cee72f27f6fc84af2e45c0fac0",
  "readOnly": true,
  "maxLength": 64,
  "description": "The unique activation code for the account membership."
}
object iam_collection_member_response_with_policies
{
  "allOf": [
    {
      "$ref": "#/components/schemas/iam_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/iam_member_with_policies"
          }
        }
      }
    }
  ],
  "title": "Members with Policies"
}
object iam_collection_membership_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/iam_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/iam_membership"
          }
        }
      }
    }
  ],
  "title": "memberships_with_roles"
}
object iam_collection_membership_response_with_policies
{
  "allOf": [
    {
      "$ref": "#/components/schemas/iam_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/iam_membership-with-policies"
          }
        }
      }
    }
  ],
  "title": "memberships_with_policies"
}
object iam_collection_organization_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/iam_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/iam_organization"
          }
        }
      }
    }
  ]
}
object iam_collection_permission_groups_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/iam_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/iam_permission_groups"
        }
      }
    }
  ],
  "title": "List of Resource groups"
}
object iam_collection_role_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/iam_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/iam_role"
          }
        }
      }
    }
  ]
}
object iam_collection_tokens_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/iam_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/iam_token_base"
          }
        }
      }
    }
  ],
  "title": "Response with a list of tokens"
}
string iam_common_components-schemas-identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "minLength": 32,
  "description": "Identifier",
  "x-auditable": true
}
object iam_components-schemas-account
{
  "allOf": [
    {
      "$ref": "#/components/schemas/iam_account"
    }
  ]
}
string iam_components-schemas-status
{
  "enum": [
    "member",
    "invited"
  ],
  "type": "string",
  "example": "member",
  "description": "Whether the user is a member of the organization or has an invitation pending.",
  "x-auditable": true
}
object iam_condition
{
  "type": "object",
  "properties": {
    "request_ip": {
      "$ref": "#/components/schemas/iam_request_ip"
    }
  }
}
string iam_country
{
  "type": "string",
  "example": "US",
  "nullable": true,
  "maxLength": 30,
  "description": "The country in which the user lives."
}
object iam_create-account
{
  "type": "object",
  "title": "Create account",
  "required": [
    "name"
  ],
  "properties": {
    "name": {
      "type": "string",
      "description": "Account name"
    },
    "type": {
      "$ref": "#/components/schemas/iam_account-type"
    },
    "unit": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "example": "f267e341f3dd4697bd3b9f71dd96247f",
          "description": "Tenant unit ID",
          "x-auditable": true,
          "x-stainless-terraform-configurability": "computed_optional"
        }
      },
      "description": "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/",
      "x-stainless-terraform-configurability": "computed_optional"
    }
  }
}
object iam_create-member-with-policies
{
  "type": "object",
  "title": "Add Member with Policies",
  "required": [
    "email",
    "policies"
  ],
  "properties": {
    "email": {
      "$ref": "#/components/schemas/iam_email"
    },
    "status": {
      "$ref": "#/components/schemas/iam_member-invitation-status"
    },
    "policies": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/iam_create_member_policy"
      },
      "description": "Array of policies associated with this member."
    }
  }
}
object iam_create-member-with-roles
{
  "type": "object",
  "title": "Add Member with Account Roles",
  "required": [
    "email",
    "roles"
  ],
  "properties": {
    "email": {
      "$ref": "#/components/schemas/iam_email"
    },
    "roles": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/iam_role_components-schemas-identifier"
      },
      "description": "Array of roles associated with this member."
    },
    "status": {
      "$ref": "#/components/schemas/iam_member-invitation-status"
    }
  }
}
object iam_create-scope
{
  "type": "object",
  "required": [
    "key",
    "objects"
  ],
  "properties": {
    "key": {
      "$ref": "#/components/schemas/iam_create_resource_group_scope_scope_key"
    },
    "objects": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/iam_create_resource_group_scope_scope_object"
      },
      "description": "A list of scope objects for additional context. The number of Scope objects should not be zero."
    }
  },
  "description": "A scope is a combination of scope objects which provides additional context."
}
object iam_create_member_policy
{
  "title": "create_member_policy",
  "required": [
    "id",
    "access",
    "permission_groups",
    "resource_groups"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/iam_policy_identifier"
    },
    "access": {
      "$ref": "#/components/schemas/iam_access"
    },
    "resource_groups": {
      "$ref": "#/components/schemas/iam_member_resource_groups"
    },
    "permission_groups": {
      "$ref": "#/components/schemas/iam_member_permission_groups"
    }
  }
}
object iam_create_payload
{
  "type": "object",
  "required": [
    "name",
    "policies"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/iam_name"
    },
    "policies": {
      "$ref": "#/components/schemas/iam_token_policies"
    },
    "condition": {
      "$ref": "#/components/schemas/iam_condition"
    },
    "expires_on": {
      "$ref": "#/components/schemas/iam_expires_on"
    },
    "not_before": {
      "$ref": "#/components/schemas/iam_not_before"
    }
  }
}
object iam_create_resource_group_scope_scope_key
{
  "example": "com.cloudflare.api.account.eb78d65290b24279ba6f44721b3ea3c4",
  "description": "This is a combination of pre-defined resource name and identifier (like Account ID etc.)"
}
object iam_create_resource_group_scope_scope_object
{
  "type": "object",
  "required": [
    "key"
  ],
  "properties": {
    "key": {
      "$ref": "#/components/schemas/iam_create_resource_group_scope_scope_object_key"
    }
  },
  "description": "A scope object represents any resource that can have actions applied against invite."
}
object iam_create_resource_group_scope_scope_object_key
{
  "example": "com.cloudflare.api.account.zone.23f8d65290b24279ba6f44721b3eaad5",
  "description": "This is a combination of pre-defined resource name and identifier (like Zone ID etc.)"
}
object iam_create_user_group_body
{
  "type": "object",
  "title": "Create User group with a set of policies",
  "required": [
    "name",
    "policies"
  ],
  "properties": {
    "name": {
      "type": "string",
      "example": "My New User Group",
      "description": "Name of the User group.",
      "x-auditable": true
    },
    "policies": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/iam_user_group_policy_write_body"
      },
      "title": "User Group Policies",
      "description": "Policies attached to the User group"
    }
  }
}
string iam_dns_verification_code
{
  "type": "string",
  "example": "cloudflare_dashboard_sso=023e105f4ecef8ad9ca31a8372d0c353",
  "description": "DNS verification code. Add this entire string to the DNS TXT record of the email domain to validate ownership."
}
string iam_effect
{
  "enum": [
    "allow",
    "deny"
  ],
  "type": "string",
  "example": "allow",
  "description": "Allow or deny operations against the resources.",
  "x-auditable": true
}
string iam_email
{
  "type": "string",
  "example": "user@example.com",
  "maxLength": 90,
  "description": "The contact email address of the user.",
  "x-auditable": true
}
string iam_expires_on
{
  "type": "string",
  "format": "date-time",
  "example": "2020-01-01T00:00:00Z",
  "description": "The expiration time on or after which the JWT MUST NOT be accepted for processing.",
  "x-auditable": true
}
string iam_first_name
{
  "type": "string",
  "example": "John",
  "nullable": true,
  "maxLength": 60,
  "description": "User's first name",
  "x-auditable": true
}
object iam_grants
{
  "type": "object",
  "example": {
    "read": true,
    "write": false
  },
  "properties": {
    "read": {
      "type": "boolean",
      "example": true,
      "x-auditable": true
    },
    "write": {
      "type": "boolean",
      "example": true,
      "x-auditable": true
    }
  }
}
string iam_invite_components-schemas-identifier
{
  "type": "string",
  "example": "4f5f0c14a2a41d5063dd301b2f829f04",
  "readOnly": true,
  "maxLength": 32,
  "description": "Invite identifier tag.",
  "x-auditable": true
}
string iam_invited_by
{
  "type": "string",
  "example": "user@example.com",
  "maxLength": 90,
  "description": "The email address of the user who created the invite.",
  "x-auditable": true
}
string iam_invited_member_email
{
  "type": "string",
  "example": "user@example.com",
  "maxLength": 90,
  "description": "Email address of the user to add to the organization.",
  "x-auditable": true
}
string iam_invited_on
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-01T05:20:00Z",
  "readOnly": true,
  "description": "When the invite was sent.",
  "x-auditable": true
}
string iam_issued_on
{
  "type": "string",
  "format": "date-time",
  "example": "2018-07-01T05:20:00Z",
  "readOnly": true,
  "description": "The time on which the token was created.",
  "x-auditable": true
}
string iam_last_name
{
  "type": "string",
  "example": "Appleseed",
  "nullable": true,
  "maxLength": 60,
  "description": "User's last name",
  "x-auditable": true
}
string iam_last_used_on
{
  "type": "string",
  "format": "date-time",
  "example": "2020-01-02T12:34:00Z",
  "readOnly": true,
  "description": "Last time the token was used.",
  "x-auditable": true
}
object iam_list_member_policy
{
  "title": "list_member_policy",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/iam_policy_identifier"
    },
    "access": {
      "$ref": "#/components/schemas/iam_access"
    },
    "resource_groups": {
      "$ref": "#/components/schemas/iam_resource_groups"
    },
    "permission_groups": {
      "$ref": "#/components/schemas/iam_permission_groups"
    }
  }
}
string iam_member-invitation-status
{
  "enum": [
    "accepted",
    "pending"
  ],
  "type": "string",
  "description": "Status of the member invitation. If not provided during creation, defaults to 'pending'.\nChanging from 'accepted' back to 'pending' will trigger a replacement of the member resource in Terraform.\n",
  "x-auditable": true,
  "x-stainless-terraform-configurability": "computed_optional"
}
object iam_member_permission_group
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "string",
      "example": "c8fed203ed3043cba015a93ad1616f1f",
      "description": "Identifier of the group.",
      "x-auditable": true
    }
  },
  "description": "A group of permissions."
}
array iam_member_permission_groups
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/iam_member_permission_group"
  },
  "example": [
    {
      "id": "c8fed203ed3043cba015a93ad1616f1f"
    },
    {
      "id": "82e64a83756745bbbb1c9c2701bf816b"
    }
  ],
  "description": "A set of permission groups that are specified to the policy."
}
object iam_member_resource_group
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "string",
      "example": "6d7f2f5f5b1d4a0e9081fdc98d432fd1",
      "description": "Identifier of the group.",
      "x-auditable": true
    }
  },
  "description": "A group of scoped resources."
}
array iam_member_resource_groups
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/iam_member_resource_group"
  },
  "description": "A list of resource groups that the policy applies to."
}
object iam_member_with_policies
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/iam_membership_components-schemas-identifier"
    },
    "user": {
      "type": "object",
      "readOnly": true,
      "required": [
        "email"
      ],
      "properties": {
        "id": {
          "$ref": "#/components/schemas/iam_common_components-schemas-identifier"
        },
        "email": {
          "$ref": "#/components/schemas/iam_email"
        },
        "last_name": {
          "$ref": "#/components/schemas/iam_last_name"
        },
        "first_name": {
          "$ref": "#/components/schemas/iam_first_name"
        },
        "two_factor_authentication_enabled": {
          "$ref": "#/components/schemas/iam_two_factor_authentication_enabled"
        }
      },
      "description": "Details of the user associated to the membership."
    },
    "email": {
      "$ref": "#/components/schemas/iam_email"
    },
    "roles": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/iam_role"
      },
      "description": "Roles assigned to this Member."
    },
    "status": {
      "enum": [
        "accepted",
        "pending"
      ],
      "example": "accepted",
      "readOnly": true,
      "description": "A member's status in the account.",
      "x-auditable": true
    },
    "policies": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/iam_list_member_policy"
      },
      "description": "Access policy for the membership"
    }
  }
}
object iam_membership
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/iam_membership_components-schemas-identifier"
    },
    "roles": {
      "$ref": "#/components/schemas/iam_role_names"
    },
    "status": {
      "$ref": "#/components/schemas/iam_schemas-status"
    },
    "account": {
      "$ref": "#/components/schemas/iam_schemas-account"
    },
    "permissions": {
      "allOf": [
        {
          "$ref": "#/components/schemas/iam_permissions"
        }
      ],
      "readOnly": true,
      "description": "All access permissions for the user at the account."
    },
    "api_access_enabled": {
      "$ref": "#/components/schemas/iam_api_access_enabled"
    }
  }
}
object iam_membership-with-policies
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/iam_membership_components-schemas-identifier"
    },
    "roles": {
      "$ref": "#/components/schemas/iam_role_names"
    },
    "status": {
      "$ref": "#/components/schemas/iam_schemas-status"
    },
    "account": {
      "$ref": "#/components/schemas/iam_schemas-account"
    },
    "policies": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/iam_list_member_policy"
      },
      "description": "Access policy for the membership"
    },
    "permissions": {
      "allOf": [
        {
          "$ref": "#/components/schemas/iam_permissions"
        }
      ],
      "readOnly": true,
      "description": "All access permissions for the user at the account."
    },
    "api_access_enabled": {
      "$ref": "#/components/schemas/iam_api_access_enabled"
    }
  }
}
string iam_membership_components-schemas-identifier
{
  "type": "string",
  "example": "4536bcfad5faccb111b47003c79917fa",
  "readOnly": true,
  "maxLength": 32,
  "description": "Membership identifier tag.",
  "x-auditable": true
}
array iam_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "message": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string iam_modified_on
{
  "type": "string",
  "format": "date-time",
  "example": "2018-07-02T05:20:00Z",
  "readOnly": true,
  "description": "Last time the token was modified.",
  "x-auditable": true
}
string iam_name
{
  "type": "string",
  "example": "readonly token",
  "maxLength": 120,
  "description": "Token name.",
  "x-auditable": true
}
string iam_not_before
{
  "type": "string",
  "format": "date-time",
  "example": "2018-07-01T05:20:00Z",
  "description": "The time before which the token MUST NOT be accepted for processing.",
  "x-auditable": true
}
object iam_organization
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/iam_common_components-schemas-identifier"
    },
    "name": {
      "$ref": "#/components/schemas/iam_schemas-name"
    },
    "roles": {
      "type": "array",
      "items": {
        "type": "string",
        "example": "All Privileges - Super Administrator",
        "maxLength": 120,
        "x-auditable": true
      },
      "readOnly": true,
      "description": "List of roles that a user has within an organization."
    },
    "status": {
      "$ref": "#/components/schemas/iam_components-schemas-status"
    },
    "permissions": {
      "$ref": "#/components/schemas/iam_schemas-permissions"
    }
  }
}
object iam_permission_group
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "string",
      "example": "6d7f2f5f5b1d4a0e9081fdc98d432fd1",
      "description": "Identifier of the permission group.",
      "x-auditable": true
    },
    "meta": {
      "type": "object",
      "example": {
        "label": "load_balancer_admin",
        "scopes": "com.cloudflare.api.account"
      },
      "properties": {
        "key": {
          "type": "string",
          "x-auditable": true
        },
        "value": {
          "type": "string",
          "x-auditable": true
        }
      },
      "description": "Attributes associated to the permission group."
    },
    "name": {
      "type": "string",
      "example": "Load Balancer",
      "readOnly": true,
      "description": "Name of the permission group.",
      "x-auditable": true
    }
  },
  "description": "A named group of permissions that map to a group of operations against resources."
}
object iam_permission_group_identifier
{
  "allOf": [
    {
      "$ref": "#/components/schemas/iam_common_components-schemas-identifier"
    }
  ],
  "title": "Permission Group Identifier",
  "description": "Permission Group identifier tag."
}
array iam_permission_group_ids
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "id"
    ],
    "properties": {
      "id": {
        "$ref": "#/components/schemas/iam_permission_group_identifier"
      }
    },
    "description": "A named group of permissions that map to a group of operations against resources."
  },
  "title": "Permission Group IDs",
  "example": [
    {
      "id": "c8fed203ed3043cba015a93ad1616f1f"
    },
    {
      "id": "82e64a83756745bbbb1c9c2701bf816b"
    }
  ],
  "description": "A set of permission groups that are specified to the policy."
}
array iam_permission_groups
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/iam_permission_group"
  },
  "example": [
    {
      "id": "c8fed203ed3043cba015a93ad1616f1f",
      "meta": {
        "label": "load_balancer_admin",
        "scopes": "com.cloudflare.api.account"
      },
      "name": "Zone Read"
    },
    {
      "id": "82e64a83756745bbbb1c9c2701bf816b",
      "meta": {
        "label": "fbm_user",
        "scopes": "com.cloudflare.api.account"
      },
      "name": "Magic Network Monitoring"
    }
  ],
  "description": "A set of permission groups that are specified to the policy."
}
object iam_permissions
{
  "type": "object",
  "example": {
    "zones": {
      "read": true,
      "write": true
    },
    "analytics": {
      "read": true,
      "write": false
    }
  },
  "properties": {
    "lb": {
      "$ref": "#/components/schemas/iam_grants"
    },
    "dns": {
      "$ref": "#/components/schemas/iam_grants"
    },
    "ssl": {
      "$ref": "#/components/schemas/iam_grants"
    },
    "waf": {
      "$ref": "#/components/schemas/iam_grants"
    },
    "logs": {
      "$ref": "#/components/schemas/iam_grants"
    },
    "zones": {
      "$ref": "#/components/schemas/iam_grants"
    },
    "billing": {
      "$ref": "#/components/schemas/iam_grants"
    },
    "analytics": {
      "$ref": "#/components/schemas/iam_grants"
    },
    "cache_purge": {
      "$ref": "#/components/schemas/iam_grants"
    },
    "dns_records": {
      "$ref": "#/components/schemas/iam_grants"
    },
    "organization": {
      "$ref": "#/components/schemas/iam_grants"
    },
    "zone_settings": {
      "$ref": "#/components/schemas/iam_grants"
    }
  }
}
object iam_permissions_group_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/iam_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "Public ID.",
                "x-auditable": true
              },
              "name": {
                "type": "string",
                "description": "Permission Group Name",
                "x-auditable": true
              },
              "scopes": {
                "type": "array",
                "items": {
                  "enum": [
                    "com.cloudflare.api.account",
                    "com.cloudflare.api.account.zone",
                    "com.cloudflare.api.user",
                    "com.cloudflare.edge.r2.bucket"
                  ],
                  "type": "string",
                  "x-auditable": true
                },
                "description": "Resources to which the Permission Group is scoped"
              }
            }
          },
          "example": [
            {
              "id": "7cf72faf220841aabcfdfab81c43c4f6",
              "name": "Billing Read",
              "scopes": [
                "com.cloudflare.api.account"
              ]
            },
            {
              "id": "9d24387c6e8544e2bc4024a03991339f",
              "name": "Load Balancing: Monitors and Pools Read",
              "scopes": [
                "com.cloudflare.api.account"
              ]
            },
            {
              "id": "d2a1802cc9a34e30852f8b33869b2f3c",
              "name": "Load Balancing: Monitors and Pools Write",
              "scopes": [
                "com.cloudflare.api.account"
              ]
            },
            {
              "id": "8b47d2786a534c08a1f94ee8f9f599ef",
              "name": "Workers KV Storage Read",
              "scopes": [
                "com.cloudflare.api.account"
              ]
            },
            {
              "id": "f7f0eda5697f475c90846e879bab8666",
              "name": "Workers KV Storage Write",
              "scopes": [
                "com.cloudflare.api.account"
              ]
            },
            {
              "id": "1a71c399035b4950a1bd1466bbe4f420",
              "name": "Workers Scripts Read",
              "scopes": [
                "com.cloudflare.api.account"
              ]
            },
            {
              "id": "e086da7e2179491d91ee5f35b3ca210a",
              "name": "Workers Scripts Write",
              "scopes": [
                "com.cloudflare.api.account"
              ]
            }
          ]
        }
      }
    }
  ]
}
string iam_policy_identifier
{
  "type": "string",
  "example": "f267e341f3dd4697bd3b9f71dd96247f",
  "readOnly": true,
  "description": "Policy identifier.",
  "x-auditable": true,
  "x-stainless-terraform-always-send": true
}
object iam_policy_with_permission_groups_and_resources
{
  "type": "object",
  "title": "Policy with Permission Groups and Resources",
  "required": [
    "id",
    "effect",
    "permission_groups",
    "resources"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/iam_policy_identifier"
    },
    "effect": {
      "$ref": "#/components/schemas/iam_effect"
    },
    "resources": {
      "$ref": "#/components/schemas/iam_resources"
    },
    "permission_groups": {
      "$ref": "#/components/schemas/iam_permission_groups"
    }
  }
}
string iam_properties-name
{
  "type": "string",
  "example": "Demo Account",
  "maxLength": 100,
  "description": "Account name",
  "x-auditable": true
}
object iam_request_create_resource_group
{
  "type": "object",
  "title": "Create resource group",
  "required": [
    "name",
    "scope"
  ],
  "properties": {
    "name": {
      "type": "string",
      "example": "NewResourceGroup",
      "description": "Name of the resource group"
    },
    "scope": {
      "$ref": "#/components/schemas/iam_create-scope"
    }
  }
}
object iam_request_ip
{
  "type": "object",
  "example": {
    "in": [
      "123.123.123.0/24",
      "2606:4700::/32"
    ],
    "not_in": [
      "123.123.123.100/24",
      "2606:4700:4700::/48"
    ]
  },
  "properties": {
    "in": {
      "$ref": "#/components/schemas/iam_cidr_list"
    },
    "not_in": {
      "$ref": "#/components/schemas/iam_cidr_list"
    }
  },
  "description": "Client IP restrictions."
}
object iam_request_update_resource_group
{
  "type": "object",
  "title": "Update resource group",
  "properties": {
    "name": {
      "type": "string",
      "example": "UpdatedResourceGroup",
      "description": "Name of the resource group"
    },
    "scope": {
      "$ref": "#/components/schemas/iam_create-scope"
    }
  }
}
object iam_resource_group
{
  "type": "object",
  "required": [
    "id",
    "scope"
  ],
  "properties": {
    "id": {
      "type": "string",
      "example": "6d7f2f5f5b1d4a0e9081fdc98d432fd1",
      "readOnly": true,
      "description": "Identifier of the resource group.",
      "x-auditable": true
    },
    "meta": {
      "type": "object",
      "example": {
        "editable": "false"
      },
      "properties": {
        "key": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "description": "Attributes associated to the resource group."
    },
    "name": {
      "type": "string",
      "example": "com.cloudflare.api.account.eb78d65290b24279ba6f44721b3ea3c4",
      "readOnly": true,
      "description": "Name of the resource group.",
      "x-auditable": true
    },
    "scope": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/iam_scope"
      },
      "description": "The scope associated to the resource group"
    }
  },
  "description": "A group of scoped resources."
}
object iam_resource_group_identifier
{
  "allOf": [
    {
      "$ref": "#/components/schemas/iam_common_components-schemas-identifier"
    }
  ],
  "title": "Resource Group Identifier",
  "description": "Resource Group identifier tag."
}
array iam_resource_group_ids
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "id"
    ],
    "properties": {
      "id": {
        "$ref": "#/components/schemas/iam_resource_group_identifier"
      }
    },
    "description": "A group of scoped resources."
  },
  "title": "Resource Group IDs",
  "example": [
    {
      "id": "6d7f2f5f5b1d4a0e9081fdc98d432fd1"
    }
  ],
  "description": "A set of resource groups that are specified to the policy."
}
array iam_resource_groups
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/iam_resource_group"
  },
  "description": "A list of resource groups that the policy applies to."
}
object iam_resources
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/iam_resources_type_object_string"
    },
    {
      "$ref": "#/components/schemas/iam_resources_type_object_nested"
    }
  ],
  "example": {
    "object": {
      "value": {
        "com.cloudflare.api.account.eb78d65290b24279ba6f44721b3ea3c4": {
          "com.cloudflare.api.account.zone.*": "*"
        }
      },
      "summary": "Nested object value"
    },
    "string": {
      "value": {
        "com.cloudflare.api.account.zone.22b1de5f1c0e4b3ea97bb1e963b06a43": "*"
      },
      "summary": "Single string value"
    }
  },
  "description": "A list of resource names that the policy applies to.",
  "x-auditable": true
}
object iam_resources_type_object_nested
{
  "type": "object",
  "description": "Map of nested resource permissions",
  "additionalProperties": {
    "type": "object",
    "description": "Nested permission object",
    "additionalProperties": {
      "type": "string"
    }
  }
}
object iam_resources_type_object_string
{
  "type": "object",
  "description": "Map of simple string resource permissions",
  "additionalProperties": {
    "type": "string",
    "description": "Simple permission string like \"*\""
  }
}
object iam_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/iam_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "type": "object"
          }
        }
      }
    }
  ]
}
object iam_response_collection_accounts
{
  "allOf": [
    {
      "$ref": "#/components/schemas/iam_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/iam_account"
          }
        }
      }
    }
  ],
  "title": "Response with a list of accounts"
}
object iam_response_create
{
  "allOf": [
    {
      "$ref": "#/components/schemas/iam_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "allOf": [
            {
              "type": "object"
            },
            {
              "type": "object",
              "properties": {
                "value": {
                  "$ref": "#/components/schemas/iam_value"
                }
              }
            }
          ]
        }
      }
    }
  ]
}
object iam_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/iam_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object"
        }
      }
    }
  ]
}
object iam_response_single_account
{
  "allOf": [
    {
      "$ref": "#/components/schemas/iam_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/iam_account"
        }
      }
    }
  ],
  "title": "Response with a single account"
}
object iam_response_single_value
{
  "allOf": [
    {
      "$ref": "#/components/schemas/iam_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/iam_value"
        }
      }
    }
  ]
}
object iam_result_info
{
  "type": "object",
  "properties": {
    "page": {
      "type": "number",
      "example": 1,
      "description": "Current page within paginated list of results"
    },
    "count": {
      "type": "number",
      "example": 1,
      "description": "Total number of results for the requested service"
    },
    "per_page": {
      "type": "number",
      "example": 20,
      "description": "Number of results per page of results"
    },
    "total_count": {
      "type": "number",
      "example": 2000,
      "description": "Total results available without any search parameters"
    }
  }
}
object iam_role
{
  "type": "object",
  "required": [
    "id",
    "name",
    "description",
    "permissions"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/iam_role_components-schemas-identifier"
    },
    "name": {
      "type": "string",
      "example": "Account Administrator",
      "readOnly": true,
      "maxLength": 120,
      "description": "Role name.",
      "x-auditable": true
    },
    "description": {
      "type": "string",
      "example": "Administrative access to the entire Account",
      "readOnly": true,
      "description": "Description of role's permissions.",
      "x-auditable": true
    },
    "permissions": {
      "allOf": [
        {
          "$ref": "#/components/schemas/iam_permissions"
        },
        {
          "readOnly": true
        }
      ]
    }
  }
}
string iam_role_components-schemas-identifier
{
  "type": "string",
  "example": "3536bcfad5faccb999b47003c79917fb",
  "maxLength": 32,
  "description": "Role identifier tag.",
  "x-auditable": true
}
array iam_role_names
{
  "type": "array",
  "items": {
    "type": "string",
    "example": "Account Administrator",
    "maxLength": 120,
    "x-auditable": true
  },
  "readOnly": true,
  "description": "List of role names the membership has for this account."
}
object iam_schemas-account
{
  "allOf": [
    {
      "$ref": "#/components/schemas/iam_account"
    }
  ],
  "readOnly": true
}
object iam_schemas-collection_invite_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/iam_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/iam_user_invite"
          }
        }
      }
    }
  ]
}
string iam_schemas-expires_on
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-01T05:20:00Z",
  "readOnly": true,
  "description": "When the invite is no longer active.",
  "x-auditable": true
}
array iam_schemas-messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string iam_schemas-name
{
  "type": "string",
  "example": "Cloudflare, Inc.",
  "maxLength": 100,
  "description": "Organization name.",
  "x-auditable": true
}
array iam_schemas-permissions
{
  "type": "array",
  "items": {
    "type": "string",
    "example": "#zones:read",
    "maxLength": 160,
    "x-auditable": true
  },
  "readOnly": true,
  "description": "Access permissions for this User."
}
string iam_schemas-status
{
  "enum": [
    "accepted",
    "pending",
    "rejected"
  ],
  "type": "string",
  "example": "accepted",
  "description": "Status of this membership.",
  "x-auditable": true
}
object iam_scim_authentication_scheme
{
  "type": "object",
  "title": "SCIM Authentication Scheme",
  "required": [
    "type",
    "name",
    "description"
  ],
  "properties": {
    "name": {
      "type": "string",
      "example": "OAuth Bearer Token",
      "description": "The common authentication scheme name."
    },
    "type": {
      "type": "string",
      "example": "oauthbearertoken",
      "description": "The authentication scheme type."
    },
    "primary": {
      "type": "boolean",
      "example": true,
      "description": "Indicates if this is the primary authentication scheme."
    },
    "specUri": {
      "type": "string",
      "example": "http://www.rfc-editor.org/info/rfc6750",
      "description": "An HTTP-addressable URL pointing to the authentication scheme specification."
    },
    "description": {
      "type": "string",
      "example": "Authentication via OAuth 2.0 Bearer Token",
      "description": "A description of the authentication scheme."
    },
    "documentationUri": {
      "type": "string",
      "description": "An HTTP-addressable URL pointing to the authentication scheme documentation."
    }
  },
  "description": "An authentication method supported by the SCIM service."
}
object iam_scim_bulk_feature
{
  "type": "object",
  "title": "SCIM Bulk Feature",
  "required": [
    "supported",
    "maxOperations",
    "maxPayloadSize"
  ],
  "properties": {
    "supported": {
      "type": "boolean",
      "example": false,
      "description": "Whether bulk operations are supported."
    },
    "maxOperations": {
      "type": "integer",
      "example": 0,
      "description": "The maximum number of operations in a bulk request."
    },
    "maxPayloadSize": {
      "type": "integer",
      "example": 0,
      "description": "The maximum payload size in bytes for a bulk request."
    }
  },
  "description": "Configuration for SCIM bulk operations."
}
object iam_scim_error_response
{
  "type": "object",
  "title": "SCIM Error Response",
  "required": [
    "schemas",
    "status"
  ],
  "properties": {
    "detail": {
      "type": "string",
      "example": "Invalid SCIM request: userName is required",
      "description": "A human-readable message describing the error."
    },
    "status": {
      "type": "string",
      "example": "400",
      "description": "The HTTP status code as a string."
    },
    "schemas": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "urn:ietf:params:scim:api:messages:2.0:Error"
      ]
    },
    "scimType": {
      "type": "string",
      "example": "uniqueness",
      "description": "A SCIM detail error keyword (RFC 7644 Section 3.12). Only present for specific error conditions (e.g. `uniqueness` for duplicate member).\n"
    }
  },
  "description": "SCIM error envelope (RFC 7644 Section 3.12). Returned on all 4XX and 5XX responses from SCIM endpoints.\n"
}
object iam_scim_feature
{
  "type": "object",
  "title": "SCIM Feature",
  "required": [
    "supported"
  ],
  "properties": {
    "supported": {
      "type": "boolean",
      "example": true,
      "description": "Whether the feature is supported."
    }
  },
  "description": "Represents a simple supported/unsupported SCIM feature."
}
object iam_scim_filter_feature
{
  "type": "object",
  "title": "SCIM Filter Feature",
  "required": [
    "supported",
    "maxResults"
  ],
  "properties": {
    "supported": {
      "type": "boolean",
      "example": true,
      "description": "Whether filtering is supported."
    },
    "maxResults": {
      "type": "integer",
      "example": 100,
      "description": "The maximum number of filter results per page."
    }
  },
  "description": "Configuration for SCIM filtering operations."
}
object iam_scim_group
{
  "type": "object",
  "title": "SCIM Group",
  "required": [
    "schemas",
    "id",
    "displayName"
  ],
  "properties": {
    "id": {
      "type": "string",
      "example": "cloudflare-v1-023e105f4ecef8ad9ca31a8372d0c353",
      "readOnly": true,
      "description": "Unique identifier for the Group, assigned by Cloudflare. System groups are prefixed `cloudflare-v1-<permissionGroupTag>`; custom groups use a UUID-style tag.",
      "x-auditable": true
    },
    "meta": {
      "$ref": "#/components/schemas/iam_scim_group_meta"
    },
    "members": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "value": {
            "type": "string",
            "example": "023e105f4ecef8ad9ca31a8372d0c353",
            "description": "The user tag identifier of the group member."
          },
          "display": {
            "type": "string",
            "example": "user@example.com",
            "description": "The display name (email) of the group member."
          }
        }
      },
      "example": [
        {
          "value": "023e105f4ecef8ad9ca31a8372d0c353",
          "display": "user@example.com"
        }
      ],
      "readOnly": true,
      "description": "A list of members of the Group. Only populated for custom (Phase 2) groups on individual GET requests. Each member object contains a `value` (user tag) and optional `display` (email)."
    },
    "schemas": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "urn:ietf:params:scim:schemas:core:2.0:Group"
      ]
    },
    "externalId": {
      "type": "string",
      "example": "idp-group-456",
      "description": "Identifier for the Group as defined by the provisioning client (IdP).",
      "x-auditable": true
    },
    "displayName": {
      "type": "string",
      "example": "Administrators",
      "description": "A human-readable name for the Group.",
      "x-auditable": true
    }
  },
  "description": "A SCIM 2.0 Group resource representing an account user group (RFC 7643 Section 4.2). May be a system group (backed by a Cloudflare permission group, read-only except for member management) or a custom user group (full CRUD)."
}
object iam_scim_group_create_request
{
  "type": "object",
  "title": "SCIM Group Create Request",
  "required": [
    "displayName"
  ],
  "properties": {
    "externalId": {
      "type": "string",
      "example": "idp-group-456",
      "description": "Identifier for the Group as defined by the provisioning client (IdP).",
      "x-auditable": true
    },
    "displayName": {
      "type": "string",
      "example": "My IdP Group",
      "description": "A human-readable name for the Group. REQUIRED. Must not start with `CF` (reserved prefix for Cloudflare-managed virtual groups).\n",
      "x-auditable": true
    }
  },
  "description": "Request body for creating a SCIM Group. The `displayName` must not be empty and must not begin with `CF` (reserved for system groups).\n"
}
string iam_scim_group_identifier
{
  "type": "string",
  "title": "SCIM Group Identifier",
  "example": "cloudflare-v1-023e105f4ecef8ad9ca31a8372d0c353",
  "description": "The group identifier for a SCIM Group resource. For system groups this is prefixed `cloudflare-v1-<permissionGroupTag>`; for custom user groups this is a UUID-style tag.\n"
}
object iam_scim_group_list_response
{
  "type": "object",
  "title": "SCIM Group List Response",
  "required": [
    "schemas",
    "totalResults",
    "Resources"
  ],
  "properties": {
    "schemas": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "urn:ietf:params:scim:api:messages:2.0:ListResponse"
      ]
    },
    "Resources": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/iam_scim_group_summary"
      }
    },
    "startIndex": {
      "type": "integer",
      "example": 1,
      "description": "The 1-based index of the first result in this set."
    },
    "itemsPerPage": {
      "type": "integer",
      "example": 5,
      "description": "The number of resources returned in this page."
    },
    "totalResults": {
      "type": "integer",
      "example": 5,
      "description": "The total number of results matching the query."
    }
  },
  "description": "SCIM ListResponse envelope for Group resources (RFC 7644 Section 3.4.2).\n"
}
object iam_scim_group_meta
{
  "type": "object",
  "title": "SCIM Group Meta",
  "readOnly": true,
  "properties": {
    "resourceType": {
      "type": "string",
      "example": "Group",
      "description": "The name of the resource type."
    }
  },
  "description": "Resource metadata for a SCIM Group."
}
object iam_scim_group_patch_member_value
{
  "type": "object",
  "title": "SCIM Group Patch Member Value",
  "properties": {
    "value": {
      "type": "string",
      "example": "023e105f4ecef8ad9ca31a8372d0c353",
      "description": "The user tag of the member to add or remove.",
      "x-auditable": true
    }
  },
  "description": "A member value object used in Group PATCH operations."
}
object iam_scim_group_patch_op_request
{
  "type": "object",
  "title": "SCIM PatchOp Request (Groups)",
  "required": [
    "schemas",
    "Operations"
  ],
  "properties": {
    "schemas": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "urn:ietf:params:scim:api:messages:2.0:PatchOp"
      ]
    },
    "Operations": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/iam_scim_group_patch_operation"
      },
      "example": [
        {
          "op": "add",
          "path": "members",
          "value": [
            {
              "value": "023e105f4ecef8ad9ca31a8372d0c353"
            }
          ]
        }
      ],
      "description": "List of PATCH operations to apply."
    }
  },
  "description": "Request body for a SCIM PATCH operation on a Group resource (RFC 7644 Section 3.5.2).\n"
}
object iam_scim_group_patch_operation
{
  "type": "object",
  "title": "SCIM Group Patch Operation",
  "required": [
    "op"
  ],
  "properties": {
    "op": {
      "enum": [
        "add",
        "remove",
        "replace"
      ],
      "type": "string",
      "example": "add",
      "description": "The operation to perform.",
      "x-auditable": true
    },
    "path": {
      "type": "string",
      "example": "members",
      "description": "Attribute path targeted by this operation. Use `members` to modify group membership. May also include a filter expression to target specific members, e.g. `members[value eq \"userTag\"]`.\n",
      "x-auditable": true
    },
    "value": {
      "oneOf": [
        {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/iam_scim_group_patch_member_value"
          }
        },
        {
          "type": "string"
        }
      ],
      "example": [
        {
          "value": "023e105f4ecef8ad9ca31a8372d0c353"
        }
      ],
      "description": "The value(s) for the operation. For member add/replace operations, an array of member value objects. For `displayName` or `externalId` updates, a string value.\n"
    }
  },
  "description": "A single PATCH operation for a Group resource. Supports `add`, `remove`, and `replace` on `members`, `displayName`, and `externalId`.\n"
}
object iam_scim_group_summary
{
  "type": "object",
  "title": "SCIM Group Summary",
  "required": [
    "schemas",
    "id",
    "displayName"
  ],
  "properties": {
    "id": {
      "type": "string",
      "example": "cloudflare-v1-023e105f4ecef8ad9ca31a8372d0c353",
      "readOnly": true,
      "description": "Unique identifier for the Group, assigned by Cloudflare. System groups are prefixed `cloudflare-v1-<permissionGroupTag>`; custom groups use a UUID-style tag.",
      "x-auditable": true
    },
    "meta": {
      "$ref": "#/components/schemas/iam_scim_group_meta"
    },
    "schemas": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "urn:ietf:params:scim:schemas:core:2.0:Group"
      ],
      "description": "Must contain `urn:ietf:params:scim:schemas:core:2.0:Group`."
    },
    "externalId": {
      "type": "string",
      "example": "idp-group-456",
      "description": "Identifier for the Group as defined by the provisioning client (IdP).",
      "x-auditable": true
    },
    "displayName": {
      "type": "string",
      "example": "Administrators",
      "description": "A human-readable name for the Group.",
      "x-auditable": true
    }
  },
  "description": "A SCIM 2.0 Group resource as returned in list responses. Does not include members; use the individual GET endpoint to retrieve members."
}
object iam_scim_patch_op_request
{
  "type": "object",
  "title": "SCIM PatchOp Request (Users)",
  "required": [
    "schemas",
    "Operations"
  ],
  "properties": {
    "schemas": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "urn:ietf:params:scim:api:messages:2.0:PatchOp"
      ],
      "description": "Must contain `urn:ietf:params:scim:api:messages:2.0:PatchOp`."
    },
    "Operations": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/iam_scim_patch_operation"
      },
      "example": [
        {
          "op": "replace",
          "value": {
            "active": false
          }
        }
      ],
      "description": "List of PATCH operations to apply."
    }
  },
  "description": "Request body for a SCIM PATCH operation on a User resource (RFC 7644 Section 3.5.2).\n"
}
object iam_scim_patch_operation
{
  "type": "object",
  "title": "SCIM Patch Operation",
  "required": [
    "op"
  ],
  "properties": {
    "op": {
      "enum": [
        "add",
        "remove",
        "replace"
      ],
      "type": "string",
      "example": "replace",
      "description": "The operation to perform. Only `replace` is currently supported; `add` and `remove` are accepted without error but have no effect. Matched case-insensitively.\n",
      "x-auditable": true
    },
    "path": {
      "type": "string",
      "example": "active",
      "description": "Attribute path targeted by this operation. When absent, `value` must be a singular complex attribute.\n",
      "x-auditable": true
    },
    "value": {
      "example": {
        "active": false
      },
      "description": "The value(s) for the operation. For `replace` without a path, this should be an object of attribute name/value pairs. For member path operations, this should be an array of member value objects.\n"
    }
  },
  "description": "A single PATCH operation (RFC 7644 Section 3.5.2)."
}
object iam_scim_resource_type
{
  "type": "object",
  "title": "SCIM Resource Type",
  "required": [
    "schemas",
    "id",
    "name",
    "endpoint",
    "schema"
  ],
  "properties": {
    "id": {
      "type": "string",
      "example": "User",
      "description": "The resource type's server unique id."
    },
    "meta": {
      "$ref": "#/components/schemas/iam_scim_resource_type_meta"
    },
    "name": {
      "type": "string",
      "example": "User",
      "description": "The resource type name."
    },
    "schema": {
      "type": "string",
      "example": "urn:ietf:params:scim:schemas:core:2.0:User",
      "description": "The resource type's primary/base schema URI."
    },
    "schemas": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "urn:ietf:params:scim:schemas:core:2.0:ResourceType"
      ]
    },
    "endpoint": {
      "type": "string",
      "example": "/Users",
      "description": "The resource type's HTTP-addressable endpoint relative to the base URL."
    },
    "description": {
      "type": "string",
      "example": "User Account",
      "description": "The resource type's human-readable description."
    },
    "schemaExtensions": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/iam_scim_schema_extension"
      },
      "description": "A list of URIs of the resource type's schema extensions."
    }
  },
  "description": "A SCIM ResourceType resource (RFC 7643 Section 6). Describes a category of SCIM resource (e.g. User, Group) and its associated schema.\n"
}
object iam_scim_resource_type_list_response
{
  "type": "object",
  "title": "SCIM Resource Type List Response",
  "required": [
    "schemas",
    "totalResults",
    "Resources"
  ],
  "properties": {
    "schemas": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "urn:ietf:params:scim:api:messages:2.0:ListResponse"
      ]
    },
    "Resources": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/iam_scim_resource_type"
      }
    },
    "startIndex": {
      "type": "integer",
      "example": 1
    },
    "itemsPerPage": {
      "type": "integer",
      "example": 2
    },
    "totalResults": {
      "type": "integer",
      "example": 2
    }
  },
  "description": "SCIM ListResponse envelope for ResourceType resources (RFC 7644 Section 4).\n"
}
object iam_scim_resource_type_meta
{
  "type": "object",
  "title": "SCIM Resource Type Meta",
  "properties": {
    "location": {
      "type": "string",
      "example": "https://api.cloudflare.com/accounts/023e105f4ecef8ad9ca31a8372d0c353/scim/v2/ResourceTypes/User",
      "description": "The URI of the resource being returned."
    },
    "resourceType": {
      "type": "string",
      "example": "ResourceType",
      "description": "The name of the resource type of the resource."
    }
  },
  "description": "Metadata for a SCIM ResourceType resource."
}
object iam_scim_schema
{
  "type": "object",
  "title": "SCIM Schema",
  "required": [
    "schemas",
    "id",
    "name",
    "attributes"
  ],
  "properties": {
    "id": {
      "type": "string",
      "example": "urn:ietf:params:scim:schemas:core:2.0:User",
      "description": "The unique URI of the schema."
    },
    "meta": {
      "$ref": "#/components/schemas/iam_scim_schema_meta"
    },
    "name": {
      "type": "string",
      "example": "User",
      "description": "The schema's human-readable name."
    },
    "schemas": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "urn:ietf:params:scim:schemas:core:2.0:Schema"
      ]
    },
    "attributes": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/iam_scim_schema_attr"
      },
      "description": "A complex attribute that includes the attributes of a schema."
    },
    "description": {
      "type": "string",
      "example": "User Account",
      "description": "The schema's human-readable description."
    }
  },
  "description": "A SCIM Schema resource (RFC 7643 Section 7). Defines the attributes of a SCIM resource type (e.g. User or Group).\n"
}
object iam_scim_schema_attr
{
  "type": "object",
  "title": "SCIM Schema Attribute",
  "required": [
    "name",
    "type",
    "multiValued",
    "description",
    "required",
    "caseExact",
    "mutability",
    "returned",
    "uniqueness"
  ],
  "properties": {
    "name": {
      "type": "string",
      "example": "userName",
      "description": "The attribute's name."
    },
    "type": {
      "enum": [
        "string",
        "boolean",
        "decimal",
        "integer",
        "dateTime",
        "reference",
        "complex"
      ],
      "type": "string",
      "example": "string",
      "description": "The attribute's data type."
    },
    "required": {
      "type": "boolean",
      "example": false,
      "description": "Indicates if the attribute is required."
    },
    "returned": {
      "enum": [
        "always",
        "never",
        "default",
        "request"
      ],
      "type": "string",
      "example": "default",
      "description": "Indicates when an attribute and associated values are returned in response to a GET request or in response to a PUT, POST, or PATCH request."
    },
    "caseExact": {
      "type": "boolean",
      "example": false,
      "description": "Indicates if the string attribute is case-sensitive."
    },
    "mutability": {
      "enum": [
        "readOnly",
        "readWrite",
        "immutable",
        "writeOnly"
      ],
      "type": "string",
      "example": "readWrite",
      "description": "Indicates the circumstances under which the value of the attribute can be defined or redefined."
    },
    "uniqueness": {
      "enum": [
        "none",
        "server",
        "global"
      ],
      "type": "string",
      "example": "none",
      "description": "Indicates how the service provider enforces uniqueness of attribute values."
    },
    "description": {
      "type": "string",
      "description": "A human-readable description of the attribute."
    },
    "multiValued": {
      "type": "boolean",
      "example": false,
      "description": "Indicates if the attribute is multi-valued."
    },
    "subAttributes": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/iam_scim_schema_attr"
      },
      "description": "Defines a set of sub-attributes when the attribute type is `complex`."
    },
    "referenceTypes": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "A multi-valued attribute that indicates the SCIM resource types that may be referenced."
    },
    "canonicalValues": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "A collection of canonical values for the attribute."
    }
  },
  "description": "An attribute definition within a SCIM schema (RFC 7643 Section 7)."
}
object iam_scim_schema_extension
{
  "type": "object",
  "title": "SCIM Schema Extension",
  "required": [
    "schema",
    "required"
  ],
  "properties": {
    "schema": {
      "type": "string",
      "description": "The URI of the extension schema."
    },
    "required": {
      "type": "boolean",
      "description": "Whether the extension is required."
    }
  },
  "description": "An extension schema associated with a resource type."
}
object iam_scim_schema_list_response
{
  "type": "object",
  "title": "SCIM Schema List Response",
  "required": [
    "schemas",
    "totalResults",
    "Resources"
  ],
  "properties": {
    "schemas": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "urn:ietf:params:scim:api:messages:2.0:ListResponse"
      ]
    },
    "Resources": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/iam_scim_schema"
      }
    },
    "startIndex": {
      "type": "integer",
      "example": 1
    },
    "itemsPerPage": {
      "type": "integer",
      "example": 2
    },
    "totalResults": {
      "type": "integer",
      "example": 2
    }
  },
  "description": "SCIM ListResponse envelope for Schema resources (RFC 7644 Section 4).\n"
}
object iam_scim_schema_meta
{
  "type": "object",
  "title": "SCIM Schema Meta",
  "properties": {
    "location": {
      "type": "string",
      "example": "https://api.cloudflare.com/accounts/023e105f4ecef8ad9ca31a8372d0c353/scim/v2/Schemas/urn:ietf:params:scim:schemas:core:2.0:User",
      "description": "The URI of the resource being returned."
    },
    "resourceType": {
      "type": "string",
      "example": "Schema",
      "description": "The name of the resource type of the resource."
    }
  },
  "description": "Metadata for a SCIM Schema resource."
}
object iam_scim_service_provider_config
{
  "type": "object",
  "title": "SCIM Service Provider Config",
  "required": [
    "schemas",
    "patch",
    "bulk",
    "filter",
    "changePassword",
    "sort",
    "etag",
    "authenticationSchemes"
  ],
  "properties": {
    "bulk": {
      "$ref": "#/components/schemas/iam_scim_bulk_feature"
    },
    "etag": {
      "$ref": "#/components/schemas/iam_scim_feature"
    },
    "sort": {
      "$ref": "#/components/schemas/iam_scim_feature"
    },
    "patch": {
      "$ref": "#/components/schemas/iam_scim_feature"
    },
    "filter": {
      "$ref": "#/components/schemas/iam_scim_filter_feature"
    },
    "schemas": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "urn:ietf:params:scim:schemas:core:2.0:ServiceProviderConfig"
      ]
    },
    "changePassword": {
      "$ref": "#/components/schemas/iam_scim_feature"
    },
    "documentationUri": {
      "type": "string",
      "example": "https://developers.cloudflare.com/fundamentals/account/account-security/scim-setup/",
      "description": "An HTTP-addressable URL pointing to the service provider's human-consumable help documentation."
    },
    "authenticationSchemes": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/iam_scim_authentication_scheme"
      }
    }
  },
  "description": "The SCIM 2.0 Service Provider configuration (RFC 7643 Section 5). Describes which optional SCIM features Cloudflare supports. IdPs use this to auto-configure their SCIM integration.\n"
}
object iam_scim_user
{
  "type": "object",
  "title": "SCIM User",
  "required": [
    "schemas",
    "id",
    "userName",
    "active"
  ],
  "properties": {
    "id": {
      "type": "string",
      "example": "023e105f4ecef8ad9ca31a8372d0c353",
      "readOnly": true,
      "description": "Unique identifier for the user, assigned by Cloudflare (user tag).",
      "x-auditable": true
    },
    "meta": {
      "type": "object",
      "readOnly": true,
      "properties": {
        "resourceType": {
          "type": "string",
          "example": "User",
          "description": "The name of the resource type."
        }
      },
      "description": "Resource metadata for a SCIM User."
    },
    "name": {
      "$ref": "#/components/schemas/iam_scim_user_name_object"
    },
    "active": {
      "type": "boolean",
      "example": true,
      "description": "A Boolean value indicating the user's administrative status. Set to `false` to deprovision the user, removing their membership from the account.",
      "x-auditable": true
    },
    "emails": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/iam_scim_user_email_object"
      },
      "description": "Always contains a single primary work email matching `userName`."
    },
    "groups": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "cloudflare-v1-023e105f4ecef8ad9ca31a8372d0c353"
      ],
      "readOnly": true,
      "description": "A list of group identifiers to which the user belongs. Includes both system group tags (prefixed `cloudflare-v1-`) and custom user group tags."
    },
    "schemas": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "urn:ietf:params:scim:schemas:core:2.0:User"
      ],
      "description": "Must contain `urn:ietf:params:scim:schemas:core:2.0:User`."
    },
    "userName": {
      "type": "string",
      "format": "email",
      "example": "user@example.com",
      "description": "Unique identifier for the user, equal to the user's email address.",
      "x-auditable": true
    },
    "externalId": {
      "type": "string",
      "example": "idp-user-abc123",
      "description": "An identifier for the user as defined by the provisioning client (IdP). This value is stored and returned but not interpreted by Cloudflare.",
      "x-auditable": true
    },
    "displayName": {
      "type": "string",
      "example": "Jane Smith",
      "description": "The display name shown for the user. Falls back to formatted name or userName if not set.",
      "x-auditable": true
    }
  },
  "description": "A SCIM 2.0 User resource representing an account member (RFC 7643 Section 4.1).\n"
}
object iam_scim_user_create_request
{
  "type": "object",
  "title": "SCIM User Create Request",
  "required": [
    "schemas",
    "userName",
    "emails",
    "active"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/iam_scim_user_name_object"
    },
    "active": {
      "type": "boolean",
      "example": true,
      "description": "A Boolean value indicating the user's administrative status. Must be `true` for user creation.",
      "x-auditable": true
    },
    "emails": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/iam_scim_user_email_object"
      },
      "description": "Email addresses for the user. The primary email must match `userName`."
    },
    "schemas": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "urn:ietf:params:scim:schemas:core:2.0:User"
      ],
      "description": "Must contain `urn:ietf:params:scim:schemas:core:2.0:User`."
    },
    "userName": {
      "type": "string",
      "format": "email",
      "example": "user@example.com",
      "description": "Unique identifier for the user, equal to the user's email address.",
      "x-auditable": true
    },
    "externalId": {
      "type": "string",
      "example": "idp-user-abc123",
      "description": "An identifier for the user as defined by the provisioning client (IdP). This value is stored and returned but not interpreted by Cloudflare.",
      "x-auditable": true
    },
    "displayName": {
      "type": "string",
      "example": "Jane Smith",
      "description": "The name of the user, suitable for display to end-users. If not explicitly set, falls back to the formatted name or userName.",
      "x-auditable": true
    }
  },
  "description": "Request body for creating a SCIM User (POST). The `emails` field is required with a primary email matching `userName`, and `active` must be `true`.\n"
}
object iam_scim_user_email_object
{
  "type": "object",
  "title": "SCIM User Email",
  "required": [
    "value"
  ],
  "properties": {
    "type": {
      "type": "string",
      "example": "work",
      "description": "A label indicating the attribute's function, e.g., \"work\" or \"home\"."
    },
    "value": {
      "type": "string",
      "format": "email",
      "example": "user@example.com",
      "description": "The email address value."
    },
    "primary": {
      "type": "boolean",
      "example": true,
      "description": "A Boolean value indicating the preferred email address."
    }
  },
  "description": "An email address entry for a SCIM User."
}
string iam_scim_user_identifier
{
  "type": "string",
  "title": "SCIM User Identifier",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "description": "The user tag identifying a SCIM User resource (account member)."
}
object iam_scim_user_list_response
{
  "type": "object",
  "title": "SCIM User List Response",
  "required": [
    "schemas",
    "totalResults",
    "Resources"
  ],
  "properties": {
    "schemas": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "urn:ietf:params:scim:api:messages:2.0:ListResponse"
      ]
    },
    "Resources": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/iam_scim_user"
      }
    },
    "startIndex": {
      "type": "integer",
      "example": 1,
      "description": "The 1-based index of the first result in this set."
    },
    "itemsPerPage": {
      "type": "integer",
      "example": 3,
      "description": "The number of resources returned in this page."
    },
    "totalResults": {
      "type": "integer",
      "example": 3,
      "description": "The total number of results matching the query."
    }
  },
  "description": "SCIM ListResponse envelope for User resources (RFC 7644 Section 3.4.2).\n"
}
object iam_scim_user_name_object
{
  "type": "object",
  "title": "SCIM User Name",
  "properties": {
    "formatted": {
      "type": "string",
      "example": "Jane Smith",
      "readOnly": true,
      "description": "The full name, including all middle names, titles, and suffixes as appropriate, formatted for display."
    },
    "givenName": {
      "type": "string",
      "example": "Jane",
      "description": "The given name (first name) of the user.",
      "x-auditable": true
    },
    "familyName": {
      "type": "string",
      "example": "Smith",
      "description": "The family name (last name) of the user.",
      "x-auditable": true
    }
  },
  "description": "The components of the user's real name."
}
object iam_scim_user_replace_request
{
  "type": "object",
  "title": "SCIM User Replace Request",
  "required": [
    "schemas",
    "userName"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/iam_scim_user_name_object"
    },
    "active": {
      "type": "boolean",
      "example": true,
      "description": "A Boolean value indicating the user's administrative status. Optional; if omitted, the current value is preserved. Set to `false` to deprovision the user, removing their membership from the account.",
      "x-auditable": true
    },
    "emails": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/iam_scim_user_email_object"
      },
      "description": "Email addresses for the user. If a primary email is provided, it must match `userName`."
    },
    "schemas": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "urn:ietf:params:scim:schemas:core:2.0:User"
      ],
      "description": "Must contain `urn:ietf:params:scim:schemas:core:2.0:User`."
    },
    "userName": {
      "type": "string",
      "format": "email",
      "example": "user@example.com",
      "description": "Unique identifier for the user, equal to the user's email address.",
      "x-auditable": true
    },
    "externalId": {
      "type": "string",
      "example": "idp-user-abc123",
      "description": "An identifier for the user as defined by the provisioning client (IdP). This value is stored and returned but not interpreted by Cloudflare.",
      "x-auditable": true
    },
    "displayName": {
      "type": "string",
      "example": "Jane Smith",
      "description": "The name of the user, suitable for display to end-users. If not explicitly set, falls back to the formatted name or userName.",
      "x-auditable": true
    }
  },
  "description": "Request body for replacing a SCIM User (PUT). Only `schemas` and `userName` are required; other fields are optional.\n"
}
object iam_scope
{
  "type": "object",
  "required": [
    "key",
    "objects"
  ],
  "properties": {
    "key": {
      "$ref": "#/components/schemas/iam_scope_key"
    },
    "objects": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/iam_scope_object"
      },
      "description": "A list of scope objects for additional context."
    }
  },
  "description": "A scope is a combination of scope objects which provides additional context."
}
object iam_scope_key
{
  "example": "com.cloudflare.api.account.eb78d65290b24279ba6f44721b3ea3c4",
  "readOnly": true,
  "description": "This is a combination of pre-defined resource name and identifier (like Account ID etc.)",
  "x-auditable": true
}
object iam_scope_object
{
  "type": "object",
  "required": [
    "key"
  ],
  "properties": {
    "key": {
      "$ref": "#/components/schemas/iam_scope_object_key"
    }
  },
  "description": "A scope object represents any resource that can have actions applied against invite."
}
object iam_scope_object_key
{
  "example": "com.cloudflare.api.account.zone.23f8d65290b24279ba6f44721b3eaad5",
  "readOnly": true,
  "description": "This is a combination of pre-defined resource name and identifier (like Zone ID etc.)",
  "x-auditable": true
}
object iam_single_invite_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/iam_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/iam_user_invite"
        }
      }
    }
  ]
}
object iam_single_member_response_with_policies
{
  "allOf": [
    {
      "$ref": "#/components/schemas/iam_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/iam_member_with_policies"
        }
      }
    }
  ],
  "title": "Response with Policies"
}
object iam_single_membership_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/iam_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/iam_membership"
        }
      }
    }
  ],
  "title": "response_with_roles"
}
object iam_single_membership_response_with_policies
{
  "allOf": [
    {
      "$ref": "#/components/schemas/iam_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/iam_membership-with-policies"
        }
      }
    }
  ],
  "title": "response_with_policies"
}
object iam_single_organization_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/iam_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object"
        }
      }
    }
  ]
}
object iam_single_permission_groups_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/iam_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/iam_permission_group"
        }
      }
    }
  ],
  "title": "Response with Permission Groups"
}
object iam_single_role_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/iam_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/iam_role"
        }
      }
    }
  ]
}
object iam_single_token_create_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/iam_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/iam_token_with_value"
        }
      }
    }
  ],
  "title": "Response of a create request with a single token"
}
object iam_single_token_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/iam_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/iam_token_base"
        }
      }
    }
  ],
  "title": "Response with a single token"
}
object iam_single_user_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/iam_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "id": {
              "type": "string",
              "example": "6d7f2f5f5b1d4a0e9081fdc98d432fd1",
              "readOnly": true,
              "description": "Identifier of the user."
            },
            "betas": {
              "type": "array",
              "items": {
                "type": "string",
                "example": "zone_level_access_beta",
                "description": "User feature flag"
              },
              "readOnly": true,
              "description": "Lists the betas that the user is participating in."
            },
            "country": {
              "$ref": "#/components/schemas/iam_country"
            },
            "zipcode": {
              "$ref": "#/components/schemas/iam_zipcode"
            },
            "last_name": {
              "$ref": "#/components/schemas/iam_last_name"
            },
            "suspended": {
              "type": "boolean",
              "default": false,
              "readOnly": true,
              "description": "Indicates whether user has been suspended"
            },
            "telephone": {
              "$ref": "#/components/schemas/iam_telephone"
            },
            "first_name": {
              "$ref": "#/components/schemas/iam_first_name"
            },
            "has_pro_zones": {
              "type": "boolean",
              "default": false,
              "readOnly": true,
              "description": "Indicates whether user has any pro zones"
            },
            "organizations": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/iam_organization"
              }
            },
            "has_business_zones": {
              "type": "boolean",
              "default": false,
              "readOnly": true,
              "description": "Indicates whether user has any business zones"
            },
            "has_enterprise_zones": {
              "type": "boolean",
              "default": false,
              "readOnly": true,
              "description": "Indicates whether user has any enterprise zones"
            },
            "two_factor_authentication_locked": {
              "$ref": "#/components/schemas/iam_two_factor_authentication_locked"
            },
            "two_factor_authentication_enabled": {
              "$ref": "#/components/schemas/iam_two_factor_authentication_enabled"
            }
          }
        }
      }
    }
  ]
}
object iam_sso_connector
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/iam_sso_connector_identifier"
    },
    "enabled": {
      "type": "boolean",
      "example": false
    },
    "created_on": {
      "type": "string",
      "format": "date-time",
      "example": "2025-01-01T12:21:02.0000Z",
      "description": "Timestamp for the creation of the SSO connector"
    },
    "updated_on": {
      "type": "string",
      "format": "date-time",
      "example": "2025-01-01T12:21:02.0000Z",
      "description": "Timestamp for the last update of the SSO connector"
    },
    "email_domain": {
      "type": "string",
      "example": "example.com"
    },
    "verification": {
      "$ref": "#/components/schemas/iam_sso_connector_verification_info"
    },
    "use_fedramp_language": {
      "$ref": "#/components/schemas/iam_use_fedramp_language"
    }
  }
}
object iam_sso_connector_collection_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/iam_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/iam_sso_connector"
          }
        }
      }
    }
  ],
  "title": "Response of initializing a new sso connector"
}
object iam_sso_connector_identifier
{
  "allOf": [
    {
      "$ref": "#/components/schemas/iam_common_components-schemas-identifier"
    }
  ],
  "title": "SSO Connector Identifier",
  "description": "SSO Connector identifier tag."
}
object iam_sso_connector_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/iam_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/iam_sso_connector"
        }
      }
    }
  ],
  "title": "Response of initializing a new sso connector"
}
object iam_sso_connector_verification_info
{
  "type": "object",
  "properties": {
    "code": {
      "$ref": "#/components/schemas/iam_dns_verification_code"
    },
    "status": {
      "enum": [
        "awaiting",
        "pending",
        "failed",
        "verified"
      ],
      "type": "string",
      "example": "pending",
      "description": "The status of the verification code from the verification process."
    }
  }
}
string iam_telephone
{
  "type": "string",
  "example": "+1 123-123-1234",
  "nullable": true,
  "maxLength": 20,
  "description": "User's telephone number"
}
object iam_token_base
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/iam_token_identifier"
    },
    "name": {
      "$ref": "#/components/schemas/iam_name"
    },
    "status": {
      "$ref": "#/components/schemas/iam_token_status"
    },
    "policies": {
      "$ref": "#/components/schemas/iam_token_policies"
    },
    "condition": {
      "$ref": "#/components/schemas/iam_condition"
    },
    "issued_on": {
      "$ref": "#/components/schemas/iam_issued_on"
    },
    "expires_on": {
      "$ref": "#/components/schemas/iam_expires_on"
    },
    "not_before": {
      "$ref": "#/components/schemas/iam_not_before"
    },
    "modified_on": {
      "$ref": "#/components/schemas/iam_modified_on"
    },
    "last_used_on": {
      "$ref": "#/components/schemas/iam_last_used_on"
    }
  }
}
object iam_token_body
{
  "allOf": [
    {
      "$ref": "#/components/schemas/iam_token_base"
    },
    {
      "type": "object"
    },
    {
      "required": [
        "name",
        "policies"
      ]
    }
  ],
  "title": "Token defined in a request body"
}
string iam_token_identifier
{
  "type": "string",
  "example": "ed17574386854bf78a67040be0a770b0",
  "readOnly": true,
  "maxLength": 32,
  "description": "Token identifier tag.",
  "x-auditable": true
}
array iam_token_policies
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/iam_policy_with_permission_groups_and_resources"
  },
  "description": "List of access policies assigned to the token."
}
string iam_token_status
{
  "enum": [
    "active",
    "disabled",
    "expired"
  ],
  "type": "string",
  "example": "active",
  "description": "Status of the token.",
  "x-auditable": true,
  "x-stainless-terraform-configurability": "computed_optional"
}
object iam_token_verify_response_single_segment
{
  "allOf": [
    {
      "$ref": "#/components/schemas/iam_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "required": [
            "id",
            "status"
          ],
          "properties": {
            "id": {
              "$ref": "#/components/schemas/iam_token_identifier"
            },
            "status": {
              "$ref": "#/components/schemas/iam_token_status"
            },
            "expires_on": {
              "$ref": "#/components/schemas/iam_expires_on"
            },
            "not_before": {
              "$ref": "#/components/schemas/iam_not_before"
            }
          }
        }
      }
    }
  ]
}
object iam_token_with_value
{
  "allOf": [
    {
      "$ref": "#/components/schemas/iam_token_base"
    },
    {
      "properties": {
        "value": {
          "$ref": "#/components/schemas/iam_value"
        }
      }
    }
  ],
  "title": "Create token response, with the token value"
}
boolean iam_two_factor_authentication_enabled
{
  "type": "boolean",
  "default": false,
  "readOnly": true,
  "description": "Indicates whether two-factor authentication is enabled for the user account. Does not apply to API authentication."
}
boolean iam_two_factor_authentication_locked
{
  "type": "boolean",
  "default": false,
  "readOnly": true,
  "description": "Indicates whether two-factor authentication is required by one of the accounts that the user is a member of."
}
string iam_unit-identifier
{
  "type": "string",
  "example": "f267e341f3dd4697bd3b9f71dd96247f",
  "readOnly": true,
  "description": "Tenant unit identifier.",
  "x-auditable": true
}
object iam_update-member-with-policies
{
  "type": "object",
  "title": "Update Member with Policies",
  "required": [
    "policies"
  ],
  "properties": {
    "policies": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/iam_create_member_policy"
      },
      "description": "Array of policies associated with this member."
    }
  }
}
object iam_update-member-with-roles
{
  "type": "object",
  "title": "Update Member with Account Roles",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/iam_membership_components-schemas-identifier"
    },
    "user": {
      "type": "object",
      "readOnly": true,
      "required": [
        "email"
      ],
      "properties": {
        "id": {
          "$ref": "#/components/schemas/iam_common_components-schemas-identifier"
        },
        "email": {
          "$ref": "#/components/schemas/iam_email"
        },
        "last_name": {
          "$ref": "#/components/schemas/iam_last_name"
        },
        "first_name": {
          "$ref": "#/components/schemas/iam_first_name"
        },
        "two_factor_authentication_enabled": {
          "$ref": "#/components/schemas/iam_two_factor_authentication_enabled"
        }
      },
      "description": "Details of the user associated to the membership."
    },
    "roles": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/iam_role"
      },
      "description": "Roles assigned to this member."
    },
    "status": {
      "enum": [
        "accepted",
        "pending"
      ],
      "example": "accepted",
      "readOnly": true,
      "description": "A member's status in the account.",
      "x-auditable": true
    }
  }
}
object iam_update_user_group_body
{
  "type": "object",
  "title": "Create User group with a set of policies",
  "properties": {
    "name": {
      "type": "string",
      "example": "My New User Group",
      "description": "Name of the User group."
    },
    "policies": {
      "type": "array",
      "items": {
        "allOf": [
          {
            "type": "object",
            "required": [
              "id"
            ],
            "properties": {
              "id": {
                "type": "string",
                "example": "f267e341f3dd4697bd3b9f71dd96247f",
                "description": "Policy identifier."
              }
            }
          },
          {
            "$ref": "#/components/schemas/iam_user_group_policy_write_body"
          }
        ]
      },
      "title": "User Group Policies",
      "description": "Policies attached to the User group"
    }
  }
}
boolean iam_use_fedramp_language
{
  "type": "boolean",
  "default": false,
  "example": false,
  "description": "Controls the display of FedRAMP language to the user during SSO login",
  "x-stainless-terraform-configurability": "computed_optional"
}
object iam_user_group
{
  "type": "object",
  "required": [
    "id",
    "name",
    "created_on",
    "modified_on"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/iam_user_group_identifier"
    },
    "name": {
      "type": "string",
      "example": "My New User Group",
      "readOnly": true,
      "description": "Name of the user group.",
      "x-auditable": true
    },
    "policies": {
      "type": "array",
      "items": {
        "title": "Authorization Policy",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/iam_policy_identifier"
          },
          "access": {
            "$ref": "#/components/schemas/iam_access"
          },
          "resource_groups": {
            "$ref": "#/components/schemas/iam_resource_groups"
          },
          "permission_groups": {
            "$ref": "#/components/schemas/iam_permission_groups"
          }
        },
        "description": "Policy"
      },
      "title": "User Group Policies",
      "description": "Policies attached to the User group"
    },
    "created_on": {
      "type": "string",
      "format": "date-time",
      "example": "2024-03-01T12:21:02.0000Z",
      "readOnly": true,
      "description": "Timestamp for the creation of the user group",
      "x-auditable": true
    },
    "modified_on": {
      "type": "string",
      "format": "date-time",
      "example": "2024-03-01T12:21:02.0000Z",
      "readOnly": true,
      "description": "Last time the user group was modified.",
      "x-auditable": true
    }
  },
  "description": "A group of policies resources."
}
object iam_user_group_identifier
{
  "allOf": [
    {
      "$ref": "#/components/schemas/iam_common_components-schemas-identifier"
    }
  ],
  "title": "User Group Identifier",
  "description": "User Group identifier tag."
}
object iam_user_group_member
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "string",
      "example": "4f5f0c14a2a41d5063dd301b2f829f04",
      "readOnly": true,
      "description": "Account member identifier."
    },
    "email": {
      "$ref": "#/components/schemas/iam_email"
    },
    "status": {
      "enum": [
        "accepted",
        "pending"
      ],
      "example": "accepted",
      "readOnly": true,
      "description": "The member's status in the account."
    }
  },
  "description": "Member attached to a User Group."
}
object iam_user_group_member_identifier
{
  "allOf": [
    {
      "$ref": "#/components/schemas/iam_common_components-schemas-identifier"
    }
  ],
  "title": "User Group Member Identifier",
  "description": "The identifier of an existing account Member."
}
object iam_user_group_policy_write_body
{
  "required": [
    "access",
    "permission_groups",
    "resource_groups"
  ],
  "properties": {
    "access": {
      "$ref": "#/components/schemas/iam_access"
    },
    "resource_groups": {
      "$ref": "#/components/schemas/iam_resource_group_ids"
    },
    "permission_groups": {
      "$ref": "#/components/schemas/iam_permission_group_ids"
    }
  }
}
array iam_user_groups
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/iam_user_group"
  },
  "title": "User Groups",
  "description": "A list of user groups for the account."
}
object iam_user_invite
{
  "type": "object",
  "required": [
    "invited_member_id",
    "organization_id"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/iam_invite_components-schemas-identifier"
    },
    "roles": {
      "$ref": "#/components/schemas/iam_role_names"
    },
    "status": {
      "enum": [
        "pending",
        "accepted",
        "rejected",
        "expired"
      ],
      "example": "accepted",
      "description": "Current status of the invitation.",
      "x-auditable": true
    },
    "expires_on": {
      "$ref": "#/components/schemas/iam_schemas-expires_on"
    },
    "invited_by": {
      "$ref": "#/components/schemas/iam_invited_by"
    },
    "invited_on": {
      "$ref": "#/components/schemas/iam_invited_on"
    },
    "organization_id": {
      "type": "string",
      "example": "5a7805061c76ada191ed06f989cc3dac",
      "readOnly": true,
      "maxLength": 32,
      "description": "ID of the organization the user will be added to.",
      "x-auditable": true
    },
    "invited_member_id": {
      "type": "string",
      "example": "5a7805061c76ada191ed06f989cc3dac",
      "nullable": true,
      "readOnly": true,
      "maxLength": 32,
      "description": "ID of the user to add to the organization.",
      "x-auditable": true
    },
    "organization_name": {
      "type": "string",
      "example": "Cloudflare, Inc.",
      "readOnly": true,
      "maxLength": 100,
      "description": "Organization name.",
      "x-auditable": true
    },
    "invited_member_email": {
      "$ref": "#/components/schemas/iam_invited_member_email"
    },
    "organization_is_enforcing_twofactor": {
      "type": "boolean",
      "example": true,
      "x-auditable": true
    }
  }
}
string iam_value
{
  "type": "string",
  "example": "8M7wS6hCpXVc-DoRnPPY_UCWPgy8aea4Wy6kCe5T",
  "readOnly": true,
  "maxLength": 80,
  "minLength": 40,
  "description": "The token value.",
  "x-sensitive": true
}
string iam_zipcode
{
  "type": "string",
  "example": "12345",
  "nullable": true,
  "maxLength": 20,
  "description": "The zipcode or postal code where the user lives."
}
string images_account_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "readOnly": true,
  "maxLength": 32,
  "description": "Account identifier tag.",
  "x-auditable": true
}
object images_api-response-collection-v2
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/images_api-response-common"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "continuation_token": {
              "$ref": "#/components/schemas/images_images_list_continuation_token"
            }
          }
        }
      }
    }
  ]
}
object images_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/images_messages"
    },
    "result": {
      "anyOf": [
        {
          "type": "object"
        },
        {
          "type": "array",
          "items": {}
        },
        {
          "type": "string"
        }
      ]
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful",
      "x-auditable": true
    },
    "messages": {
      "$ref": "#/components/schemas/images_messages"
    }
  }
}
object images_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/images_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful",
      "x-auditable": true
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/images_messages"
        }
      ],
      "example": []
    }
  }
}
object images_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/images_api-response-common"
    },
    {
      "properties": {
        "result": {
          "anyOf": [
            {
              "type": "object"
            },
            {
              "type": "string"
            }
          ]
        }
      }
    }
  ]
}
object images_deleted_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/images_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "example": {}
        }
      }
    }
  ]
}
object images_image
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/images_image_identifier"
    },
    "meta": {
      "$ref": "#/components/schemas/images_image_metadata"
    },
    "creator": {
      "$ref": "#/components/schemas/images_image_creator"
    },
    "filename": {
      "$ref": "#/components/schemas/images_image_filename"
    },
    "uploaded": {
      "$ref": "#/components/schemas/images_image_uploaded"
    },
    "variants": {
      "$ref": "#/components/schemas/images_image_variants"
    },
    "requireSignedURLs": {
      "$ref": "#/components/schemas/images_image_requireSignedURLs"
    }
  }
}
object images_image_basic_upload
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "An optional custom unique identifier for your image.",
      "x-auditable": true
    },
    "url": {
      "type": "string",
      "example": "https://example.com/path/to/logo.png",
      "description": "A URL to fetch an image from origin. Only needed when type is uploading from a URL.",
      "x-auditable": true
    },
    "file": {
      "type": "string",
      "format": "binary",
      "description": "An image binary data. Only needed when type is uploading a file.",
      "x-auditable": true
    },
    "creator": {
      "type": "string",
      "maxLength": 1024,
      "description": "Can set the creator field with an internal user ID."
    },
    "metadata": {
      "type": "object",
      "description": "User modifiable key-value store. Can use used for keeping references to another system of record for managing images."
    },
    "requireSignedURLs": {
      "type": "boolean",
      "default": false,
      "example": true,
      "description": "Indicates whether the image requires a signature token for the access.",
      "x-auditable": true
    }
  }
}
string images_image_creator
{
  "type": "string",
  "example": "107b9558-dd06-4bbd-5fef-9c2c16bb7900",
  "nullable": true,
  "maxLength": 1024,
  "description": "Can set the creator field with an internal user ID.",
  "x-auditable": true
}
object images_image_direct_upload_request_v2
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "example": "this/is/my-customid",
      "maxLength": 1024,
      "description": "Optional Image Custom ID. Up to 1024 chars. Can include any number of subpaths, and utf8 characters. Cannot start nor end with a / (forward slash). Cannot be a UUID.",
      "x-auditable": true
    },
    "expiry": {
      "type": "string",
      "format": "date-time",
      "default": "Now + 30 minutes",
      "example": "2021-01-02T02:20:00Z",
      "description": "The date after which the upload will not be accepted. Minimum: Now + 2 minutes. Maximum: Now + 6 hours.",
      "x-auditable": true
    },
    "creator": {
      "type": "string",
      "description": "Can set the creator field with an internal user ID."
    },
    "metadata": {
      "type": "object",
      "description": "User modifiable key-value store. Can be used for keeping references to another system of record, for managing images."
    },
    "requireSignedURLs": {
      "type": "boolean",
      "default": false,
      "example": true,
      "description": "Indicates whether the image requires a signature token to be accessed.",
      "x-auditable": true
    }
  }
}
object images_image_direct_upload_response_v2
{
  "allOf": [
    {
      "$ref": "#/components/schemas/images_api-response-single"
    },
    {
      "properties": {
        "result": {
          "properties": {
            "id": {
              "type": "string",
              "example": "e22e9e6b-c02b-42fd-c405-6c32af5fe600",
              "readOnly": true,
              "maxLength": 32,
              "description": "Image unique identifier.",
              "x-auditable": true
            },
            "uploadURL": {
              "type": "string",
              "example": "https://upload.imagedelivery.net/FxUufywByo0m2v3xhKSiU8/e22e9e6b-c02b-42fd-c405-6c32af5fe600",
              "description": "The URL the unauthenticated upload can be performed to using a single HTTP POST (multipart/form-data) request.",
              "x-auditable": true
            }
          }
        }
      }
    }
  ]
}
string images_image_filename
{
  "type": "string",
  "example": "logo.png",
  "readOnly": true,
  "maxLength": 255,
  "description": "Image file name.",
  "x-auditable": true
}
string images_image_hero_url
{
  "type": "string",
  "format": "uri",
  "example": "https://imagedelivery.net/MTt4OTd0b0w5aj/107b9558-dd06-4bbd-5fef-9c2c16bb7900/hero",
  "readOnly": true,
  "description": "URI to hero variant for an image.",
  "x-auditable": true
}
string images_image_identifier
{
  "type": "string",
  "example": "107b9558-dd06-4bbd-5fef-9c2c16bb7900",
  "readOnly": true,
  "maxLength": 32,
  "description": "Image unique identifier.",
  "x-auditable": true
}
string images_image_key_name
{
  "type": "string",
  "example": "default",
  "readOnly": true,
  "description": "Key name.",
  "x-auditable": true
}
object images_image_key_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/images_api-response-common"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/images_image_keys_response"
        }
      }
    }
  ]
}
string images_image_key_value
{
  "type": "string",
  "example": "Oix0bbNaT8Rge9PuyxUBrjI6zrgnsyJ5=",
  "readOnly": true,
  "description": "Key value.",
  "x-auditable": true
}
object images_image_keys
{
  "type": "object",
  "properties": {
    "name": {
      "$ref": "#/components/schemas/images_image_key_name"
    },
    "value": {
      "$ref": "#/components/schemas/images_image_key_value"
    }
  }
}
object images_image_keys_response
{
  "type": "object",
  "properties": {
    "keys": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/images_image_keys"
      }
    }
  }
}
object images_image_metadata
{
  "type": "object",
  "example": {
    "key": "value"
  },
  "description": "User modifiable key-value store. Can be used for keeping references to another system of record for managing images. Metadata must not exceed 1024 bytes."
}
string images_image_original_url
{
  "type": "string",
  "format": "uri",
  "example": "https://imagedelivery.net/MTt4OTd0b0w5aj/107b9558-dd06-4bbd-5fef-9c2c16bb7900/original",
  "readOnly": true,
  "description": "URI to original variant for an image.",
  "x-auditable": true
}
object images_image_patch_request
{
  "type": "object",
  "properties": {
    "creator": {
      "type": "string",
      "description": "Can set the creator field with an internal user ID."
    },
    "metadata": {
      "type": "object",
      "description": "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": {
      "type": "boolean",
      "example": true,
      "description": "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.",
      "x-auditable": true
    }
  }
}
boolean images_image_requireSignedURLs
{
  "type": "boolean",
  "default": false,
  "example": true,
  "description": "Indicates whether the image can be a accessed only using it's UID. If set to true, a signed token needs to be generated with a signing key to view the image.",
  "x-auditable": true
}
object images_image_response_blob
{
  "anyOf": [
    {
      "type": "string"
    },
    {
      "type": "object"
    }
  ],
  "example": "<image blob data>"
}
object images_image_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/images_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/images_image"
        }
      }
    }
  ]
}
string images_image_thumbnail_url
{
  "type": "string",
  "format": "uri",
  "example": "https://imagedelivery.net/MTt4OTd0b0w5aj/107b9558-dd06-4bbd-5fef-9c2c16bb7900/thumbnail",
  "readOnly": true,
  "description": "URI to thumbnail variant for an image.",
  "x-auditable": true
}
string images_image_uploaded
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-02T02:20:00.123Z",
  "readOnly": true,
  "description": "When the media item was uploaded.",
  "x-auditable": true
}
object images_image_variant_definition
{
  "type": "object",
  "required": [
    "id",
    "options"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/images_image_variant_identifier"
    },
    "options": {
      "$ref": "#/components/schemas/images_image_variant_options"
    },
    "neverRequireSignedURLs": {
      "$ref": "#/components/schemas/images_image_variant_neverRequireSignedURLs"
    }
  }
}
string images_image_variant_fit
{
  "enum": [
    "scale-down",
    "contain",
    "cover",
    "crop",
    "pad"
  ],
  "type": "string",
  "example": "scale-down",
  "description": "The fit property describes how the width and height dimensions should be interpreted.",
  "x-auditable": true
}
object images_image_variant_flat_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/images_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/images_image_variant_definition"
        }
      }
    }
  ]
}
number images_image_variant_height
{
  "type": "number",
  "example": 768,
  "minimum": 1,
  "description": "Maximum height in image pixels.",
  "x-auditable": true
}
string images_image_variant_identifier
{
  "type": "string",
  "example": "hero",
  "pattern": "^[a-zA-Z0-9]$",
  "maxLength": 99,
  "x-auditable": true
}
object images_image_variant_list_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/images_api-response-common"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/images_image_variants_response"
        }
      }
    }
  ]
}
boolean images_image_variant_neverRequireSignedURLs
{
  "type": "boolean",
  "default": false,
  "example": true,
  "description": "Indicates whether the variant can access an image without a signature, regardless of image access control.",
  "x-auditable": true
}
object images_image_variant_options
{
  "type": "object",
  "required": [
    "fit",
    "metadata",
    "width",
    "height"
  ],
  "properties": {
    "fit": {
      "$ref": "#/components/schemas/images_image_variant_fit"
    },
    "width": {
      "$ref": "#/components/schemas/images_image_variant_width"
    },
    "height": {
      "$ref": "#/components/schemas/images_image_variant_height"
    },
    "metadata": {
      "$ref": "#/components/schemas/images_image_variant_schemas_metadata"
    }
  },
  "description": "Allows you to define image resizing sizes for different use cases."
}
object images_image_variant_patch_request
{
  "type": "object",
  "required": [
    "options"
  ],
  "properties": {
    "options": {
      "$ref": "#/components/schemas/images_image_variant_options"
    },
    "neverRequireSignedURLs": {
      "$ref": "#/components/schemas/images_image_variant_neverRequireSignedURLs"
    }
  }
}
object images_image_variant_public_request
{
  "type": "object",
  "properties": {
    "hero": {
      "type": "object",
      "required": [
        "id",
        "options"
      ],
      "properties": {
        "id": {
          "$ref": "#/components/schemas/images_image_variant_identifier"
        },
        "options": {
          "$ref": "#/components/schemas/images_image_variant_options"
        },
        "neverRequireSignedURLs": {
          "$ref": "#/components/schemas/images_image_variant_neverRequireSignedURLs"
        }
      }
    }
  }
}
object images_image_variant_response
{
  "type": "object",
  "properties": {
    "variant": {
      "$ref": "#/components/schemas/images_image_variant_definition"
    }
  }
}
string images_image_variant_schemas_metadata
{
  "enum": [
    "keep",
    "copyright",
    "none"
  ],
  "type": "string",
  "example": "none",
  "description": "What EXIF data should be preserved in the output image.",
  "x-auditable": true
}
object images_image_variant_simple_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/images_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/images_image_variant_response"
        }
      }
    }
  ]
}
number images_image_variant_width
{
  "type": "number",
  "example": 1366,
  "minimum": 1,
  "description": "Maximum width in image pixels.",
  "x-auditable": true
}
array images_image_variants
{
  "type": "array",
  "items": {
    "anyOf": [
      {
        "$ref": "#/components/schemas/images_image_thumbnail_url"
      },
      {
        "$ref": "#/components/schemas/images_image_hero_url"
      },
      {
        "$ref": "#/components/schemas/images_image_original_url"
      }
    ]
  },
  "example": [
    "https://imagedelivery.net/MTt4OTd0b0w5aj/107b9558-dd06-4bbd-5fef-9c2c16bb7900/thumbnail",
    "https://imagedelivery.net/MTt4OTd0b0w5aj/107b9558-dd06-4bbd-5fef-9c2c16bb7900/hero",
    "https://imagedelivery.net/MTt4OTd0b0w5aj/107b9558-dd06-4bbd-5fef-9c2c16bb7900/original"
  ],
  "readOnly": true,
  "description": "Object specifying available variants for an image."
}
object images_image_variants_response
{
  "type": "object",
  "properties": {
    "variants": {
      "$ref": "#/components/schemas/images_image_variant_public_request"
    }
  }
}
string images_images_list_continuation_token
{
  "type": "string",
  "example": "iD0bxlWFSVUWsDHbzIqvDkgBW4otifAAuGXLz1n8BQA",
  "nullable": true,
  "readOnly": true,
  "maxLength": 32,
  "description": "Continuation token to fetch next page. Passed as a query param when requesting List V2 api endpoint.",
  "x-auditable": true
}
object images_images_list_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/images_api-response-common"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "images": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/images_image"
              }
            }
          }
        }
      }
    }
  ]
}
object images_images_list_response_v2
{
  "allOf": [
    {
      "$ref": "#/components/schemas/images_api-response-collection-v2"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "images": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/images_image"
              }
            }
          }
        }
      }
    }
  ]
}
object images_images_stats
{
  "type": "object",
  "properties": {
    "count": {
      "$ref": "#/components/schemas/images_images_stats_count"
    }
  }
}
number images_images_stats_allowed
{
  "type": "number",
  "example": 100000,
  "readOnly": true,
  "description": "Cloudflare Images allowed usage.",
  "x-auditable": true
}
object images_images_stats_count
{
  "type": "object",
  "properties": {
    "allowed": {
      "$ref": "#/components/schemas/images_images_stats_allowed"
    },
    "current": {
      "$ref": "#/components/schemas/images_images_stats_current"
    }
  }
}
number images_images_stats_current
{
  "type": "number",
  "example": 1000,
  "readOnly": true,
  "description": "Cloudflare Images current usage.",
  "x-auditable": true
}
object images_images_stats_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/images_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/images_images_stats"
        }
      }
    }
  ]
}
array images_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000,
        "x-auditable": true
      },
      "message": {
        "type": "string",
        "x-auditable": true
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string images_signing_key_identifier
{
  "type": "string",
  "example": "someKey",
  "pattern": "^[a-zA-Z0-9]$",
  "maxLength": 20,
  "x-auditable": true
}
string infra_AccountTag
{
  "type": "string",
  "title": "account_id",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Account identifier"
}
object infra_ApiTlsSettings
{
  "type": "object",
  "required": [
    "cert_verification_mode"
  ],
  "properties": {
    "cert_verification_mode": {
      "type": "string",
      "example": "verify_full",
      "description": "TLS certificate verification mode for the connection to the origin.\n\n- `\"verify_full\"` — verify certificate chain and hostname (default)\n- `\"verify_ca\"` — verify certificate chain only, skip hostname check\n- `\"disabled\"` — do not verify the server certificate at all"
    }
  },
  "description": "TLS settings for a connectivity service.\n\nIf omitted, the default mode (`verify_full`) is used."
}
array infra_ConnectivityServiceArray
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/infra_ServiceConfig"
  }
}
object infra_DualStackHost
{
  "type": "object",
  "example": {
    "ipv4": "10.0.0.1",
    "ipv6": "fe80::1",
    "network": {
      "tunnel_id": "0191dce4-9ab4-7fce-b660-8e5dec5172da"
    }
  },
  "required": [
    "ipv4",
    "ipv6",
    "network"
  ],
  "properties": {
    "ipv4": {
      "type": "string",
      "example": "10.0.0.1"
    },
    "ipv6": {
      "type": "string",
      "example": "fe80::1"
    },
    "network": {
      "$ref": "#/components/schemas/infra_Network"
    }
  }
}
object infra_HostnameHost
{
  "type": "object",
  "example": {
    "hostname": "example.com",
    "resolver_network": {
      "tunnel_id": "0191dce4-9ab4-7fce-b660-8e5dec5172da",
      "resolver_ips": [
        "10.0.0.1"
      ]
    }
  },
  "required": [
    "hostname",
    "resolver_network"
  ],
  "properties": {
    "hostname": {
      "type": "string",
      "example": "example.com"
    },
    "resolver_network": {
      "$ref": "#/components/schemas/infra_ResolverNetwork"
    }
  }
}
object infra_HttpServiceConfig
{
  "allOf": [
    {
      "$ref": "#/components/schemas/infra_ServiceCommon"
    },
    {
      "type": "object",
      "properties": {
        "http_port": {
          "type": "integer",
          "format": "int32",
          "example": 8080,
          "minimum": 1,
          "nullable": true
        },
        "https_port": {
          "type": "integer",
          "format": "int32",
          "example": 8443,
          "minimum": 1,
          "nullable": true
        }
      }
    }
  ],
  "example": {
    "host": {
      "ipv4": "10.0.0.1",
      "network": {
        "tunnel_id": "0191dce4-9ab4-7fce-b660-8e5dec5172da"
      }
    },
    "name": "web-app",
    "type": "http",
    "http_port": 8080,
    "https_port": 8443
  }
}
object infra_IPInfo
{
  "type": "object",
  "properties": {
    "ipv4": {
      "type": "object",
      "properties": {
        "ip_addr": {
          "type": "string",
          "example": "187.26.29.249",
          "description": "IP address of the target",
          "x-auditable": true
        },
        "virtual_network_id": {
          "type": "string",
          "format": "uuid",
          "example": "c77b744e-acc8-428f-9257-6878c046ed55",
          "description": "(optional) Private virtual network identifier for the target. If omitted, the default virtual network ID will be used.",
          "x-auditable": true,
          "x-stainless-terraform-configurability": "computed_optional"
        }
      },
      "description": "The target's IPv4 address"
    },
    "ipv6": {
      "type": "object",
      "properties": {
        "ip_addr": {
          "type": "string",
          "example": "64c0:64e8:f0b4:8dbf:7104:72b0:ec8f:f5e0",
          "description": "IP address of the target",
          "x-auditable": true
        },
        "virtual_network_id": {
          "type": "string",
          "format": "uuid",
          "example": "c77b744e-acc8-428f-9257-6878c046ed55",
          "description": "(optional) Private virtual network identifier for the target. If omitted, the default virtual network ID will be used.",
          "x-auditable": true,
          "x-stainless-terraform-configurability": "computed_optional"
        }
      },
      "description": "The target's IPv6 address"
    }
  },
  "description": "The IPv4/IPv6 address that identifies where to reach a target"
}
object infra_IPv4Host
{
  "type": "object",
  "example": {
    "ipv4": "10.0.0.1",
    "network": {
      "tunnel_id": "0191dce4-9ab4-7fce-b660-8e5dec5172da"
    }
  },
  "required": [
    "ipv4",
    "network"
  ],
  "properties": {
    "ipv4": {
      "type": "string",
      "example": "10.0.0.1"
    },
    "network": {
      "$ref": "#/components/schemas/infra_Network"
    }
  }
}
object infra_IPv6Host
{
  "type": "object",
  "example": {
    "ipv6": "fe80::1",
    "network": {
      "tunnel_id": "0191dce4-9ab4-7fce-b660-8e5dec5172da"
    }
  },
  "required": [
    "ipv6",
    "network"
  ],
  "properties": {
    "ipv6": {
      "type": "string",
      "example": "fe80::1"
    },
    "network": {
      "$ref": "#/components/schemas/infra_Network"
    }
  }
}
object infra_Network
{
  "type": "object",
  "required": [
    "tunnel_id"
  ],
  "properties": {
    "tunnel_id": {
      "type": "string",
      "format": "uuid",
      "example": "0191dce4-9ab4-7fce-b660-8e5dec5172da"
    }
  }
}
object infra_ResolverNetwork
{
  "type": "object",
  "required": [
    "tunnel_id"
  ],
  "properties": {
    "tunnel_id": {
      "type": "string",
      "format": "uuid",
      "example": "0191dce4-9ab4-7fce-b660-8e5dec5172da"
    },
    "resolver_ips": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "nullable": true
    }
  }
}
object infra_ServiceCommon
{
  "type": "object",
  "required": [
    "name",
    "type",
    "host"
  ],
  "properties": {
    "host": {
      "$ref": "#/components/schemas/infra_ServiceHost"
    },
    "name": {
      "type": "string",
      "example": "web-server"
    },
    "type": {
      "$ref": "#/components/schemas/infra_ServiceType"
    },
    "created_at": {
      "type": "string",
      "format": "date-time",
      "example": "2024-01-15T09:30:00Z",
      "readOnly": true
    },
    "service_id": {
      "type": "string",
      "format": "uuid",
      "example": "550e8400-e29b-41d4-a716-446655440000",
      "readOnly": true
    },
    "updated_at": {
      "type": "string",
      "format": "date-time",
      "example": "2024-01-15T10:45:00Z",
      "readOnly": true
    },
    "tls_settings": {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/infra_ApiTlsSettings"
        }
      ],
      "nullable": true
    }
  }
}
object infra_ServiceConfig
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/infra_HttpServiceConfig"
    },
    {
      "$ref": "#/components/schemas/infra_TcpServiceConfig"
    }
  ],
  "discriminator": {
    "mapping": {
      "tcp": "#/components/schemas/infra_TcpServiceConfig",
      "http": "#/components/schemas/infra_HttpServiceConfig"
    },
    "propertyName": "type"
  }
}
object infra_ServiceHost
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/infra_IPv4Host"
    },
    {
      "$ref": "#/components/schemas/infra_IPv6Host"
    },
    {
      "$ref": "#/components/schemas/infra_DualStackHost"
    },
    {
      "$ref": "#/components/schemas/infra_HostnameHost"
    }
  ]
}
string infra_ServiceType
{
  "enum": [
    "tcp",
    "http"
  ],
  "type": "string"
}
string infra_SortingDirection
{
  "enum": [
    "asc",
    "desc"
  ],
  "type": "string"
}
object infra_Target
{
  "type": "object",
  "required": [
    "id",
    "hostname",
    "ip",
    "created_at",
    "modified_at"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/infra_TargetId"
    },
    "ip": {
      "$ref": "#/components/schemas/infra_IPInfo"
    },
    "hostname": {
      "type": "string",
      "example": "infra-access-target",
      "description": "A non-unique field that refers to a target"
    },
    "created_at": {
      "type": "string",
      "format": "date-time",
      "example": "2019-08-24T14:15:22Z",
      "description": "Date and time at which the target was created"
    },
    "modified_at": {
      "type": "string",
      "format": "date-time",
      "example": "2019-08-24T14:15:22Z",
      "description": "Date and time at which the target was modified"
    }
  }
}
array infra_TargetArray
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/infra_Target"
  }
}
string infra_TargetId
{
  "type": "string",
  "title": "target_id",
  "format": "uuid",
  "example": "0191dce4-9ab4-7fce-b660-8e5dec5172da",
  "maxLength": 36,
  "description": "Target identifier",
  "x-auditable": true
}
object infra_TcpServiceConfig
{
  "allOf": [
    {
      "$ref": "#/components/schemas/infra_ServiceCommon"
    },
    {
      "type": "object",
      "properties": {
        "tcp_port": {
          "type": "integer",
          "format": "int32",
          "example": 5432,
          "minimum": 1,
          "nullable": true
        },
        "app_protocol": {
          "enum": [
            "postgresql",
            "mysql"
          ],
          "type": "string",
          "example": "postgresql",
          "nullable": true
        }
      }
    }
  ],
  "example": {
    "host": {
      "ipv4": "10.0.0.1",
      "network": {
        "tunnel_id": "0191dce4-9ab4-7fce-b660-8e5dec5172da"
      }
    },
    "name": "postgres-db",
    "type": "tcp",
    "tcp_port": 5432
  }
}
object infra_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/infra_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result_info": {
          "type": "object",
          "properties": {
            "page": {
              "type": "number",
              "example": 1,
              "description": "Current page within paginated list of results."
            },
            "count": {
              "type": "number",
              "example": 1,
              "description": "Total number of results for the requested service."
            },
            "per_page": {
              "type": "number",
              "example": 20,
              "description": "Number of results per page of results."
            },
            "total_count": {
              "type": "number",
              "example": 2000,
              "description": "Total results available without any search parameters."
            },
            "total_pages": {
              "type": "number",
              "example": 100,
              "description": "The number of total pages in the entire result set."
            }
          }
        }
      }
    }
  ]
}
object infra_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/infra_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/infra_messages"
    }
  }
}
object infra_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/infra_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/infra_messages"
        }
      ],
      "example": []
    }
  }
}
object infra_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/infra_api-response-common"
    }
  ]
}
array infra_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
object intel-sinkholes_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/intel-sinkholes_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/intel-sinkholes_messages"
    }
  }
}
object intel-sinkholes_empty_object_response
{
  "type": "object"
}
object intel-sinkholes_get_sinkholes_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/intel-sinkholes_api-response-common"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/intel-sinkholes_sinkhole_item"
          },
          "example": [
            {
              "id": 1,
              "name": "sinkhole_1",
              "r2_id": "<r2_id>",
              "r2_bucket": "my_bucket",
              "created_on": "2023-05-12T12:21:56.777653Z",
              "account_tag": "233f45e61fd1f7e21e1e154ede4q2859",
              "description": "user specified description 1",
              "modified_on": "2023-06-18T03:13:34.123321Z"
            },
            {
              "id": 2,
              "name": "sinkhole_1",
              "r2_id": "<r2_id>",
              "r2_bucket": "my_bucket",
              "created_on": "2023-05-21T21:43:52.867525Z",
              "account_tag": "233f45e61fd1f7e21e1e154ede4q2859",
              "description": "user specified description 2",
              "modified_on": "2023-06-28T18:46:18.764425Z"
            }
          ]
        }
      }
    }
  ]
}
integer intel-sinkholes_id
{
  "type": "integer",
  "description": "The unique identifier for the sinkhole"
}
string intel-sinkholes_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "readOnly": true,
  "maxLength": 32,
  "description": "Identifier"
}
array intel-sinkholes_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string intel-sinkholes_name
{
  "type": "string",
  "description": "The name of the sinkhole"
}
object intel-sinkholes_sinkhole_item
{
  "example": {
    "id": 1,
    "name": "sinkhole_1",
    "r2_id": "<r2_id>",
    "r2_bucket": "my_bucket",
    "created_on": "2023-05-12T12:21:56.777653Z",
    "account_tag": "233f45e61fd1f7e21e1e154ede4q2859",
    "description": "user specified description 1",
    "modified_on": "2023-06-18T03:13:34.123321Z"
  },
  "properties": {
    "id": {
      "$ref": "#/components/schemas/intel-sinkholes_id"
    },
    "name": {
      "$ref": "#/components/schemas/intel-sinkholes_name"
    },
    "r2_id": {
      "type": "string",
      "description": "The id of the R2 instance"
    },
    "r2_bucket": {
      "type": "string",
      "description": "The name of the R2 bucket to store results"
    },
    "created_on": {
      "type": "string",
      "format": "date-time",
      "description": "The date and time when the sinkhole was created"
    },
    "account_tag": {
      "type": "string",
      "description": "The account tag that owns this sinkhole"
    },
    "modified_on": {
      "type": "string",
      "format": "date-time",
      "description": "The date and time when the sinkhole was last modified"
    }
  }
}
object intel_additional_information
{
  "type": "object",
  "properties": {
    "suspected_malware_family": {
      "type": "string",
      "example": "",
      "description": "Suspected DGA malware family.",
      "x-auditable": true
    }
  },
  "description": "Additional information related to the host name."
}
object intel_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/intel_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "object"
              }
            ]
          },
          "nullable": true
        },
        "result_info": {
          "$ref": "#/components/schemas/intel_result_info"
        }
      }
    }
  ]
}
object intel_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/intel_messages"
    },
    "result": {
      "anyOf": [
        {
          "type": "object"
        },
        {
          "type": "array",
          "items": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "object"
              }
            ]
          }
        },
        {
          "type": "string"
        }
      ]
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/intel_messages"
    }
  }
}
object intel_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/intel_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/intel_messages"
        }
      ],
      "example": []
    }
  }
}
object intel_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/intel_schemas-api-response-common"
    }
  ]
}
object intel_application
{
  "type": "object",
  "properties": {
    "id": {
      "type": "integer",
      "x-auditable": true
    },
    "name": {
      "type": "string",
      "example": "CLOUDFLARE",
      "x-auditable": true
    }
  },
  "description": "Application that the hostname belongs to."
}
integer intel_asn
{
  "type": "integer",
  "x-auditable": true
}
object intel_asn_components-schemas-response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/intel_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/intel_asn"
        }
      }
    }
  ]
}
string intel_asn_country
{
  "type": "string",
  "example": "US",
  "x-auditable": true
}
string intel_asn_description
{
  "type": "string",
  "example": "CLOUDFLARENET",
  "x-auditable": true
}
string intel_asn_type
{
  "enum": [
    "hosting_provider",
    "isp",
    "organization"
  ],
  "type": "string",
  "example": "hosting_provider",
  "description": "Infrastructure type of this ASN.",
  "x-auditable": true
}
array intel_categories_with_super_category_ids_example_empty
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/intel_category_with_super_category_id"
  },
  "example": []
}
object intel_category_with_super_category_id
{
  "type": "object",
  "properties": {
    "id": {
      "type": "integer",
      "x-auditable": true
    },
    "name": {
      "type": "string",
      "x-auditable": true
    },
    "super_category_id": {
      "type": "integer",
      "x-auditable": true
    }
  }
}
object intel_collection_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/intel_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "domain": {
                "$ref": "#/components/schemas/intel_domain_name"
              },
              "risk_score": {
                "$ref": "#/components/schemas/intel_risk_score"
              },
              "risk_types": {
                "$ref": "#/components/schemas/intel_categories_with_super_category_ids_example_empty"
              },
              "application": {
                "$ref": "#/components/schemas/intel_application"
              },
              "inherited_from": {
                "$ref": "#/components/schemas/intel_inherited_from"
              },
              "popularity_rank": {
                "$ref": "#/components/schemas/intel_popularity_rank"
              },
              "content_categories": {
                "$ref": "#/components/schemas/intel_content_categories"
              },
              "inherited_risk_types": {
                "$ref": "#/components/schemas/intel_categories_with_super_category_ids_example_empty"
              },
              "additional_information": {
                "$ref": "#/components/schemas/intel_additional_information"
              },
              "inherited_content_categories": {
                "$ref": "#/components/schemas/intel_categories_with_super_category_ids_example_empty"
              }
            }
          }
        }
      }
    }
  ]
}
object intel_components-schemas-response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/intel_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/intel_ip-list"
          }
        }
      }
    }
  ]
}
object intel_components-schemas-single_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/intel_schemas-api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/intel_passive-dns-by-ip"
        }
      }
    }
  ]
}
array intel_content_categories
{
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "id": {
        "type": "integer",
        "x-auditable": true
      },
      "name": {
        "type": "string",
        "x-auditable": true
      },
      "super_category_id": {
        "type": "integer",
        "x-auditable": true
      }
    },
    "description": "Current content categories."
  },
  "example": [
    {
      "id": 155,
      "name": "Technology",
      "super_category_id": 26
    }
  ]
}
number intel_count
{
  "type": "number",
  "example": 1,
  "description": "Total results returned based on your search parameters."
}
object intel_domain
{
  "type": "object",
  "properties": {
    "domain": {
      "$ref": "#/components/schemas/intel_domain_name"
    },
    "risk_score": {
      "$ref": "#/components/schemas/intel_risk_score"
    },
    "risk_types": {
      "$ref": "#/components/schemas/intel_categories_with_super_category_ids_example_empty"
    },
    "application": {
      "$ref": "#/components/schemas/intel_application"
    },
    "inherited_from": {
      "$ref": "#/components/schemas/intel_inherited_from"
    },
    "popularity_rank": {
      "$ref": "#/components/schemas/intel_popularity_rank"
    },
    "resolves_to_refs": {
      "$ref": "#/components/schemas/intel_resolves_to_refs"
    },
    "content_categories": {
      "$ref": "#/components/schemas/intel_content_categories"
    },
    "inherited_risk_types": {
      "$ref": "#/components/schemas/intel_categories_with_super_category_ids_example_empty"
    },
    "additional_information": {
      "$ref": "#/components/schemas/intel_additional_information"
    },
    "inherited_content_categories": {
      "$ref": "#/components/schemas/intel_categories_with_super_category_ids_example_empty"
    }
  }
}
object intel_domain-history
{
  "type": "object",
  "properties": {
    "domain": {
      "$ref": "#/components/schemas/intel_domain_name"
    },
    "categorizations": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "end": {
            "type": "string",
            "format": "date",
            "example": "2021-04-30",
            "x-auditable": true
          },
          "start": {
            "type": "string",
            "format": "date",
            "example": "2021-04-01",
            "x-auditable": true
          },
          "categories": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "integer",
                  "example": 155
                },
                "name": {
                  "type": "string",
                  "example": "Technology"
                }
              }
            },
            "example": [
              {
                "id": 155,
                "name": "Technology"
              }
            ]
          }
        }
      }
    }
  }
}
string intel_domain_name
{
  "type": "string",
  "example": "cloudflare.com",
  "x-auditable": true
}
string intel_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "readOnly": true,
  "maxLength": 32,
  "description": "Identifier.",
  "x-auditable": true
}
object intel_inherited_content_categories
{
  "$ref": "#/components/schemas/intel_categories_with_super_category_ids_example_empty"
}
string intel_inherited_from
{
  "type": "string",
  "description": "Domain from which `inherited_content_categories` and `inherited_risk_types` are inherited, if applicable.",
  "x-auditable": true
}
object intel_inherited_risk_types
{
  "$ref": "#/components/schemas/intel_categories_with_super_category_ids_example_empty"
}
string intel_ip
{
  "type": "string",
  "anyOf": [
    {
      "$ref": "#/components/schemas/intel_ipv4"
    },
    {
      "$ref": "#/components/schemas/intel_ipv6"
    }
  ],
  "x-auditable": true
}
object intel_ip-list
{
  "type": "object",
  "properties": {
    "id": {
      "type": "integer",
      "x-auditable": true
    },
    "name": {
      "type": "string",
      "example": "Malware",
      "x-auditable": true
    },
    "description": {
      "type": "string",
      "x-auditable": true
    }
  }
}
string intel_ipv4
{
  "type": "string",
  "format": "ipv4",
  "example": "192.0.2.0",
  "x-auditable": true
}
string intel_ipv6
{
  "type": "string",
  "format": "ipv6",
  "example": "2001:0DB8::",
  "x-auditable": true
}
array intel_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "message": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
object intel_miscategorization
{
  "type": "object",
  "properties": {
    "ip": {
      "type": "string",
      "nullable": true,
      "description": "Provide only if indicator_type is `ipv4` or `ipv6`.",
      "x-auditable": true
    },
    "url": {
      "type": "string",
      "description": "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/`.",
      "x-auditable": true
    },
    "content_adds": {
      "type": "array",
      "items": {
        "type": "integer",
        "x-auditable": true
      },
      "example": [
        82
      ],
      "description": "Content category IDs to add."
    },
    "security_adds": {
      "type": "array",
      "items": {
        "type": "integer",
        "x-auditable": true
      },
      "example": [
        117,
        131
      ],
      "description": "Security category IDs to add."
    },
    "indicator_type": {
      "enum": [
        "domain",
        "ipv4",
        "ipv6",
        "url"
      ],
      "type": "string",
      "example": "domain",
      "x-auditable": true
    },
    "content_removes": {
      "type": "array",
      "items": {
        "type": "integer",
        "x-auditable": true
      },
      "example": [
        155
      ],
      "description": "Content category IDs to remove."
    },
    "security_removes": {
      "type": "array",
      "items": {
        "type": "integer",
        "x-auditable": true
      },
      "example": [
        83
      ],
      "description": "Security category IDs to remove."
    }
  }
}
number intel_page
{
  "type": "number",
  "example": 1,
  "description": "Current page within paginated list of results."
}
object intel_passive-dns-by-ip
{
  "type": "object",
  "properties": {
    "page": {
      "type": "number",
      "example": 1,
      "description": "Current page within paginated list of results."
    },
    "count": {
      "type": "number",
      "example": 1,
      "description": "Total results returned based on your search parameters."
    },
    "per_page": {
      "type": "number",
      "example": 20,
      "description": "Number of results per page of results."
    },
    "reverse_records": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "hostname": {
            "type": "string",
            "description": "Hostname that the IP was observed resolving to.",
            "x-auditable": true
          },
          "last_seen": {
            "type": "string",
            "format": "date",
            "example": "2021-04-30",
            "description": "Last seen date of the DNS record during the time period.",
            "x-auditable": true
          },
          "first_seen": {
            "type": "string",
            "format": "date",
            "example": "2021-04-01",
            "description": "First seen date of the DNS record during the time period.",
            "x-auditable": true
          }
        }
      },
      "description": "Reverse DNS look-ups observed during the time period."
    }
  }
}
number intel_per_page
{
  "type": "number",
  "example": 20,
  "description": "Number of results per page of results."
}
object intel_phishing-url-info
{
  "type": "object",
  "properties": {
    "url": {
      "type": "string",
      "example": "https://www.cloudflare.com",
      "description": "URL that was submitted.",
      "x-auditable": true
    },
    "scan_status": {
      "type": "object",
      "properties": {
        "status_code": {
          "type": "integer",
          "description": "Status code that the crawler received when loading the submitted URL.",
          "x-auditable": true
        },
        "scan_complete": {
          "type": "boolean",
          "description": "For internal use."
        },
        "submission_id": {
          "type": "integer",
          "description": "ID of the most recent submission.",
          "x-auditable": true
        },
        "last_processed": {
          "type": "string",
          "example": "Wed, 26 Oct 2022 16:04:51 GMT",
          "description": "Timestamp of when the submission was processed.",
          "x-auditable": true
        }
      },
      "description": "Status of the most recent scan found."
    },
    "rule_matches": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "example": "phishkit.social_followers",
            "description": "Name of the signature that matched.",
            "x-auditable": true
          },
          "banning": {
            "type": "boolean",
            "description": "For internal use."
          },
          "blocking": {
            "type": "boolean",
            "description": "For internal use."
          },
          "description": {
            "type": "string",
            "example": "Match frequently used social followers phishing kit",
            "description": "Description of the signature that matched.",
            "x-auditable": true
          }
        }
      },
      "description": "List of signatures that matched against site content found when crawling the URL."
    },
    "model_results": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "model_name": {
            "type": "string",
            "example": "MACHINE_LEARNING_v2",
            "description": "Name of the model.",
            "x-auditable": true
          },
          "model_score": {
            "type": "number",
            "example": 0.024,
            "description": "This is the score that is outputted by the model for this submission."
          }
        }
      },
      "description": "List of model results for completed scans."
    },
    "categorizations": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "category": {
            "type": "string",
            "example": "PHISHING",
            "description": "Name of the category applied.",
            "x-auditable": true
          },
          "verification_status": {
            "type": "string",
            "example": "confirmed",
            "description": "Result of human review for this categorization.",
            "x-auditable": true
          }
        }
      },
      "description": "List of categorizations applied to this submission."
    },
    "screenshot_path": {
      "type": "string",
      "description": "For internal use."
    },
    "screenshot_download_signature": {
      "type": "string",
      "description": "For internal use."
    }
  }
}
object intel_phishing-url-info_components-schemas-single_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/intel_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/intel_phishing-url-info"
        }
      }
    }
  ]
}
object intel_phishing-url-submit
{
  "type": "object",
  "properties": {
    "skipped_urls": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "url": {
            "type": "string",
            "example": "https://www.cloudflare.com/developer-week/",
            "description": "URL that was skipped.",
            "x-auditable": true
          },
          "url_id": {
            "type": "integer",
            "example": 2,
            "description": "ID of the submission of that URL that is currently scanning.",
            "x-auditable": true
          }
        }
      },
      "description": "URLs that were skipped because the same URL is currently being scanned."
    },
    "excluded_urls": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "url": {
            "type": "string",
            "example": "https://developers.cloudflare.com",
            "description": "URL that was excluded.",
            "x-auditable": true
          }
        }
      },
      "description": "URLs that were excluded from scanning because their domain is in our no-scan list."
    },
    "submitted_urls": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "url": {
            "type": "string",
            "example": "https://www.cloudflare.com",
            "description": "URL that was submitted.",
            "x-auditable": true
          },
          "url_id": {
            "type": "integer",
            "example": 1,
            "description": "ID assigned to this URL submission. Used to retrieve scanning results.",
            "x-auditable": true
          }
        }
      },
      "description": "URLs that were successfully submitted for scanning."
    }
  }
}
object intel_phishing-url-submit_components-schemas-single_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/intel_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/intel_phishing-url-submit"
        }
      }
    }
  ]
}
integer intel_popularity_rank
{
  "type": "integer",
  "description": "Global Cloudflare 100k ranking for the last 30 days, if available for the hostname. The top ranked domain is 1, the lowest ranked domain is 100,000.",
  "x-auditable": true
}
object intel_resolves_to_ref
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/intel_stix_identifier"
    },
    "value": {
      "type": "string",
      "example": "192.0.2.0",
      "description": "IP address or domain name.",
      "x-auditable": true
    }
  }
}
array intel_resolves_to_refs
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/intel_resolves_to_ref"
  },
  "description": "Specifies a list of references to one or more IP addresses or domain names that the domain name currently resolves to."
}
object intel_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/intel_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/intel_domain-history"
          }
        }
      }
    }
  ]
}
object intel_result_info
{
  "type": "object",
  "properties": {
    "page": {
      "type": "number",
      "example": 1,
      "description": "Current page within paginated list of results."
    },
    "count": {
      "type": "number",
      "example": 1,
      "description": "Total number of results for the requested service."
    },
    "per_page": {
      "type": "number",
      "example": 20,
      "description": "Number of results per page of results."
    },
    "total_count": {
      "type": "number",
      "example": 2000,
      "description": "Total results available without any search parameters."
    }
  }
}
number intel_risk_score
{
  "type": "number",
  "description": "Hostname risk score, which is a value between 0 (lowest risk) to 1 (highest risk)."
}
object intel_risk_types
{
  "$ref": "#/components/schemas/intel_categories_with_super_category_ids_example_empty"
}
object intel_schemas-api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/intel_schemas-api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result_info": {
          "$ref": "#/components/schemas/intel_schemas-result_info"
        }
      }
    }
  ]
}
object intel_schemas-api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/intel_schemas-messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/intel_schemas-messages"
    }
  }
}
object intel_schemas-asn
{
  "type": "object",
  "properties": {
    "asn": {
      "$ref": "#/components/schemas/intel_asn"
    },
    "type": {
      "$ref": "#/components/schemas/intel_asn_type"
    },
    "country": {
      "$ref": "#/components/schemas/intel_asn_country"
    },
    "description": {
      "$ref": "#/components/schemas/intel_asn_description"
    },
    "top_domains": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "example": [
        "example.com"
      ]
    },
    "domain_count": {
      "type": "integer",
      "x-auditable": true
    }
  }
}
object intel_schemas-ip
{
  "type": "object",
  "properties": {
    "ip": {
      "$ref": "#/components/schemas/intel_ip"
    },
    "risk_types": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "number"
          },
          "name": {
            "type": "string",
            "x-auditable": true
          },
          "super_category_id": {
            "type": "number"
          }
        }
      },
      "example": [
        {
          "id": 131,
          "name": "Phishing",
          "super_category_id": 21
        }
      ]
    },
    "belongs_to_ref": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "example": "autonomous-system--2fa28d71-3549-5a38-af05-770b79ad6ea8",
          "x-auditable": true
        },
        "type": {
          "enum": [
            "hosting_provider",
            "isp",
            "organization"
          ],
          "type": "string",
          "example": "hosting_provider",
          "description": "Infrastructure type of this ASN.",
          "x-auditable": true
        },
        "value": {
          "type": "string",
          "x-auditable": true
        },
        "country": {
          "type": "string",
          "example": "US",
          "x-auditable": true
        },
        "description": {
          "type": "string",
          "example": "CLOUDFLARENET",
          "x-auditable": true
        }
      },
      "description": "Specifies a reference to the autonomous systems (AS) that the IP address belongs to."
    }
  }
}
array intel_schemas-messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
object intel_schemas-response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/intel_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/intel_schemas-ip"
          }
        }
      }
    }
  ]
}
object intel_schemas-result_info
{
  "type": "object",
  "properties": {
    "page": {
      "type": "number",
      "example": 1,
      "description": "Current page within paginated list of results."
    },
    "count": {
      "type": "number",
      "example": 1,
      "description": "Total number of results for the requested service."
    },
    "per_page": {
      "type": "number",
      "example": 20,
      "description": "Number of results per page of results."
    },
    "total_count": {
      "type": "number",
      "example": 2000,
      "description": "Total results available without any search parameters."
    }
  }
}
object intel_schemas-single_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/intel_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/intel_whois"
        }
      }
    }
  ]
}
object intel_single_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/intel_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/intel_domain"
        }
      }
    }
  ]
}
object intel_start_end_params
{
  "type": "object",
  "properties": {
    "end": {
      "type": "string",
      "format": "date",
      "example": "2021-04-30",
      "description": "Defaults to the current date.",
      "x-auditable": true
    },
    "start": {
      "type": "string",
      "format": "date",
      "example": "2021-04-01",
      "description": "Defaults to 30 days before the end parameter value.",
      "x-auditable": true
    }
  }
}
string intel_stix_identifier
{
  "type": "string",
  "example": "ipv4-addr--baa568ec-6efe-5902-be55-0663833db537",
  "description": "STIX 2.1 identifier: https://docs.oasis-open.org/cti/stix/v2.1/cs02/stix-v2.1-cs02.html#_64yvzeku5a5c.",
  "x-auditable": true
}
string intel_url
{
  "type": "string",
  "format": "uri",
  "example": "https://www.cloudflare.com",
  "description": "URL(s) to filter submissions results by.",
  "x-auditable": true
}
object intel_url_param
{
  "type": "object",
  "properties": {
    "url": {
      "$ref": "#/components/schemas/intel_url"
    }
  }
}
object intel_whois
{
  "type": "object",
  "properties": {
    "domain": {
      "$ref": "#/components/schemas/intel_domain_name"
    },
    "registrar": {
      "type": "string",
      "example": "Cloudflare, Inc.",
      "x-auditable": true
    },
    "registrant": {
      "type": "string",
      "example": "DATA REDACTED",
      "x-auditable": true
    },
    "nameservers": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "example": [
        "ns3.cloudflare.com",
        "ns4.cloudflare.com",
        "ns5.cloudflare.com",
        "ns6.cloudflare.com",
        "ns7.cloudflare.com"
      ]
    },
    "created_date": {
      "type": "string",
      "format": "date",
      "example": "2009-02-17",
      "x-auditable": true
    },
    "updated_date": {
      "type": "string",
      "format": "date",
      "example": "2017-05-24",
      "x-auditable": true
    },
    "registrant_org": {
      "type": "string",
      "example": "DATA REDACTED",
      "x-auditable": true
    },
    "registrant_email": {
      "type": "string",
      "example": "https://domaincontact.cloudflareregistrar.com/cloudflare.com",
      "x-auditable": true
    },
    "registrant_country": {
      "type": "string",
      "example": "United States",
      "x-auditable": true
    }
  }
}
object kamino_environment
{
  "type": "object",
  "required": [
    "name",
    "ref",
    "version",
    "expression",
    "locked_on_deployment",
    "position"
  ],
  "properties": {
    "ref": {
      "type": "string"
    },
    "name": {
      "type": "string"
    },
    "version": {
      "type": "integer",
      "format": "int64",
      "nullable": true
    },
    "position": {
      "$ref": "#/components/schemas/kamino_environment_position"
    },
    "expression": {
      "type": "string"
    },
    "http_application_id": {
      "type": "string",
      "nullable": true
    },
    "locked_on_deployment": {
      "type": "boolean",
      "nullable": true
    }
  }
}
object kamino_environment_position
{
  "type": "object",
  "properties": {
    "after": {
      "type": "string"
    },
    "before": {
      "type": "string"
    }
  }
}
object kamino_environments_request
{
  "type": "object",
  "required": [
    "environments"
  ],
  "properties": {
    "environments": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/kamino_environment"
      }
    }
  }
}
object kamino_environments_response
{
  "type": "object",
  "required": [
    "result",
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/kamino_message"
      }
    },
    "result": {
      "$ref": "#/components/schemas/kamino_environments_result"
    },
    "success": {
      "type": "boolean"
    },
    "messages": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/kamino_message"
      }
    }
  }
}
object kamino_environments_result
{
  "type": "object",
  "required": [
    "environments"
  ],
  "properties": {
    "environments": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/kamino_environment"
      }
    }
  }
}
object kamino_error_response
{
  "type": "object",
  "required": [
    "result",
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/kamino_message"
      }
    },
    "result": {
      "type": "object",
      "nullable": true
    },
    "success": {
      "type": "boolean"
    },
    "messages": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/kamino_message"
      }
    }
  }
}
object kamino_message
{
  "type": "object",
  "required": [
    "code",
    "message"
  ],
  "properties": {
    "code": {
      "type": "integer",
      "format": "int64"
    },
    "message": {
      "type": "string"
    }
  }
}
object lex_AvailableDestination
{
  "type": "object",
  "required": [
    "dataset",
    "timestamp_field",
    "schema",
    "object_type"
  ],
  "properties": {
    "schema": {
      "type": "object",
      "properties": {
        "type": {
          "enum": [
            "object"
          ],
          "type": "string"
        },
        "required": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "properties": {
          "type": "object",
          "additionalProperties": true
        }
      },
      "description": "JSON Schema that describes the fields this dataset exposes."
    },
    "dataset": {
      "type": "string",
      "description": "Dataset type name (e.g. `http_requests`)."
    },
    "object_type": {
      "enum": [
        "account",
        "zone"
      ],
      "type": "string",
      "description": "Whether this dataset type is account-scoped or zone-scoped."
    },
    "timestamp_field": {
      "type": "string",
      "description": "The primary timestamp field name for this dataset."
    }
  },
  "description": "A dataset type that the account or zone can create."
}
object lex_AvailableDestinationListResponse
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/lex_schemas-V4Error"
      }
    },
    "result": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/lex_AvailableDestination"
      },
      "nullable": true
    },
    "success": {
      "type": "boolean"
    },
    "messages": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  }
}
object lex_CreateDatasetRequest
{
  "type": "object",
  "required": [
    "dataset"
  ],
  "properties": {
    "fields": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/lex_LogField"
      },
      "description": "Controls which fields the API ingests. Defaults to all available\nfields when absent.\n"
    },
    "dataset": {
      "type": "string",
      "description": "Dataset type name to create (e.g. `http_requests`).",
      "x-auditable": true
    }
  }
}
object lex_DatasetDetailResponse
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/lex_schemas-V4Error"
      }
    },
    "result": {
      "$ref": "#/components/schemas/lex_DatasetResponse"
    },
    "success": {
      "type": "boolean",
      "x-auditable": true
    },
    "messages": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      }
    }
  }
}
object lex_DatasetResponse
{
  "allOf": [
    {
      "$ref": "#/components/schemas/lex_DatasetSummary"
    },
    {
      "type": "object",
      "properties": {
        "fields": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/lex_LogField"
          },
          "description": "The field configuration for this dataset.\n"
        }
      }
    }
  ]
}
object lex_DatasetSummary
{
  "type": "object",
  "required": [
    "dataset",
    "object_type",
    "object_id",
    "created_at",
    "updated_at",
    "dataset_id",
    "enabled"
  ],
  "properties": {
    "dataset": {
      "type": "string",
      "description": "Dataset type name (e.g. `http_requests`).",
      "x-auditable": true
    },
    "enabled": {
      "type": "boolean",
      "description": "Whether log ingest is currently active for this dataset.",
      "x-auditable": true
    },
    "object_id": {
      "type": "string",
      "description": "Public ID of the account or zone that owns this dataset.",
      "x-auditable": true
    },
    "created_at": {
      "type": "string",
      "format": "date-time",
      "description": "RFC3339 timestamp recording when the API created this dataset.",
      "x-auditable": true
    },
    "dataset_id": {
      "type": "string",
      "pattern": "^[a-f0-9]{32}$",
      "description": "Unique dataset ID.",
      "x-auditable": true
    },
    "updated_at": {
      "type": "string",
      "format": "date-time",
      "description": "RFC3339 timestamp recording when the API last updated this dataset.",
      "x-auditable": true
    },
    "object_type": {
      "enum": [
        "account",
        "zone"
      ],
      "type": "string",
      "description": "Whether this dataset belongs to an account or a zone.",
      "x-auditable": true
    }
  },
  "description": "A Log Explorer dataset summary. List endpoints return this type and omit\nfield configuration; use the single-dataset endpoint to retrieve it.\n"
}
object lex_DatasetSummaryListResponse
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/lex_schemas-V4Error"
      }
    },
    "result": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/lex_DatasetSummary"
      },
      "nullable": true
    },
    "success": {
      "type": "boolean"
    },
    "messages": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  }
}
object lex_ErrorResponse
{
  "type": "object",
  "required": [
    "result",
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/lex_V4Error"
      }
    },
    "result": {
      "type": "object",
      "nullable": true,
      "additionalProperties": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean"
    },
    "messages": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  }
}
object lex_LogField
{
  "type": "object",
  "required": [
    "name",
    "enabled"
  ],
  "properties": {
    "name": {
      "type": "string",
      "description": "Field name in lowercase.",
      "x-auditable": true
    },
    "enabled": {
      "type": "boolean",
      "description": "Whether the API includes this field in log ingest.",
      "x-auditable": true
    }
  }
}
object lex_QueryResponse
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/lex_V4Error"
      }
    },
    "result": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/lex_QueryRow"
      },
      "nullable": true
    },
    "success": {
      "type": "boolean"
    },
    "messages": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  }
}
object lex_QueryRow
{
  "type": "object",
  "additionalProperties": true
}
object lex_UpdateDatasetRequest
{
  "type": "object",
  "required": [
    "enabled"
  ],
  "properties": {
    "fields": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/lex_LogField"
      },
      "description": "Controls which fields the API ingests after the update. Defaults\nto all available fields when absent.\n"
    },
    "enabled": {
      "type": "boolean",
      "description": "Whether to enable or disable log ingest for this dataset.",
      "x-auditable": true
    }
  }
}
object lex_V4Error
{
  "type": "object",
  "required": [
    "code",
    "message"
  ],
  "properties": {
    "code": {
      "type": "integer",
      "format": "int32"
    },
    "message": {
      "type": "string"
    }
  }
}
object lex_schemas-ErrorResponse
{
  "type": "object",
  "required": [
    "result",
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/lex_schemas-V4Error"
      }
    },
    "result": {
      "type": "object",
      "nullable": true,
      "x-auditable": true,
      "additionalProperties": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "x-auditable": true
    },
    "messages": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      }
    }
  }
}
object lex_schemas-V4Error
{
  "type": "object",
  "required": [
    "code",
    "message"
  ],
  "properties": {
    "code": {
      "type": "integer",
      "format": "int32",
      "x-auditable": true
    },
    "message": {
      "type": "string",
      "x-auditable": true
    }
  }
}
string lists_account_id
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "readOnly": true,
  "maxLength": 32,
  "minLength": 32,
  "description": "The Account ID for this resource.",
  "x-auditable": true
}
object lists_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "type": "object"
          },
          "nullable": true
        }
      }
    },
    {
      "$ref": "#/components/schemas/lists_api-response-common"
    }
  ]
}
object lists_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/lists_messages"
    },
    "result": {
      "anyOf": [
        {
          "type": "object"
        },
        {
          "type": "array",
          "items": {
            "type": "object"
          }
        }
      ]
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Defines whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/lists_messages"
    }
  }
}
object lists_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/lists_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Defines whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/lists_messages"
        }
      ],
      "example": []
    }
  }
}
object lists_bulk-operation-response-single
{
  "allOf": [
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/lists_operation"
        }
      }
    },
    {
      "$ref": "#/components/schemas/lists_api-response-common"
    }
  ]
}
object lists_bulk_operation_completed
{
  "type": "object",
  "required": [
    "id",
    "status",
    "completed"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/lists_operation_id"
    },
    "status": {
      "enum": [
        "completed"
      ],
      "type": "string",
      "example": "completed",
      "readOnly": true,
      "description": "The current status of the asynchronous operation.",
      "x-auditable": true
    },
    "completed": {
      "$ref": "#/components/schemas/lists_completed"
    }
  }
}
object lists_bulk_operation_failed
{
  "type": "object",
  "required": [
    "id",
    "status",
    "error",
    "completed"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/lists_operation_id"
    },
    "error": {
      "type": "string",
      "example": "This list is at the maximum number of items",
      "readOnly": true,
      "description": "A message describing the error when the status is `failed`.",
      "x-auditable": true
    },
    "status": {
      "enum": [
        "failed"
      ],
      "type": "string",
      "example": "failed",
      "readOnly": true,
      "description": "The current status of the asynchronous operation.",
      "x-auditable": true
    },
    "completed": {
      "$ref": "#/components/schemas/lists_completed"
    }
  }
}
object lists_bulk_operation_pending_or_running
{
  "type": "object",
  "required": [
    "id",
    "status"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/lists_operation_id"
    },
    "status": {
      "enum": [
        "pending",
        "running"
      ],
      "type": "string",
      "example": "pending",
      "readOnly": true,
      "description": "The current status of the asynchronous operation.",
      "x-auditable": true
    }
  }
}
string lists_completed
{
  "type": "string",
  "example": "2020-01-01T08:00:00Z",
  "readOnly": true,
  "description": "The RFC 3339 timestamp of when the operation was completed.",
  "x-auditable": true
}
string lists_created_on
{
  "type": "string",
  "example": "2020-01-01T08:00:00Z",
  "readOnly": true,
  "description": "The RFC 3339 timestamp of when the list was created.",
  "x-auditable": true
}
string lists_description
{
  "type": "string",
  "example": "This is a note",
  "maxLength": 500,
  "description": "An informative summary of the list.",
  "x-auditable": true
}
object lists_item
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/lists_list_item_ip_full"
    },
    {
      "$ref": "#/components/schemas/lists_list_item_hostname_full"
    },
    {
      "$ref": "#/components/schemas/lists_list_item_redirect_full"
    },
    {
      "$ref": "#/components/schemas/lists_list_item_asn_full"
    }
  ]
}
object lists_item-response-single
{
  "allOf": [
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/lists_item"
        }
      }
    },
    {
      "$ref": "#/components/schemas/lists_api-response-common"
    }
  ]
}
integer lists_item_asn
{
  "type": "integer",
  "example": 5567,
  "description": "Defines a non-negative 32 bit integer.",
  "x-auditable": true
}
object lists_item_base
{
  "type": "object",
  "example": {
    "id": "2c0fc9fa937b11eaa1b71c4d701ab86e",
    "comment": "Private IP address",
    "created_on": "2020-01-01T08:00:00Z",
    "modified_on": "2020-01-10T14:00:00Z"
  },
  "required": [
    "id",
    "created_on",
    "modified_on"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/lists_item_id"
    },
    "comment": {
      "$ref": "#/components/schemas/lists_item_comment"
    },
    "created_on": {
      "$ref": "#/components/schemas/lists_created_on"
    },
    "modified_on": {
      "$ref": "#/components/schemas/lists_modified_on"
    }
  }
}
string lists_item_comment
{
  "type": "string",
  "example": "Private IP address",
  "description": "Defines an informative summary of the list item.",
  "x-auditable": true
}
object lists_item_comment_object
{
  "type": "object",
  "properties": {
    "comment": {
      "$ref": "#/components/schemas/lists_item_comment"
    }
  }
}
object lists_item_hostname
{
  "required": [
    "url_hostname"
  ],
  "properties": {
    "url_hostname": {
      "type": "string",
      "example": "example.com",
      "x-auditable": true
    },
    "exclude_exact_hostname": {
      "type": "boolean",
      "example": true,
      "description": "Only applies to wildcard hostnames (e.g., *.example.com). When true (default), only subdomains are blocked. When false, both the root domain and subdomains are blocked."
    }
  },
  "description": "Valid characters for hostnames are ASCII(7) letters from a to z, the digits from 0 to 9, wildcards (*), and the hyphen (-)."
}
string lists_item_id
{
  "type": "string",
  "example": "34b12448945f11eaa1b71c4d701ab86e",
  "readOnly": true,
  "maxLength": 32,
  "minLength": 32,
  "description": "Defines the unique ID of the item in the List.",
  "x-auditable": true
}
string lists_item_ip
{
  "type": "string",
  "example": "10.0.0.1",
  "description": "An IPv4 address, an IPv4 CIDR, an IPv6 address, or an IPv6 CIDR.",
  "x-auditable": true
}
object lists_item_redirect
{
  "required": [
    "source_url",
    "target_url"
  ],
  "properties": {
    "source_url": {
      "type": "string",
      "example": "example.com/arch",
      "x-auditable": true
    },
    "target_url": {
      "type": "string",
      "example": "https://archlinux.org/",
      "x-auditable": true
    },
    "status_code": {
      "enum": [
        301,
        302,
        307,
        308
      ],
      "type": "integer",
      "default": 301,
      "x-auditable": true
    },
    "subpath_matching": {
      "type": "boolean",
      "default": false,
      "x-auditable": true
    },
    "include_subdomains": {
      "type": "boolean",
      "default": false,
      "x-auditable": true
    },
    "preserve_path_suffix": {
      "type": "boolean",
      "default": false,
      "x-auditable": true
    },
    "preserve_query_string": {
      "type": "boolean",
      "default": false,
      "x-auditable": true
    }
  },
  "description": "The definition of the redirect."
}
array lists_items
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/lists_item"
  }
}
object lists_items-list-response-collection
{
  "allOf": [
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/lists_items"
        },
        "result_info": {
          "type": "object",
          "properties": {
            "cursors": {
              "type": "object",
              "properties": {
                "after": {
                  "type": "string",
                  "example": "yyy",
                  "x-auditable": true
                },
                "before": {
                  "type": "string",
                  "example": "xxx",
                  "x-auditable": true
                }
              }
            }
          }
        }
      }
    },
    {
      "$ref": "#/components/schemas/lists_api-response-collection"
    }
  ]
}
array lists_items-update-request-collection
{
  "type": "array",
  "items": {
    "oneOf": [
      {
        "$ref": "#/components/schemas/lists_list_item_ip_comment"
      },
      {
        "$ref": "#/components/schemas/lists_list_item_redirect_comment"
      },
      {
        "$ref": "#/components/schemas/lists_list_item_hostname_comment"
      },
      {
        "$ref": "#/components/schemas/lists_list_item_asn_comment"
      }
    ]
  }
}
string lists_kind
{
  "enum": [
    "ip",
    "redirect",
    "hostname",
    "asn"
  ],
  "example": "ip",
  "description": "The type of the list. Each type supports specific list items (IP addresses, ASNs, hostnames or redirects)."
}
object lists_list
{
  "type": "object",
  "required": [
    "id",
    "name",
    "kind",
    "num_items",
    "num_referencing_filters",
    "created_on",
    "modified_on"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/lists_list_id"
    },
    "kind": {
      "$ref": "#/components/schemas/lists_kind"
    },
    "name": {
      "$ref": "#/components/schemas/lists_name"
    },
    "num_items": {
      "$ref": "#/components/schemas/lists_num_items"
    },
    "created_on": {
      "$ref": "#/components/schemas/lists_created_on"
    },
    "description": {
      "$ref": "#/components/schemas/lists_description"
    },
    "modified_on": {
      "$ref": "#/components/schemas/lists_modified_on"
    },
    "num_referencing_filters": {
      "$ref": "#/components/schemas/lists_num_referencing_filters"
    }
  }
}
object lists_list-delete-response-collection
{
  "type": "object",
  "allOf": [
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "required": [
            "id"
          ],
          "properties": {
            "id": {
              "$ref": "#/components/schemas/lists_list_id"
            }
          }
        }
      }
    },
    {
      "$ref": "#/components/schemas/lists_api-response-common"
    }
  ]
}
object lists_list-response-collection
{
  "type": "object",
  "allOf": [
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/lists_list"
        }
      }
    },
    {
      "$ref": "#/components/schemas/lists_api-response-common"
    }
  ]
}
string lists_list_id
{
  "type": "string",
  "example": "2c0fc9fa937b11eaa1b71c4d701ab86e",
  "readOnly": true,
  "maxLength": 32,
  "minLength": 32,
  "description": "The unique ID of the list.",
  "x-auditable": true
}
object lists_list_item_asn_comment
{
  "allOf": [
    {
      "$ref": "#/components/schemas/lists_list_item_asn_object"
    },
    {
      "$ref": "#/components/schemas/lists_item_comment_object"
    }
  ]
}
object lists_list_item_asn_full
{
  "allOf": [
    {
      "$ref": "#/components/schemas/lists_list_item_asn_object"
    },
    {
      "$ref": "#/components/schemas/lists_item_base"
    }
  ]
}
object lists_list_item_asn_object
{
  "type": "object",
  "required": [
    "asn"
  ],
  "properties": {
    "asn": {
      "$ref": "#/components/schemas/lists_item_asn"
    }
  }
}
object lists_list_item_hostname_comment
{
  "allOf": [
    {
      "$ref": "#/components/schemas/lists_list_item_hostname_object"
    },
    {
      "$ref": "#/components/schemas/lists_item_comment_object"
    }
  ]
}
object lists_list_item_hostname_full
{
  "allOf": [
    {
      "$ref": "#/components/schemas/lists_list_item_hostname_object"
    },
    {
      "$ref": "#/components/schemas/lists_item_base"
    }
  ]
}
object lists_list_item_hostname_object
{
  "type": "object",
  "required": [
    "hostname"
  ],
  "properties": {
    "hostname": {
      "$ref": "#/components/schemas/lists_item_hostname"
    }
  }
}
object lists_list_item_ip_comment
{
  "allOf": [
    {
      "$ref": "#/components/schemas/lists_list_item_ip_object"
    },
    {
      "$ref": "#/components/schemas/lists_item_comment_object"
    }
  ]
}
object lists_list_item_ip_full
{
  "allOf": [
    {
      "$ref": "#/components/schemas/lists_list_item_ip_object"
    },
    {
      "$ref": "#/components/schemas/lists_item_base"
    }
  ]
}
object lists_list_item_ip_object
{
  "type": "object",
  "required": [
    "ip"
  ],
  "properties": {
    "ip": {
      "$ref": "#/components/schemas/lists_item_ip"
    }
  }
}
object lists_list_item_redirect_comment
{
  "allOf": [
    {
      "$ref": "#/components/schemas/lists_list_item_redirect_object"
    },
    {
      "$ref": "#/components/schemas/lists_item_comment_object"
    }
  ]
}
object lists_list_item_redirect_full
{
  "allOf": [
    {
      "$ref": "#/components/schemas/lists_list_item_redirect_object"
    },
    {
      "$ref": "#/components/schemas/lists_item_base"
    }
  ]
}
object lists_list_item_redirect_object
{
  "type": "object",
  "required": [
    "redirect"
  ],
  "properties": {
    "redirect": {
      "$ref": "#/components/schemas/lists_item_redirect"
    }
  }
}
object lists_lists-async-response
{
  "allOf": [
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "required": [
            "operation_id"
          ],
          "properties": {
            "operation_id": {
              "$ref": "#/components/schemas/lists_operation_id"
            }
          }
        }
      }
    },
    {
      "$ref": "#/components/schemas/lists_api-response-collection"
    }
  ]
}
object lists_lists-response-collection
{
  "type": "object",
  "allOf": [
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/lists_list"
          }
        }
      }
    },
    {
      "$ref": "#/components/schemas/lists_api-response-collection"
    }
  ]
}
array lists_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "message": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string lists_modified_on
{
  "type": "string",
  "example": "2020-01-10T14:00:00Z",
  "readOnly": true,
  "description": "The RFC 3339 timestamp of when the list was last modified.",
  "x-auditable": true
}
string lists_name
{
  "type": "string",
  "example": "list1",
  "pattern": "^[a-zA-Z0-9_]+$",
  "maxLength": 50,
  "description": "An informative name for the list. Use this name in filter and rule expressions.",
  "x-auditable": true
}
number lists_num_items
{
  "type": "number",
  "example": 10,
  "readOnly": true,
  "description": "The number of items in the list.",
  "x-auditable": true
}
number lists_num_referencing_filters
{
  "type": "number",
  "example": 2,
  "readOnly": true,
  "description": "The number of [filters](/api/resources/filters/) referencing the list.",
  "x-auditable": true
}
object lists_operation
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/lists_bulk_operation_pending_or_running"
    },
    {
      "$ref": "#/components/schemas/lists_bulk_operation_completed"
    },
    {
      "$ref": "#/components/schemas/lists_bulk_operation_failed"
    }
  ]
}
string lists_operation_id
{
  "type": "string",
  "example": "4da8780eeb215e6cb7f48dd981c4ea02",
  "readOnly": true,
  "description": "The unique operation ID of the asynchronous action.",
  "x-auditable": true
}
array load-balancing_Host
{
  "type": "array",
  "items": {
    "type": "string",
    "example": "example.com",
    "x-auditable": true
  },
  "description": "The 'Host' header allows to override the hostname set in the HTTP request. Current support is 1 'Host' header override per origin."
}
object load-balancing_adaptive_routing
{
  "type": "object",
  "properties": {
    "failover_across_pools": {
      "type": "boolean",
      "default": false,
      "example": true,
      "description": "Extends zero-downtime failover of requests to healthy origins from alternate pools, when no healthy alternate exists in the same pool, according to the failover order defined by traffic and origin steering. When set false (the default) zero-downtime failover will only occur between origins within the same pool. See `session_affinity_attributes` for control over when sessions are broken or reassigned.",
      "x-auditable": true
    }
  },
  "description": "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."
}
string load-balancing_address
{
  "type": "string",
  "example": "0.0.0.0",
  "description": "The IP address (IPv4 or IPv6) of the origin, or its publicly addressable hostname. Hostnames entered here should resolve directly to the origin, and not be a hostname proxied by Cloudflare. To set an internal/reserved address, virtual_network_id must also be set.",
  "x-auditable": true
}
boolean load-balancing_allow_insecure
{
  "type": "boolean",
  "default": false,
  "example": true,
  "description": "Do not validate the certificate when monitor use HTTPS. This parameter is currently only valid for HTTP and HTTPS monitors.",
  "x-auditable": true
}
object load-balancing_analytics
{
  "type": "object",
  "properties": {
    "id": {
      "type": "integer",
      "default": 1
    },
    "pool": {
      "type": "object",
      "example": {
        "id": "74bc6a8b9b0dda3d651707a2928bad0c",
        "name": "some-pool",
        "changed": true,
        "healthy": true,
        "minimum_origins": 1
      }
    },
    "origins": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/load-balancing_origin-analytics"
      },
      "example": [
        {
          "ip": "198.51.100.4",
          "name": "some-origin",
          "address": "198.51.100.4",
          "changed": true,
          "enabled": true,
          "healthy": true,
          "failure_reason": "No failures"
        }
      ]
    },
    "timestamp": {
      "type": "string",
      "format": "date-time",
      "example": "2014-01-01T05:20:00.12345Z"
    }
  }
}
object load-balancing_api-paginated-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/load-balancing_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result_info": {
          "$ref": "#/components/schemas/load-balancing_result_info"
        }
      }
    }
  ],
  "required": [
    "result_info"
  ]
}
object load-balancing_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/load-balancing_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/load-balancing_messages"
    }
  }
}
object load-balancing_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/load-balancing_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/load-balancing_messages"
        }
      ],
      "example": []
    }
  }
}
object load-balancing_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/load-balancing_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "anyOf": [
            {
              "type": "object",
              "nullable": true
            },
            {
              "type": "string",
              "nullable": true
            }
          ]
        }
      }
    }
  ]
}
array load-balancing_check_regions
{
  "type": "array",
  "items": {
    "enum": [
      "WNAM",
      "ENAM",
      "WEU",
      "EEU",
      "NSAM",
      "SSAM",
      "OC",
      "ME",
      "NAF",
      "SAF",
      "SAS",
      "SEAS",
      "NEAS",
      "ALL_REGIONS"
    ],
    "type": "string",
    "description": "WNAM: Western North America, ENAM: Eastern North America, WEU: Western Europe, EEU: Eastern Europe, NSAM: Northern South America, SSAM: Southern South America, OC: Oceania, ME: Middle East, NAF: North Africa, SAF: South Africa, SAS: Southern Asia, SEAS: South East Asia, NEAS: North East Asia, ALL_REGIONS: all regions (ENTERPRISE customers only).",
    "x-auditable": true
  },
  "example": [
    "WEU",
    "ENAM"
  ],
  "nullable": true,
  "description": "A list of regions from which to run health checks. Null means every Cloudflare data center."
}
string load-balancing_components-schemas-description
{
  "type": "string",
  "example": "Load Balancer for www.example.com",
  "description": "Object description.",
  "x-auditable": true
}
boolean load-balancing_components-schemas-enabled
{
  "type": "boolean",
  "default": true,
  "example": true,
  "description": "Whether to enable (the default) this load balancer.",
  "x-auditable": true
}
object load-balancing_components-schemas-id_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/load-balancing_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "id": {
              "$ref": "#/components/schemas/load-balancing_load-balancer_components-schemas-identifier"
            }
          }
        }
      }
    }
  ]
}
string load-balancing_components-schemas-identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "readOnly": true,
  "maxLength": 32,
  "description": "Identifier.",
  "x-auditable": true
}
string load-balancing_components-schemas-name
{
  "type": "string",
  "example": "www.example.com",
  "description": "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.",
  "x-auditable": true
}
object load-balancing_components-schemas-response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/load-balancing_api-paginated-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/load-balancing_analytics"
          }
        }
      }
    }
  ]
}
object load-balancing_components-schemas-single_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/load-balancing_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "example": {
            "regions": [
              {
                "countries": [
                  {
                    "country_name": "Canada",
                    "country_code_a2": "CA",
                    "country_subdivisions": [
                      {
                        "subdivision_name": "Alberta",
                        "subdivision_code_a2": "AB"
                      },
                      {
                        "subdivision_name": "British Columbia",
                        "subdivision_code_a2": "BC"
                      }
                    ]
                  },
                  {
                    "country_name": "Haiti",
                    "country_code_a2": "HT"
                  },
                  {
                    "country_name": "Mexico",
                    "country_code_a2": "MX"
                  },
                  {
                    "country_name": "United States",
                    "country_code_a2": "US",
                    "country_subdivisions": [
                      {
                        "subdivision_name": "Arizona",
                        "subdivision_code_a2": "AZ"
                      },
                      {
                        "subdivision_name": "California",
                        "subdivision_code_a2": "CA"
                      },
                      {
                        "subdivision_name": "Colorado",
                        "subdivision_code_a2": "CO"
                      },
                      {
                        "subdivision_name": "Hawaii",
                        "subdivision_code_a2": "HI"
                      },
                      {
                        "subdivision_name": "Minnesota",
                        "subdivision_code_a2": "MN"
                      },
                      {
                        "subdivision_name": "Missouri",
                        "subdivision_code_a2": "MO"
                      },
                      {
                        "subdivision_name": "Nevada",
                        "subdivision_code_a2": "NV"
                      },
                      {
                        "subdivision_name": "Oregon",
                        "subdivision_code_a2": "OR"
                      },
                      {
                        "subdivision_name": "Texas",
                        "subdivision_code_a2": "TX"
                      },
                      {
                        "subdivision_name": "Utah",
                        "subdivision_code_a2": "UT"
                      },
                      {
                        "subdivision_name": "Washington",
                        "subdivision_code_a2": "WA"
                      }
                    ]
                  }
                ],
                "region_code": "WNAM"
              }
            ],
            "iso_standard": "Country and subdivision codes follow ISO 3166-1 alpha-2 and ISO 3166-2"
          },
          "description": "A list of countries and subdivisions mapped to a region."
        }
      }
    }
  ]
}
string load-balancing_components-schemas-zone-name
{
  "type": "string",
  "example": "example.com",
  "x-auditable": true
}
integer load-balancing_consecutive_down
{
  "type": "integer",
  "description": "To be marked unhealthy the monitored origin must fail this healthcheck N consecutive times.",
  "x-auditable": true
}
integer load-balancing_consecutive_up
{
  "type": "integer",
  "description": "To be marked healthy the monitored origin must pass this healthcheck N consecutive times.",
  "x-auditable": true
}
object load-balancing_country_pools
{
  "type": "object",
  "example": {
    "GB": [
      "abd90f38ced07c2e2f4df50b1f61d4194"
    ],
    "US": [
      "de90f38ced07c2e2f4df50b1f61d4194",
      "00920f38ce07c2e2f4df50b1f61d4194"
    ]
  },
  "description": "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.",
  "additionalProperties": {
    "type": "array",
    "items": {
      "type": "string",
      "x-auditable": true
    },
    "description": "A `string:[string]` object of key-values. Country code maps to list of pool IDs."
  }
}
array load-balancing_default_pools
{
  "type": "array",
  "items": {
    "type": "string",
    "description": "A pool ID."
  },
  "example": [
    "17b5962d775c646f3f9725cbc7a53df4",
    "9290f38c5d07c2e2f4df57b1f61d4196",
    "00920f38ce07c2e2f4df50b1f61d4194"
  ],
  "description": "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."
}
string load-balancing_description
{
  "type": "string",
  "default": "",
  "example": "Login page monitor",
  "description": "Object description.",
  "x-auditable": true
}
string load-balancing_disabled_at
{
  "type": "string",
  "format": "date-time",
  "readOnly": true,
  "description": "This field shows up only if the origin is disabled. This field is set with the time the origin was disabled.",
  "x-auditable": true,
  "x-stainless-terraform-configurability": "computed_optional"
}
boolean load-balancing_enabled
{
  "type": "boolean",
  "default": true,
  "example": false,
  "description": "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).",
  "x-auditable": true
}
string load-balancing_expected_body
{
  "type": "string",
  "default": "",
  "example": "alive",
  "description": "A case-insensitive sub-string to look for in the response body. If this string is not found, the origin will be marked as unhealthy. This parameter is only valid for HTTP and HTTPS monitors.",
  "x-auditable": true
}
string load-balancing_expected_codes
{
  "type": "string",
  "default": "",
  "example": "2xx",
  "description": "The expected HTTP response code or code range of the health check. This parameter is only valid for HTTP and HTTPS monitors.",
  "x-auditable": true
}
string load-balancing_fallback_pool
{
  "type": "string",
  "description": "The pool ID to use when all other pools are detected as unhealthy.",
  "x-auditable": true
}
object load-balancing_filter_options
{
  "type": "object",
  "nullable": true,
  "properties": {
    "disable": {
      "type": "boolean",
      "default": false,
      "nullable": true,
      "description": "If set true, disable notifications for this type of resource (pool or origin).",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "optional"
    },
    "healthy": {
      "type": "boolean",
      "nullable": true,
      "description": "If present, send notifications only for this health status (e.g. false for only DOWN events). Use null to reset (all events).",
      "x-auditable": true
    }
  },
  "description": "Filter options for a particular resource type (pool or origin). Use null to reset."
}
boolean load-balancing_follow_redirects
{
  "type": "boolean",
  "default": false,
  "example": true,
  "description": "Follow redirects if returned by the origin. This parameter is only valid for HTTP and HTTPS monitors.",
  "x-auditable": true
}
object load-balancing_header
{
  "type": "object",
  "example": {
    "Host": [
      "example.com"
    ],
    "X-App-ID": [
      "abc123"
    ]
  },
  "description": "The HTTP request headers to send in the health check. It is recommended you set a Host header by default. The User-Agent header cannot be overridden. This parameter is only valid for HTTP and HTTPS monitors.",
  "additionalProperties": {
    "type": "array",
    "items": {
      "type": "string",
      "x-auditable": true
    }
  }
}
object load-balancing_health_details
{
  "allOf": [
    {
      "$ref": "#/components/schemas/load-balancing_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "example": {
            "pool_id": "17b5962d775c646f3f9725cbc7a53df4",
            "pop_health": {
              "Amsterdam, NL": {
                "healthy": true,
                "origins": [
                  {
                    "2001:DB8::5": {
                      "rtt": "12.1ms",
                      "healthy": true,
                      "response_code": 401,
                      "failure_reason": "No failures"
                    }
                  }
                ]
              }
            }
          },
          "properties": {
            "pool_id": {
              "type": "string",
              "example": "17b5962d775c646f3f9725cbc7a53df4",
              "description": "Pool ID.",
              "x-auditable": true
            },
            "pop_health": {
              "type": "object",
              "properties": {
                "healthy": {
                  "type": "boolean",
                  "example": true,
                  "description": "Whether health check in region is healthy.",
                  "x-auditable": true
                },
                "origins": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/load-balancing_origin-health"
                  }
                }
              },
              "description": "List of regions and associated health status."
            }
          },
          "description": "A list of regions from which to run health checks. Null means every Cloudflare data center."
        }
      }
    }
  ]
}
object load-balancing_id_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/load-balancing_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "id": {
              "$ref": "#/components/schemas/load-balancing_identifier"
            }
          }
        }
      }
    }
  ]
}
string load-balancing_identifier
{
  "type": "string",
  "example": "f1aba936b94213e5b8dca0c0dbf1f9cc",
  "x-auditable": true
}
integer load-balancing_interval
{
  "type": "integer",
  "default": 60,
  "description": "The interval between each health check. Shorter intervals may improve failover time, but will increase load on the origins as we check from multiple locations.",
  "x-auditable": true
}
number load-balancing_latitude
{
  "type": "number",
  "description": "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.",
  "x-auditable": true
}
object load-balancing_load-balancer
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/load-balancing_load-balancer_components-schemas-identifier"
    },
    "ttl": {
      "$ref": "#/components/schemas/load-balancing_ttl"
    },
    "name": {
      "$ref": "#/components/schemas/load-balancing_components-schemas-name"
    },
    "rules": {
      "$ref": "#/components/schemas/load-balancing_rules"
    },
    "enabled": {
      "$ref": "#/components/schemas/load-balancing_components-schemas-enabled"
    },
    "proxied": {
      "$ref": "#/components/schemas/load-balancing_proxied"
    },
    "networks": {
      "$ref": "#/components/schemas/load-balancing_networks"
    },
    "pop_pools": {
      "$ref": "#/components/schemas/load-balancing_pop_pools"
    },
    "zone_name": {
      "$ref": "#/components/schemas/load-balancing_components-schemas-zone-name"
    },
    "created_on": {
      "$ref": "#/components/schemas/load-balancing_timestamp"
    },
    "description": {
      "$ref": "#/components/schemas/load-balancing_components-schemas-description"
    },
    "modified_on": {
      "$ref": "#/components/schemas/load-balancing_timestamp"
    },
    "region_pools": {
      "$ref": "#/components/schemas/load-balancing_region_pools"
    },
    "country_pools": {
      "$ref": "#/components/schemas/load-balancing_country_pools"
    },
    "default_pools": {
      "$ref": "#/components/schemas/load-balancing_default_pools"
    },
    "fallback_pool": {
      "$ref": "#/components/schemas/load-balancing_fallback_pool"
    },
    "random_steering": {
      "$ref": "#/components/schemas/load-balancing_random_steering"
    },
    "steering_policy": {
      "$ref": "#/components/schemas/load-balancing_steering_policy"
    },
    "adaptive_routing": {
      "$ref": "#/components/schemas/load-balancing_adaptive_routing"
    },
    "session_affinity": {
      "$ref": "#/components/schemas/load-balancing_session_affinity"
    },
    "location_strategy": {
      "$ref": "#/components/schemas/load-balancing_location_strategy"
    },
    "session_affinity_ttl": {
      "$ref": "#/components/schemas/load-balancing_session_affinity_ttl"
    },
    "session_affinity_attributes": {
      "$ref": "#/components/schemas/load-balancing_session_affinity_attributes"
    }
  }
}
string load-balancing_load-balancer_components-schemas-identifier
{
  "type": "string",
  "example": "699d98642c564d2e855e9661899b7252",
  "x-auditable": true
}
object load-balancing_load-balancer_components-schemas-response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/load-balancing_api-paginated-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/load-balancing_load-balancer"
          }
        }
      }
    }
  ]
}
object load-balancing_load-balancer_components-schemas-single_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/load-balancing_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/load-balancing_load-balancer"
        }
      }
    }
  ]
}
object load-balancing_load_shedding
{
  "type": "object",
  "nullable": true,
  "properties": {
    "default_policy": {
      "enum": [
        "random",
        "hash"
      ],
      "type": "string",
      "default": "random",
      "description": "The default policy to use when load shedding. A random policy randomly sheds a given percent of requests. A hash policy computes a hash over the CF-Connecting-IP address and sheds all requests originating from a percent of IPs.",
      "x-auditable": true
    },
    "session_policy": {
      "enum": [
        "hash"
      ],
      "type": "string",
      "default": "hash",
      "description": "Only the hash policy is supported for existing sessions (to avoid exponential decay).",
      "x-auditable": true
    },
    "default_percent": {
      "type": "number",
      "default": 0,
      "maximum": 100,
      "minimum": 0,
      "description": "The percent of traffic to shed from the pool, according to the default policy. Applies to new sessions and traffic without session affinity.",
      "x-auditable": true
    },
    "session_percent": {
      "type": "number",
      "default": 0,
      "maximum": 100,
      "minimum": 0,
      "description": "The percent of existing sessions to shed from the pool, according to the session policy.",
      "x-auditable": true
    }
  },
  "description": "Configures load shedding policies and percentages for the pool.",
  "x-stainless-terraform-configurability": "optional"
}
object load-balancing_location_strategy
{
  "type": "object",
  "properties": {
    "mode": {
      "enum": [
        "pop",
        "resolver_ip"
      ],
      "type": "string",
      "default": "pop",
      "example": "resolver_ip",
      "description": "Determines the authoritative location when ECS is not preferred, does not exist in the request, or its GeoIP lookup is unsuccessful.\n- `\"pop\"`: Use the Cloudflare PoP location.\n- `\"resolver_ip\"`: Use the DNS resolver GeoIP location. If the GeoIP lookup is unsuccessful, use the Cloudflare PoP location.",
      "x-auditable": true
    },
    "prefer_ecs": {
      "enum": [
        "always",
        "never",
        "proximity",
        "geo"
      ],
      "type": "string",
      "default": "proximity",
      "example": "always",
      "description": "Whether the EDNS Client Subnet (ECS) GeoIP should be preferred as the authoritative location.\n- `\"always\"`: Always prefer ECS.\n- `\"never\"`: Never prefer ECS.\n- `\"proximity\"`: Prefer ECS only when `steering_policy=\"proximity\"`.\n- `\"geo\"`: Prefer ECS only when `steering_policy=\"geo\"`.",
      "x-auditable": true
    }
  },
  "description": "Controls location-based steering for non-proxied requests. See `steering_policy` to learn how steering is affected."
}
number load-balancing_longitude
{
  "type": "number",
  "description": "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.",
  "x-auditable": true
}
array load-balancing_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "message": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string load-balancing_method
{
  "type": "string",
  "example": "GET",
  "description": "The method to use for the health check. This defaults to 'GET' for HTTP/HTTPS based checks and 'connection_established' for TCP based health checks.",
  "x-auditable": true,
  "x-stainless-terraform-configurability": "computed_optional"
}
integer load-balancing_minimum_origins
{
  "type": "integer",
  "default": 1,
  "description": "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.",
  "x-auditable": true
}
object load-balancing_monitor
{
  "allOf": [
    {
      "$ref": "#/components/schemas/load-balancing_monitor-editable"
    },
    {
      "type": "object",
      "properties": {
        "id": {
          "$ref": "#/components/schemas/load-balancing_identifier"
        },
        "created_on": {
          "$ref": "#/components/schemas/load-balancing_timestamp"
        },
        "modified_on": {
          "$ref": "#/components/schemas/load-balancing_timestamp"
        }
      }
    }
  ]
}
object load-balancing_monitor-editable
{
  "type": "object",
  "properties": {
    "path": {
      "$ref": "#/components/schemas/load-balancing_path"
    },
    "port": {
      "$ref": "#/components/schemas/load-balancing_port"
    },
    "type": {
      "$ref": "#/components/schemas/load-balancing_type"
    },
    "header": {
      "$ref": "#/components/schemas/load-balancing_header"
    },
    "method": {
      "$ref": "#/components/schemas/load-balancing_method"
    },
    "retries": {
      "$ref": "#/components/schemas/load-balancing_retries"
    },
    "timeout": {
      "$ref": "#/components/schemas/load-balancing_timeout"
    },
    "interval": {
      "$ref": "#/components/schemas/load-balancing_interval"
    },
    "probe_zone": {
      "$ref": "#/components/schemas/load-balancing_probe_zone"
    },
    "description": {
      "$ref": "#/components/schemas/load-balancing_description"
    },
    "expected_body": {
      "$ref": "#/components/schemas/load-balancing_expected_body"
    },
    "allow_insecure": {
      "$ref": "#/components/schemas/load-balancing_allow_insecure"
    },
    "consecutive_up": {
      "$ref": "#/components/schemas/load-balancing_consecutive_up"
    },
    "expected_codes": {
      "$ref": "#/components/schemas/load-balancing_expected_codes"
    },
    "consecutive_down": {
      "$ref": "#/components/schemas/load-balancing_consecutive_down"
    },
    "follow_redirects": {
      "$ref": "#/components/schemas/load-balancing_follow_redirects"
    }
  }
}
object load-balancing_monitor-group
{
  "type": "object",
  "required": [
    "id",
    "description",
    "members"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/load-balancing_monitor_group_id"
    },
    "members": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/load-balancing_monitor-group-member"
      },
      "description": "List of monitors in this group"
    },
    "created_at": {
      "type": "string",
      "format": "date-time",
      "example": "2014-01-01T05:20:00.12345Z",
      "readOnly": true,
      "description": "The timestamp of when the monitor group was created"
    },
    "updated_at": {
      "type": "string",
      "format": "date-time",
      "example": "2014-01-01T05:20:00.12345Z",
      "readOnly": true,
      "description": "The timestamp of when the monitor group was last updated"
    },
    "description": {
      "type": "string",
      "example": "Primary datacenter monitors",
      "description": "A short description of the monitor group"
    }
  }
}
object load-balancing_monitor-group-member
{
  "type": "object",
  "required": [
    "monitor_id",
    "enabled",
    "monitoring_only",
    "must_be_healthy"
  ],
  "properties": {
    "enabled": {
      "type": "boolean",
      "example": true,
      "description": "Whether this monitor is enabled in the group"
    },
    "created_at": {
      "type": "string",
      "format": "date-time",
      "example": "2014-01-01T05:20:00.12345Z",
      "readOnly": true,
      "description": "The timestamp of when the monitor was added to the group"
    },
    "monitor_id": {
      "$ref": "#/components/schemas/load-balancing_monitor_id"
    },
    "updated_at": {
      "type": "string",
      "format": "date-time",
      "example": "2014-01-01T05:20:00.12345Z",
      "readOnly": true,
      "description": "The timestamp of when the monitor group member was last updated"
    },
    "monitoring_only": {
      "type": "boolean",
      "example": false,
      "description": "Whether this monitor is used for monitoring only (does not affect pool health)"
    },
    "must_be_healthy": {
      "type": "boolean",
      "example": true,
      "description": "Whether this monitor must be healthy for the pool to be considered healthy"
    }
  }
}
object load-balancing_monitor-group-references-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/load-balancing_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "resource_id": {
                "type": "string",
                "x-auditable": true
              },
              "resource_name": {
                "type": "string",
                "x-auditable": true
              },
              "resource_type": {
                "type": "string",
                "x-auditable": true
              },
              "reference_type": {
                "enum": [
                  "*",
                  "referral",
                  "referrer"
                ],
                "type": "string",
                "x-auditable": true
              }
            }
          },
          "example": [
            {
              "resource_id": "17b5962d775c646f3f9725cbc7a53df4",
              "resource_name": "primary-dc-1",
              "resource_type": "pool",
              "reference_type": "referrer"
            }
          ],
          "description": "List of resources that reference a given monitor group."
        }
      }
    }
  ]
}
object load-balancing_monitor-group-response-collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/load-balancing_api-response-common"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/load-balancing_monitor-group"
          }
        },
        "result_info": {
          "$ref": "#/components/schemas/load-balancing_result_info"
        }
      }
    }
  ]
}
object load-balancing_monitor-group-single-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/load-balancing_api-response-common"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/load-balancing_monitor-group"
        }
      }
    }
  ]
}
object load-balancing_monitor-references-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/load-balancing_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "resource_id": {
                "type": "string",
                "x-auditable": true
              },
              "resource_name": {
                "type": "string",
                "x-auditable": true
              },
              "resource_type": {
                "type": "string",
                "x-auditable": true
              },
              "reference_type": {
                "enum": [
                  "*",
                  "referral",
                  "referrer"
                ],
                "type": "string",
                "x-auditable": true
              }
            }
          },
          "example": [
            {
              "resource_id": "17b5962d775c646f3f9725cbc7a53df4",
              "resource_name": "primary-dc-1",
              "resource_type": "pool",
              "reference_type": "referrer"
            }
          ],
          "description": "List of resources that reference a given monitor."
        }
      }
    }
  ]
}
object load-balancing_monitor-response-collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/load-balancing_api-paginated-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/load-balancing_monitor"
          }
        }
      }
    }
  ]
}
object load-balancing_monitor-response-single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/load-balancing_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/load-balancing_monitor"
        }
      }
    }
  ]
}
string load-balancing_monitor_group_id
{
  "type": "string",
  "description": "The ID of the Monitor Group to use for checking the health of origins within this pool.",
  "x-auditable": true
}
string load-balancing_monitor_id
{
  "type": "string",
  "description": "The ID of the Monitor to use for checking the health of origins within this pool.",
  "x-auditable": true
}
string load-balancing_name
{
  "type": "string",
  "example": "primary-dc-1",
  "description": "A short name (tag) for the pool. Only alphanumeric characters, hyphens, and underscores are allowed.",
  "x-auditable": true
}
array load-balancing_networks
{
  "type": "array",
  "items": {
    "type": "string",
    "example": [
      "cloudflare",
      "jdcloud"
    ],
    "x-auditable": true,
    "x-stainless-terraform-configurability": "computed_optional"
  },
  "description": "List of networks where Load Balancer or Pool is enabled."
}
string load-balancing_notification_email
{
  "type": "string",
  "default": "",
  "example": "someone@example.com,sometwo@example.com",
  "description": "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.",
  "x-auditable": true
}
object load-balancing_notification_filter
{
  "type": "object",
  "example": {
    "pool": {
      "healthy": false
    },
    "origin": {
      "disable": true
    }
  },
  "nullable": true,
  "properties": {
    "pool": {
      "$ref": "#/components/schemas/load-balancing_filter_options"
    },
    "origin": {
      "$ref": "#/components/schemas/load-balancing_filter_options"
    }
  },
  "description": "Filter pool and origin health notifications by resource type or health status. Use null to reset.",
  "x-stainless-terraform-configurability": "optional"
}
object load-balancing_origin
{
  "type": "object",
  "properties": {
    "name": {
      "$ref": "#/components/schemas/load-balancing_schemas-name"
    },
    "port": {
      "$ref": "#/components/schemas/load-balancing_origin_port"
    },
    "header": {
      "$ref": "#/components/schemas/load-balancing_schemas-header"
    },
    "weight": {
      "$ref": "#/components/schemas/load-balancing_weight"
    },
    "address": {
      "$ref": "#/components/schemas/load-balancing_address"
    },
    "enabled": {
      "$ref": "#/components/schemas/load-balancing_schemas-enabled"
    },
    "disabled_at": {
      "$ref": "#/components/schemas/load-balancing_disabled_at"
    },
    "flatten_cname": {
      "$ref": "#/components/schemas/load-balancing_origin_flatten_cname"
    },
    "virtual_network_id": {
      "$ref": "#/components/schemas/load-balancing_virtual_network_id"
    }
  }
}
object load-balancing_origin-analytics
{
  "type": "object",
  "properties": {
    "ip": {
      "$ref": "#/components/schemas/load-balancing_origin-ip"
    },
    "name": {
      "$ref": "#/components/schemas/load-balancing_schemas-name"
    },
    "address": {
      "$ref": "#/components/schemas/load-balancing_address"
    },
    "changed": {
      "$ref": "#/components/schemas/load-balancing_origin-changed"
    },
    "enabled": {
      "$ref": "#/components/schemas/load-balancing_schemas-enabled"
    },
    "healthy": {
      "$ref": "#/components/schemas/load-balancing_origin-healthy"
    },
    "failure_reason": {
      "$ref": "#/components/schemas/load-balancing_origin-failure-reason"
    }
  }
}
boolean load-balancing_origin-changed
{
  "type": "boolean",
  "example": true,
  "description": "Whether the origin has changed health status.",
  "x-auditable": true
}
string load-balancing_origin-failure-reason
{
  "type": "string",
  "example": "No failures",
  "description": "Failure reason for un-healthy origin health check.",
  "x-auditable": true
}
object load-balancing_origin-health
{
  "type": "object",
  "properties": {
    "ip": {
      "type": "object",
      "properties": {
        "rtt": {
          "type": "string",
          "example": "201.5ms",
          "description": "Origin RTT (Round Trip Time) response.",
          "x-auditable": true
        },
        "healthy": {
          "type": "boolean",
          "example": true,
          "description": "Origin health status.",
          "x-auditable": true
        },
        "response_code": {
          "type": "number",
          "example": 200,
          "description": "Response code from origin health check.",
          "x-auditable": true
        },
        "failure_reason": {
          "type": "string",
          "example": "No failure reasons",
          "description": "Failure reason.",
          "x-auditable": true
        }
      }
    }
  }
}
boolean load-balancing_origin-healthy
{
  "type": "boolean",
  "example": true,
  "description": "Whether the origin is reported as healthy.",
  "x-auditable": true
}
string load-balancing_origin-ip
{
  "type": "string",
  "example": "198.51.100.4",
  "description": "The IP address (IPv4 or IPv6) of the origin.",
  "x-auditable": true
}
boolean load-balancing_origin_flatten_cname
{
  "type": "boolean",
  "default": true,
  "description": "Whether to flatten CNAME records for this origin, resolving them to A/AAAA records before returning to the client. When true (the default), the director resolves CNAME addresses to their underlying A/AAAA records. When false, the origin address is returned as a raw CNAME record without resolution. This setting mirrors the DNS API record flatten_cname setting."
}
object load-balancing_origin_health_data
{
  "type": "object",
  "example": {
    "rtt": "66ms",
    "healthy": true,
    "response_code": 200,
    "failure_reason": "No failures"
  },
  "properties": {
    "rtt": {
      "type": "string",
      "x-auditable": true
    },
    "healthy": {
      "type": "boolean",
      "x-auditable": true
    },
    "response_code": {
      "type": "number",
      "x-auditable": true
    },
    "failure_reason": {
      "type": "string",
      "x-auditable": true
    }
  },
  "description": "The origin ipv4/ipv6 address or domain name mapped to its health data."
}
boolean load-balancing_origin_healthy
{
  "type": "boolean",
  "default": true,
  "example": true,
  "description": "If true, filter events where the origin status is healthy. If false, filter events where the origin status is unhealthy.",
  "x-auditable": true
}
integer load-balancing_origin_port
{
  "type": "integer",
  "default": 0,
  "description": "The port for upstream connections. A value of 0 means the default port for the protocol will be used."
}
object load-balancing_origin_steering
{
  "type": "object",
  "nullable": true,
  "properties": {
    "policy": {
      "enum": [
        "random",
        "hash",
        "least_outstanding_requests",
        "least_connections"
      ],
      "type": "string",
      "default": "random",
      "description": "The type of origin steering policy to use.\n- `\"random\"`: Select an origin randomly.\n- `\"hash\"`: Select an origin by computing a hash over the CF-Connecting-IP address.\n- `\"least_outstanding_requests\"`: Select an origin by taking into consideration origin weights, as well as each origin's number of outstanding requests. Origins with more pending requests are weighted proportionately less relative to others.\n- `\"least_connections\"`: Select an origin by taking into consideration origin weights, as well as each origin's number of open connections. Origins with more open connections are weighted proportionately less relative to others. Supported for HTTP/1 and HTTP/2 connections.",
      "x-auditable": true
    }
  },
  "description": "Configures origin steering for the pool. Controls how origins are selected for new sessions and traffic without session affinity.",
  "x-stainless-terraform-configurability": "optional"
}
array load-balancing_origins
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/load-balancing_origin"
  },
  "description": "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.",
  "x-stainless-collection-type": "set"
}
string load-balancing_patch_pools_notification_email
{
  "enum": [
    ""
  ],
  "type": "string",
  "example": "",
  "description": "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."
}
string load-balancing_path
{
  "type": "string",
  "example": "/health",
  "description": "The endpoint path you want to conduct a health check against. This parameter is only valid for HTTP and HTTPS monitors.",
  "x-auditable": true,
  "x-stainless-terraform-configurability": "computed_optional"
}
object load-balancing_pool
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/load-balancing_schemas-identifier"
    },
    "name": {
      "$ref": "#/components/schemas/load-balancing_name"
    },
    "enabled": {
      "$ref": "#/components/schemas/load-balancing_enabled"
    },
    "monitor": {
      "$ref": "#/components/schemas/load-balancing_monitor_id"
    },
    "origins": {
      "$ref": "#/components/schemas/load-balancing_origins"
    },
    "latitude": {
      "$ref": "#/components/schemas/load-balancing_latitude"
    },
    "networks": {
      "$ref": "#/components/schemas/load-balancing_networks"
    },
    "longitude": {
      "$ref": "#/components/schemas/load-balancing_longitude"
    },
    "created_on": {
      "$ref": "#/components/schemas/load-balancing_timestamp"
    },
    "description": {
      "$ref": "#/components/schemas/load-balancing_schemas-description"
    },
    "disabled_at": {
      "$ref": "#/components/schemas/load-balancing_schemas-disabled_at"
    },
    "modified_on": {
      "$ref": "#/components/schemas/load-balancing_timestamp"
    },
    "check_regions": {
      "$ref": "#/components/schemas/load-balancing_check_regions"
    },
    "load_shedding": {
      "$ref": "#/components/schemas/load-balancing_load_shedding"
    },
    "monitor_group": {
      "$ref": "#/components/schemas/load-balancing_monitor_group_id"
    },
    "minimum_origins": {
      "$ref": "#/components/schemas/load-balancing_minimum_origins"
    },
    "origin_steering": {
      "$ref": "#/components/schemas/load-balancing_origin_steering"
    },
    "notification_email": {
      "$ref": "#/components/schemas/load-balancing_notification_email"
    },
    "notification_filter": {
      "$ref": "#/components/schemas/load-balancing_notification_filter"
    }
  }
}
string load-balancing_pool_name
{
  "type": "string",
  "example": "primary-dc",
  "description": "The name for the pool to filter.",
  "x-auditable": true
}
object load-balancing_pools-references-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/load-balancing_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "resource_id": {
                "type": "string",
                "x-auditable": true
              },
              "resource_name": {
                "type": "string",
                "x-auditable": true
              },
              "resource_type": {
                "type": "string",
                "x-auditable": true
              },
              "reference_type": {
                "enum": [
                  "*",
                  "referral",
                  "referrer"
                ],
                "type": "string",
                "x-auditable": true
              }
            }
          },
          "example": [
            {
              "resource_id": "699d98642c564d2e855e9661899b7252",
              "resource_name": "www.example.com",
              "resource_type": "load_balancer",
              "reference_type": "referrer"
            },
            {
              "resource_id": "f1aba936b94213e5b8dca0c0dbf1f9cc",
              "resource_name": "Login page monitor",
              "resource_type": "monitor",
              "reference_type": "referral"
            }
          ],
          "description": "List of resources that reference a given pool."
        }
      }
    }
  ]
}
object load-balancing_pop_pools
{
  "type": "object",
  "example": {
    "LAX": [
      "de90f38ced07c2e2f4df50b1f61d4194",
      "9290f38c5d07c2e2f4df57b1f61d4196"
    ],
    "LHR": [
      "abd90f38ced07c2e2f4df50b1f61d4194",
      "f9138c5d07c2e2f4df57b1f61d4196"
    ],
    "SJC": [
      "00920f38ce07c2e2f4df50b1f61d4194"
    ]
  },
  "description": "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.",
  "additionalProperties": {
    "type": "array",
    "items": {
      "type": "string",
      "x-auditable": true
    },
    "description": "A `string:[string]` object of key-values. PoP code maps to list of pool IDs."
  }
}
integer load-balancing_port
{
  "type": "integer",
  "nullable": true,
  "description": "The port number to connect to for the health check. Required for TCP, UDP, and SMTP checks. HTTP and HTTPS checks should only define the port when using a non-standard port (HTTP: default 80, HTTPS: default 443).",
  "x-auditable": true,
  "x-stainless-terraform-configurability": "optional"
}
object load-balancing_preview_id
{
  "example": "f1aba936b94213e5b8dca0c0dbf1f9cc"
}
object load-balancing_preview_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/load-balancing_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "pools": {
              "type": "object",
              "example": {
                "abwlnp5jbqn45ecgxd03erbgtxtqai0d": "WNAM Datacenter",
                "ve8h9lrcip5n5bbga9yqmdws28ay5d0l": "EEU Datacenter"
              },
              "description": "Monitored pool IDs mapped to their respective names.",
              "additionalProperties": {
                "type": "string",
                "description": "The pool name associated with the pool ID.",
                "x-auditable": true
              }
            },
            "preview_id": {
              "$ref": "#/components/schemas/load-balancing_identifier"
            }
          }
        }
      }
    }
  ]
}
object load-balancing_preview_result
{
  "type": "object",
  "example": {
    "abwlnp5jbqn45ecgxd03erbgtxtqai0d": {
      "healthy": true,
      "origins": [
        {
          "originone.example.com.": {
            "rtt": "66ms",
            "healthy": true,
            "response_code": 200,
            "failure_reason": "No failures"
          }
        }
      ]
    }
  },
  "description": "Resulting health data from a preview operation.",
  "additionalProperties": {
    "type": "object",
    "properties": {
      "healthy": {
        "type": "boolean",
        "x-auditable": true
      },
      "origins": {
        "type": "array",
        "items": {
          "type": "object",
          "maxProperties": 1,
          "minProperties": 1,
          "additionalProperties": {
            "$ref": "#/components/schemas/load-balancing_origin_health_data"
          }
        }
      }
    }
  }
}
object load-balancing_preview_result_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/load-balancing_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/load-balancing_preview_result"
        }
      }
    }
  ]
}
string load-balancing_probe_zone
{
  "type": "string",
  "default": "",
  "example": "example.com",
  "description": "Assign this monitor to emulate the specified zone while probing. This parameter is only valid for HTTP and HTTPS monitors.",
  "x-auditable": true
}
boolean load-balancing_proxied
{
  "type": "boolean",
  "default": false,
  "example": true,
  "description": "Whether the hostname should be gray clouded (false) or orange clouded (true).",
  "x-auditable": true
}
object load-balancing_random_steering
{
  "type": "object",
  "properties": {
    "pool_weights": {
      "type": "object",
      "example": {
        "9290f38c5d07c2e2f4df57b1f61d4196": 0.5,
        "de90f38ced07c2e2f4df50b1f61d4194": 0.3
      },
      "description": "A mapping of pool IDs to custom weights. The weight is relative to other pools in the load balancer.",
      "additionalProperties": {
        "type": "number",
        "x-auditable": true
      }
    },
    "default_weight": {
      "type": "number",
      "default": 1,
      "example": 0.2,
      "maximum": 1,
      "minimum": 0,
      "multipleOf": 0.1,
      "description": "The default weight for pools in the load balancer that are not specified in the pool_weights map.",
      "x-auditable": true
    }
  },
  "description": "Configures pool weights.\n- `steering_policy=\"random\"`: A random pool is selected with probability proportional to pool weights.\n- `steering_policy=\"least_outstanding_requests\"`: Use pool weights to scale each pool's outstanding requests.\n- `steering_policy=\"least_connections\"`: Use pool weights to scale each pool's open connections."
}
string load-balancing_region_code
{
  "enum": [
    "WNAM",
    "ENAM",
    "WEU",
    "EEU",
    "NSAM",
    "SSAM",
    "OC",
    "ME",
    "NAF",
    "SAF",
    "SAS",
    "SEAS",
    "NEAS"
  ],
  "type": "string",
  "example": "WNAM",
  "description": "A list of Cloudflare regions. WNAM: Western North America, ENAM: Eastern North America, WEU: Western Europe, EEU: Eastern Europe, NSAM: Northern South America, SSAM: Southern South America, OC: Oceania, ME: Middle East, NAF: North Africa, SAF: South Africa, SAS: Southern Asia, SEAS: South East Asia, NEAS: North East Asia)."
}
object load-balancing_region_components-schemas-response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/load-balancing_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object"
        }
      }
    }
  ]
}
object load-balancing_region_pools
{
  "type": "object",
  "example": {
    "ENAM": [
      "00920f38ce07c2e2f4df50b1f61d4194"
    ],
    "WNAM": [
      "de90f38ced07c2e2f4df50b1f61d4194",
      "9290f38c5d07c2e2f4df57b1f61d4196"
    ]
  },
  "description": "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.",
  "additionalProperties": {
    "type": "array",
    "items": {
      "type": "string",
      "x-auditable": true
    },
    "description": "A `string:[string]` object of key-values. Region code maps to list of pool IDs."
  }
}
object load-balancing_resource_reference
{
  "type": "object",
  "properties": {
    "references": {
      "type": "array",
      "items": {
        "type": "object",
        "description": "A reference to a load balancer resource."
      },
      "example": [
        {
          "resource_id": "699d98642c564d2e855e9661899b7252",
          "resource_name": "www.example.com",
          "resource_type": "load_balancer",
          "reference_type": "referrer"
        },
        {
          "resource_id": "f1aba936b94213e5b8dca0c0dbf1f9cc",
          "resource_name": "Login page monitor",
          "resource_type": "monitor",
          "reference_type": "referral"
        }
      ],
      "description": "A list of references to (referrer) or from (referral) this resource."
    },
    "resource_id": {
      "type": "string",
      "example": "17b5962d775c646f3f9725cbc7a53df4"
    },
    "resource_name": {
      "type": "string",
      "example": "primary-dc-1",
      "description": "The human-identifiable name of the resource.",
      "x-auditable": true
    },
    "resource_type": {
      "enum": [
        "load_balancer",
        "monitor",
        "pool"
      ],
      "type": "string",
      "example": "pool",
      "description": "The type of the resource.",
      "x-auditable": true
    },
    "reference_type": {
      "enum": [
        "referral",
        "referrer"
      ],
      "type": "string",
      "description": "When listed as a reference, the type (direction) of the reference.",
      "x-auditable": true
    }
  },
  "description": "A reference to a load balancer resource."
}
object load-balancing_result_info
{
  "type": "object",
  "properties": {
    "page": {
      "type": "number",
      "example": 1,
      "description": "Current page within paginated list of results."
    },
    "count": {
      "type": "number",
      "example": 20,
      "description": "Total number of results on the current page."
    },
    "per_page": {
      "type": "number",
      "example": 20,
      "description": "Number of results per page."
    },
    "total_count": {
      "type": "number",
      "example": 2000,
      "description": "Total results available without any search parameters."
    },
    "total_pages": {
      "type": "number",
      "example": 100,
      "description": "Total number of pages available."
    }
  }
}
integer load-balancing_retries
{
  "type": "integer",
  "default": 2,
  "description": "The number of retries to attempt in case of a timeout before marking the origin as unhealthy. Retries are attempted immediately.",
  "x-auditable": true
}
array load-balancing_rules
{
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "name": {
        "type": "string",
        "example": "route the path /testing to testing datacenter.",
        "maxLength": 200,
        "description": "Name of this rule. Only used for human readability.",
        "x-auditable": true
      },
      "disabled": {
        "type": "boolean",
        "default": false,
        "description": "Disable this specific rule. It will no longer be evaluated by this load balancer.",
        "x-auditable": true
      },
      "priority": {
        "type": "integer",
        "default": 0,
        "minimum": 0,
        "description": "The order in which rules should be executed in relation to each other. Lower values are executed first. Values do not need to be sequential. If no value is provided for any rule the array order of the rules field will be used to assign a priority.",
        "x-auditable": true
      },
      "condition": {
        "type": "string",
        "example": "http.request.uri.path contains \"/testing\"",
        "description": "The condition expressions to evaluate. If the condition evaluates to true, the overrides or fixed_response in this rule will be applied. An empty condition is always true. For more details on condition expressions, please see https://developers.cloudflare.com/load-balancing/understand-basics/load-balancing-rules/expressions.",
        "x-auditable": true
      },
      "overrides": {
        "type": "object",
        "properties": {
          "ttl": {
            "$ref": "#/components/schemas/load-balancing_ttl"
          },
          "pop_pools": {
            "$ref": "#/components/schemas/load-balancing_pop_pools"
          },
          "region_pools": {
            "$ref": "#/components/schemas/load-balancing_region_pools"
          },
          "country_pools": {
            "$ref": "#/components/schemas/load-balancing_country_pools"
          },
          "default_pools": {
            "$ref": "#/components/schemas/load-balancing_default_pools"
          },
          "fallback_pool": {
            "$ref": "#/components/schemas/load-balancing_fallback_pool"
          },
          "random_steering": {
            "$ref": "#/components/schemas/load-balancing_random_steering"
          },
          "steering_policy": {
            "$ref": "#/components/schemas/load-balancing_steering_policy"
          },
          "adaptive_routing": {
            "$ref": "#/components/schemas/load-balancing_adaptive_routing"
          },
          "session_affinity": {
            "$ref": "#/components/schemas/load-balancing_session_affinity"
          },
          "location_strategy": {
            "$ref": "#/components/schemas/load-balancing_location_strategy"
          },
          "session_affinity_ttl": {
            "$ref": "#/components/schemas/load-balancing_session_affinity_ttl"
          },
          "session_affinity_attributes": {
            "$ref": "#/components/schemas/load-balancing_session_affinity_attributes"
          }
        },
        "description": "A collection of overrides to apply to the load balancer when this rule's condition is true. All fields are optional."
      },
      "terminates": {
        "type": "boolean",
        "description": "If this rule's condition is true, this causes rule evaluation to stop after processing this rule.",
        "x-auditable": true
      },
      "fixed_response": {
        "type": "object",
        "properties": {
          "location": {
            "type": "string",
            "example": "www.example.com",
            "maxLength": 2048,
            "description": "The http 'Location' header to include in the response.",
            "x-auditable": true
          },
          "status_code": {
            "type": "integer",
            "description": "The http status code to respond with.",
            "x-auditable": true
          },
          "content_type": {
            "type": "string",
            "example": "application/json",
            "maxLength": 32,
            "description": "The http 'Content-Type' header to include in the response.",
            "x-auditable": true
          },
          "message_body": {
            "type": "string",
            "example": "Testing Hello",
            "maxLength": 1024,
            "description": "Text to include as the http body.",
            "x-auditable": true
          }
        },
        "description": "A collection of fields used to directly respond to the eyeball instead of routing to a pool. If a fixed_response is supplied the rule will be marked as terminates."
      }
    },
    "description": "A rule object containing conditions and overrides for this load balancer to evaluate.",
    "additionalProperties": false
  },
  "description": "BETA Field Not General Access: A list of rules for this load balancer to execute."
}
string load-balancing_schemas-description
{
  "type": "string",
  "default": "",
  "example": "Primary data center - Provider XYZ",
  "description": "A human-readable description of the pool.",
  "x-auditable": true
}
string load-balancing_schemas-disabled_at
{
  "type": "string",
  "format": "date-time",
  "readOnly": true,
  "description": "This field shows up only if the pool is disabled. This field is set with the time the pool was disabled at.",
  "x-auditable": true
}
boolean load-balancing_schemas-enabled
{
  "type": "boolean",
  "default": true,
  "example": true,
  "description": "Whether to enable (the default) this origin within the pool. Disabled origins will not receive traffic and are excluded from health checks. The origin will only be disabled for the current pool.",
  "x-auditable": true
}
object load-balancing_schemas-header
{
  "type": "object",
  "properties": {
    "Host": {
      "$ref": "#/components/schemas/load-balancing_Host"
    }
  },
  "description": "The request header is used to pass additional information with an HTTP request. Currently supported header is 'Host'."
}
object load-balancing_schemas-id_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/load-balancing_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "id": {
              "$ref": "#/components/schemas/load-balancing_schemas-identifier"
            }
          }
        }
      }
    }
  ]
}
string load-balancing_schemas-identifier
{
  "type": "string",
  "example": "17b5962d775c646f3f9725cbc7a53df4",
  "x-auditable": true
}
string load-balancing_schemas-name
{
  "type": "string",
  "example": "app-server-1",
  "description": "A human-identifiable name for the origin.",
  "x-auditable": true
}
string load-balancing_schemas-preview_id
{
  "type": "string",
  "example": "p1aba936b94213e5b8dca0c0dbf1f9cc"
}
object load-balancing_schemas-response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/load-balancing_api-paginated-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/load-balancing_pool"
          }
        }
      }
    }
  ]
}
object load-balancing_schemas-single_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/load-balancing_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/load-balancing_pool"
        }
      }
    }
  ]
}
object load-balancing_search
{
  "type": "object",
  "properties": {
    "resources": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/load-balancing_resource_reference"
      },
      "description": "A list of resources matching the search query."
    }
  }
}
object load-balancing_search_result
{
  "type": "object",
  "properties": {
    "result": {
      "$ref": "#/components/schemas/load-balancing_search"
    }
  }
}
string load-balancing_session_affinity
{
  "enum": [
    "none",
    "cookie",
    "ip_cookie",
    "header"
  ],
  "type": "string",
  "default": "none",
  "example": "cookie",
  "description": "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.",
  "x-auditable": true
}
object load-balancing_session_affinity_attributes
{
  "type": "object",
  "properties": {
    "secure": {
      "enum": [
        "Auto",
        "Always",
        "Never"
      ],
      "type": "string",
      "default": "Auto",
      "example": "Auto",
      "description": "Configures the Secure attribute on session affinity cookie. Value \"Always\" indicates the Secure attribute will be set in the Set-Cookie header, \"Never\" indicates the Secure attribute will not be set, and \"Auto\" will set the Secure attribute depending if Always Use HTTPS is enabled.",
      "x-auditable": true
    },
    "headers": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[a-zA-Z0-9_-]+$",
        "maxLength": 100,
        "minLength": 1,
        "description": "An HTTP header name.",
        "x-auditable": true
      },
      "default": "none",
      "description": "Configures the names of HTTP headers to base session affinity on when header `session_affinity` is enabled. At least one HTTP header name must be provided. To specify the exact cookies to be used, include an item in the following format: `\"cookie:<cookie-name-1>,<cookie-name-2>\"` (example) where everything after the colon is a comma-separated list of cookie names. Providing only `\"cookie\"` will result in all cookies being used. The default max number of HTTP header names that can be provided depends on your plan: 5 for Enterprise, 1 for all other plans.",
      "uniqueItems": true
    },
    "samesite": {
      "enum": [
        "Auto",
        "Lax",
        "None",
        "Strict"
      ],
      "type": "string",
      "default": "Auto",
      "example": "Auto",
      "description": "Configures the SameSite attribute on session affinity cookie. Value \"Auto\" will be translated to \"Lax\" or \"None\" depending if Always Use HTTPS is enabled. Note: when using value \"None\", the secure attribute can not be set to \"Never\".",
      "x-auditable": true
    },
    "drain_duration": {
      "type": "number",
      "example": 100,
      "description": "Configures the drain duration in seconds. This field is only used when session affinity is enabled on the load balancer.",
      "x-auditable": true
    },
    "require_all_headers": {
      "type": "boolean",
      "default": false,
      "description": "When header `session_affinity` is enabled, this option can be used to specify how HTTP headers on load balancing requests will be used. The supported values are: - `\"true\"`: Load balancing requests must contain *all* of the HTTP headers specified by the `headers` session affinity attribute, otherwise sessions aren't created. - `\"false\"`: Load balancing requests must contain *at least one* of the HTTP headers specified by the `headers` session affinity attribute, otherwise sessions aren't created.",
      "x-auditable": true
    },
    "zero_downtime_failover": {
      "enum": [
        "none",
        "temporary",
        "sticky"
      ],
      "type": "string",
      "default": "none",
      "example": "sticky",
      "description": "Configures the zero-downtime failover between origins within a pool when session affinity is enabled. This feature is currently incompatible with Argo, Tiered Cache, and Bandwidth Alliance. The supported values are: - `\"none\"`: No failover takes place for sessions pinned to the origin (default). - `\"temporary\"`: Traffic will be sent to another other healthy origin until the originally pinned origin is available; note that this can potentially result in heavy origin flapping. - `\"sticky\"`: The session affinity cookie is updated and subsequent requests are sent to the new origin. Note: Zero-downtime failover with sticky sessions is currently not supported for session affinity by header.",
      "x-auditable": true
    }
  },
  "description": "Configures attributes for session affinity."
}
number load-balancing_session_affinity_ttl
{
  "type": "number",
  "example": 1800,
  "description": "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.",
  "x-auditable": true
}
string load-balancing_steering_policy
{
  "enum": [
    "off",
    "geo",
    "random",
    "dynamic_latency",
    "proximity",
    "least_outstanding_requests",
    "least_connections",
    ""
  ],
  "type": "string",
  "default": "",
  "example": "dynamic_latency",
  "description": "Steering Policy for this load balancer.\n- `\"off\"`: Use `default_pools`.\n- `\"geo\"`: Use `region_pools`/`country_pools`/`pop_pools`. For non-proxied requests, the country for `country_pools` is determined by `location_strategy`.\n- `\"random\"`: Select a pool randomly.\n- `\"dynamic_latency\"`: Use round trip time to select the closest pool in default_pools (requires pool health checks).\n- `\"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.\n- `\"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.\n- `\"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.\n- `\"\"`: Will map to `\"geo\"` if you use `region_pools`/`country_pools`/`pop_pools` otherwise `\"off\"`.",
  "x-auditable": true
}
string load-balancing_subdivision_code_a2
{
  "type": "string",
  "example": "CA",
  "description": "Two-letter subdivision code followed in ISO 3166-2.",
  "x-auditable": true
}
integer load-balancing_timeout
{
  "type": "integer",
  "default": 5,
  "description": "The timeout (in seconds) before marking the health check as failed.",
  "x-auditable": true
}
string load-balancing_timestamp
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-01T05:20:00.12345Z",
  "readOnly": true,
  "x-auditable": true
}
number load-balancing_ttl
{
  "type": "number",
  "example": 30,
  "description": "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.",
  "x-auditable": true
}
string load-balancing_type
{
  "enum": [
    "http",
    "https",
    "tcp",
    "udp_icmp",
    "icmp_ping",
    "smtp"
  ],
  "type": "string",
  "default": "http",
  "example": "https",
  "description": "The protocol to use for the health check. Currently supported protocols are 'HTTP','HTTPS', 'TCP', 'ICMP-PING', 'UDP-ICMP', and 'SMTP'.",
  "x-auditable": true
}
string load-balancing_until
{
  "type": "string",
  "format": "date-time",
  "example": "2016-11-11T13:00:00Z",
  "description": "End date and time of requesting data period in the ISO8601 format.",
  "x-auditable": true
}
string load-balancing_virtual_network_id
{
  "type": "string",
  "example": "a5624d4e-044a-4ff0-b3e1-e2465353d4b4",
  "description": "The virtual network subnet ID the origin belongs in. Virtual network must also belong to the account."
}
number load-balancing_weight
{
  "type": "number",
  "default": 1,
  "example": 0.6,
  "maximum": 1,
  "minimum": 0,
  "multipleOf": 0.01,
  "description": "The weight of this origin relative to other origins in the pool. Based on the configured weight the total traffic is distributed among origins within the pool.\n- `origin_steering.policy=\"least_outstanding_requests\"`: Use weight to scale the origin's outstanding requests.\n- `origin_steering.policy=\"least_connections\"`: Use weight to scale the origin's open connections.",
  "x-auditable": true
}
object logcontrol_account_identifier
{
  "$ref": "#/components/schemas/logcontrol_identifier"
}
boolean logcontrol_allow_out_of_region_access
{
  "type": "boolean",
  "example": false,
  "description": "Allow out of region access",
  "x-auditable": true
}
object logcontrol_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/logcontrol_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/logcontrol_messages"
    }
  }
}
object logcontrol_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/logcontrol_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/logcontrol_messages"
        }
      ],
      "example": []
    }
  }
}
object logcontrol_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/logcontrol_api-response-common"
    }
  ]
}
object logcontrol_cmb_config
{
  "type": "object",
  "nullable": true,
  "properties": {
    "regions": {
      "$ref": "#/components/schemas/logcontrol_regions"
    },
    "allow_out_of_region_access": {
      "$ref": "#/components/schemas/logcontrol_allow_out_of_region_access"
    }
  }
}
object logcontrol_cmb_config_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/logcontrol_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/logcontrol_cmb_config"
        }
      }
    }
  ]
}
boolean logcontrol_flag
{
  "type": "boolean",
  "example": true,
  "description": "The log retention flag for Logpull API.",
  "x-auditable": true
}
string logcontrol_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Identifier.",
  "x-auditable": true
}
array logcontrol_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string logcontrol_regions
{
  "type": "string",
  "example": "eu",
  "pattern": "^[a-z]*$",
  "maxLength": 256,
  "description": "Name of the region.",
  "x-auditable": true
}
object logcontrol_retention_flag
{
  "type": "object",
  "nullable": true,
  "properties": {
    "flag": {
      "$ref": "#/components/schemas/logcontrol_flag"
    }
  }
}
object logcontrol_retention_flag_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/logcontrol_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/logcontrol_retention_flag"
        }
      }
    }
  ]
}
object logcontrol_zone_identifier
{
  "$ref": "#/components/schemas/logcontrol_identifier"
}
object logpush_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/logpush_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/logpush_messages"
    }
  }
}
object logpush_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/logpush_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/logpush_messages"
        }
      ],
      "example": []
    }
  }
}
object logpush_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/logpush_api-response-common"
    }
  ]
}
string logpush_dataset
{
  "enum": [
    "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",
    "mcp_portal_logs",
    "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"
  ],
  "type": "string",
  "default": "http_requests",
  "example": "http_requests",
  "nullable": true,
  "description": "Name of the dataset. A list of supported datasets can be found on the [Developer Docs](https://developers.cloudflare.com/logs/reference/log-fields/).",
  "x-auditable": true
}
string logpush_destination_conf
{
  "type": "string",
  "format": "uri",
  "example": "s3://mybucket/logs?region=us-west-2",
  "maxLength": 4096,
  "description": "Uniquely identifies a resource (such as an s3 bucket) where data. will be pushed. Additional configuration parameters supported by the destination may be included.",
  "x-sensitive": true
}
object logpush_destination_exists_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/logpush_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "nullable": true,
          "properties": {
            "exists": {
              "type": "boolean",
              "example": false,
              "x-auditable": true
            }
          }
        }
      }
    }
  ]
}
boolean logpush_enabled
{
  "type": "boolean",
  "default": false,
  "example": false,
  "description": "Flag that indicates if the job is enabled.",
  "x-auditable": true
}
string logpush_error_message
{
  "type": "string",
  "nullable": true,
  "description": "If not null, the job is currently failing. Failures are usually. repetitive (example: no permissions to write to destination bucket). Only the last failure is recorded. On successful execution of a job the error_message and last_error are set to null.",
  "x-auditable": true
}
string logpush_fields
{
  "type": "string",
  "example": "ClientIP,ClientRequestHost,ClientRequestMethod,ClientRequestURI,EdgeEndTimestamp,EdgeResponseBytes,EdgeResponseStatus,EdgeStartTimestamp,RayID",
  "description": "Comma-separated list of fields.",
  "x-auditable": true
}
string logpush_filter
{
  "type": "string",
  "example": "{\"where\":{\"and\":[{\"key\":\"ClientRequestPath\",\"operator\":\"contains\",\"value\":\"/static\"},{\"key\":\"ClientRequestHost\",\"operator\":\"eq\",\"value\":\"example.com\"}]}}",
  "nullable": true,
  "description": "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/)."
}
string logpush_frequency
{
  "enum": [
    "high",
    "low"
  ],
  "type": "string",
  "default": "high",
  "example": "high",
  "nullable": true,
  "deprecated": true,
  "description": "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.",
  "x-auditable": true
}
object logpush_get_ownership_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/logpush_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "nullable": true,
          "properties": {
            "valid": {
              "type": "boolean",
              "example": true,
              "x-auditable": true
            },
            "message": {
              "type": "string",
              "example": "",
              "x-auditable": true
            },
            "filename": {
              "type": "string",
              "example": "logs/challenge-filename.txt",
              "x-auditable": true
            }
          }
        }
      }
    }
  ]
}
integer logpush_id
{
  "type": "integer",
  "minimum": 1,
  "description": "Unique id of the job.",
  "x-auditable": true
}
string logpush_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Identifier.",
  "x-auditable": true
}
object logpush_instant_logs_job
{
  "type": "object",
  "nullable": true,
  "properties": {
    "fields": {
      "$ref": "#/components/schemas/logpush_fields"
    },
    "filter": {
      "$ref": "#/components/schemas/logpush_schemas-filter"
    },
    "sample": {
      "$ref": "#/components/schemas/logpush_sample"
    },
    "session_id": {
      "$ref": "#/components/schemas/logpush_session_id"
    },
    "destination_conf": {
      "$ref": "#/components/schemas/logpush_schemas-destination_conf"
    }
  }
}
object logpush_instant_logs_job_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/logpush_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/logpush_instant_logs_job"
          }
        }
      }
    }
  ]
}
object logpush_instant_logs_job_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/logpush_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/logpush_instant_logs_job"
        }
      }
    }
  ]
}
string logpush_kind
{
  "enum": [
    "",
    "edge"
  ],
  "type": "string",
  "default": "",
  "example": "",
  "description": "The kind parameter (optional) is used to differentiate between Logpush and Edge Log Delivery jobs (when supported by the dataset).",
  "x-auditable": true,
  "x-stainless-terraform-configurability": "computed_optional"
}
string logpush_last_complete
{
  "type": "string",
  "format": "date-time",
  "nullable": true,
  "description": "Records the last time for which logs have been successfully pushed. If the last successful push was for logs range 2018-07-23T10:00:00Z to 2018-07-23T10:01:00Z then the value of this field will be 2018-07-23T10:01:00Z. If the job has never run or has just been enabled and hasn't run yet then the field will be empty.",
  "x-auditable": true
}
string logpush_last_error
{
  "type": "string",
  "format": "date-time",
  "nullable": true,
  "description": "Records the last time the job failed. If not null, the job is currently. failing. If null, the job has either never failed or has run successfully at least once since last failure. See also the error_message field.",
  "x-auditable": true
}
string logpush_logpull_options
{
  "type": "string",
  "format": "uri-reference",
  "example": "fields=RayID,ClientIP,EdgeStartTimestamp&timestamps=rfc3339",
  "nullable": true,
  "maxLength": 4096,
  "deprecated": true,
  "description": "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.",
  "x-auditable": true
}
object logpush_logpush_field_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/logpush_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "items": {
            "type": "object",
            "nullable": true,
            "properties": {
              "key": {
                "type": "string",
                "example": "value",
                "x-auditable": true
              }
            }
          }
        }
      }
    }
  ]
}
object logpush_logpush_job
{
  "type": "object",
  "nullable": true,
  "properties": {
    "id": {
      "$ref": "#/components/schemas/logpush_id"
    },
    "kind": {
      "$ref": "#/components/schemas/logpush_kind"
    },
    "name": {
      "$ref": "#/components/schemas/logpush_name"
    },
    "dataset": {
      "$ref": "#/components/schemas/logpush_dataset"
    },
    "enabled": {
      "$ref": "#/components/schemas/logpush_enabled"
    },
    "frequency": {
      "$ref": "#/components/schemas/logpush_frequency"
    },
    "last_error": {
      "$ref": "#/components/schemas/logpush_last_error"
    },
    "error_message": {
      "$ref": "#/components/schemas/logpush_error_message"
    },
    "last_complete": {
      "$ref": "#/components/schemas/logpush_last_complete"
    },
    "output_options": {
      "$ref": "#/components/schemas/logpush_output_options"
    },
    "logpull_options": {
      "$ref": "#/components/schemas/logpush_logpull_options"
    },
    "destination_conf": {
      "$ref": "#/components/schemas/logpush_destination_conf"
    },
    "max_upload_bytes": {
      "$ref": "#/components/schemas/logpush_max_upload_bytes"
    },
    "max_upload_records": {
      "$ref": "#/components/schemas/logpush_max_upload_records"
    },
    "max_upload_interval_seconds": {
      "$ref": "#/components/schemas/logpush_max_upload_interval_seconds"
    }
  }
}
object logpush_logpush_job_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/logpush_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/logpush_logpush_job"
          }
        }
      }
    }
  ]
}
object logpush_logpush_job_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/logpush_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/logpush_logpush_job"
        }
      }
    }
  ]
}
integer logpush_max_upload_bytes
{
  "type": "integer",
  "oneOf": [
    {
      "enum": [
        0
      ],
      "type": "integer"
    },
    {
      "type": "integer",
      "maximum": 1000000000,
      "minimum": 5000000
    }
  ],
  "example": 5000000,
  "nullable": true,
  "description": "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.",
  "x-auditable": true
}
integer logpush_max_upload_interval_seconds
{
  "type": "integer",
  "oneOf": [
    {
      "enum": [
        0
      ],
      "type": "integer"
    },
    {
      "type": "integer",
      "maximum": 300,
      "minimum": 30
    }
  ],
  "example": 30,
  "nullable": true,
  "description": "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.",
  "x-auditable": true
}
integer logpush_max_upload_records
{
  "type": "integer",
  "oneOf": [
    {
      "enum": [
        0
      ],
      "type": "integer"
    },
    {
      "type": "integer",
      "maximum": 1000000,
      "minimum": 1000
    }
  ],
  "example": 1000,
  "nullable": true,
  "description": "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.",
  "x-auditable": true
}
array logpush_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string logpush_name
{
  "type": "string",
  "example": "example.com",
  "pattern": "^[a-zA-Z0-9\\._-]*$",
  "nullable": true,
  "maxLength": 512,
  "description": "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.",
  "x-auditable": true
}
object logpush_output_options
{
  "type": "object",
  "nullable": true,
  "properties": {
    "field_names": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "example": [
        "ClientIP",
        "EdgeStartTimestamp",
        "RayID"
      ],
      "description": "List of field names to be included in the Logpush output. For the moment, there is no option to add all fields at once, so you must specify all the fields names you are interested in."
    },
    "output_type": {
      "enum": [
        "ndjson",
        "csv"
      ],
      "type": "string",
      "example": "ndjson",
      "description": "Specifies the output type, such as `ndjson` or `csv`. This sets default values for the rest of the settings, depending on the chosen output type. Some formatting rules, like string quoting, are different between output types.",
      "x-auditable": true
    },
    "sample_rate": {
      "type": "number",
      "format": "float",
      "maximum": 1,
      "minimum": 0,
      "nullable": true,
      "description": "Floating number to specify sampling rate. Sampling is applied on top of filtering, and regardless of the current `sample_interval` of the data.",
      "x-auditable": true
    },
    "batch_prefix": {
      "type": "string",
      "nullable": true,
      "description": "String to be prepended before each batch.",
      "x-auditable": true
    },
    "batch_suffix": {
      "type": "string",
      "nullable": true,
      "description": "String to be appended after each batch.",
      "x-auditable": true
    },
    "record_prefix": {
      "type": "string",
      "nullable": true,
      "description": "String to be prepended before each record.",
      "x-auditable": true
    },
    "record_suffix": {
      "type": "string",
      "nullable": true,
      "description": "String to be appended after each record.",
      "x-auditable": true
    },
    "CVE-2021-44228": {
      "type": "boolean",
      "nullable": true,
      "description": "If set to true, will cause all occurrences of `${` in the generated files to be replaced with `x{`.",
      "x-auditable": true
    },
    "field_delimiter": {
      "type": "string",
      "nullable": true,
      "description": "String to join fields. This field be ignored when `record_template` is set.",
      "x-auditable": true
    },
    "record_template": {
      "type": "string",
      "nullable": true,
      "description": "String to use as template for each record instead of the default json key value mapping. All fields used in the template must be present in `field_names` as well, otherwise they will end up as null. Format as a Go `text/template` without any standard functions, like conditionals, loops, sub-templates, etc.",
      "x-auditable": true
    },
    "record_delimiter": {
      "type": "string",
      "nullable": true,
      "description": "String to be inserted in-between the records as separator.",
      "x-auditable": true
    },
    "timestamp_format": {
      "enum": [
        "unixnano",
        "unix",
        "rfc3339",
        "rfc3339ms",
        "rfc3339ns"
      ],
      "type": "string",
      "description": "String to specify the format for timestamps, such as `unixnano`, `unix`, `rfc3339`, `rfc3339ms` or `rfc3339ns`.",
      "x-auditable": true
    }
  },
  "description": "The structured replacement for `logpull_options`. When including this field, the `logpull_option` field will be ignored."
}
string logpush_ownership_challenge
{
  "type": "string",
  "example": "00000000000000000000",
  "pattern": "^[a-zA-Z0-9/\\+\\._-]*$",
  "maxLength": 4096,
  "description": "Ownership challenge token to prove destination ownership.",
  "x-sensitive": true
}
integer logpush_sample
{
  "type": "integer",
  "example": 1,
  "description": "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.",
  "x-auditable": true
}
string logpush_schemas-destination_conf
{
  "type": "string",
  "format": "uri",
  "example": "wss://logs.cloudflare.com/instant-logs/ws/sessions/99d471b1ca3c23cc8e30b6acec5db987",
  "maxLength": 4096,
  "description": "Unique WebSocket address that will receive messages from Cloudflare’s edge.",
  "x-auditable": true
}
string logpush_schemas-filter
{
  "type": "string",
  "example": "{\"where\":{\"and\":[{\"key\":\"ClientCountry\",\"operator\":\"neq\",\"value\":\"ca\"}]}}",
  "description": "Filters to drill down into specific events.",
  "x-auditable": true
}
string logpush_session_id
{
  "type": "string",
  "example": "99d471b1ca3c23cc8e30b6acec5db987",
  "description": "Unique session id of the job.",
  "x-auditable": true
}
object logpush_validate_ownership_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/logpush_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "nullable": true,
          "properties": {
            "valid": {
              "type": "boolean",
              "example": true,
              "x-auditable": true
            }
          }
        }
      }
    }
  ]
}
object logpush_validate_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/logpush_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "nullable": true,
          "properties": {
            "valid": {
              "type": "boolean",
              "example": true,
              "x-auditable": true
            },
            "message": {
              "type": "string",
              "example": "",
              "x-auditable": true
            }
          }
        }
      }
    }
  ]
}
object logshare_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/logshare_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/logshare_messages"
        }
      ],
      "example": []
    }
  }
}
integer logshare_count
{
  "type": "integer",
  "minimum": 1,
  "description": "When `?count=` is provided, the response will contain up to `count` results. Since results are not sorted, you are likely to get different data for repeated requests. `count` must be an integer > 0.",
  "x-auditable": true
}
object logshare_end
{
  "anyOf": [
    {
      "type": "string"
    },
    {
      "type": "integer"
    }
  ],
  "example": "2018-05-20T10:01:00Z",
  "description": "Sets the (exclusive) end of the requested time frame. This can be a unix timestamp (in seconds or nanoseconds), or an absolute timestamp that conforms to RFC 3339. `end` must be at least five minutes earlier than now and must be later than `start`. Difference between `start` and `end` must be not greater than one hour.",
  "x-auditable": true
}
string logshare_fields
{
  "type": "string",
  "example": "ClientIP,RayID,EdgeStartTimestamp",
  "description": "The `/received` route by default returns a limited set of fields, and allows customers to override the default field set by specifying individual fields. The reasons for this are: 1. Most customers require only a small subset of fields, but that subset varies from customer to customer; 2. Flat schema is much easier to work with downstream (importing into BigTable etc); 3. Performance (time to process, file size). If `?fields=` is not specified, default field set is returned. This default field set may change at any time. When `?fields=` is provided, each record is returned with the specified fields. `fields` must be specified as a comma separated list without any whitespaces, and all fields must exist. The order in which fields are specified does not matter, and the order of fields in the response is not specified.",
  "x-auditable": true
}
object logshare_fields_response
{
  "type": "object",
  "properties": {
    "key": {
      "type": "string",
      "example": "value",
      "x-auditable": true
    }
  }
}
string logshare_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Identifier.",
  "x-auditable": true
}
object logshare_logs_response_json_lines
{
  "anyOf": [
    {
      "type": "string"
    },
    {
      "type": "object"
    }
  ],
  "example": "{\"ClientIP\":\"192.0.2.1\",\"RayID\":\"41ddf1740f67442d\",\"EdgeStartTimestamp\":1526810289280000000}\n{\"ClientIP\":\"192.0.2.1\",\"RayID\":\"41ddf1740f67442d\",\"EdgeStartTimestamp\":1526810289280000000}\n{\"ClientIP\":\"192.0.2.1\",\"RayID\":\"41ddf1740f67442d\",\"EdgeStartTimestamp\":1526810289280000000}"
}
array logshare_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string logshare_ray_identifier
{
  "type": "string",
  "example": "41ddf1740f67442d",
  "readOnly": true,
  "maxLength": 16,
  "description": "Ray identifier.",
  "x-auditable": true
}
number logshare_sample
{
  "type": "number",
  "example": 0.1,
  "maximum": 1,
  "minimum": 0,
  "description": "When `?sample=` is provided, a sample of matching records is returned. If `sample=0.1` then 10% of records will be returned. Sampling is random: repeated calls will not only return different records, but likely will also vary slightly in number of returned records. When `?count=` is also specified, `count` is applied to the number of returned records, not the sampled records. So, with `sample=0.05` and `count=7`, when there is a total of 100 records available, approximately five will be returned. When there are 1000 records, seven will be returned. When there are 10,000 records, seven will be returned.",
  "x-auditable": true
}
object logshare_start
{
  "anyOf": [
    {
      "type": "string"
    },
    {
      "type": "integer"
    }
  ],
  "example": "2018-05-20T10:00:00Z",
  "description": "Sets the (inclusive) beginning of the requested time frame. This can be a unix timestamp (in seconds or nanoseconds), or an absolute timestamp that conforms to RFC 3339. At this point in time, it cannot exceed a time in the past greater than seven days.",
  "x-auditable": true
}
string logshare_timestamps
{
  "enum": [
    "unix",
    "unixnano",
    "rfc3339"
  ],
  "type": "string",
  "default": "unixnano",
  "example": "unixnano",
  "description": "By default, timestamps in responses are returned as Unix nanosecond integers. The `?timestamps=` argument can be set to change the format in which response timestamps are returned. Possible values are: `unix`, `unixnano`, `rfc3339`. Note that `unix` and `unixnano` return timestamps as integers; `rfc3339` returns timestamps as strings.",
  "x-auditable": true
}
object logshare_zone_identifier
{
  "$ref": "#/components/schemas/logshare_identifier"
}
object magic-transit_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/magic-transit_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/magic-transit_messages"
    }
  }
}
object magic-transit_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/magic-transit_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/magic-transit_messages"
        }
      ],
      "example": []
    }
  }
}
string magic-transit_asn
{
  "type": "string",
  "description": "AS number associated with the node object."
}
string magic-transit_check_type
{
  "enum": [
    "icmp"
  ],
  "type": "string",
  "default": "icmp",
  "example": "icmp",
  "description": "type of check to perform"
}
object magic-transit_colo
{
  "type": "object",
  "properties": {
    "city": {
      "$ref": "#/components/schemas/magic-transit_colo_city"
    },
    "name": {
      "$ref": "#/components/schemas/magic-transit_colo_name"
    }
  }
}
string magic-transit_colo_city
{
  "type": "string",
  "example": "Denver, CO, US",
  "description": "Source colo city."
}
string magic-transit_colo_name
{
  "type": "string",
  "example": "den01",
  "description": "Source colo name."
}
object magic-transit_colo_result
{
  "type": "object",
  "properties": {
    "colo": {
      "$ref": "#/components/schemas/magic-transit_colo"
    },
    "hops": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/magic-transit_hop_result"
      }
    },
    "error": {
      "$ref": "#/components/schemas/magic-transit_error"
    },
    "target_summary": {
      "$ref": "#/components/schemas/magic-transit_target_summary"
    },
    "traceroute_time_ms": {
      "$ref": "#/components/schemas/magic-transit_traceroute_time_ms"
    }
  }
}
array magic-transit_colos
{
  "type": "array",
  "items": {
    "type": "string",
    "description": "Source colo name."
  },
  "example": [
    "den",
    "sin"
  ],
  "description": "If no source colo names specified, all colos will be used. China colos are unavailable for traceroutes."
}
object magic-transit_endpoint_health_check
{
  "type": "object",
  "required": [
    "check_type",
    "endpoint"
  ],
  "properties": {
    "name": {
      "type": "string",
      "example": "My Endpoint",
      "description": "Optional name associated with this check"
    },
    "endpoint": {
      "type": "string",
      "example": "203.0.113.1",
      "description": "the IP address of the host to perform checks against"
    },
    "check_type": {
      "$ref": "#/components/schemas/magic-transit_check_type"
    }
  }
}
object magic-transit_endpoint_health_check_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/magic-transit_endpoint_health_check"
    },
    {
      "properties": {
        "id": {
          "$ref": "#/components/schemas/magic-transit_uuid"
        }
      }
    }
  ],
  "required": [
    "id",
    "check_type",
    "endpoint"
  ]
}
object magic-transit_endpoint_health_check_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic-transit_api-response-common"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/magic-transit_endpoint_health_check_response"
          }
        }
      }
    }
  ]
}
object magic-transit_endpoint_health_check_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic-transit_api-response-common"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/magic-transit_endpoint_health_check_response"
        }
      }
    }
  ]
}
string magic-transit_error
{
  "enum": [
    "",
    "Could not gather traceroute data: Code 1",
    "Could not gather traceroute data: Code 2",
    "Could not gather traceroute data: Code 3",
    "Could not gather traceroute data: Code 4"
  ],
  "type": "string",
  "example": "",
  "description": "Errors resulting from collecting traceroute from colo to target."
}
object magic-transit_hop_result
{
  "type": "object",
  "properties": {
    "nodes": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/magic-transit_node_result"
      },
      "description": "An array of node objects."
    },
    "packets_ttl": {
      "$ref": "#/components/schemas/magic-transit_packets_ttl"
    },
    "packets_lost": {
      "$ref": "#/components/schemas/magic-transit_packets_lost"
    },
    "packets_sent": {
      "$ref": "#/components/schemas/magic-transit_packets_sent"
    }
  }
}
string magic-transit_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "readOnly": true,
  "maxLength": 32,
  "description": "Identifier"
}
string magic-transit_ip
{
  "type": "string",
  "description": "IP address of the node."
}
array magic-transit_labels
{
  "type": "array",
  "items": {
    "type": "string"
  },
  "description": "Field appears if there is an additional annotation printed when the probe returns. Field also appears when running a GRE+ICMP traceroute to denote which traceroute a node comes from."
}
number magic-transit_max_rtt_ms
{
  "type": "number",
  "description": "Maximum RTT in ms."
}
integer magic-transit_max_ttl
{
  "type": "integer",
  "default": 15,
  "maximum": 64,
  "minimum": 0,
  "description": "Max TTL."
}
number magic-transit_mean_rtt_ms
{
  "type": "number",
  "description": "Mean RTT in ms."
}
array magic-transit_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
number magic-transit_min_rtt_ms
{
  "type": "number",
  "description": "Minimum RTT in ms."
}
string magic-transit_name
{
  "type": "string",
  "description": "Host name of the address, this may be the same as the IP address."
}
object magic-transit_node_result
{
  "type": "object",
  "example": {
    "ip": "1.1.1.1",
    "asn": "AS13335",
    "name": "one.one.one.one",
    "packet_count": 3,
    "max_latency_ms": 0.034,
    "min_latency_ms": 0.014,
    "mean_latency_ms": 0.021,
    "std_dev_latency_ms": 0.011269427669584647
  },
  "properties": {
    "ip": {
      "$ref": "#/components/schemas/magic-transit_ip"
    },
    "asn": {
      "$ref": "#/components/schemas/magic-transit_asn"
    },
    "name": {
      "$ref": "#/components/schemas/magic-transit_name"
    },
    "labels": {
      "$ref": "#/components/schemas/magic-transit_labels"
    },
    "max_rtt_ms": {
      "$ref": "#/components/schemas/magic-transit_max_rtt_ms"
    },
    "min_rtt_ms": {
      "$ref": "#/components/schemas/magic-transit_min_rtt_ms"
    },
    "mean_rtt_ms": {
      "$ref": "#/components/schemas/magic-transit_mean_rtt_ms"
    },
    "packet_count": {
      "$ref": "#/components/schemas/magic-transit_packet_count"
    },
    "std_dev_rtt_ms": {
      "$ref": "#/components/schemas/magic-transit_std_dev_rtt_ms"
    }
  }
}
object magic-transit_options
{
  "type": "object",
  "example": {
    "max_ttl": 15,
    "packet_type": "icmp"
  },
  "properties": {
    "port": {
      "$ref": "#/components/schemas/magic-transit_port"
    },
    "max_ttl": {
      "$ref": "#/components/schemas/magic-transit_max_ttl"
    },
    "wait_time": {
      "$ref": "#/components/schemas/magic-transit_wait_time"
    },
    "packet_type": {
      "$ref": "#/components/schemas/magic-transit_packet_type"
    },
    "packets_per_ttl": {
      "$ref": "#/components/schemas/magic-transit_packets_per_ttl"
    }
  }
}
integer magic-transit_packet_count
{
  "type": "integer",
  "description": "Number of packets with a response from this node."
}
string magic-transit_packet_type
{
  "enum": [
    "icmp",
    "tcp",
    "udp",
    "gre",
    "gre+icmp"
  ],
  "type": "string",
  "default": "icmp",
  "example": "icmp",
  "description": "Type of packet sent."
}
integer magic-transit_packets_lost
{
  "type": "integer",
  "description": "Number of packets where no response was received."
}
integer magic-transit_packets_per_ttl
{
  "type": "integer",
  "default": 3,
  "maximum": 10,
  "minimum": 0,
  "description": "Number of packets sent at each TTL."
}
integer magic-transit_packets_sent
{
  "type": "integer",
  "description": "Number of packets sent with specified TTL."
}
integer magic-transit_packets_ttl
{
  "type": "integer",
  "description": "The time to live (TTL)."
}
integer magic-transit_port
{
  "type": "integer",
  "default": 0,
  "maximum": 65535,
  "minimum": 0,
  "description": "For UDP and TCP, specifies the destination port. For ICMP, specifies the initial ICMP sequence value. Default value 0 will choose the best value to use for each protocol."
}
number magic-transit_std_dev_rtt_ms
{
  "type": "number",
  "description": "Standard deviation of the RTTs in ms."
}
string magic-transit_target
{
  "type": "string",
  "example": "1.1.1.1",
  "description": "The target hostname, IPv6, or IPv6 address."
}
object magic-transit_target_result
{
  "type": "object",
  "properties": {
    "colos": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/magic-transit_colo_result"
      }
    },
    "target": {
      "$ref": "#/components/schemas/magic-transit_target"
    }
  }
}
object magic-transit_target_summary
{
  "type": "object",
  "example": {
    "ip": "1.1.1.1",
    "asn": "",
    "name": "1.1.1.1",
    "packet_count": 3,
    "max_latency_ms": 0.034,
    "min_latency_ms": 0.014,
    "mean_latency_ms": 0.021,
    "std_dev_latency_ms": 0.011269427669584647
  },
  "description": "Aggregated statistics from all hops about the target."
}
array magic-transit_targets
{
  "type": "array",
  "items": {
    "type": "string",
    "example": "203.0.113.1",
    "description": "Hosts as a hostname or IPv4/IPv6 address represented by strings."
  },
  "example": [
    "203.0.113.1",
    "cloudflare.com"
  ],
  "maxLength": 10
}
object magic-transit_traceroute_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic-transit_api-response-common"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/magic-transit_target_result"
          }
        }
      }
    }
  ]
}
integer magic-transit_traceroute_time_ms
{
  "type": "integer",
  "description": "Total time of traceroute in ms."
}
string magic-transit_uuid
{
  "type": "string",
  "example": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
  "maxLength": 36,
  "description": "UUID."
}
integer magic-transit_wait_time
{
  "type": "integer",
  "default": 1,
  "maximum": 5,
  "minimum": 1,
  "description": "Set the time (in seconds) to wait for a response to a probe."
}
string magic-visibility-mnm_account_identifier
{
  "type": "string",
  "example": "6f91088a406011ed95aed352566e8d4c",
  "x-auditable": true
}
object magic-visibility-mnm_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/magic-visibility-mnm_api-response-common"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {},
          "nullable": true
        },
        "result_info": {
          "$ref": "#/components/schemas/magic-visibility-mnm_result_info"
        }
      }
    }
  ]
}
object magic-visibility-mnm_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/magic-visibility-mnm_messages"
    },
    "result": {
      "anyOf": [
        {
          "type": "object"
        },
        {
          "type": "array",
          "items": {}
        },
        {
          "type": "string"
        }
      ]
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful"
    },
    "messages": {
      "$ref": "#/components/schemas/magic-visibility-mnm_messages"
    }
  }
}
object magic-visibility-mnm_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/magic-visibility-mnm_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful"
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/magic-visibility-mnm_messages"
        }
      ],
      "example": []
    }
  }
}
object magic-visibility-mnm_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/magic-visibility-mnm_api-response-common"
    },
    {
      "properties": {
        "result": {
          "anyOf": [
            {
              "type": "object",
              "nullable": true
            },
            {
              "type": "string",
              "nullable": true
            }
          ]
        }
      }
    }
  ]
}
array magic-visibility-mnm_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "message": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
object magic-visibility-mnm_mnm_config
{
  "type": "object",
  "required": [
    "name",
    "default_sampling",
    "router_ips",
    "warp_devices"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/magic-visibility-mnm_mnm_config_name"
    },
    "router_ips": {
      "$ref": "#/components/schemas/magic-visibility-mnm_mnm_config_router_ips"
    },
    "warp_devices": {
      "$ref": "#/components/schemas/magic-visibility-mnm_mnm_config_warp_devices"
    },
    "default_sampling": {
      "$ref": "#/components/schemas/magic-visibility-mnm_mnm_config_default_sampling"
    }
  }
}
number magic-visibility-mnm_mnm_config_default_sampling
{
  "type": "number",
  "default": 1,
  "minimum": 1,
  "description": "Fallback sampling rate of flow messages being sent in packets per second. This should match the packet sampling rate configured on the router.",
  "x-auditable": true
}
string magic-visibility-mnm_mnm_config_name
{
  "type": "string",
  "example": "cloudflare user's account",
  "description": "The account name.",
  "x-auditable": true
}
string magic-visibility-mnm_mnm_config_router_ip
{
  "type": "string",
  "example": "203.0.113.1",
  "description": "IPv4 CIDR of the router sourcing flow data. Only /32 addresses are currently supported.",
  "x-auditable": true
}
array magic-visibility-mnm_mnm_config_router_ips
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/magic-visibility-mnm_mnm_config_router_ip"
  }
}
object magic-visibility-mnm_mnm_config_single_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic-visibility-mnm_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/magic-visibility-mnm_mnm_config"
        }
      }
    }
  ]
}
object magic-visibility-mnm_mnm_config_warp_device
{
  "type": "object",
  "required": [
    "id",
    "name",
    "router_ip"
  ],
  "properties": {
    "id": {
      "type": "string",
      "example": "5360368d-b351-4791-abe1-93550dabd351",
      "description": "Unique identifier for the warp device.",
      "x-auditable": true
    },
    "name": {
      "type": "string",
      "example": "My warp device",
      "description": "Name of the warp device.",
      "x-auditable": true
    },
    "router_ip": {
      "type": "string",
      "example": "203.0.113.1",
      "description": "IPv4 CIDR of the router sourcing flow data associated with this warp device. Only /32 addresses are currently supported.",
      "x-auditable": true
    }
  },
  "description": "Object representing a warp device with an ID and name."
}
array magic-visibility-mnm_mnm_config_warp_devices
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/magic-visibility-mnm_mnm_config_warp_device"
  }
}
object magic-visibility-mnm_mnm_rule
{
  "type": "object",
  "nullable": true,
  "required": [
    "id",
    "name",
    "prefixes",
    "automatic_advertisement",
    "type"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/magic-visibility-mnm_rule_identifier"
    },
    "name": {
      "$ref": "#/components/schemas/magic-visibility-mnm_mnm_rule_name"
    },
    "type": {
      "$ref": "#/components/schemas/magic-visibility-mnm_mnm_rule_type"
    },
    "duration": {
      "$ref": "#/components/schemas/magic-visibility-mnm_mnm_rule_duration"
    },
    "prefixes": {
      "$ref": "#/components/schemas/magic-visibility-mnm_mnm_rule_ip_prefixes"
    },
    "prefix_match": {
      "$ref": "#/components/schemas/magic-visibility-mnm_mnm_rule_prefix_match"
    },
    "zscore_target": {
      "$ref": "#/components/schemas/magic-visibility-mnm_mnm_rule_zscore_target"
    },
    "packet_threshold": {
      "$ref": "#/components/schemas/magic-visibility-mnm_mnm_rule_packet_threshold"
    },
    "zscore_sensitivity": {
      "$ref": "#/components/schemas/magic-visibility-mnm_mnm_rule_zscore_sensitivity"
    },
    "bandwidth_threshold": {
      "$ref": "#/components/schemas/magic-visibility-mnm_mnm_rule_bandwidth_threshold"
    },
    "automatic_advertisement": {
      "$ref": "#/components/schemas/magic-visibility-mnm_mnm_rule_automatic_advertisement"
    }
  }
}
object magic-visibility-mnm_mnm_rule_advertisable_response
{
  "type": "object",
  "nullable": true,
  "required": [
    "automatic_advertisement"
  ],
  "properties": {
    "automatic_advertisement": {
      "$ref": "#/components/schemas/magic-visibility-mnm_mnm_rule_automatic_advertisement"
    }
  }
}
object magic-visibility-mnm_mnm_rule_advertisement_single_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic-visibility-mnm_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/magic-visibility-mnm_mnm_rule_advertisable_response"
        }
      }
    }
  ]
}
boolean magic-visibility-mnm_mnm_rule_automatic_advertisement
{
  "type": "boolean",
  "example": "false",
  "nullable": true,
  "description": "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.",
  "x-auditable": true
}
number magic-visibility-mnm_mnm_rule_bandwidth_threshold
{
  "type": "number",
  "example": 1000,
  "minimum": 1,
  "description": "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.",
  "x-auditable": true
}
object magic-visibility-mnm_mnm_rule_create
{
  "type": "object",
  "nullable": true,
  "required": [
    "name",
    "prefixes",
    "automatic_advertisement",
    "type"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/magic-visibility-mnm_mnm_rule_name"
    },
    "type": {
      "$ref": "#/components/schemas/magic-visibility-mnm_mnm_rule_type"
    },
    "duration": {
      "$ref": "#/components/schemas/magic-visibility-mnm_mnm_rule_duration"
    },
    "prefixes": {
      "$ref": "#/components/schemas/magic-visibility-mnm_mnm_rule_ip_prefixes"
    },
    "prefix_match": {
      "$ref": "#/components/schemas/magic-visibility-mnm_mnm_rule_prefix_match"
    },
    "zscore_target": {
      "$ref": "#/components/schemas/magic-visibility-mnm_mnm_rule_zscore_target"
    },
    "packet_threshold": {
      "$ref": "#/components/schemas/magic-visibility-mnm_mnm_rule_packet_threshold"
    },
    "zscore_sensitivity": {
      "$ref": "#/components/schemas/magic-visibility-mnm_mnm_rule_zscore_sensitivity"
    },
    "bandwidth_threshold": {
      "$ref": "#/components/schemas/magic-visibility-mnm_mnm_rule_bandwidth_threshold"
    },
    "automatic_advertisement": {
      "$ref": "#/components/schemas/magic-visibility-mnm_mnm_rule_automatic_advertisement"
    }
  }
}
string magic-visibility-mnm_mnm_rule_duration
{
  "enum": [
    "1m",
    "5m",
    "10m",
    "15m",
    "20m",
    "30m",
    "45m",
    "60m"
  ],
  "type": "string",
  "default": "1m",
  "example": "300s",
  "description": "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\"].",
  "x-auditable": true
}
string magic-visibility-mnm_mnm_rule_ip_prefix
{
  "type": "string",
  "example": "203.0.113.1/32",
  "description": "The IP prefixes that are monitored for this rule. Must be a CIDR range like 203.0.113.0/24. Max 5000 different CIDR ranges.",
  "x-auditable": true
}
array magic-visibility-mnm_mnm_rule_ip_prefixes
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/magic-visibility-mnm_mnm_rule_ip_prefix"
  }
}
string magic-visibility-mnm_mnm_rule_name
{
  "type": "string",
  "example": "my_rule_1",
  "description": "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.",
  "x-auditable": true
}
number magic-visibility-mnm_mnm_rule_packet_threshold
{
  "type": "number",
  "example": 10000,
  "minimum": 1,
  "description": "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.",
  "x-auditable": true
}
string magic-visibility-mnm_mnm_rule_prefix_match
{
  "enum": [
    "exact",
    "subnet",
    "supernet"
  ],
  "type": "string",
  "example": "exact",
  "nullable": true,
  "description": "Prefix match type to be applied for a prefix auto advertisement when using an advanced_ddos rule.",
  "x-auditable": true
}
string magic-visibility-mnm_mnm_rule_type
{
  "enum": [
    "threshold",
    "zscore",
    "advanced_ddos"
  ],
  "type": "string",
  "example": "zscore",
  "description": "MNM rule type.",
  "x-auditable": true
}
string magic-visibility-mnm_mnm_rule_zscore_sensitivity
{
  "enum": [
    "low",
    "medium",
    "high"
  ],
  "type": "string",
  "example": "high",
  "nullable": true,
  "description": "Level of sensitivity set for zscore rules.",
  "x-auditable": true
}
string magic-visibility-mnm_mnm_rule_zscore_target
{
  "enum": [
    "bits",
    "packets"
  ],
  "type": "string",
  "example": "bits",
  "nullable": true,
  "description": "Target of the zscore rule analysis.",
  "x-auditable": true
}
object magic-visibility-mnm_mnm_rules_collection_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic-visibility-mnm_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/magic-visibility-mnm_mnm_rule"
          },
          "nullable": true
        }
      }
    }
  ]
}
object magic-visibility-mnm_mnm_rules_single_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic-visibility-mnm_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/magic-visibility-mnm_mnm_rule"
        }
      }
    }
  ]
}
object magic-visibility-mnm_mnm_vpc_flows_single_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic-visibility-mnm_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/magic-visibility-mnm_mnm_vpc_flows_token"
        }
      }
    }
  ]
}
string magic-visibility-mnm_mnm_vpc_flows_token
{
  "type": "string",
  "example": "JWE/JWT auth token",
  "description": "Authentication token to be used for VPC Flows export authentication.",
  "x-sensitive": true
}
object magic-visibility-mnm_result_info
{
  "type": "object",
  "properties": {
    "page": {
      "type": "number",
      "example": 1,
      "description": "Current page within paginated list of results"
    },
    "count": {
      "type": "number",
      "example": 1,
      "description": "Total number of results for the requested service"
    },
    "per_page": {
      "type": "number",
      "example": 20,
      "description": "Number of results per page of results"
    },
    "total_count": {
      "type": "number",
      "example": 2000,
      "description": "Total results available without any search parameters"
    }
  }
}
string magic-visibility-mnm_rule_identifier
{
  "type": "string",
  "example": "2890e6fa406311ed9b5a23f70f6fb8cf",
  "description": "The id of the rule. Must be unique.",
  "x-auditable": true
}
object magic-visibility-pcaps_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/magic-visibility-pcaps_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {},
          "nullable": true
        },
        "result_info": {
          "$ref": "#/components/schemas/magic-visibility-pcaps_result_info"
        }
      }
    }
  ]
}
object magic-visibility-pcaps_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/magic-visibility-pcaps_messages"
    },
    "result": {
      "anyOf": [
        {
          "type": "object"
        },
        {
          "type": "array",
          "items": {}
        },
        {
          "type": "string"
        }
      ]
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/magic-visibility-pcaps_messages"
    }
  }
}
object magic-visibility-pcaps_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/magic-visibility-pcaps_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/magic-visibility-pcaps_messages"
        }
      ],
      "example": []
    }
  }
}
object magic-visibility-pcaps_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/magic-visibility-pcaps_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "anyOf": [
            {
              "type": "object"
            },
            {
              "type": "string"
            }
          ]
        }
      }
    }
  ]
}
string magic-visibility-pcaps_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "readOnly": true,
  "maxLength": 32,
  "description": "Identifier."
}
array magic-visibility-pcaps_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "message": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
number magic-visibility-pcaps_pcaps_byte_limit
{
  "type": "number",
  "example": 500000,
  "maximum": 1000000000,
  "minimum": 1,
  "description": "The maximum number of bytes to capture. This field only applies to `full` packet captures.",
  "x-auditable": true
}
object magic-visibility-pcaps_pcaps_collection_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic-visibility-pcaps_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_response_simple"
              },
              {
                "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_response_full"
              }
            ]
          }
        }
      }
    }
  ]
}
string magic-visibility-pcaps_pcaps_colo_name
{
  "type": "string",
  "example": "ord02",
  "description": "The name of the data center used for the packet capture. This can be a specific colo (ord02) or a multi-colo name (ORD). This field only applies to `full` packet captures.",
  "x-auditable": true
}
string magic-visibility-pcaps_pcaps_destination_conf
{
  "type": "string",
  "example": "s3://pcaps-bucket?region=us-east-1",
  "description": "The full URI for the bucket. This field only applies to `full` packet captures."
}
string magic-visibility-pcaps_pcaps_error_message
{
  "type": "string",
  "example": "No packets matched the filter in the time limit given. Please modify the filter or try again.",
  "description": "An error message that describes why the packet capture failed. This field only applies to `full` packet captures."
}
object magic-visibility-pcaps_pcaps_filter_v1
{
  "type": "object",
  "properties": {
    "protocol": {
      "type": "number",
      "example": 6,
      "description": "The protocol number of the packet.",
      "x-auditable": true
    },
    "source_port": {
      "type": "number",
      "example": 123,
      "description": "The source port of the packet.",
      "x-auditable": true
    },
    "source_address": {
      "type": "string",
      "example": "1.2.3.4",
      "description": "The source IP address of the packet.",
      "x-auditable": true
    },
    "destination_port": {
      "type": "number",
      "example": 80,
      "description": "The destination port of the packet.",
      "x-auditable": true
    },
    "destination_address": {
      "type": "string",
      "example": "1.2.3.4",
      "description": "The destination IP address of the packet.",
      "x-auditable": true
    }
  },
  "description": "The packet capture filter. When this field is empty, all packets are captured."
}
string magic-visibility-pcaps_pcaps_id
{
  "type": "string",
  "example": "66802ca5668e47a2b82c2e6746e45037",
  "maxLength": 32,
  "minLength": 32,
  "description": "The ID for the packet capture.",
  "x-auditable": true
}
string magic-visibility-pcaps_pcaps_offset_time
{
  "type": "string",
  "format": "date-time",
  "example": "2020-01-01T08:00:00Z",
  "description": "The RFC 3339 offset timestamp from which to query backwards for packets. Must be within the last 24h. When this field is empty, defaults to time of request.",
  "x-auditable": true
}
string magic-visibility-pcaps_pcaps_ownership_challenge
{
  "type": "string",
  "example": "ownership-challenge-9883874ecac311ec8475433579a6bf5f.txt",
  "description": "The ownership challenge filename stored in the bucket."
}
object magic-visibility-pcaps_pcaps_ownership_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic-visibility-pcaps_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_ownership_response"
          },
          "nullable": true
        }
      }
    }
  ]
}
object magic-visibility-pcaps_pcaps_ownership_request
{
  "type": "object",
  "required": [
    "destination_conf"
  ],
  "properties": {
    "destination_conf": {
      "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_destination_conf"
    }
  }
}
object magic-visibility-pcaps_pcaps_ownership_response
{
  "type": "object",
  "required": [
    "id",
    "status",
    "submitted",
    "destination_conf",
    "filename"
  ],
  "properties": {
    "id": {
      "type": "string",
      "example": "9883874ecac311ec8475433579a6bf5f",
      "maxLength": 32,
      "minLength": 32,
      "description": "The bucket ID associated with the packet captures API."
    },
    "status": {
      "enum": [
        "pending",
        "success",
        "failed"
      ],
      "type": "string",
      "example": "success",
      "description": "The status of the ownership challenge. Can be pending, success or failed."
    },
    "filename": {
      "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_ownership_challenge"
    },
    "submitted": {
      "type": "string",
      "example": "2020-01-01T08:00:00Z",
      "description": "The RFC 3339 timestamp when the bucket was added to packet captures API."
    },
    "validated": {
      "type": "string",
      "example": "2020-01-01T08:00:00Z",
      "description": "The RFC 3339 timestamp when the bucket was validated."
    },
    "destination_conf": {
      "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_destination_conf"
    }
  }
}
object magic-visibility-pcaps_pcaps_ownership_single_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic-visibility-pcaps_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_ownership_response"
        }
      }
    }
  ]
}
object magic-visibility-pcaps_pcaps_ownership_validate_request
{
  "type": "object",
  "required": [
    "destination_conf",
    "ownership_challenge"
  ],
  "properties": {
    "destination_conf": {
      "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_destination_conf"
    },
    "ownership_challenge": {
      "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_ownership_challenge"
    }
  }
}
number magic-visibility-pcaps_pcaps_packet_limit
{
  "type": "number",
  "example": 10000,
  "maximum": 10000,
  "minimum": 1,
  "description": "The limit of packets contained in a packet capture.",
  "x-auditable": true
}
integer magic-visibility-pcaps_pcaps_packets_captured
{
  "type": "integer",
  "description": "The number of packets captured."
}
object magic-visibility-pcaps_pcaps_request_full
{
  "type": "object",
  "required": [
    "time_limit",
    "type",
    "system",
    "colo_name",
    "destination_conf"
  ],
  "properties": {
    "type": {
      "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_type"
    },
    "system": {
      "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_system"
    },
    "colo_name": {
      "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_colo_name"
    },
    "filter_v1": {
      "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_filter_v1"
    },
    "byte_limit": {
      "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_byte_limit"
    },
    "time_limit": {
      "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_time_limit_full"
    },
    "packet_limit": {
      "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_packet_limit"
    },
    "destination_conf": {
      "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_destination_conf"
    }
  }
}
object magic-visibility-pcaps_pcaps_request_pcap
{
  "anyOf": [
    {
      "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_request_simple"
    },
    {
      "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_request_full"
    }
  ]
}
object magic-visibility-pcaps_pcaps_request_simple
{
  "type": "object",
  "required": [
    "time_limit",
    "packet_limit",
    "type",
    "system"
  ],
  "properties": {
    "type": {
      "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_type"
    },
    "system": {
      "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_system"
    },
    "filter_v1": {
      "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_filter_v1"
    },
    "time_limit": {
      "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_time_limit_sampled"
    },
    "offset_time": {
      "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_offset_time"
    },
    "packet_limit": {
      "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_packet_limit"
    }
  }
}
object magic-visibility-pcaps_pcaps_response_full
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_id"
    },
    "type": {
      "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_type"
    },
    "status": {
      "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_status"
    },
    "system": {
      "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_system"
    },
    "colo_name": {
      "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_colo_name"
    },
    "filter_v1": {
      "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_filter_v1"
    },
    "submitted": {
      "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_submitted"
    },
    "byte_limit": {
      "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_byte_limit"
    },
    "time_limit": {
      "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_time_limit_full"
    },
    "error_message": {
      "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_error_message"
    },
    "stop_requested": {
      "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_stop_requested"
    },
    "destination_conf": {
      "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_destination_conf"
    },
    "packets_captured": {
      "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_packets_captured"
    }
  }
}
object magic-visibility-pcaps_pcaps_response_simple
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_id"
    },
    "type": {
      "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_type"
    },
    "status": {
      "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_status"
    },
    "system": {
      "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_system"
    },
    "filter_v1": {
      "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_filter_v1"
    },
    "submitted": {
      "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_submitted"
    },
    "time_limit": {
      "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_time_limit_sampled"
    },
    "offset_time": {
      "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_offset_time"
    }
  }
}
object magic-visibility-pcaps_pcaps_single_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic-visibility-pcaps_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "anyOf": [
            {
              "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_response_simple"
            },
            {
              "$ref": "#/components/schemas/magic-visibility-pcaps_pcaps_response_full"
            }
          ]
        }
      }
    }
  ]
}
string magic-visibility-pcaps_pcaps_status
{
  "enum": [
    "unknown",
    "success",
    "pending",
    "running",
    "conversion_pending",
    "conversion_running",
    "complete",
    "failed"
  ],
  "type": "string",
  "example": "success",
  "description": "The status of the packet capture request."
}
string magic-visibility-pcaps_pcaps_stop_requested
{
  "type": "string",
  "format": "date-time",
  "description": "The RFC 3339 timestamp when stopping the packet capture was requested. This field only applies to `full` packet captures."
}
string magic-visibility-pcaps_pcaps_submitted
{
  "type": "string",
  "example": "2020-01-01T08:00:00Z",
  "description": "The RFC 3339 timestamp when the packet capture was created."
}
string magic-visibility-pcaps_pcaps_system
{
  "enum": [
    "magic-transit"
  ],
  "type": "string",
  "example": "magic-transit",
  "description": "The system used to collect packet captures.",
  "x-auditable": true
}
number magic-visibility-pcaps_pcaps_time_limit_full
{
  "type": "number",
  "example": 86400,
  "maximum": 86400,
  "minimum": 1,
  "description": "The packet capture duration in seconds.",
  "x-auditable": true
}
number magic-visibility-pcaps_pcaps_time_limit_sampled
{
  "type": "number",
  "example": 300,
  "maximum": 300,
  "minimum": 1,
  "description": "The packet capture duration in seconds.",
  "x-auditable": true
}
string magic-visibility-pcaps_pcaps_type
{
  "enum": [
    "simple",
    "full"
  ],
  "type": "string",
  "example": "simple",
  "description": "The type of packet capture. `Simple` captures sampled packets, and `full` captures entire payloads and non-sampled packets.",
  "x-auditable": true
}
object magic-visibility-pcaps_result_info
{
  "type": "object",
  "properties": {
    "page": {
      "type": "number",
      "example": 1,
      "description": "Current page within paginated list of results."
    },
    "count": {
      "type": "number",
      "example": 1,
      "description": "Total number of results for the requested service."
    },
    "per_page": {
      "type": "number",
      "example": 20,
      "description": "Number of results per page of results."
    },
    "total_count": {
      "type": "number",
      "example": 2000,
      "description": "Total results available without any search parameters."
    }
  }
}
object magic_account_app
{
  "type": "object",
  "title": "Account App",
  "required": [
    "account_app_id"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/magic_app_name"
    },
    "type": {
      "$ref": "#/components/schemas/magic_app_type"
    },
    "hostnames": {
      "$ref": "#/components/schemas/magic_app_hostnames"
    },
    "ip_subnets": {
      "$ref": "#/components/schemas/magic_app_subnets"
    },
    "account_app_id": {
      "$ref": "#/components/schemas/magic_account_app_id"
    },
    "source_subnets": {
      "$ref": "#/components/schemas/magic_app_source_subnets"
    }
  },
  "description": "Custom app defined for an account."
}
string magic_account_app_id
{
  "type": "string",
  "example": "ac60d3d0435248289d446cedd870bcf4",
  "description": "Magic account app ID."
}
object magic_acl
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/magic_identifier"
    },
    "name": {
      "type": "string",
      "example": "PIN Pad - Cash Register",
      "description": "The name of the ACL."
    },
    "lan_1": {
      "$ref": "#/components/schemas/magic_lan-acl-configuration"
    },
    "lan_2": {
      "$ref": "#/components/schemas/magic_lan-acl-configuration"
    },
    "protocols": {
      "type": "array",
      "items": {
        "enum": [
          "tcp",
          "udp",
          "icmp"
        ],
        "type": "string",
        "description": "Array of allowed communication protocols between configured LANs. If no protocols are provided, all protocols are allowed."
      }
    },
    "description": {
      "type": "string",
      "example": "Allows local traffic between PIN pads and cash register.",
      "description": "Description for the ACL."
    },
    "unidirectional": {
      "$ref": "#/components/schemas/magic_unidirectional"
    },
    "forward_locally": {
      "$ref": "#/components/schemas/magic_forward_locally"
    }
  },
  "description": "Bidirectional ACL policy for network traffic within a site."
}
string magic_acl-port-range
{
  "type": "string",
  "example": "8080-9000",
  "description": "A valid port range value."
}
object magic_acl-subnet
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/magic_ip-address"
    },
    {
      "$ref": "#/components/schemas/magic_cidr"
    }
  ]
}
object magic_acl_deleted_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/magic_acl"
        }
      }
    }
  ]
}
object magic_acl_modified_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/magic_acl"
        }
      }
    }
  ]
}
object magic_acl_single_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/magic_acl"
        }
      }
    }
  ]
}
object magic_acl_update_request
{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "example": "PIN Pad - Cash Register",
      "description": "The name of the ACL."
    },
    "lan_1": {
      "$ref": "#/components/schemas/magic_lan-acl-configuration"
    },
    "lan_2": {
      "$ref": "#/components/schemas/magic_lan-acl-configuration"
    },
    "protocols": {
      "type": "array",
      "items": {
        "enum": [
          "tcp",
          "udp",
          "icmp"
        ],
        "type": "string",
        "description": "Array of allowed communication protocols between configured LANs. If no protocols are provided, all protocols are allowed."
      }
    },
    "description": {
      "type": "string",
      "example": "Allows local traffic between PIN pads and cash register.",
      "description": "Description for the ACL."
    },
    "unidirectional": {
      "$ref": "#/components/schemas/magic_unidirectional"
    },
    "forward_locally": {
      "$ref": "#/components/schemas/magic_forward_locally"
    }
  }
}
object magic_acls_add_single_request
{
  "type": "object",
  "required": [
    "name",
    "lan_1",
    "lan_2"
  ],
  "properties": {
    "name": {
      "type": "string",
      "example": "PIN Pad - Cash Register",
      "description": "The name of the ACL."
    },
    "lan_1": {
      "$ref": "#/components/schemas/magic_lan-acl-configuration"
    },
    "lan_2": {
      "$ref": "#/components/schemas/magic_lan-acl-configuration"
    },
    "protocols": {
      "type": "array",
      "items": {
        "enum": [
          "tcp",
          "udp",
          "icmp"
        ],
        "type": "string",
        "description": "Array of allowed communication protocols between configured LANs. If no protocols are provided, all protocols are allowed."
      }
    },
    "description": {
      "type": "string",
      "example": "Allows local traffic between PIN pads and cash register.",
      "description": "Description for the ACL."
    },
    "unidirectional": {
      "$ref": "#/components/schemas/magic_unidirectional"
    },
    "forward_locally": {
      "$ref": "#/components/schemas/magic_forward_locally"
    }
  },
  "description": "Bidirectional ACL policy for local network traffic within a site."
}
object magic_acls_collection_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/magic_acl"
          }
        }
      }
    }
  ]
}
boolean magic_allow_null_cipher
{
  "type": "boolean",
  "example": true,
  "description": "When `true`, the tunnel can use a null-cipher (`ENCR_NULL`) in the ESP tunnel (Phase 2)."
}
object magic_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/magic_messages"
    },
    "result": {
      "anyOf": [
        {
          "type": "object"
        },
        {
          "type": "array",
          "items": {}
        },
        {
          "type": "string"
        }
      ]
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful"
    },
    "messages": {
      "$ref": "#/components/schemas/magic_messages"
    }
  }
}
object magic_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/magic_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful"
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/magic_messages"
        }
      ],
      "example": []
    }
  }
}
object magic_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_api-response-common"
    },
    {
      "properties": {
        "result": {
          "anyOf": [
            {
              "type": "object",
              "nullable": true
            },
            {
              "type": "string",
              "nullable": true
            }
          ]
        }
      }
    }
  ]
}
object magic_app
{
  "type": "object",
  "oneOf": [
    {
      "$ref": "#/components/schemas/magic_account_app"
    },
    {
      "$ref": "#/components/schemas/magic_managed_app"
    }
  ],
  "description": "Collection of Hostnames and/or IP Subnets to associate with traffic decisions."
}
object magic_app_add_single_request
{
  "type": "object",
  "anyOf": [
    {
      "title": "Hostnames",
      "required": [
        "hostnames"
      ]
    },
    {
      "title": "Subnets",
      "required": [
        "ip_subnets"
      ]
    },
    {
      "title": "Source Subnets",
      "required": [
        "source_subnets"
      ]
    }
  ],
  "required": [
    "name",
    "type"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/magic_app_name"
    },
    "type": {
      "$ref": "#/components/schemas/magic_app_type"
    },
    "hostnames": {
      "$ref": "#/components/schemas/magic_app_hostnames"
    },
    "ip_subnets": {
      "$ref": "#/components/schemas/magic_app_subnets"
    },
    "source_subnets": {
      "$ref": "#/components/schemas/magic_app_source_subnets"
    }
  }
}
boolean magic_app_breakout
{
  "type": "boolean",
  "example": true,
  "description": "Whether to breakout traffic to the app's endpoints directly. Null preserves default behavior."
}
array magic_app_breakout_preferred_wans
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/magic_identifier"
  },
  "description": "WAN interfaces to prefer over default WANs, highest-priority first. Can only be specified for breakout rules (breakout must be true)."
}
object magic_app_config
{
  "type": "object",
  "allOf": [
    {
      "required": [
        "id",
        "site_id"
      ],
      "properties": {
        "id": {
          "$ref": "#/components/schemas/magic_identifier"
        },
        "site_id": {
          "$ref": "#/components/schemas/magic_identifier"
        },
        "breakout": {
          "$ref": "#/components/schemas/magic_app_breakout"
        },
        "priority": {
          "$ref": "#/components/schemas/magic_app_priority"
        },
        "preferred_wans": {
          "$ref": "#/components/schemas/magic_app_breakout_preferred_wans"
        }
      }
    },
    {
      "oneOf": [
        {
          "title": "Account App",
          "required": [
            "account_app_id"
          ],
          "properties": {
            "account_app_id": {
              "$ref": "#/components/schemas/magic_account_app_id"
            }
          }
        },
        {
          "title": "Managed App",
          "required": [
            "managed_app_id"
          ],
          "properties": {
            "managed_app_id": {
              "$ref": "#/components/schemas/magic_managed_app_id"
            }
          }
        }
      ]
    }
  ],
  "description": "Traffic decision configuration for an app."
}
object magic_app_config_add_single_request
{
  "type": "object",
  "allOf": [
    {
      "oneOf": [
        {
          "title": "Account App",
          "required": [
            "account_app_id"
          ],
          "properties": {
            "account_app_id": {
              "$ref": "#/components/schemas/magic_account_app_id"
            }
          }
        },
        {
          "title": "Managed App",
          "required": [
            "managed_app_id"
          ],
          "properties": {
            "managed_app_id": {
              "$ref": "#/components/schemas/magic_managed_app_id"
            }
          }
        }
      ]
    },
    {
      "anyOf": [
        {
          "title": "Breakout",
          "required": [
            "breakout"
          ]
        },
        {
          "title": "Prioritize",
          "required": [
            "priority"
          ]
        }
      ]
    },
    {
      "properties": {
        "breakout": {
          "$ref": "#/components/schemas/magic_app_breakout"
        },
        "priority": {
          "$ref": "#/components/schemas/magic_app_priority"
        },
        "preferred_wans": {
          "$ref": "#/components/schemas/magic_app_breakout_preferred_wans"
        }
      }
    }
  ]
}
object magic_app_config_single_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_apps-response-object"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/magic_app_config"
        }
      }
    }
  ]
}
object magic_app_config_update_request
{
  "type": "object",
  "properties": {
    "breakout": {
      "$ref": "#/components/schemas/magic_app_breakout"
    },
    "priority": {
      "$ref": "#/components/schemas/magic_app_priority"
    },
    "account_app_id": {
      "$ref": "#/components/schemas/magic_account_app_id"
    },
    "managed_app_id": {
      "$ref": "#/components/schemas/magic_managed_app_id"
    },
    "preferred_wans": {
      "$ref": "#/components/schemas/magic_app_breakout_preferred_wans"
    }
  }
}
object magic_app_configs_collection_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_apps-response-object"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/magic_app_config"
          }
        }
      }
    }
  ]
}
array magic_app_hostnames
{
  "type": "array",
  "items": {
    "type": "string",
    "example": "auth.cloudflare.com"
  },
  "description": "FQDNs to associate with traffic decisions."
}
string magic_app_name
{
  "type": "string",
  "example": "Cloudflare Dashboard",
  "description": "Display name for the app."
}
integer magic_app_priority
{
  "type": "integer",
  "maximum": 1,
  "minimum": 0,
  "description": "Priority of traffic. 0 is default, anything greater is prioritized. (Currently only 0 and 1 are supported)"
}
object magic_app_single_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_apps-response-object"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/magic_account_app"
        }
      }
    }
  ]
}
array magic_app_source_subnets
{
  "type": "array",
  "items": {
    "allOf": [
      {
        "$ref": "#/components/schemas/magic_cidr"
      },
      {
        "example": "1.1.1.1/32"
      }
    ]
  },
  "description": "IPv4 CIDRs to associate with traffic decisions. (IPv6 CIDRs are currently unsupported)"
}
array magic_app_subnets
{
  "type": "array",
  "items": {
    "allOf": [
      {
        "$ref": "#/components/schemas/magic_cidr"
      },
      {
        "example": "1.1.1.1/32"
      }
    ]
  },
  "description": "IPv4 CIDRs to associate with traffic decisions. (IPv6 CIDRs are currently unsupported)"
}
string magic_app_type
{
  "type": "string",
  "example": "Development",
  "description": "Category of the app."
}
object magic_app_update_request
{
  "type": "object",
  "anyOf": [
    {
      "title": "Update App Name",
      "required": [
        "name"
      ]
    },
    {
      "title": "Update App Type",
      "required": [
        "type"
      ]
    },
    {
      "title": "Update App Hostnames",
      "required": [
        "hostnames"
      ]
    },
    {
      "title": "Update App Subnets",
      "required": [
        "ip_subnets"
      ]
    },
    {
      "title": "Update App Source Subnets",
      "required": [
        "source_subnets"
      ]
    }
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/magic_app_name"
    },
    "type": {
      "$ref": "#/components/schemas/magic_app_type"
    },
    "hostnames": {
      "$ref": "#/components/schemas/magic_app_hostnames"
    },
    "ip_subnets": {
      "$ref": "#/components/schemas/magic_app_subnets"
    },
    "source_subnets": {
      "$ref": "#/components/schemas/magic_app_source_subnets"
    }
  }
}
object magic_apps-response-array
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/magic_messages"
    },
    "result": {
      "type": "array",
      "items": {},
      "nullable": true
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful"
    },
    "messages": {
      "$ref": "#/components/schemas/magic_messages"
    }
  }
}
object magic_apps-response-object
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/magic_messages"
    },
    "result": {
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful"
    },
    "messages": {
      "$ref": "#/components/schemas/magic_messages"
    }
  }
}
object magic_apps_collection_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_apps-response-array"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/magic_app"
          }
        }
      }
    }
  ]
}
boolean magic_automatic_return_routing
{
  "type": "boolean",
  "default": false,
  "example": true,
  "description": "True if automatic stateful return routing should be enabled for a tunnel, false otherwise.",
  "x-auditable": true
}
object magic_bgp_config
{
  "type": "object",
  "required": [
    "customer_asn"
  ],
  "properties": {
    "md5_key": {
      "type": "string",
      "description": "MD5 key to use for session authentication.\n\nNote that *this is not a security measure*. MD5 is not a valid security mechanism, and the\nkey is not treated as a secret value. This is *only* supported for preventing\nmisconfiguration, not for defending against malicious attacks.\n\nThe MD5 key, if set, must be of non-zero length and consist only of the following types of\ncharacter:\n\n* ASCII alphanumerics: `[a-zA-Z0-9]`\n* Special characters in the set `'!@#$%^&*()+[]{}<>/.,;:_-~`= \\|`\n\nIn other words, MD5 keys may contain any printable ASCII character aside from newline (0x0A),\nquotation mark (`\"`), vertical tab (0x0B), carriage return (0x0D), tab (0x09), form feed\n(0x0C), and the question mark (`?`). Requests specifying an MD5 key with one or more of\nthese disallowed characters will be rejected."
    },
    "customer_asn": {
      "type": "integer",
      "format": "int32",
      "minimum": 0,
      "description": "ASN used on the customer end of the BGP session"
    },
    "extra_prefixes": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "cidr"
      },
      "description": "Prefixes in this list will be advertised to the customer device, in addition to the routes in the Magic routing table."
    }
  }
}
object magic_bgp_status_with_state
{
  "type": "object",
  "required": [
    "state",
    "tcp_established",
    "updated_at"
  ],
  "properties": {
    "state": {
      "enum": [
        "BGP_DOWN",
        "BGP_UP",
        "BGP_ESTABLISHING"
      ],
      "type": "string"
    },
    "bgp_state": {
      "type": "string"
    },
    "updated_at": {
      "type": "string",
      "format": "date-time"
    },
    "cf_speaker_ip": {
      "type": "string",
      "format": "ipv4"
    },
    "cf_speaker_port": {
      "type": "integer",
      "maximum": 65535,
      "minimum": 1
    },
    "tcp_established": {
      "type": "boolean"
    },
    "customer_speaker_ip": {
      "type": "string",
      "format": "ipv4"
    },
    "customer_speaker_port": {
      "type": "integer",
      "maximum": 65535,
      "minimum": 1
    }
  }
}
integer magic_bond_id
{
  "type": "integer",
  "example": 2
}
string magic_cidr
{
  "type": "string",
  "example": "192.0.2.0/24",
  "description": "A valid CIDR notation representing an IP range."
}
string magic_cloudflare_gre_endpoint
{
  "type": "string",
  "example": "203.0.113.1",
  "description": "The IP address assigned to the Cloudflare side of the GRE tunnel.",
  "x-auditable": true
}
string magic_cloudflare_ipsec_endpoint
{
  "type": "string",
  "example": "203.0.113.1",
  "description": "The IP address assigned to the Cloudflare side of the IPsec tunnel."
}
string magic_colo_name
{
  "type": "string",
  "example": "den01",
  "description": "Scope colo name.",
  "x-auditable": true
}
array magic_colo_names
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/magic_colo_name"
  },
  "description": "List of colo names for the ECMP scope."
}
string magic_colo_region
{
  "type": "string",
  "example": "APAC",
  "description": "Scope colo region.",
  "x-auditable": true
}
array magic_colo_regions
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/magic_colo_region"
  },
  "description": "List of colo regions for the ECMP scope.",
  "x-auditable": true
}
string magic_components-schemas-description
{
  "type": "string",
  "example": "Tunnel for ISP X",
  "description": "An optional description forthe IPsec tunnel."
}
object magic_components-schemas-modified_tunnels_collection_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_api-response-single"
    },
    {
      "properties": {
        "result": {
          "properties": {
            "modified": {
              "type": "boolean",
              "example": true
            },
            "modified_interconnects": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/magic_interconnect"
              }
            }
          }
        }
      }
    }
  ]
}
string magic_components-schemas-name
{
  "type": "string",
  "example": "pni_ord",
  "description": "The name of the interconnect. The name cannot share a name with other tunnels."
}
object magic_components-schemas-tunnel_modified_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "modified": {
              "type": "boolean",
              "example": true
            },
            "modified_interconnect": {
              "$ref": "#/components/schemas/magic_interconnect"
            }
          }
        }
      }
    }
  ]
}
object magic_components-schemas-tunnel_single_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "interconnect": {
              "$ref": "#/components/schemas/magic_interconnect"
            }
          }
        }
      }
    }
  ]
}
object magic_components-schemas-tunnels_collection_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_api-response-single"
    },
    {
      "properties": {
        "result": {
          "properties": {
            "interconnects": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/magic_interconnect"
              }
            }
          }
        }
      }
    }
  ]
}
string magic_connector-id
{
  "type": "string",
  "example": "ac60d3d0435248289d446cedd870bcf4",
  "description": "Magic Connector identifier tag.",
  "x-auditable": true
}
object magic_create_gre_tunnel_request
{
  "type": "object",
  "required": [
    "name",
    "customer_gre_endpoint",
    "cloudflare_gre_endpoint",
    "interface_address"
  ],
  "properties": {
    "bgp": {
      "$ref": "#/components/schemas/magic_bgp_config"
    },
    "mtu": {
      "$ref": "#/components/schemas/magic_mtu"
    },
    "ttl": {
      "$ref": "#/components/schemas/magic_ttl"
    },
    "name": {
      "$ref": "#/components/schemas/magic_gre_tunnel_name"
    },
    "description": {
      "$ref": "#/components/schemas/magic_schemas-description"
    },
    "health_check": {
      "$ref": "#/components/schemas/magic_tunnel_health_check"
    },
    "interface_address": {
      "$ref": "#/components/schemas/magic_interface_address"
    },
    "interface_address6": {
      "$ref": "#/components/schemas/magic_interface_address6"
    },
    "customer_gre_endpoint": {
      "$ref": "#/components/schemas/magic_customer_gre_endpoint"
    },
    "cloudflare_gre_endpoint": {
      "$ref": "#/components/schemas/magic_cloudflare_gre_endpoint"
    },
    "automatic_return_routing": {
      "$ref": "#/components/schemas/magic_automatic_return_routing"
    }
  }
}
object magic_create_gre_tunnel_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/magic_gre-tunnel"
        }
      }
    }
  ]
}
object magic_create_route_request
{
  "type": "object",
  "required": [
    "prefix",
    "nexthop",
    "priority"
  ],
  "properties": {
    "scope": {
      "$ref": "#/components/schemas/magic_scope"
    },
    "prefix": {
      "$ref": "#/components/schemas/magic_prefix"
    },
    "weight": {
      "$ref": "#/components/schemas/magic_weight"
    },
    "nexthop": {
      "$ref": "#/components/schemas/magic_nexthop"
    },
    "priority": {
      "$ref": "#/components/schemas/magic_priority"
    },
    "description": {
      "$ref": "#/components/schemas/magic_description"
    }
  }
}
object magic_create_route_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/magic_route"
        }
      }
    }
  ]
}
string magic_created_on
{
  "type": "string",
  "format": "date-time",
  "example": "2017-06-14T00:00:00Z",
  "readOnly": true,
  "description": "When the route was created.",
  "x-auditable": true
}
object magic_custom_remote_identities
{
  "type": "object",
  "properties": {
    "fqdn_id": {
      "type": "string",
      "description": "A custom IKE ID of type FQDN that may be used to identity the IPsec tunnel. The\ngenerated IKE IDs can still be used even if this custom value is specified.\n\nMust be of the form `<custom label>.<account ID>.custom.ipsec.cloudflare.com`.\n\nThis custom ID does not need to be unique. Two IPsec tunnels may have the same custom\nfqdn_id. However, if another IPsec tunnel has the same value then the two tunnels\ncannot have the same cloudflare_endpoint."
    }
  }
}
string magic_customer_gre_endpoint
{
  "type": "string",
  "example": "203.0.113.1",
  "description": "The IP address assigned to the customer side of the GRE tunnel.",
  "x-auditable": true
}
string magic_customer_ipsec_endpoint
{
  "type": "string",
  "example": "203.0.113.1",
  "description": "The IP address assigned to the customer side of the IPsec tunnel. Not required, but must be set for proactive traceroutes to work."
}
string magic_description
{
  "type": "string",
  "example": "New route for new prefix 203.0.113.1",
  "description": "An optional human provided description of the static route.",
  "x-auditable": true
}
boolean magic_forward_locally
{
  "type": "boolean",
  "description": "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."
}
object magic_gre
{
  "type": "object",
  "properties": {
    "cloudflare_endpoint": {
      "type": "string",
      "example": "203.0.113.1",
      "description": "The IP address assigned to the Cloudflare side of the GRE tunnel created as part of the Interconnect."
    }
  },
  "description": "The configuration specific to GRE interconnects."
}
object magic_gre-tunnel
{
  "type": "object",
  "required": [
    "id",
    "name",
    "customer_gre_endpoint",
    "cloudflare_gre_endpoint",
    "interface_address"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/magic_schemas-identifier"
    },
    "bgp": {
      "$ref": "#/components/schemas/magic_bgp_config"
    },
    "mtu": {
      "$ref": "#/components/schemas/magic_mtu"
    },
    "ttl": {
      "$ref": "#/components/schemas/magic_ttl"
    },
    "name": {
      "$ref": "#/components/schemas/magic_gre_tunnel_name"
    },
    "bgp_status": {
      "$ref": "#/components/schemas/magic_bgp_status_with_state"
    },
    "created_on": {
      "$ref": "#/components/schemas/magic_schemas-created_on"
    },
    "description": {
      "$ref": "#/components/schemas/magic_schemas-description"
    },
    "modified_on": {
      "$ref": "#/components/schemas/magic_schemas-modified_on"
    },
    "health_check": {
      "$ref": "#/components/schemas/magic_tunnel_health_check"
    },
    "interface_address": {
      "$ref": "#/components/schemas/magic_interface_address"
    },
    "interface_address6": {
      "$ref": "#/components/schemas/magic_interface_address6"
    },
    "customer_gre_endpoint": {
      "$ref": "#/components/schemas/magic_customer_gre_endpoint"
    },
    "cloudflare_gre_endpoint": {
      "$ref": "#/components/schemas/magic_cloudflare_gre_endpoint"
    },
    "automatic_return_routing": {
      "$ref": "#/components/schemas/magic_automatic_return_routing"
    }
  }
}
object magic_gre_tunnel_add_single_request
{
  "type": "object",
  "required": [
    "name",
    "customer_gre_endpoint",
    "cloudflare_gre_endpoint",
    "interface_address"
  ],
  "properties": {
    "mtu": {
      "$ref": "#/components/schemas/magic_mtu"
    },
    "ttl": {
      "$ref": "#/components/schemas/magic_ttl"
    },
    "name": {
      "$ref": "#/components/schemas/magic_gre_tunnel_name"
    },
    "description": {
      "$ref": "#/components/schemas/magic_schemas-description"
    },
    "health_check": {
      "$ref": "#/components/schemas/magic_tunnel_health_check"
    },
    "interface_address": {
      "$ref": "#/components/schemas/magic_interface_address"
    },
    "interface_address6": {
      "$ref": "#/components/schemas/magic_interface_address6"
    },
    "customer_gre_endpoint": {
      "$ref": "#/components/schemas/magic_customer_gre_endpoint"
    },
    "cloudflare_gre_endpoint": {
      "$ref": "#/components/schemas/magic_cloudflare_gre_endpoint"
    },
    "automatic_return_routing": {
      "$ref": "#/components/schemas/magic_automatic_return_routing"
    }
  }
}
string magic_gre_tunnel_name
{
  "type": "string",
  "example": "GRE_1",
  "description": "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.",
  "x-auditable": true
}
object magic_gre_tunnel_update_request
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_gre_tunnel_add_single_request"
    }
  ]
}
object magic_health_check_base
{
  "type": "object",
  "properties": {
    "rate": {
      "enum": [
        "low",
        "mid",
        "high"
      ],
      "type": "string",
      "default": "mid",
      "example": "low",
      "description": "How frequent the health check is run. The default value is `mid`.",
      "x-auditable": true
    },
    "type": {
      "enum": [
        "reply",
        "request"
      ],
      "type": "string",
      "default": "reply",
      "example": "request",
      "description": "The type of healthcheck to run, reply or request. The default value is `reply`.",
      "x-auditable": true
    },
    "target": {
      "oneOf": [
        {
          "$ref": "#/components/schemas/magic_health_check_target"
        },
        {
          "type": "string"
        }
      ],
      "description": "The destination address in a request type health check. After the healthcheck is decapsulated at the customer end of the tunnel, the ICMP echo will be forwarded to this address. This field defaults to `customer_gre_endpoint address`. This field is ignored for bidirectional healthchecks as the interface_address (not assigned to the Cloudflare side of the tunnel) is used as the target. Must be in object form if the x-magic-new-hc-target header is set to true and string form if x-magic-new-hc-target is absent or set to false."
    },
    "enabled": {
      "type": "boolean",
      "default": true,
      "example": true,
      "description": "Determines whether to run healthchecks for a tunnel.",
      "x-auditable": true
    }
  }
}
object magic_health_check_target
{
  "type": "object",
  "properties": {
    "saved": {
      "type": "string",
      "example": "203.0.113.1",
      "description": "The saved health check target. Setting the value to the empty string indicates that the calculated default value will be used.",
      "x-auditable": true
    },
    "effective": {
      "type": "string",
      "example": "203.0.113.1",
      "readOnly": true,
      "description": "The effective health check target. If 'saved' is empty, then this field will be populated with the calculated default value on GET requests. Ignored in POST, PUT, and PATCH requests.",
      "x-auditable": true
    }
  },
  "description": "The destination address in a request type health check. After the healthcheck is decapsulated at the customer end of the tunnel, the ICMP echo will be forwarded to this address. This field defaults to `customer_gre_endpoint address`. This field is ignored for bidirectional healthchecks as the interface_address (not assigned to the Cloudflare side of the tunnel) is used as the target."
}
string magic_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "readOnly": true,
  "maxLength": 32,
  "description": "Identifier"
}
object magic_interconnect
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/magic_schemas-identifier"
    },
    "gre": {
      "$ref": "#/components/schemas/magic_gre"
    },
    "mtu": {
      "$ref": "#/components/schemas/magic_schemas-mtu"
    },
    "name": {
      "$ref": "#/components/schemas/magic_components-schemas-name"
    },
    "colo_name": {
      "$ref": "#/components/schemas/magic_components-schemas-name"
    },
    "created_on": {
      "$ref": "#/components/schemas/magic_schemas-created_on"
    },
    "description": {
      "$ref": "#/components/schemas/magic_interconnect_components-schemas-description"
    },
    "modified_on": {
      "$ref": "#/components/schemas/magic_schemas-modified_on"
    },
    "health_check": {
      "$ref": "#/components/schemas/magic_health_check_base"
    },
    "interface_address": {
      "$ref": "#/components/schemas/magic_interface_address"
    },
    "interface_address6": {
      "$ref": "#/components/schemas/magic_interface_address6"
    },
    "automatic_return_routing": {
      "$ref": "#/components/schemas/magic_automatic_return_routing"
    },
    "virtual_port_reservation_id": {
      "allOf": [
        {
          "$ref": "#/components/schemas/magic_schemas-identifier"
        },
        {
          "readOnly": true,
          "description": "An identifier that correlates this interconnect with the corresponding V2 CNI interconnect resource."
        }
      ]
    }
  }
}
string magic_interconnect_components-schemas-description
{
  "type": "string",
  "example": "Tunnel for Interconnect to ORD",
  "description": "An optional description of the interconnect."
}
object magic_interconnect_health_check
{
  "$ref": "#/components/schemas/magic_health_check_base"
}
object magic_interconnect_tunnel_update_request
{
  "type": "object",
  "properties": {
    "gre": {
      "$ref": "#/components/schemas/magic_gre"
    },
    "mtu": {
      "$ref": "#/components/schemas/magic_schemas-mtu"
    },
    "name": {
      "$ref": "#/components/schemas/magic_components-schemas-name"
    },
    "description": {
      "$ref": "#/components/schemas/magic_interconnect_components-schemas-description"
    },
    "health_check": {
      "$ref": "#/components/schemas/magic_health_check_base"
    },
    "interface_address": {
      "$ref": "#/components/schemas/magic_interface_address"
    },
    "interface_address6": {
      "$ref": "#/components/schemas/magic_interface_address6"
    },
    "automatic_return_routing": {
      "$ref": "#/components/schemas/magic_automatic_return_routing"
    }
  }
}
string magic_interface_address
{
  "type": "string",
  "example": "192.0.2.0/31",
  "description": "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.",
  "x-auditable": true
}
string magic_interface_address6
{
  "type": "string",
  "example": "2606:54c1:7:0:a9fe:12d2:1:200/127",
  "description": "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",
  "x-auditable": true
}
string magic_ip-address
{
  "type": "string",
  "example": "192.0.2.1",
  "description": "A valid IPv4 address."
}
object magic_ipsec-tunnel
{
  "type": "object",
  "required": [
    "id",
    "name",
    "cloudflare_endpoint",
    "interface_address"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/magic_schemas-identifier"
    },
    "bgp": {
      "$ref": "#/components/schemas/magic_bgp_config"
    },
    "name": {
      "$ref": "#/components/schemas/magic_ipsec_tunnel_name"
    },
    "bgp_status": {
      "$ref": "#/components/schemas/magic_bgp_status_with_state"
    },
    "created_on": {
      "$ref": "#/components/schemas/magic_schemas-created_on"
    },
    "description": {
      "$ref": "#/components/schemas/magic_components-schemas-description"
    },
    "modified_on": {
      "$ref": "#/components/schemas/magic_schemas-modified_on"
    },
    "health_check": {
      "$ref": "#/components/schemas/magic_tunnel_health_check"
    },
    "psk_metadata": {
      "$ref": "#/components/schemas/magic_psk_metadata"
    },
    "allow_null_cipher": {
      "$ref": "#/components/schemas/magic_allow_null_cipher"
    },
    "customer_endpoint": {
      "$ref": "#/components/schemas/magic_customer_ipsec_endpoint"
    },
    "interface_address": {
      "$ref": "#/components/schemas/magic_interface_address"
    },
    "replay_protection": {
      "$ref": "#/components/schemas/magic_replay_protection"
    },
    "interface_address6": {
      "$ref": "#/components/schemas/magic_interface_address6"
    },
    "cloudflare_endpoint": {
      "$ref": "#/components/schemas/magic_cloudflare_ipsec_endpoint"
    },
    "automatic_return_routing": {
      "$ref": "#/components/schemas/magic_automatic_return_routing"
    },
    "custom_remote_identities": {
      "$ref": "#/components/schemas/magic_custom_remote_identities"
    }
  }
}
object magic_ipsec_tunnel_add_request
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_ipsec_tunnel_add_single_request"
    }
  ]
}
object magic_ipsec_tunnel_add_single_request
{
  "type": "object",
  "required": [
    "name",
    "cloudflare_endpoint",
    "interface_address"
  ],
  "properties": {
    "bgp": {
      "$ref": "#/components/schemas/magic_bgp_config"
    },
    "psk": {
      "$ref": "#/components/schemas/magic_psk"
    },
    "name": {
      "$ref": "#/components/schemas/magic_ipsec_tunnel_name"
    },
    "description": {
      "$ref": "#/components/schemas/magic_components-schemas-description"
    },
    "health_check": {
      "$ref": "#/components/schemas/magic_tunnel_health_check"
    },
    "customer_endpoint": {
      "$ref": "#/components/schemas/magic_customer_ipsec_endpoint"
    },
    "interface_address": {
      "$ref": "#/components/schemas/magic_interface_address"
    },
    "replay_protection": {
      "$ref": "#/components/schemas/magic_replay_protection"
    },
    "interface_address6": {
      "$ref": "#/components/schemas/magic_interface_address6"
    },
    "cloudflare_endpoint": {
      "$ref": "#/components/schemas/magic_cloudflare_ipsec_endpoint"
    },
    "automatic_return_routing": {
      "$ref": "#/components/schemas/magic_automatic_return_routing"
    },
    "custom_remote_identities": {
      "$ref": "#/components/schemas/magic_custom_remote_identities"
    }
  }
}
string magic_ipsec_tunnel_name
{
  "type": "string",
  "example": "IPsec_1",
  "description": "The name of the IPsec tunnel. The name cannot share a name with other tunnels."
}
object magic_ipsec_tunnel_update_request
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_ipsec_tunnel_add_single_request"
    }
  ]
}
object magic_lan
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/magic_identifier"
    },
    "nat": {
      "$ref": "#/components/schemas/magic_nat"
    },
    "name": {
      "type": "string"
    },
    "bond_id": {
      "$ref": "#/components/schemas/magic_bond_id"
    },
    "ha_link": {
      "type": "boolean",
      "description": "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."
    },
    "site_id": {
      "$ref": "#/components/schemas/magic_identifier"
    },
    "physport": {
      "$ref": "#/components/schemas/magic_port"
    },
    "vlan_tag": {
      "$ref": "#/components/schemas/magic_vlan_tag"
    },
    "is_breakout": {
      "type": "boolean",
      "description": "mark true to use this LAN for source-based breakout traffic"
    },
    "is_prioritized": {
      "type": "boolean",
      "description": "mark true to use this LAN for source-based prioritized traffic"
    },
    "routed_subnets": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/magic_routed_subnet"
      }
    },
    "static_addressing": {
      "$ref": "#/components/schemas/magic_lan_static_addressing"
    }
  }
}
object magic_lan-acl-configuration
{
  "type": "object",
  "required": [
    "lan_id"
  ],
  "properties": {
    "ports": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/magic_port"
      },
      "description": "Array of ports on the provided LAN that will be included in the ACL. If no ports or port ranges are provided, communication on any port on this LAN is allowed."
    },
    "lan_id": {
      "type": "string",
      "description": "The identifier for the LAN you want to create an ACL policy with."
    },
    "subnets": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/magic_acl-subnet"
      },
      "description": "Array of subnet IPs within the LAN that will be included in the ACL. If no subnets are provided, communication on any subnets on this LAN are allowed."
    },
    "lan_name": {
      "type": "string",
      "description": "The name of the LAN based on the provided lan_id."
    },
    "port_ranges": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/magic_acl-port-range"
      },
      "description": "Array of port ranges on the provided LAN that will be included in the ACL. If no ports or port rangess are provided, communication on any port on this LAN is allowed."
    }
  }
}
object magic_lan_deleted_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/magic_lan"
        }
      }
    }
  ]
}
object magic_lan_dhcp_relay
{
  "type": "object",
  "properties": {
    "server_addresses": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/magic_ip-address"
      },
      "description": "List of DHCP server IPs."
    }
  }
}
object magic_lan_dhcp_server
{
  "type": "object",
  "properties": {
    "dns_server": {
      "$ref": "#/components/schemas/magic_ip-address"
    },
    "dns_servers": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/magic_ip-address"
      }
    },
    "reservations": {
      "type": "object",
      "example": {
        "00:11:22:33:44:55": "192.0.2.100",
        "AA:BB:CC:DD:EE:FF": "192.168.1.101"
      },
      "description": "Mapping of MAC addresses to IP addresses",
      "additionalProperties": {
        "type": "string",
        "description": "IP address associated with the MAC address"
      }
    },
    "dhcp_pool_end": {
      "$ref": "#/components/schemas/magic_ip-address"
    },
    "dhcp_pool_start": {
      "$ref": "#/components/schemas/magic_ip-address"
    }
  }
}
object magic_lan_modified_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/magic_lan"
        }
      }
    }
  ]
}
object magic_lan_single_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/magic_lan"
        }
      }
    }
  ]
}
object magic_lan_static_addressing
{
  "type": "object",
  "required": [
    "address"
  ],
  "properties": {
    "address": {
      "$ref": "#/components/schemas/magic_cidr"
    },
    "dhcp_relay": {
      "$ref": "#/components/schemas/magic_lan_dhcp_relay"
    },
    "dhcp_server": {
      "$ref": "#/components/schemas/magic_lan_dhcp_server"
    },
    "virtual_address": {
      "$ref": "#/components/schemas/magic_cidr"
    },
    "secondary_address": {
      "$ref": "#/components/schemas/magic_cidr"
    }
  },
  "description": "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."
}
object magic_lan_update_request
{
  "type": "object",
  "properties": {
    "nat": {
      "$ref": "#/components/schemas/magic_nat"
    },
    "name": {
      "type": "string"
    },
    "bond_id": {
      "$ref": "#/components/schemas/magic_bond_id"
    },
    "physport": {
      "$ref": "#/components/schemas/magic_port"
    },
    "vlan_tag": {
      "$ref": "#/components/schemas/magic_vlan_tag"
    },
    "is_breakout": {
      "type": "boolean",
      "description": "mark true to use this LAN for source-based breakout traffic"
    },
    "is_prioritized": {
      "type": "boolean",
      "description": "mark true to use this LAN for source-based prioritized traffic"
    },
    "routed_subnets": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/magic_routed_subnet"
      }
    },
    "static_addressing": {
      "$ref": "#/components/schemas/magic_lan_static_addressing"
    }
  }
}
object magic_lans_add_single_request
{
  "type": "object",
  "properties": {
    "nat": {
      "$ref": "#/components/schemas/magic_nat"
    },
    "name": {
      "type": "string"
    },
    "bond_id": {
      "$ref": "#/components/schemas/magic_bond_id"
    },
    "ha_link": {
      "type": "boolean",
      "description": "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."
    },
    "physport": {
      "$ref": "#/components/schemas/magic_port"
    },
    "vlan_tag": {
      "$ref": "#/components/schemas/magic_vlan_tag"
    },
    "is_breakout": {
      "type": "boolean",
      "description": "mark true to use this LAN for source-based breakout traffic"
    },
    "is_prioritized": {
      "type": "boolean",
      "description": "mark true to use this LAN for source-based prioritized traffic"
    },
    "routed_subnets": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/magic_routed_subnet"
      }
    },
    "static_addressing": {
      "$ref": "#/components/schemas/magic_lan_static_addressing"
    }
  }
}
object magic_lans_collection_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/magic_lan"
          }
        }
      }
    }
  ]
}
object magic_managed_app
{
  "type": "object",
  "title": "Managed App",
  "required": [
    "managed_app_id"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/magic_app_name"
    },
    "type": {
      "$ref": "#/components/schemas/magic_app_type"
    },
    "hostnames": {
      "$ref": "#/components/schemas/magic_app_hostnames"
    },
    "ip_subnets": {
      "$ref": "#/components/schemas/magic_app_subnets"
    },
    "managed_app_id": {
      "$ref": "#/components/schemas/magic_managed_app_id"
    },
    "source_subnets": {
      "$ref": "#/components/schemas/magic_app_source_subnets"
    }
  },
  "description": "Managed app defined by Cloudflare."
}
string magic_managed_app_id
{
  "type": "string",
  "example": "cloudflare",
  "description": "Managed app ID."
}
array magic_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "message": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string magic_modified_on
{
  "type": "string",
  "format": "date-time",
  "example": "2017-06-14T05:20:00Z",
  "readOnly": true,
  "description": "When the route was last modified.",
  "x-auditable": true
}
object magic_modified_tunnels_collection_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_api-response-single"
    },
    {
      "properties": {
        "result": {
          "properties": {
            "modified": {
              "type": "boolean",
              "example": true
            },
            "modified_gre_tunnels": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/magic_gre-tunnel"
              }
            }
          }
        }
      }
    }
  ]
}
integer magic_mtu
{
  "type": "integer",
  "default": 1476,
  "description": "Maximum Transmission Unit (MTU) in bytes for the GRE tunnel. The minimum value is 576.",
  "x-auditable": true
}
object magic_multiple_route_delete_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_api-response-single"
    },
    {
      "properties": {
        "result": {
          "properties": {
            "deleted": {
              "type": "boolean",
              "example": true
            },
            "deleted_routes": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/magic_route"
              }
            }
          }
        }
      }
    }
  ]
}
object magic_multiple_route_modified_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_api-response-single"
    },
    {
      "properties": {
        "result": {
          "properties": {
            "modified": {
              "type": "boolean",
              "example": true
            },
            "modified_routes": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/magic_route"
              }
            }
          }
        }
      }
    }
  ]
}
object magic_nat
{
  "type": "object",
  "properties": {
    "static_prefix": {
      "$ref": "#/components/schemas/magic_cidr"
    }
  }
}
object magic_netflow_config
{
  "type": "object",
  "required": [
    "collector_ip"
  ],
  "properties": {
    "collector_ip": {
      "type": "string",
      "example": "162.159.65.1",
      "description": "IPv4 address of the NetFlow collector."
    },
    "sampling_rate": {
      "type": "integer",
      "example": 100,
      "maximum": 10000,
      "minimum": 1,
      "description": "Sampling rate for NetFlow records (1 = every packet, 1000 = 1 in 1000 packets). Defaults to 1."
    },
    "active_timeout": {
      "type": "integer",
      "example": 30,
      "maximum": 5400,
      "minimum": 1,
      "description": "Timeout in seconds for active flows (defaults to 30)."
    },
    "collector_port": {
      "type": "integer",
      "example": 2055,
      "maximum": 65535,
      "minimum": 1,
      "description": "UDP port of the NetFlow collector (defaults to 2055)."
    },
    "inactive_timeout": {
      "type": "integer",
      "example": 15,
      "maximum": 5400,
      "minimum": 1,
      "description": "Timeout in seconds for inactive flows (defaults to 15)."
    }
  },
  "description": "NetFlow configuration for a site."
}
object magic_netflow_config_request
{
  "type": "object",
  "properties": {
    "collector_ip": {
      "type": "string",
      "example": "162.159.65.1",
      "description": "IPv4 address of the NetFlow collector."
    },
    "sampling_rate": {
      "type": "integer",
      "example": 100,
      "maximum": 10000,
      "minimum": 1,
      "description": "Sampling rate for NetFlow records (1 = every packet)."
    },
    "active_timeout": {
      "type": "integer",
      "example": 30,
      "maximum": 5400,
      "minimum": 1,
      "description": "Timeout in seconds for active flows."
    },
    "collector_port": {
      "type": "integer",
      "example": 2055,
      "maximum": 65535,
      "minimum": 1,
      "description": "UDP port of the NetFlow collector."
    },
    "inactive_timeout": {
      "type": "integer",
      "example": 15,
      "maximum": 5400,
      "minimum": 1,
      "description": "Timeout in seconds for inactive flows."
    }
  }
}
object magic_netflow_config_single_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/magic_netflow_config"
        }
      }
    }
  ]
}
string magic_nexthop
{
  "type": "string",
  "example": "203.0.113.1",
  "description": "The next-hop IP Address for the static route.",
  "x-auditable": true
}
integer magic_port
{
  "type": "integer",
  "example": 1
}
string magic_prefix
{
  "type": "string",
  "example": "192.0.2.0/24",
  "description": "IP Prefix in Classless Inter-Domain Routing format.",
  "x-auditable": true
}
integer magic_priority
{
  "type": "integer",
  "description": "Priority of the static route.",
  "x-auditable": true
}
string magic_psk
{
  "type": "string",
  "example": "O3bwKSjnaoCxDoUxjcq4Rk8ZKkezQUiy",
  "description": "A randomly generated or provided string for use in the IPsec tunnel.",
  "x-sensitive": true
}
object magic_psk_generation_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_api-response-single"
    },
    {
      "properties": {
        "result": {
          "properties": {
            "psk": {
              "$ref": "#/components/schemas/magic_psk"
            },
            "psk_metadata": {
              "$ref": "#/components/schemas/magic_psk_metadata"
            },
            "ipsec_tunnel_id": {
              "$ref": "#/components/schemas/magic_identifier"
            }
          }
        }
      }
    }
  ]
}
object magic_psk_metadata
{
  "type": "object",
  "properties": {
    "last_generated_on": {
      "$ref": "#/components/schemas/magic_schemas-modified_on"
    }
  },
  "description": "The PSK metadata that includes when the PSK was generated."
}
boolean magic_replay_protection
{
  "type": "boolean",
  "default": false,
  "example": false,
  "description": "If `true`, then IPsec replay protection will be supported in the Cloudflare-to-customer direction."
}
object magic_route
{
  "type": "object",
  "required": [
    "id",
    "prefix",
    "nexthop",
    "priority"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/magic_identifier"
    },
    "scope": {
      "$ref": "#/components/schemas/magic_scope"
    },
    "prefix": {
      "$ref": "#/components/schemas/magic_prefix"
    },
    "weight": {
      "$ref": "#/components/schemas/magic_weight"
    },
    "nexthop": {
      "$ref": "#/components/schemas/magic_nexthop"
    },
    "priority": {
      "$ref": "#/components/schemas/magic_priority"
    },
    "created_on": {
      "$ref": "#/components/schemas/magic_created_on"
    },
    "description": {
      "$ref": "#/components/schemas/magic_description"
    },
    "modified_on": {
      "$ref": "#/components/schemas/magic_modified_on"
    }
  }
}
object magic_route_add_single_request
{
  "type": "object",
  "required": [
    "prefix",
    "nexthop",
    "priority"
  ],
  "properties": {
    "scope": {
      "$ref": "#/components/schemas/magic_scope"
    },
    "prefix": {
      "$ref": "#/components/schemas/magic_prefix"
    },
    "weight": {
      "$ref": "#/components/schemas/magic_weight"
    },
    "nexthop": {
      "$ref": "#/components/schemas/magic_nexthop"
    },
    "priority": {
      "$ref": "#/components/schemas/magic_priority"
    },
    "description": {
      "$ref": "#/components/schemas/magic_description"
    }
  }
}
object magic_route_delete_id
{
  "allOf": [
    {
      "required": [
        "id"
      ],
      "properties": {
        "id": {
          "$ref": "#/components/schemas/magic_identifier"
        }
      }
    }
  ]
}
object magic_route_delete_many_request
{
  "type": "object",
  "required": [
    "routes"
  ],
  "properties": {
    "routes": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/magic_route_delete_id"
      }
    }
  }
}
object magic_route_deleted_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "deleted": {
              "type": "boolean",
              "example": true
            },
            "deleted_route": {
              "$ref": "#/components/schemas/magic_route"
            }
          }
        }
      }
    }
  ]
}
object magic_route_modified_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "modified": {
              "type": "boolean",
              "example": true
            },
            "modified_route": {
              "$ref": "#/components/schemas/magic_route"
            }
          }
        }
      }
    }
  ]
}
object magic_route_single_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "route": {
              "$ref": "#/components/schemas/magic_route"
            }
          }
        }
      }
    }
  ]
}
object magic_route_update_many_request
{
  "type": "object",
  "required": [
    "routes"
  ],
  "properties": {
    "routes": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/magic_route_update_single_request"
      }
    }
  }
}
object magic_route_update_request
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_route_add_single_request"
    }
  ]
}
object magic_route_update_single_request
{
  "allOf": [
    {
      "required": [
        "id"
      ],
      "properties": {
        "id": {
          "$ref": "#/components/schemas/magic_identifier"
        }
      }
    },
    {
      "$ref": "#/components/schemas/magic_route_add_single_request"
    }
  ]
}
object magic_routed_subnet
{
  "type": "object",
  "required": [
    "prefix",
    "next_hop"
  ],
  "properties": {
    "nat": {
      "$ref": "#/components/schemas/magic_nat"
    },
    "prefix": {
      "$ref": "#/components/schemas/magic_cidr"
    },
    "next_hop": {
      "$ref": "#/components/schemas/magic_ip-address"
    }
  }
}
object magic_routes_collection_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_api-response-single"
    },
    {
      "properties": {
        "result": {
          "properties": {
            "routes": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/magic_route"
              }
            }
          }
        }
      }
    }
  ]
}
object magic_schemas-create_ipsec_tunnel_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/magic_ipsec-tunnel"
        }
      }
    }
  ]
}
string magic_schemas-created_on
{
  "type": "string",
  "format": "date-time",
  "example": "2017-06-14T00:00:00Z",
  "readOnly": true,
  "description": "The date and time the tunnel was created.",
  "x-auditable": true
}
string magic_schemas-description
{
  "type": "string",
  "example": "Tunnel for ISP X",
  "description": "An optional description of the GRE tunnel.",
  "x-auditable": true
}
string magic_schemas-identifier
{
  "type": "string",
  "example": "c4a7362d577a6c3019a474fd6f485821",
  "readOnly": true,
  "maxLength": 32,
  "description": "Identifier",
  "x-auditable": true
}
string magic_schemas-modified_on
{
  "type": "string",
  "format": "date-time",
  "example": "2017-06-14T05:20:00Z",
  "readOnly": true,
  "description": "The date and time the tunnel was last modified.",
  "x-auditable": true
}
object magic_schemas-modified_tunnels_collection_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_api-response-single"
    },
    {
      "properties": {
        "result": {
          "properties": {
            "modified": {
              "type": "boolean",
              "example": true
            },
            "modified_ipsec_tunnels": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/magic_ipsec-tunnel"
              }
            }
          }
        }
      }
    }
  ]
}
integer magic_schemas-mtu
{
  "type": "integer",
  "default": 1476,
  "description": "The Maximum Transmission Unit (MTU) in bytes for the interconnect. The minimum value is 576."
}
object magic_schemas-tunnel_deleted_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "deleted": {
              "type": "boolean",
              "example": true
            },
            "deleted_ipsec_tunnel": {
              "$ref": "#/components/schemas/magic_ipsec-tunnel"
            }
          }
        }
      }
    }
  ]
}
object magic_schemas-tunnel_modified_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "modified": {
              "type": "boolean",
              "example": true
            },
            "modified_ipsec_tunnel": {
              "$ref": "#/components/schemas/magic_ipsec-tunnel"
            }
          }
        }
      }
    }
  ]
}
object magic_schemas-tunnel_single_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "ipsec_tunnel": {
              "$ref": "#/components/schemas/magic_ipsec-tunnel"
            }
          }
        }
      }
    }
  ]
}
object magic_schemas-tunnels_collection_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_api-response-single"
    },
    {
      "properties": {
        "result": {
          "properties": {
            "ipsec_tunnels": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/magic_ipsec-tunnel"
              }
            }
          }
        }
      }
    }
  ]
}
object magic_scope
{
  "type": "object",
  "properties": {
    "colo_names": {
      "$ref": "#/components/schemas/magic_colo_names"
    },
    "colo_regions": {
      "$ref": "#/components/schemas/magic_colo_regions"
    }
  },
  "description": "Used only for ECMP routes."
}
string magic_secondary-connector-id
{
  "type": "string",
  "example": "8d67040d3835dbcf46ce29da440dc482",
  "description": "Magic Connector identifier tag. Used when high availability mode is on.",
  "x-auditable": true
}
object magic_site
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/magic_identifier"
    },
    "name": {
      "$ref": "#/components/schemas/magic_site-name"
    },
    "ha_mode": {
      "type": "boolean",
      "example": true,
      "description": "Site high availability mode. If set to true, the site can have two connectors and runs in high availability mode."
    },
    "location": {
      "$ref": "#/components/schemas/magic_site-location"
    },
    "description": {
      "type": "string"
    },
    "connector_id": {
      "$ref": "#/components/schemas/magic_connector-id"
    },
    "secondary_connector_id": {
      "$ref": "#/components/schemas/magic_secondary-connector-id"
    }
  }
}
object magic_site-location
{
  "type": "object",
  "properties": {
    "lat": {
      "type": "string",
      "example": 37.6192,
      "description": "Latitude",
      "x-auditable": true
    },
    "lon": {
      "type": "string",
      "example": 122.3816,
      "description": "Longitude",
      "x-auditable": true
    }
  },
  "description": "Location of site in latitude and longitude."
}
string magic_site-name
{
  "type": "string",
  "example": "site_1",
  "description": "The name of the site.",
  "x-auditable": true
}
object magic_site_deleted_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/magic_site"
        }
      }
    }
  ]
}
object magic_site_modified_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/magic_site"
        }
      }
    }
  ]
}
object magic_site_single_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/magic_site"
        }
      }
    }
  ]
}
object magic_site_update_request
{
  "type": "object",
  "properties": {
    "name": {
      "$ref": "#/components/schemas/magic_site-name"
    },
    "location": {
      "$ref": "#/components/schemas/magic_site-location"
    },
    "description": {
      "type": "string"
    },
    "connector_id": {
      "$ref": "#/components/schemas/magic_connector-id"
    },
    "secondary_connector_id": {
      "$ref": "#/components/schemas/magic_secondary-connector-id"
    }
  }
}
object magic_sites_add_single_request
{
  "type": "object",
  "required": [
    "name"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/magic_site-name"
    },
    "ha_mode": {
      "type": "boolean",
      "example": true,
      "description": "Site high availability mode. If set to true, the site can have two connectors and runs in high availability mode."
    },
    "location": {
      "$ref": "#/components/schemas/magic_site-location"
    },
    "description": {
      "type": "string"
    },
    "connector_id": {
      "$ref": "#/components/schemas/magic_connector-id"
    },
    "secondary_connector_id": {
      "$ref": "#/components/schemas/magic_secondary-connector-id"
    }
  }
}
object magic_sites_collection_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/magic_site"
          }
        }
      }
    }
  ]
}
integer magic_ttl
{
  "type": "integer",
  "default": 64,
  "description": "Time To Live (TTL) in number of hops of the GRE tunnel.",
  "x-auditable": true
}
object magic_tunnel_deleted_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "deleted": {
              "type": "boolean",
              "example": true
            },
            "deleted_gre_tunnel": {
              "$ref": "#/components/schemas/magic_gre-tunnel"
            }
          }
        }
      }
    }
  ]
}
object magic_tunnel_health_check
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_health_check_base"
    },
    {
      "properties": {
        "direction": {
          "enum": [
            "unidirectional",
            "bidirectional"
          ],
          "type": "string",
          "default": "unidirectional",
          "example": "bidirectional",
          "description": "The direction of the flow of the healthcheck. Either unidirectional, where the probe comes to you via the tunnel and the result comes back to Cloudflare via the open Internet, or bidirectional where both the probe and result come and go via the tunnel."
        }
      }
    }
  ]
}
object magic_tunnel_modified_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "modified": {
              "type": "boolean",
              "example": true
            },
            "modified_gre_tunnel": {
              "$ref": "#/components/schemas/magic_gre-tunnel"
            }
          }
        }
      }
    }
  ]
}
object magic_tunnel_single_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "gre_tunnel": {
              "$ref": "#/components/schemas/magic_gre-tunnel"
            }
          }
        }
      }
    }
  ]
}
object magic_tunnels_collection_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_api-response-single"
    },
    {
      "properties": {
        "result": {
          "properties": {
            "gre_tunnels": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/magic_gre-tunnel"
              }
            }
          }
        }
      }
    }
  ]
}
boolean magic_unidirectional
{
  "type": "boolean",
  "description": "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."
}
integer magic_vlan_tag
{
  "type": "integer",
  "example": 42,
  "description": "VLAN ID. Use zero for untagged.",
  "x-auditable": true
}
object magic_wan
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/magic_identifier"
    },
    "name": {
      "type": "string"
    },
    "site_id": {
      "$ref": "#/components/schemas/magic_identifier"
    },
    "physport": {
      "$ref": "#/components/schemas/magic_port"
    },
    "priority": {
      "type": "integer",
      "description": "Priority of WAN for traffic loadbalancing."
    },
    "vlan_tag": {
      "$ref": "#/components/schemas/magic_vlan_tag"
    },
    "health_check_rate": {
      "enum": [
        "low",
        "mid",
        "high"
      ],
      "type": "string",
      "default": "mid",
      "example": "low",
      "description": "Magic WAN health check rate for tunnels created on this link. The default value is `mid`."
    },
    "static_addressing": {
      "$ref": "#/components/schemas/magic_wan_static_addressing"
    }
  }
}
object magic_wan_deleted_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/magic_wan"
        }
      }
    }
  ]
}
object magic_wan_modified_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/magic_wan"
        }
      }
    }
  ]
}
object magic_wan_single_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/magic_wan"
        }
      }
    }
  ]
}
object magic_wan_static_addressing
{
  "type": "object",
  "required": [
    "address",
    "gateway_address"
  ],
  "properties": {
    "address": {
      "$ref": "#/components/schemas/magic_cidr"
    },
    "gateway_address": {
      "$ref": "#/components/schemas/magic_ip-address"
    },
    "secondary_address": {
      "$ref": "#/components/schemas/magic_cidr"
    }
  },
  "description": "(optional) if omitted, use DHCP. Submit secondary_address when site is in high availability mode."
}
object magic_wan_update_request
{
  "type": "object",
  "properties": {
    "name": {
      "type": "string"
    },
    "physport": {
      "$ref": "#/components/schemas/magic_port"
    },
    "priority": {
      "type": "integer"
    },
    "vlan_tag": {
      "$ref": "#/components/schemas/magic_vlan_tag"
    },
    "static_addressing": {
      "$ref": "#/components/schemas/magic_wan_static_addressing"
    }
  }
}
object magic_wans_add_single_request
{
  "type": "object",
  "required": [
    "physport"
  ],
  "properties": {
    "name": {
      "type": "string"
    },
    "physport": {
      "$ref": "#/components/schemas/magic_port"
    },
    "priority": {
      "type": "integer"
    },
    "vlan_tag": {
      "$ref": "#/components/schemas/magic_vlan_tag"
    },
    "static_addressing": {
      "$ref": "#/components/schemas/magic_wan_static_addressing"
    }
  }
}
object magic_wans_collection_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/magic_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/magic_wan"
          }
        }
      }
    }
  ]
}
integer magic_weight
{
  "type": "integer",
  "description": "Optional weight of the ECMP scope - if provided.",
  "x-auditable": true
}
string mcn_account_id
{
  "type": "string",
  "x-auditable": true
}
object mcn_apply_progress
{
  "type": "object",
  "required": [
    "done",
    "total"
  ],
  "properties": {
    "done": {
      "type": "integer",
      "x-auditable": true
    },
    "total": {
      "type": "integer",
      "x-auditable": true
    }
  }
}
object mcn_aws_trust_policy
{
  "type": "object",
  "required": [
    "item_type",
    "aws_trust_policy"
  ],
  "properties": {
    "item_type": {
      "type": "string",
      "x-auditable": true
    },
    "aws_trust_policy": {
      "type": "string"
    }
  }
}
object mcn_azure_setup
{
  "type": "object",
  "required": [
    "item_type",
    "azure_consent_url",
    "integration_identity_tag",
    "tag_cli_command"
  ],
  "properties": {
    "item_type": {
      "type": "string",
      "x-auditable": true
    },
    "tag_cli_command": {
      "type": "string"
    },
    "azure_consent_url": {
      "type": "string"
    },
    "integration_identity_tag": {
      "type": "string",
      "x-auditable": true
    }
  }
}
object mcn_bad_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mcn_response"
    },
    {
      "type": "object",
      "properties": {
        "errors": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/mcn_error"
          },
          "minLength": 1
        },
        "result": {
          "enum": [
            null
          ],
          "type": "object",
          "nullable": true
        }
      }
    }
  ]
}
object mcn_catalog_sync
{
  "type": "object",
  "required": [
    "id",
    "name",
    "description",
    "policy",
    "destination_type",
    "destination_id",
    "destination_url",
    "update_mode",
    "last_user_update_at"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/mcn_catalog_sync_id"
    },
    "name": {
      "type": "string"
    },
    "errors": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/mcn_error"
      }
    },
    "policy": {
      "type": "string"
    },
    "description": {
      "type": "string"
    },
    "update_mode": {
      "$ref": "#/components/schemas/mcn_catalog_sync_update_mode"
    },
    "destination_id": {
      "$ref": "#/components/schemas/mcn_catalog_sync_destination_id"
    },
    "destination_type": {
      "$ref": "#/components/schemas/mcn_catalog_sync_destination_type"
    },
    "last_user_update_at": {
      "type": "string"
    },
    "last_attempted_update_at": {
      "type": "string"
    },
    "last_successful_update_at": {
      "type": "string"
    },
    "includes_discoveries_until": {
      "type": "string"
    }
  }
}
string mcn_catalog_sync_destination_id
{
  "type": "string",
  "format": "uuid",
  "x-auditable": true
}
string mcn_catalog_sync_destination_type
{
  "enum": [
    "NONE",
    "ZERO_TRUST_LIST"
  ],
  "type": "string",
  "x-auditable": true
}
string mcn_catalog_sync_id
{
  "type": "string",
  "format": "uuid"
}
string mcn_catalog_sync_update_mode
{
  "enum": [
    "AUTO",
    "MANUAL"
  ],
  "type": "string",
  "x-auditable": true
}
object mcn_catalog_syncs_prebuilt_policies_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mcn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/mcn_catalog_syncs_prebuilt_policy"
          }
        }
      }
    }
  ]
}
object mcn_catalog_syncs_prebuilt_policy
{
  "type": "object",
  "required": [
    "policy_name",
    "policy_description",
    "policy_string",
    "applicable_destinations"
  ],
  "properties": {
    "policy_name": {
      "type": "string"
    },
    "policy_string": {
      "type": "string"
    },
    "policy_description": {
      "type": "string"
    },
    "applicable_destinations": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mcn_catalog_sync_destination_type"
      }
    }
  }
}
string mcn_cidr_prefix
{
  "type": "string",
  "example": "192.168.0.0/16",
  "description": "An IP address prefix in CIDR format.",
  "x-auditable": true
}
object mcn_cloud_platform_client
{
  "type": "object",
  "required": [
    "client_type",
    "name",
    "id"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/mcn_platform_client_id"
    },
    "name": {
      "type": "string",
      "x-auditable": true
    },
    "client_type": {
      "enum": [
        "MAGIC_WAN_CLOUD_ONRAMP"
      ],
      "type": "string",
      "x-auditable": true
    }
  }
}
string mcn_cloud_type
{
  "enum": [
    "AWS",
    "AZURE",
    "GOOGLE",
    "CLOUDFLARE"
  ],
  "type": "string",
  "x-auditable": true
}
string mcn_conduit_route_id
{
  "type": "string",
  "format": "uuid",
  "x-auditable": true
}
string mcn_conduit_tunnel_id
{
  "type": "string",
  "format": "uuid",
  "x-auditable": true
}
object mcn_cost
{
  "type": "object",
  "required": [
    "monthly_cost",
    "currency"
  ],
  "properties": {
    "currency": {
      "type": "string",
      "x-auditable": true
    },
    "monthly_cost": {
      "type": "number",
      "format": "double"
    }
  }
}
object mcn_cost_diff
{
  "type": "object",
  "required": [
    "current_monthly_cost",
    "proposed_monthly_cost",
    "diff",
    "currency"
  ],
  "properties": {
    "diff": {
      "type": "number",
      "format": "double"
    },
    "currency": {
      "type": "string",
      "x-auditable": true
    },
    "current_monthly_cost": {
      "type": "number",
      "format": "double"
    },
    "proposed_monthly_cost": {
      "type": "number",
      "format": "double"
    }
  }
}
object mcn_create_catalog_sync_request
{
  "type": "object",
  "required": [
    "name",
    "update_mode",
    "destination_type"
  ],
  "properties": {
    "name": {
      "type": "string"
    },
    "policy": {
      "type": "string"
    },
    "description": {
      "type": "string"
    },
    "update_mode": {
      "$ref": "#/components/schemas/mcn_catalog_sync_update_mode"
    },
    "destination_type": {
      "$ref": "#/components/schemas/mcn_catalog_sync_destination_type"
    }
  }
}
object mcn_create_catalog_sync_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mcn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mcn_catalog_sync"
        }
      }
    }
  ]
}
object mcn_create_onramp_request
{
  "type": "object",
  "required": [
    "name",
    "type",
    "cloud_type",
    "install_routes_in_cloud",
    "install_routes_in_magic_wan",
    "dynamic_routing"
  ],
  "properties": {
    "vpc": {
      "$ref": "#/components/schemas/mcn_resource_id"
    },
    "name": {
      "type": "string"
    },
    "type": {
      "$ref": "#/components/schemas/mcn_onramp_type"
    },
    "region": {
      "type": "string",
      "x-auditable": true
    },
    "cloud_asn": {
      "type": "integer",
      "format": "uint32",
      "description": "Sets the cloud-side ASN. If unset or zero, the cloud's default ASN takes effect.",
      "x-auditable": true
    },
    "cloud_type": {
      "$ref": "#/components/schemas/mcn_onramp_cloud_type"
    },
    "description": {
      "type": "string"
    },
    "attached_hubs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mcn_resource_id"
      }
    },
    "attached_vpcs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mcn_resource_id"
      }
    },
    "adopted_hub_id": {
      "$ref": "#/components/schemas/mcn_resource_id"
    },
    "dynamic_routing": {
      "type": "boolean",
      "description": "Enables BGP routing. When enabling this feature, set both install_routes_in_cloud and install_routes_in_magic_wan to false.",
      "x-auditable": true
    },
    "hub_provider_id": {
      "$ref": "#/components/schemas/mcn_provider_id"
    },
    "install_routes_in_cloud": {
      "type": "boolean",
      "x-auditable": true
    },
    "install_routes_in_magic_wan": {
      "type": "boolean",
      "x-auditable": true
    },
    "manage_hub_to_hub_attachments": {
      "type": "boolean",
      "x-auditable": true
    },
    "manage_vpc_to_hub_attachments": {
      "type": "boolean",
      "x-auditable": true
    }
  }
}
object mcn_create_onramp_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mcn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mcn_onramp"
        }
      }
    }
  ]
}
object mcn_create_provider_request
{
  "type": "object",
  "required": [
    "friendly_name",
    "cloud_type"
  ],
  "properties": {
    "cloud_type": {
      "$ref": "#/components/schemas/mcn_cloud_type"
    },
    "description": {
      "type": "string",
      "x-auditable": true
    },
    "friendly_name": {
      "type": "string",
      "x-auditable": true
    }
  }
}
object mcn_create_provider_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mcn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mcn_provider"
        }
      }
    }
  ]
}
object mcn_delete_catalog_sync_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mcn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mcn_deleted_catalog_sync"
        }
      }
    }
  ]
}
object mcn_delete_onramp_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mcn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mcn_deleted_onramp"
        }
      }
    }
  ]
}
object mcn_delete_provider_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mcn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mcn_deleted_provider"
        }
      }
    }
  ]
}
object mcn_delete_resource_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mcn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mcn_deleted_resource"
        }
      }
    }
  ]
}
object mcn_deleted_catalog_sync
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/mcn_catalog_sync_id"
    }
  }
}
object mcn_deleted_onramp
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/mcn_onramp_id"
    }
  }
}
object mcn_deleted_provider
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/mcn_provider_id"
    }
  }
}
object mcn_deleted_resource
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/mcn_resource_id"
    }
  }
}
object mcn_error
{
  "type": "object",
  "required": [
    "code",
    "message"
  ],
  "properties": {
    "code": {
      "enum": [
        1001,
        1002,
        1003,
        1004,
        1005,
        1006,
        1007,
        1008,
        1009,
        1010,
        1011,
        1012,
        1013,
        1014,
        1015,
        1016,
        1017,
        1018,
        2001,
        2002,
        2003,
        2004,
        2005,
        2006,
        2007,
        2008,
        2009,
        2010,
        2011,
        2012,
        2013,
        2014,
        2015,
        2016,
        2017,
        2018,
        2019,
        2020,
        2021,
        2022,
        3001,
        3002,
        3003,
        3004,
        3005,
        3006,
        3007,
        4001,
        4002,
        4003,
        4004,
        4005,
        4006,
        4007,
        4008,
        4009,
        4010,
        4011,
        4012,
        4013,
        4014,
        4015,
        4016,
        4017,
        4018,
        4019,
        4020,
        4021,
        4022,
        4023,
        5001,
        5002,
        5003,
        5004,
        102000,
        102001,
        102002,
        102003,
        102004,
        102005,
        102006,
        102007,
        102008,
        102009,
        102010,
        102011,
        102012,
        102013,
        102014,
        102015,
        102016,
        102017,
        102018,
        102019,
        102020,
        102021,
        102022,
        102023,
        102024,
        102025,
        102026,
        102027,
        102028,
        102029,
        102030,
        102031,
        102032,
        102033,
        102034,
        102035,
        102036,
        102037,
        102038,
        102039,
        102040,
        102041,
        102042,
        102043,
        102044,
        102045,
        102046,
        102047,
        102048,
        102049,
        102050,
        102051,
        102052,
        102053,
        102054,
        102055,
        102056,
        102057,
        102058,
        102059,
        102060,
        102061,
        102062,
        102063,
        102064,
        102065,
        102066,
        102067,
        102068,
        102069,
        102070,
        102071,
        102072,
        103001,
        103002,
        103003,
        103004,
        103005,
        103006,
        103007,
        103008
      ],
      "type": "integer",
      "x-auditable": true
    },
    "meta": {
      "$ref": "#/components/schemas/mcn_error_meta"
    },
    "source": {
      "$ref": "#/components/schemas/mcn_error_source"
    },
    "message": {
      "type": "string"
    },
    "documentation_url": {
      "type": "string"
    }
  }
}
object mcn_error_meta
{
  "type": "object",
  "properties": {
    "l10n_key": {
      "type": "string",
      "x-auditable": true
    },
    "trace_id": {
      "type": "string",
      "x-auditable": true
    },
    "template_data": {
      "type": "object"
    },
    "loggable_error": {
      "type": "string"
    }
  }
}
object mcn_error_source
{
  "type": "object",
  "properties": {
    "pointer": {
      "type": "string",
      "x-auditable": true
    },
    "parameter": {
      "type": "string",
      "x-auditable": true
    },
    "parameter_value_index": {
      "type": "integer",
      "x-auditable": true
    }
  }
}
object mcn_gcp_setup
{
  "type": "object",
  "required": [
    "item_type",
    "integration_identity_tag",
    "tag_cli_command"
  ],
  "properties": {
    "item_type": {
      "type": "string",
      "x-auditable": true
    },
    "tag_cli_command": {
      "type": "string"
    },
    "integration_identity_tag": {
      "type": "string",
      "x-auditable": true
    }
  }
}
object mcn_get_magic_wan_address_space_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mcn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mcn_magic_wan_address_space"
        }
      }
    }
  ]
}
object mcn_get_onramp_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mcn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mcn_onramp"
        }
      }
    }
  ]
}
object mcn_good_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mcn_response"
    },
    {
      "type": "object",
      "properties": {
        "errors": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/mcn_error"
          },
          "maxLength": 0
        }
      }
    }
  ]
}
object mcn_good_response_collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mcn_response_collection"
    },
    {
      "type": "object",
      "properties": {
        "errors": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/mcn_error"
          },
          "maxLength": 0
        }
      }
    }
  ]
}
object mcn_list_item
{
  "type": "object",
  "required": [
    "item_type",
    "list"
  ],
  "properties": {
    "list": {
      "type": "array",
      "items": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/mcn_string_item"
          },
          {
            "$ref": "#/components/schemas/mcn_resource_preview_item"
          }
        ],
        "discriminator": {
          "propertyName": "item_type"
        }
      }
    },
    "item_type": {
      "type": "string"
    }
  }
}
object mcn_list_onramps_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mcn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/mcn_onramp"
          }
        }
      }
    }
  ]
}
object mcn_magic_wan_address_space
{
  "type": "object",
  "required": [
    "prefixes"
  ],
  "properties": {
    "prefixes": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mcn_cidr_prefix"
      }
    }
  }
}
object mcn_observation
{
  "type": "object",
  "required": [
    "provider_id",
    "resource_id",
    "first_observed_at",
    "last_observed_at"
  ],
  "properties": {
    "provider_id": {
      "$ref": "#/components/schemas/mcn_provider_id"
    },
    "resource_id": {
      "$ref": "#/components/schemas/mcn_resource_id"
    },
    "last_observed_at": {
      "type": "string",
      "x-auditable": true
    },
    "first_observed_at": {
      "type": "string",
      "x-auditable": true
    }
  }
}
object mcn_onramp
{
  "type": "object",
  "required": [
    "id",
    "name",
    "type",
    "cloud_type",
    "install_routes_in_cloud",
    "install_routes_in_magic_wan",
    "dynamic_routing",
    "updated_at"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/mcn_onramp_id"
    },
    "hub": {
      "$ref": "#/components/schemas/mcn_resource_id"
    },
    "vpc": {
      "$ref": "#/components/schemas/mcn_resource_id"
    },
    "name": {
      "type": "string",
      "x-auditable": true
    },
    "type": {
      "$ref": "#/components/schemas/mcn_onramp_type"
    },
    "region": {
      "type": "string",
      "x-auditable": true
    },
    "status": {
      "$ref": "#/components/schemas/mcn_onramp_status"
    },
    "cloud_asn": {
      "type": "integer",
      "format": "uint32",
      "x-auditable": true
    },
    "cloud_type": {
      "$ref": "#/components/schemas/mcn_onramp_cloud_type"
    },
    "updated_at": {
      "type": "string"
    },
    "vpcs_by_id": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/mcn_resource_details"
      }
    },
    "description": {
      "type": "string",
      "x-auditable": true
    },
    "attached_hubs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mcn_resource_id"
      }
    },
    "attached_vpcs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mcn_resource_id"
      }
    },
    "dynamic_routing": {
      "type": "boolean",
      "x-auditable": true
    },
    "last_applied_at": {
      "type": "string",
      "x-auditable": true
    },
    "last_planned_at": {
      "type": "string",
      "x-auditable": true
    },
    "last_exported_at": {
      "type": "string",
      "x-auditable": true
    },
    "planned_resources": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mcn_resource_diff"
      }
    },
    "post_apply_resources": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/mcn_resource_details"
      }
    },
    "vpcs_by_id_unavailable": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mcn_resource_id"
      },
      "description": "The list of vpc IDs for which resource details failed to generate."
    },
    "install_routes_in_cloud": {
      "type": "boolean",
      "x-auditable": true
    },
    "install_routes_in_magic_wan": {
      "type": "boolean",
      "x-auditable": true
    },
    "manage_hub_to_hub_attachments": {
      "type": "boolean",
      "x-auditable": true
    },
    "manage_vpc_to_hub_attachments": {
      "type": "boolean",
      "x-auditable": true
    },
    "planned_monthly_cost_estimate": {
      "$ref": "#/components/schemas/mcn_cost_diff"
    },
    "planned_resources_unavailable": {
      "type": "boolean",
      "x-auditable": true
    },
    "post_apply_monthly_cost_estimate": {
      "$ref": "#/components/schemas/mcn_cost"
    },
    "post_apply_resources_unavailable": {
      "type": "boolean",
      "x-auditable": true
    }
  }
}
string mcn_onramp_cloud_type
{
  "enum": [
    "AWS",
    "AZURE",
    "GOOGLE"
  ],
  "type": "string",
  "x-auditable": true
}
string mcn_onramp_id
{
  "type": "string",
  "format": "uuid",
  "x-auditable": true
}
string mcn_onramp_lifecycle_state
{
  "enum": [
    "OnrampNeedsApply",
    "OnrampPendingPlan",
    "OnrampPlanning",
    "OnrampPlanFailed",
    "OnrampPendingApproval",
    "OnrampPendingApply",
    "OnrampApplying",
    "OnrampApplyFailed",
    "OnrampActive",
    "OnrampPendingDestroy",
    "OnrampDestroying",
    "OnrampDestroyFailed"
  ],
  "type": "string",
  "x-auditable": true
}
object mcn_onramp_status
{
  "type": "object",
  "required": [
    "lifecycle_state",
    "tunnels",
    "routes",
    "plan_progress",
    "apply_progress"
  ],
  "properties": {
    "routes": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mcn_conduit_route_id"
      }
    },
    "tunnels": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mcn_conduit_tunnel_id"
      }
    },
    "plan_progress": {
      "$ref": "#/components/schemas/mcn_plan_progress"
    },
    "apply_progress": {
      "$ref": "#/components/schemas/mcn_apply_progress"
    },
    "lifecycle_state": {
      "$ref": "#/components/schemas/mcn_onramp_lifecycle_state"
    },
    "lifecycle_errors": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/mcn_error"
      }
    }
  }
}
string mcn_onramp_type
{
  "enum": [
    "OnrampTypeSingle",
    "OnrampTypeHub"
  ],
  "type": "string",
  "x-auditable": true
}
object mcn_onramp_with_account
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mcn_onramp"
    },
    {
      "type": "object",
      "required": [
        "account_id"
      ],
      "properties": {
        "account_id": {
          "$ref": "#/components/schemas/mcn_account_id"
        }
      }
    }
  ]
}
object mcn_plan_progress
{
  "type": "object",
  "required": [
    "done",
    "total"
  ],
  "properties": {
    "done": {
      "type": "integer",
      "x-auditable": true
    },
    "total": {
      "type": "integer",
      "x-auditable": true
    }
  }
}
string mcn_planned_action
{
  "enum": [
    "no_op",
    "create",
    "update",
    "replace",
    "destroy"
  ],
  "type": "string",
  "x-auditable": true
}
string mcn_platform_client_id
{
  "type": "string",
  "format": "uuid",
  "x-auditable": true
}
string mcn_policy_result
{
  "type": "string"
}
object mcn_provider
{
  "type": "object",
  "required": [
    "id",
    "friendly_name",
    "cloud_type",
    "last_updated",
    "state",
    "state_v2",
    "lifecycle_state"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/mcn_provider_id"
    },
    "state": {
      "$ref": "#/components/schemas/mcn_provider_discovery_status"
    },
    "status": {
      "$ref": "#/components/schemas/mcn_provider_status"
    },
    "aws_arn": {
      "type": "string",
      "x-auditable": true
    },
    "state_v2": {
      "$ref": "#/components/schemas/mcn_provider_discovery_status"
    },
    "cloud_type": {
      "$ref": "#/components/schemas/mcn_cloud_type"
    },
    "description": {
      "type": "string"
    },
    "last_updated": {
      "type": "string",
      "x-auditable": true
    },
    "friendly_name": {
      "type": "string"
    },
    "gcp_project_id": {
      "type": "string",
      "x-auditable": true
    },
    "azure_tenant_id": {
      "type": "string",
      "x-auditable": true
    },
    "lifecycle_state": {
      "$ref": "#/components/schemas/mcn_provider_lifecycle_state"
    },
    "azure_subscription_id": {
      "type": "string",
      "x-auditable": true
    },
    "gcp_service_account_email": {
      "type": "string",
      "x-auditable": true
    }
  }
}
object mcn_provider_discovery_progress
{
  "type": "object",
  "required": [
    "unit",
    "done",
    "total"
  ],
  "properties": {
    "done": {
      "type": "integer",
      "x-auditable": true
    },
    "unit": {
      "type": "string",
      "x-auditable": true
    },
    "total": {
      "type": "integer",
      "x-auditable": true
    }
  }
}
string mcn_provider_discovery_status
{
  "enum": [
    "UNSPECIFIED",
    "PENDING",
    "DISCOVERING",
    "FAILED",
    "SUCCEEDED"
  ],
  "type": "string",
  "x-auditable": true
}
string mcn_provider_id
{
  "type": "string",
  "format": "uuid",
  "x-auditable": true
}
object mcn_provider_initial_setup_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mcn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "oneOf": [
            {
              "$ref": "#/components/schemas/mcn_aws_trust_policy"
            },
            {
              "$ref": "#/components/schemas/mcn_azure_setup"
            },
            {
              "$ref": "#/components/schemas/mcn_gcp_setup"
            }
          ],
          "discriminator": {
            "propertyName": "item_type"
          }
        }
      }
    }
  ]
}
string mcn_provider_lifecycle_state
{
  "enum": [
    "ACTIVE",
    "PENDING_SETUP",
    "RETIRED"
  ],
  "type": "string",
  "x-auditable": true
}
object mcn_provider_status
{
  "type": "object",
  "required": [
    "last_discovery_status",
    "last_discovery_status_v2",
    "regions",
    "discovery_status",
    "discovery_status_v2",
    "discovery_progress",
    "discovery_progress_v2"
  ],
  "properties": {
    "regions": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      }
    },
    "in_use_by": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mcn_cloud_platform_client"
      }
    },
    "last_updated": {
      "type": "string",
      "x-auditable": true
    },
    "discovery_message": {
      "type": "string",
      "x-auditable": true
    },
    "discovery_progress": {
      "$ref": "#/components/schemas/mcn_provider_discovery_progress"
    },
    "discovery_message_v2": {
      "type": "string",
      "x-auditable": true
    },
    "discovery_progress_v2": {
      "$ref": "#/components/schemas/mcn_provider_discovery_progress"
    },
    "last_discovery_status": {
      "$ref": "#/components/schemas/mcn_provider_discovery_status"
    },
    "credentials_good_since": {
      "type": "string",
      "x-auditable": true
    },
    "last_discovery_status_v2": {
      "$ref": "#/components/schemas/mcn_provider_discovery_status"
    },
    "credentials_missing_since": {
      "type": "string",
      "x-auditable": true
    },
    "last_discovery_started_at": {
      "type": "string",
      "x-auditable": true
    },
    "credentials_rejected_since": {
      "type": "string",
      "x-auditable": true
    },
    "last_discovery_completed_at": {
      "type": "string",
      "x-auditable": true
    },
    "last_discovery_started_at_v2": {
      "type": "string",
      "x-auditable": true
    },
    "last_discovery_completed_at_v2": {
      "type": "string",
      "x-auditable": true
    }
  }
}
object mcn_provider_with_account
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mcn_provider"
    },
    {
      "type": "object",
      "required": [
        "account_id"
      ],
      "properties": {
        "account_id": {
          "$ref": "#/components/schemas/mcn_account_id"
        }
      }
    }
  ]
}
object mcn_read_account_catalog_sync_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mcn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mcn_catalog_sync"
        }
      }
    }
  ]
}
object mcn_read_account_catalog_syncs_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mcn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/mcn_catalog_sync"
          }
        }
      }
    }
  ]
}
object mcn_read_account_provider_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mcn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mcn_provider"
        }
      }
    }
  ]
}
object mcn_read_account_providers_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mcn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/mcn_provider"
          }
        }
      }
    }
  ]
}
object mcn_read_account_resource_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mcn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mcn_resource_details"
        }
      }
    }
  ]
}
object mcn_read_account_resources_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mcn_good_response_collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/mcn_resource_details"
          }
        },
        "result_info": {
          "$ref": "#/components/schemas/mcn_result_info"
        }
      }
    }
  ]
}
object mcn_refresh_catalog_sync_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mcn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mcn_policy_result"
        }
      }
    }
  ]
}
object mcn_resource_details
{
  "type": "object",
  "required": [
    "id",
    "native_id",
    "name",
    "account_id",
    "cloud_type",
    "resource_type",
    "managed",
    "provider_ids",
    "provider_names_by_id",
    "region",
    "resource_group",
    "tags",
    "updated_at",
    "url",
    "config",
    "state",
    "observations",
    "deployment_provider",
    "sections",
    "monthly_cost_estimate"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/mcn_resource_id"
    },
    "url": {
      "type": "string"
    },
    "name": {
      "type": "string"
    },
    "tags": {
      "type": "object",
      "additionalProperties": {
        "type": "string"
      }
    },
    "state": {
      "type": "object",
      "additionalProperties": true
    },
    "config": {
      "type": "object",
      "additionalProperties": true
    },
    "region": {
      "type": "string",
      "x-auditable": true
    },
    "managed": {
      "type": "boolean",
      "x-auditable": true
    },
    "sections": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mcn_resource_details_section"
      }
    },
    "native_id": {
      "type": "string"
    },
    "account_id": {
      "$ref": "#/components/schemas/mcn_account_id"
    },
    "cloud_type": {
      "$ref": "#/components/schemas/mcn_cloud_type"
    },
    "managed_by": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mcn_cloud_platform_client"
      }
    },
    "updated_at": {
      "type": "string"
    },
    "observations": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/mcn_observation"
      }
    },
    "provider_ids": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mcn_provider_id"
      }
    },
    "resource_type": {
      "$ref": "#/components/schemas/mcn_resource_type"
    },
    "resource_group": {
      "type": "string",
      "x-auditable": true
    },
    "deployment_provider": {
      "$ref": "#/components/schemas/mcn_provider_id"
    },
    "provider_names_by_id": {
      "type": "object",
      "additionalProperties": {
        "type": "string"
      }
    },
    "monthly_cost_estimate": {
      "$ref": "#/components/schemas/mcn_cost"
    }
  }
}
object mcn_resource_details_section
{
  "type": "object",
  "required": [
    "name",
    "visible_items",
    "hidden_items"
  ],
  "properties": {
    "name": {
      "type": "string"
    },
    "help_text": {
      "type": "string"
    },
    "hidden_items": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mcn_resource_details_section_item"
      }
    },
    "visible_items": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mcn_resource_details_section_item"
      }
    }
  }
}
object mcn_resource_details_section_item
{
  "type": "object",
  "properties": {
    "name": {
      "type": "string"
    },
    "value": {
      "type": "object",
      "oneOf": [
        {
          "$ref": "#/components/schemas/mcn_string_item"
        },
        {
          "$ref": "#/components/schemas/mcn_yaml_item"
        },
        {
          "$ref": "#/components/schemas/mcn_yaml_diff_item"
        },
        {
          "$ref": "#/components/schemas/mcn_resource_preview_item"
        },
        {
          "$ref": "#/components/schemas/mcn_list_item"
        }
      ],
      "discriminator": {
        "propertyName": "item_type"
      }
    },
    "helpText": {
      "type": "string"
    }
  }
}
object mcn_resource_diff
{
  "type": "object",
  "required": [
    "resource",
    "diff",
    "planned_action",
    "keys_require_replace",
    "monthly_cost_estimate_diff"
  ],
  "properties": {
    "diff": {
      "$ref": "#/components/schemas/mcn_yaml_diff"
    },
    "resource": {
      "$ref": "#/components/schemas/mcn_resource_preview"
    },
    "planned_action": {
      "$ref": "#/components/schemas/mcn_planned_action"
    },
    "keys_require_replace": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "monthly_cost_estimate_diff": {
      "$ref": "#/components/schemas/mcn_cost_diff"
    }
  }
}
string mcn_resource_id
{
  "type": "string",
  "format": "uuid",
  "x-auditable": true
}
object mcn_resource_preview
{
  "type": "object",
  "required": [
    "id",
    "cloud_type",
    "resource_type",
    "name",
    "title",
    "detail"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/mcn_resource_id"
    },
    "name": {
      "type": "string"
    },
    "title": {
      "type": "string"
    },
    "detail": {
      "type": "string"
    },
    "cloud_type": {
      "$ref": "#/components/schemas/mcn_cloud_type"
    },
    "resource_type": {
      "$ref": "#/components/schemas/mcn_resource_type"
    }
  }
}
object mcn_resource_preview_item
{
  "type": "object",
  "required": [
    "item_type",
    "resource_preview"
  ],
  "properties": {
    "item_type": {
      "type": "string",
      "x-auditable": true
    },
    "resource_preview": {
      "$ref": "#/components/schemas/mcn_resource_preview"
    }
  }
}
string mcn_resource_type
{
  "enum": [
    "aws_customer_gateway",
    "aws_egress_only_internet_gateway",
    "aws_internet_gateway",
    "aws_instance",
    "aws_network_interface",
    "aws_route",
    "aws_route_table",
    "aws_route_table_association",
    "aws_subnet",
    "aws_vpc",
    "aws_vpc_ipv4_cidr_block_association",
    "aws_vpn_connection",
    "aws_vpn_connection_route",
    "aws_vpn_gateway",
    "aws_security_group",
    "aws_vpc_security_group_ingress_rule",
    "aws_vpc_security_group_egress_rule",
    "aws_ec2_managed_prefix_list",
    "aws_ec2_transit_gateway",
    "aws_ec2_transit_gateway_prefix_list_reference",
    "aws_ec2_transit_gateway_vpc_attachment",
    "azurerm_application_security_group",
    "azurerm_lb",
    "azurerm_lb_backend_address_pool",
    "azurerm_lb_nat_pool",
    "azurerm_lb_nat_rule",
    "azurerm_lb_rule",
    "azurerm_local_network_gateway",
    "azurerm_network_interface",
    "azurerm_network_interface_application_security_group_association",
    "azurerm_network_interface_backend_address_pool_association",
    "azurerm_network_interface_security_group_association",
    "azurerm_network_security_group",
    "azurerm_public_ip",
    "azurerm_route",
    "azurerm_route_table",
    "azurerm_subnet",
    "azurerm_subnet_route_table_association",
    "azurerm_virtual_machine",
    "azurerm_virtual_network_gateway_connection",
    "azurerm_virtual_network",
    "azurerm_virtual_network_gateway",
    "google_compute_network",
    "google_compute_subnetwork",
    "google_compute_vpn_gateway",
    "google_compute_vpn_tunnel",
    "google_compute_route",
    "google_compute_address",
    "google_compute_global_address",
    "google_compute_router",
    "google_compute_interconnect_attachment",
    "google_compute_ha_vpn_gateway",
    "google_compute_forwarding_rule",
    "google_compute_network_firewall_policy",
    "google_compute_network_firewall_policy_rule",
    "cloudflare_static_route",
    "cloudflare_ipsec_tunnel"
  ],
  "type": "string",
  "x-auditable": true
}
string mcn_resources_catalog_policy_preview
{
  "type": "string"
}
object mcn_resources_catalog_policy_preview_request
{
  "type": "object",
  "required": [
    "policy"
  ],
  "properties": {
    "policy": {
      "type": "string"
    }
  }
}
object mcn_resources_catalog_policy_preview_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mcn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mcn_resources_catalog_policy_preview"
        }
      }
    }
  ]
}
object mcn_response
{
  "type": "object",
  "required": [
    "result",
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "success": {
      "type": "boolean",
      "x-auditable": true
    },
    "messages": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mcn_error"
      }
    }
  }
}
object mcn_response_collection
{
  "type": "object",
  "required": [
    "result",
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "success": {
      "type": "boolean"
    },
    "messages": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mcn_error"
      }
    },
    "result_info": {
      "$ref": "#/components/schemas/mcn_result_info"
    }
  }
}
object mcn_result_info
{
  "type": "object",
  "required": [
    "page",
    "per_page",
    "count",
    "total_count"
  ],
  "properties": {
    "page": {
      "type": "integer",
      "example": 1,
      "description": "The current page (starts from zero)."
    },
    "count": {
      "type": "integer",
      "example": 1,
      "description": "The number of items in the current result set."
    },
    "per_page": {
      "type": "integer",
      "example": 20,
      "description": "The maximum number of items per page."
    },
    "total_count": {
      "type": "integer",
      "example": 2000,
      "description": "The total number of items in the entire result set."
    },
    "total_pages": {
      "type": "integer",
      "example": 200,
      "description": "The number of total pages in the entire result set."
    }
  }
}
object mcn_string_item
{
  "type": "object",
  "required": [
    "item_type",
    "string"
  ],
  "properties": {
    "string": {
      "type": "string"
    },
    "item_type": {
      "type": "string"
    }
  }
}
object mcn_update_catalog_sync_request
{
  "type": "object",
  "properties": {
    "name": {
      "type": "string"
    },
    "policy": {
      "type": "string"
    },
    "description": {
      "type": "string"
    },
    "update_mode": {
      "$ref": "#/components/schemas/mcn_catalog_sync_update_mode"
    }
  }
}
object mcn_update_catalog_sync_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mcn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mcn_catalog_sync"
        }
      }
    }
  ]
}
object mcn_update_magic_wan_address_space_request
{
  "type": "object",
  "required": [
    "prefixes"
  ],
  "properties": {
    "prefixes": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mcn_cidr_prefix"
      }
    }
  }
}
object mcn_update_magic_wan_address_space_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mcn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mcn_magic_wan_address_space"
        }
      }
    }
  ]
}
object mcn_update_onramp_request
{
  "type": "object",
  "properties": {
    "vpc": {
      "$ref": "#/components/schemas/mcn_resource_id"
    },
    "name": {
      "type": "string"
    },
    "description": {
      "type": "string"
    },
    "attached_hubs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mcn_resource_id"
      }
    },
    "attached_vpcs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mcn_resource_id"
      }
    },
    "install_routes_in_cloud": {
      "type": "boolean",
      "x-auditable": true
    },
    "install_routes_in_magic_wan": {
      "type": "boolean",
      "x-auditable": true
    },
    "manage_hub_to_hub_attachments": {
      "type": "boolean"
    },
    "manage_vpc_to_hub_attachments": {
      "type": "boolean"
    }
  }
}
object mcn_update_onramp_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mcn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mcn_onramp"
        }
      }
    }
  ]
}
object mcn_update_provider_request
{
  "type": "object",
  "properties": {
    "aws_arn": {
      "type": "string",
      "x-auditable": true
    },
    "description": {
      "type": "string",
      "x-auditable": true
    },
    "friendly_name": {
      "type": "string",
      "x-auditable": true
    },
    "gcp_project_id": {
      "type": "string",
      "x-auditable": true
    },
    "azure_tenant_id": {
      "type": "string",
      "x-auditable": true
    },
    "azure_subscription_id": {
      "type": "string",
      "x-auditable": true
    },
    "gcp_service_account_email": {
      "type": "string",
      "x-auditable": true
    }
  }
}
object mcn_update_provider_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mcn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mcn_provider"
        }
      }
    }
  ]
}
object mcn_yaml_diff
{
  "type": "object",
  "required": [
    "left_yaml",
    "left_description",
    "right_yaml",
    "right_description",
    "diff"
  ],
  "properties": {
    "diff": {
      "type": "string"
    },
    "left_yaml": {
      "type": "string"
    },
    "right_yaml": {
      "type": "string"
    },
    "left_description": {
      "type": "string"
    },
    "right_description": {
      "type": "string"
    }
  }
}
object mcn_yaml_diff_item
{
  "type": "object",
  "required": [
    "item_type",
    "yaml_diff"
  ],
  "properties": {
    "item_type": {
      "type": "string"
    },
    "yaml_diff": {
      "$ref": "#/components/schemas/mcn_yaml_diff"
    }
  }
}
object mcn_yaml_item
{
  "type": "object",
  "required": [
    "item_type",
    "yaml"
  ],
  "properties": {
    "yaml": {
      "type": "string"
    },
    "item_type": {
      "type": "string"
    }
  }
}
string mconn_account_id
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "readOnly": true,
  "maxLength": 32,
  "description": "Account identifier"
}
object mconn_admin_cohort
{
  "type": "object",
  "required": [
    "id",
    "name"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/mconn_uuid"
    },
    "name": {
      "type": "string"
    },
    "desired_version": {
      "type": "string"
    }
  }
}
object mconn_admin_cohort_create_request
{
  "$ref": "#/components/schemas/mconn_admin_cohort_fields"
}
object mconn_admin_cohort_create_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_admin_cohort"
        }
      }
    }
  ]
}
object mconn_admin_cohort_delete_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_admin_cohort"
        }
      }
    }
  ]
}
object mconn_admin_cohort_fetch_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_admin_cohort"
        }
      }
    }
  ]
}
object mconn_admin_cohort_fields
{
  "type": "object",
  "properties": {
    "name": {
      "type": "string"
    },
    "desired_version": {
      "type": "string"
    }
  }
}
object mconn_admin_cohort_list_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/mconn_admin_cohort"
          }
        }
      }
    }
  ]
}
object mconn_admin_cohort_replace_request
{
  "$ref": "#/components/schemas/mconn_admin_cohort_fields"
}
object mconn_admin_cohort_replace_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_admin_cohort"
        }
      }
    }
  ]
}
object mconn_admin_cohort_update_request
{
  "$ref": "#/components/schemas/mconn_admin_cohort_fields"
}
object mconn_admin_cohort_update_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_admin_cohort"
        }
      }
    }
  ]
}
object mconn_admin_connector
{
  "type": "object",
  "required": [
    "id",
    "account_id",
    "notes",
    "activated",
    "last_updated",
    "timezone",
    "interrupt_window_hour_of_day",
    "interrupt_window_duration_hours",
    "interrupt_window_days_of_week",
    "interrupt_window_embargo_dates",
    "upgrade_asap"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/mconn_uuid"
    },
    "notes": {
      "type": "string"
    },
    "timezone": {
      "type": "string"
    },
    "activated": {
      "type": "boolean"
    },
    "cohort_id": {
      "$ref": "#/components/schemas/mconn_uuid"
    },
    "device_id": {
      "$ref": "#/components/schemas/mconn_uuid"
    },
    "account_id": {
      "$ref": "#/components/schemas/mconn_account_id"
    },
    "last_updated": {
      "type": "string"
    },
    "upgrade_asap": {
      "type": "boolean"
    },
    "last_heartbeat": {
      "type": "string"
    },
    "desired_version": {
      "type": "string"
    },
    "last_seen_version": {
      "type": "string"
    },
    "cloudflared_tunnel_id": {
      "type": "string"
    },
    "cloudflared_tunnel_token": {
      "type": "string"
    },
    "interrupt_window_hour_of_day": {
      "type": "number"
    },
    "interrupt_window_days_of_week": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mconn_day_of_week"
      },
      "description": "Allowed days of the week for upgrades. Default is all days."
    },
    "interrupt_window_embargo_dates": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mconn_embargo_date"
      },
      "maxItems": 100,
      "description": "List of dates (YYYY-MM-DD) when upgrades are blocked."
    },
    "interrupt_window_duration_hours": {
      "type": "number",
      "maximum": 24,
      "minimum": 1
    }
  }
}
object mconn_admin_connector_create_request
{
  "$ref": "#/components/schemas/mconn_admin_connector_fields"
}
object mconn_admin_connector_create_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_admin_connector"
        }
      }
    }
  ]
}
object mconn_admin_connector_delete_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_admin_connector"
        }
      }
    }
  ]
}
object mconn_admin_connector_fetch_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_admin_connector"
        }
      }
    }
  ]
}
object mconn_admin_connector_fields
{
  "type": "object",
  "properties": {
    "notes": {
      "type": "string"
    },
    "timezone": {
      "type": "string"
    },
    "activated": {
      "type": "boolean"
    },
    "cohort_id": {
      "type": "string"
    },
    "device_id": {
      "type": "string"
    },
    "account_id": {
      "type": "number"
    },
    "last_updated": {
      "type": "string"
    },
    "upgrade_asap": {
      "type": "boolean"
    },
    "last_heartbeat": {
      "type": "string"
    },
    "desired_version": {
      "type": "string"
    },
    "last_seen_version": {
      "type": "string"
    },
    "cloudflared_tunnel_id": {
      "type": "string"
    },
    "cloudflared_tunnel_token": {
      "type": "string"
    },
    "interrupt_window_hour_of_day": {
      "type": "number"
    },
    "interrupt_window_days_of_week": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mconn_day_of_week"
      },
      "description": "Allowed days of the week for upgrades. Default is all days."
    },
    "interrupt_window_embargo_dates": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mconn_embargo_date"
      },
      "maxItems": 100,
      "description": "List of dates (YYYY-MM-DD) when upgrades are blocked."
    },
    "interrupt_window_duration_hours": {
      "type": "number",
      "maximum": 24,
      "minimum": 1
    }
  }
}
object mconn_admin_connector_list_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/mconn_admin_connector"
          }
        }
      }
    }
  ]
}
object mconn_admin_connector_replace_request
{
  "$ref": "#/components/schemas/mconn_admin_connector_fields"
}
object mconn_admin_connector_replace_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_admin_connector"
        }
      }
    }
  ]
}
object mconn_admin_connector_update_request
{
  "$ref": "#/components/schemas/mconn_admin_connector_fields"
}
object mconn_admin_connector_update_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_admin_connector"
        }
      }
    }
  ]
}
object mconn_admin_device
{
  "type": "object",
  "required": [
    "id",
    "metadata",
    "crypt_key",
    "last_updated"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/mconn_uuid"
    },
    "ek_cert": {
      "type": "string"
    },
    "metadata": {
      "type": "string"
    },
    "crypt_key": {
      "type": "string",
      "x-sensitive": true
    },
    "imaged_at": {
      "type": "string"
    },
    "device_type": {
      "type": "string"
    },
    "last_updated": {
      "type": "string"
    },
    "serial_number": {
      "type": "string"
    },
    "last_crypt_key": {
      "type": "string",
      "x-sensitive": true
    },
    "pki_rotation_output": {
      "type": "string"
    },
    "pki_rotation_started_at": {
      "type": "string"
    },
    "pki_rotation_finished_at": {
      "type": "string"
    },
    "pki_rotation_status_code": {
      "type": "number"
    },
    "crypt_key_rotation_output": {
      "type": "string"
    },
    "crypt_key_rotation_started_at": {
      "type": "string"
    },
    "crypt_key_rotation_finished_at": {
      "type": "string"
    },
    "crypt_key_rotation_status_code": {
      "type": "number"
    }
  }
}
object mconn_admin_device_create_request
{
  "$ref": "#/components/schemas/mconn_admin_device_fields"
}
object mconn_admin_device_create_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_admin_device"
        }
      }
    }
  ]
}
object mconn_admin_device_credential
{
  "type": "object",
  "required": [
    "id",
    "device_id",
    "type",
    "provisioned_at",
    "value"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/mconn_uuid"
    },
    "type": {
      "type": "string"
    },
    "value": {
      "type": "string"
    },
    "device_id": {
      "$ref": "#/components/schemas/mconn_uuid"
    },
    "provisioned_at": {
      "type": "string"
    }
  }
}
object mconn_admin_device_credential_create_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_admin_device_credential"
        }
      }
    }
  ]
}
object mconn_admin_device_credential_list_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/mconn_admin_device_credential"
          }
        }
      }
    }
  ]
}
object mconn_admin_device_delete_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_admin_device"
        }
      }
    }
  ]
}
object mconn_admin_device_fetch_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_admin_device"
        }
      }
    }
  ]
}
object mconn_admin_device_fields
{
  "type": "object",
  "properties": {
    "ek_cert": {
      "type": "string"
    },
    "metadata": {
      "type": "string"
    },
    "crypt_key": {
      "type": "string",
      "x-sensitive": true
    },
    "imaged_at": {
      "type": "string"
    },
    "device_type": {
      "type": "string"
    },
    "last_updated": {
      "type": "string"
    },
    "serial_number": {
      "type": "string"
    },
    "last_crypt_key": {
      "type": "string",
      "x-sensitive": true
    },
    "pki_rotation_output": {
      "type": "string"
    },
    "pki_rotation_started_at": {
      "type": "string"
    },
    "pki_rotation_finished_at": {
      "type": "string"
    },
    "pki_rotation_status_code": {
      "type": "number"
    },
    "crypt_key_rotation_output": {
      "type": "string"
    },
    "crypt_key_rotation_started_at": {
      "type": "string"
    },
    "crypt_key_rotation_finished_at": {
      "type": "string"
    },
    "crypt_key_rotation_status_code": {
      "type": "number"
    }
  }
}
object mconn_admin_device_list_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/mconn_admin_device"
          }
        }
      }
    }
  ]
}
object mconn_admin_device_replace_request
{
  "$ref": "#/components/schemas/mconn_admin_device_fields"
}
object mconn_admin_device_replace_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_admin_device"
        }
      }
    }
  ]
}
object mconn_admin_device_update_request
{
  "$ref": "#/components/schemas/mconn_admin_device_fields"
}
object mconn_admin_device_update_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_admin_device"
        }
      }
    }
  ]
}
object mconn_admin_event_get_success
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_envelope"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_recorded_event"
        }
      }
    }
  ]
}
object mconn_admin_events_get_latest_result
{
  "type": "object",
  "required": [
    "items",
    "count"
  ],
  "properties": {
    "count": {
      "type": "number"
    },
    "items": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mconn_recorded_event"
      }
    }
  }
}
object mconn_admin_events_get_latest_success
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_envelope"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_admin_events_get_latest_result"
        }
      }
    }
  ]
}
object mconn_admin_events_get_result
{
  "type": "object",
  "required": [
    "items",
    "count"
  ],
  "properties": {
    "count": {
      "type": "number"
    },
    "items": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mconn_event_metadata"
      }
    },
    "cursor": {
      "type": "string"
    }
  }
}
object mconn_admin_events_get_success
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_envelope"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_admin_events_get_result"
        }
      }
    }
  ]
}
object mconn_admin_flare
{
  "type": "object",
  "required": [
    "id",
    "triggered_at"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/mconn_uuid"
    },
    "triggered_at": {
      "type": "string"
    }
  }
}
object mconn_admin_flare_replace_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_admin_flare"
        }
      }
    }
  ]
}
object mconn_admin_macros_diagnose_connector_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_admin_macros_diagnose_connector_result"
        }
      }
    }
  ]
}
object mconn_admin_macros_diagnose_connector_result
{
  "type": "object",
  "properties": {
    "site": {
      "$ref": "#/components/schemas/mconn_admin_site"
    },
    "device": {
      "$ref": "#/components/schemas/mconn_admin_device"
    },
    "connector": {
      "$ref": "#/components/schemas/mconn_admin_connector"
    }
  }
}
object mconn_admin_macros_provision_licensed_connector_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_admin_macros_provision_licensed_connector_result"
        }
      }
    }
  ]
}
object mconn_admin_macros_provision_licensed_connector_result
{
  "type": "object",
  "required": [
    "license_key",
    "device",
    "connector"
  ],
  "properties": {
    "device": {
      "$ref": "#/components/schemas/mconn_admin_device"
    },
    "connector": {
      "$ref": "#/components/schemas/mconn_admin_connector"
    },
    "license_key": {
      "type": "string"
    }
  }
}
object mconn_admin_macros_provision_physical_connector_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_admin_macros_provision_physical_connector_result"
        }
      }
    }
  ]
}
object mconn_admin_macros_provision_physical_connector_result
{
  "type": "object",
  "required": [
    "connector"
  ],
  "properties": {
    "connector": {
      "$ref": "#/components/schemas/mconn_admin_connector"
    }
  }
}
object mconn_admin_macros_report_exception_result
{
  "type": "object",
  "required": [
    "message"
  ],
  "properties": {
    "message": {
      "type": "string"
    }
  }
}
object mconn_admin_macros_report_exception_success
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_envelope"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_admin_macros_report_exception_result"
        }
      }
    }
  ]
}
object mconn_admin_site
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/mconn_uuid"
    }
  }
}
object mconn_admin_snapshot_get_success
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_envelope"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_snapshot"
        }
      }
    }
  ]
}
object mconn_admin_snapshots_get_latest_result
{
  "type": "object",
  "required": [
    "items",
    "count"
  ],
  "properties": {
    "count": {
      "type": "number"
    },
    "items": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mconn_snapshot"
      }
    }
  }
}
object mconn_admin_snapshots_get_latest_success
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_envelope"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_admin_snapshots_get_latest_result"
        }
      }
    }
  ]
}
object mconn_admin_snapshots_get_result
{
  "type": "object",
  "required": [
    "items",
    "count"
  ],
  "properties": {
    "count": {
      "type": "number"
    },
    "items": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mconn_snapshot_metadata"
      }
    },
    "cursor": {
      "type": "string"
    }
  }
}
object mconn_admin_snapshots_get_success
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_envelope"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_admin_snapshots_get_result"
        }
      }
    }
  ]
}
object mconn_admin_upgrade_slot
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "number"
    },
    "started_at": {
      "type": "string"
    },
    "connector_id": {
      "$ref": "#/components/schemas/mconn_uuid"
    }
  }
}
object mconn_admin_upgrade_slots_fetch_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/mconn_admin_upgrade_slot"
          }
        }
      }
    }
  ]
}
object mconn_admin_upgrade_slots_replace_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/mconn_admin_upgrade_slot"
          }
        }
      }
    }
  ]
}
object mconn_bad_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_response"
    },
    {
      "type": "object",
      "properties": {
        "errors": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/mconn_coded_message"
          },
          "minLength": 1
        },
        "result": {
          "$ref": "#/components/schemas/mconn_none"
        }
      }
    }
  ]
}
object mconn_coded_message
{
  "type": "object",
  "required": [
    "code",
    "message"
  ],
  "properties": {
    "code": {
      "type": "number"
    },
    "message": {
      "type": "string"
    }
  }
}
object mconn_conduit_connector
{
  "type": "object",
  "required": [
    "account_id"
  ],
  "properties": {
    "account_id": {
      "$ref": "#/components/schemas/mconn_account_id"
    }
  }
}
object mconn_conduit_fetch_connector_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_conduit_connector"
        }
      }
    }
  ]
}
object mconn_conduit_fetch_connector_result
{
  "$ref": "#/components/schemas/mconn_conduit_connector"
}
object mconn_connector_events_post_result
{
  "type": "object",
  "required": [
    "count"
  ],
  "properties": {
    "count": {
      "type": "number"
    }
  }
}
object mconn_connector_events_post_success
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_envelope"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_connector_events_post_result"
        }
      }
    }
  ]
}
object mconn_connector_snapshots_post_result
{
  "type": "object",
  "required": [
    "count"
  ],
  "properties": {
    "count": {
      "type": "number"
    }
  }
}
object mconn_connector_snapshots_post_success
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_envelope"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_connector_snapshots_post_result"
        }
      }
    }
  ]
}
object mconn_controller_attestation_session
{
  "type": "object",
  "required": [
    "ak_public",
    "device",
    "nonce"
  ],
  "properties": {
    "nonce": {
      "type": "string"
    },
    "device": {
      "$ref": "#/components/schemas/mconn_controller_device_identity"
    },
    "ak_public": {
      "type": "string"
    },
    "connector": {
      "$ref": "#/components/schemas/mconn_controller_connector_identity"
    }
  }
}
object mconn_controller_begin_attestation_session_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_controller_attestation_session"
        }
      }
    }
  ]
}
object mconn_controller_begin_attestation_session_result
{
  "$ref": "#/components/schemas/mconn_controller_attestation_session"
}
object mconn_controller_connector
{
  "type": "object",
  "required": [
    "id",
    "account_id",
    "activated",
    "timezone",
    "interrupt_window_hour_of_day",
    "interrupt_window_duration_hours",
    "interrupt_window_days_of_week",
    "interrupt_window_embargo_dates",
    "upgrade_asap"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/mconn_uuid"
    },
    "timezone": {
      "type": "string"
    },
    "activated": {
      "type": "boolean"
    },
    "account_id": {
      "$ref": "#/components/schemas/mconn_account_id"
    },
    "upgrade_asap": {
      "type": "boolean"
    },
    "last_heartbeat": {
      "type": "string"
    },
    "pinned_version": {
      "type": "string",
      "deprecated": true
    },
    "desired_version": {
      "type": "string"
    },
    "last_seen_version": {
      "type": "string"
    },
    "cohort_desired_version": {
      "type": "string"
    },
    "cloudflared_tunnel_token": {
      "type": "string"
    },
    "interrupt_window_hour_of_day": {
      "type": "number"
    },
    "interrupt_window_days_of_week": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mconn_day_of_week"
      },
      "description": "Allowed days of the week for upgrades. Default is all days."
    },
    "interrupt_window_embargo_dates": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mconn_embargo_date"
      },
      "maxItems": 100,
      "description": "List of dates (YYYY-MM-DD) when upgrades are blocked."
    },
    "interrupt_window_duration_hours": {
      "type": "number",
      "maximum": 24,
      "minimum": 1
    }
  }
}
object mconn_controller_connector_identity
{
  "type": "object",
  "required": [
    "id",
    "account_id",
    "activated"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/mconn_uuid"
    },
    "activated": {
      "type": "boolean"
    },
    "account_id": {
      "$ref": "#/components/schemas/mconn_account_id"
    }
  }
}
object mconn_controller_device
{
  "type": "object",
  "required": [
    "id",
    "crypt_key"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/mconn_uuid"
    },
    "crypt_key": {
      "type": "string",
      "x-sensitive": true
    },
    "imaged_at": {
      "type": "string"
    },
    "serial_number": {
      "type": "string"
    },
    "last_crypt_key": {
      "type": "string",
      "x-sensitive": true
    },
    "crypt_key_rotation_finished_at": {
      "type": "string"
    }
  }
}
object mconn_controller_device_identity
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/mconn_uuid"
    },
    "imaged_at": {
      "type": "string"
    },
    "serial_number": {
      "type": "string"
    }
  }
}
object mconn_controller_end_attestation_session_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_controller_attestation_session"
        }
      }
    }
  ]
}
object mconn_controller_end_attestation_session_result
{
  "$ref": "#/components/schemas/mconn_controller_attestation_session"
}
object mconn_controller_fetch_cloudflared_token_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_controller_fetch_cloudflared_token_result"
        }
      }
    }
  ]
}
string mconn_controller_fetch_cloudflared_token_result
{
  "type": "string",
  "x-sensitive": true
}
object mconn_controller_fetch_connector_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_controller_connector"
        }
      }
    }
  ]
}
object mconn_controller_fetch_connector_result
{
  "$ref": "#/components/schemas/mconn_controller_connector"
}
object mconn_controller_fetch_device_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_controller_device"
        }
      }
    }
  ]
}
object mconn_controller_fetch_device_result
{
  "$ref": "#/components/schemas/mconn_controller_device"
}
object mconn_controller_fetch_flare_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_controller_flare"
        }
      }
    }
  ]
}
object mconn_controller_fetch_flare_result
{
  "$ref": "#/components/schemas/mconn_controller_flare"
}
object mconn_controller_fetch_upgrade_slots_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/mconn_controller_upgrade_slot"
          }
        }
      }
    }
  ]
}
object mconn_controller_flare
{
  "type": "object",
  "required": [
    "triggered_at"
  ],
  "properties": {
    "triggered_at": {
      "type": "string"
    }
  }
}
object mconn_controller_identify_ek_cert_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_controller_identify_ek_cert_result"
        }
      }
    }
  ]
}
object mconn_controller_identify_ek_cert_result
{
  "type": "object",
  "properties": {
    "device": {
      "$ref": "#/components/schemas/mconn_controller_device_identity"
    },
    "connector": {
      "$ref": "#/components/schemas/mconn_controller_connector_identity"
    }
  }
}
object mconn_controller_identify_license_key_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_controller_identify_license_key_result"
        }
      }
    }
  ]
}
object mconn_controller_identify_license_key_result
{
  "type": "object",
  "properties": {
    "device": {
      "$ref": "#/components/schemas/mconn_controller_device_identity"
    },
    "connector": {
      "$ref": "#/components/schemas/mconn_controller_connector_identity"
    }
  }
}
object mconn_controller_update_connector_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_controller_update_connector_result"
        }
      }
    }
  ]
}
object mconn_controller_update_connector_result
{
  "type": "object"
}
object mconn_controller_update_device_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_controller_update_device_result"
        }
      }
    }
  ]
}
object mconn_controller_update_device_result
{
  "type": "object"
}
object mconn_controller_upgrade_slot
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "number"
    },
    "started_at": {
      "type": "string"
    },
    "connector_id": {
      "$ref": "#/components/schemas/mconn_uuid"
    }
  }
}
object mconn_create_attestation_session_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_controller_attestation_session"
        }
      }
    }
  ]
}
object mconn_create_connector_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_admin_connector"
        }
      }
    }
  ]
}
object mconn_customer_connector
{
  "type": "object",
  "required": [
    "id",
    "notes",
    "activated",
    "last_updated",
    "timezone",
    "interrupt_window_hour_of_day",
    "interrupt_window_duration_hours",
    "interrupt_window_days_of_week",
    "interrupt_window_embargo_dates"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/mconn_uuid"
    },
    "notes": {
      "type": "string",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    },
    "device": {
      "$ref": "#/components/schemas/mconn_customer_device"
    },
    "timezone": {
      "type": "string",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    },
    "activated": {
      "type": "boolean",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    },
    "license_key": {
      "type": "string",
      "x-stainless-terraform-configurability": "computed_optional"
    },
    "last_updated": {
      "type": "string",
      "x-auditable": true
    },
    "last_heartbeat": {
      "type": "string",
      "x-auditable": true
    },
    "last_seen_version": {
      "type": "string",
      "x-auditable": true
    },
    "interrupt_window_hour_of_day": {
      "type": "number",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    },
    "interrupt_window_days_of_week": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mconn_day_of_week"
      },
      "description": "Allowed days of the week for upgrades. Default is all days.",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    },
    "interrupt_window_embargo_dates": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mconn_embargo_date"
      },
      "maxItems": 100,
      "description": "List of dates (YYYY-MM-DD) when upgrades are blocked.",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    },
    "interrupt_window_duration_hours": {
      "type": "number",
      "maximum": 24,
      "minimum": 1,
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    }
  }
}
object mconn_customer_connector_create_request
{
  "type": "object",
  "allOf": [
    {
      "type": "object",
      "required": [
        "device"
      ],
      "properties": {
        "device": {
          "$ref": "#/components/schemas/mconn_customer_device_options"
        }
      }
    },
    {
      "$ref": "#/components/schemas/mconn_customer_connector_fields"
    }
  ]
}
object mconn_customer_connector_create_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_customer_connector"
        }
      }
    }
  ]
}
object mconn_customer_connector_delete_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_customer_connector"
        }
      }
    }
  ]
}
object mconn_customer_connector_fetch_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_customer_connector"
        }
      }
    }
  ]
}
object mconn_customer_connector_fields
{
  "type": "object",
  "properties": {
    "notes": {
      "type": "string",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    },
    "timezone": {
      "type": "string",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    },
    "activated": {
      "type": "boolean",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    },
    "interrupt_window_hour_of_day": {
      "type": "number",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    },
    "interrupt_window_days_of_week": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mconn_day_of_week"
      },
      "description": "Allowed days of the week for upgrades. Default is all days.",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    },
    "interrupt_window_embargo_dates": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mconn_embargo_date"
      },
      "maxItems": 100,
      "description": "List of dates (YYYY-MM-DD) when upgrades are blocked.",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    },
    "interrupt_window_duration_hours": {
      "type": "number",
      "maximum": 24,
      "minimum": 1,
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    }
  }
}
object mconn_customer_connector_list_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/mconn_customer_connector"
          }
        }
      }
    }
  ]
}
object mconn_customer_connector_update_request
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_customer_connector_fields"
    },
    {
      "type": "object",
      "properties": {
        "provision_license": {
          "type": "boolean",
          "x-go-type": "maybe.Maybe[bool]",
          "description": "When true, regenerate license key for the connector.",
          "x-go-type-import": {
            "path": "go.cfdata.org/mconn/api/maybe"
          },
          "x-go-type-skip-optional-pointer": true
        }
      }
    }
  ]
}
object mconn_customer_connector_update_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_customer_connector"
        }
      }
    }
  ]
}
object mconn_customer_device
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/mconn_uuid"
    },
    "serial_number": {
      "type": "string",
      "x-auditable": true
    }
  }
}
object mconn_customer_device_options
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    },
    "serial_number": {
      "type": "string",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    },
    "provision_license": {
      "type": "boolean",
      "description": "When true, create and provision a new licence key for the connector."
    }
  },
  "description": "Exactly one of id, serial_number, or provision_license must be provided.",
  "maxProperties": 1,
  "minProperties": 1
}
object mconn_customer_event_get_success
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_envelope"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_recorded_event"
        }
      }
    }
  ]
}
object mconn_customer_events_get_latest_result
{
  "type": "object",
  "required": [
    "items",
    "count"
  ],
  "properties": {
    "count": {
      "type": "number"
    },
    "items": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mconn_recorded_event"
      }
    }
  }
}
object mconn_customer_events_get_latest_success
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_envelope"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_customer_events_get_latest_result"
        }
      }
    }
  ]
}
object mconn_customer_events_get_result
{
  "type": "object",
  "required": [
    "items",
    "count"
  ],
  "properties": {
    "count": {
      "type": "number"
    },
    "items": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mconn_event_metadata"
      }
    },
    "cursor": {
      "type": "string"
    }
  }
}
object mconn_customer_events_get_success
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_envelope"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_customer_events_get_result"
        }
      }
    }
  ]
}
object mconn_customer_snapshot_get_success
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_envelope"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_snapshot"
        }
      }
    }
  ]
}
object mconn_customer_snapshots_get_latest_result
{
  "type": "object",
  "required": [
    "items",
    "count"
  ],
  "properties": {
    "count": {
      "type": "number"
    },
    "items": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mconn_snapshot"
      }
    }
  }
}
object mconn_customer_snapshots_get_latest_success
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_envelope"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_customer_snapshots_get_latest_result"
        }
      }
    }
  ]
}
object mconn_customer_snapshots_get_result
{
  "type": "object",
  "required": [
    "items",
    "count"
  ],
  "properties": {
    "count": {
      "type": "number"
    },
    "items": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mconn_snapshot_metadata"
      }
    },
    "cursor": {
      "type": "string"
    }
  }
}
object mconn_customer_snapshots_get_success
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_envelope"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_customer_snapshots_get_result"
        }
      }
    }
  ]
}
string mconn_day_of_week
{
  "enum": [
    "Sunday",
    "Monday",
    "Tuesday",
    "Wednesday",
    "Thursday",
    "Friday",
    "Saturday"
  ],
  "type": "string"
}
object mconn_delete_attestation_session_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_controller_attestation_session"
        }
      }
    }
  ]
}
object mconn_delete_controller_flare_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_controller_flare"
        }
      }
    }
  ]
}
string mconn_embargo_date
{
  "type": "string",
  "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
}
object mconn_envelope
{
  "type": "object",
  "required": [
    "success"
  ],
  "properties": {
    "errors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mconn_coded_message"
      }
    },
    "success": {
      "type": "boolean"
    },
    "messages": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mconn_coded_message"
      }
    }
  }
}
object mconn_event
{
  "type": "object",
  "oneOf": [
    {
      "type": "object",
      "required": [
        "k"
      ],
      "properties": {
        "k": {
          "enum": [
            "Init"
          ],
          "type": "string",
          "description": "Initialized process"
        }
      }
    },
    {
      "type": "object",
      "required": [
        "k"
      ],
      "properties": {
        "k": {
          "enum": [
            "Leave"
          ],
          "type": "string",
          "description": "Stopped process"
        }
      }
    },
    {
      "type": "object",
      "required": [
        "k"
      ],
      "properties": {
        "k": {
          "enum": [
            "StartAttestation"
          ],
          "type": "string",
          "description": "Started attestation"
        }
      }
    },
    {
      "type": "object",
      "required": [
        "k"
      ],
      "properties": {
        "k": {
          "enum": [
            "FinishAttestationSuccess"
          ],
          "type": "string",
          "description": "Finished attestation"
        }
      }
    },
    {
      "type": "object",
      "required": [
        "k"
      ],
      "properties": {
        "k": {
          "enum": [
            "FinishAttestationFailure"
          ],
          "type": "string",
          "description": "Failed attestation"
        }
      }
    },
    {
      "type": "object",
      "required": [
        "k"
      ],
      "properties": {
        "k": {
          "enum": [
            "StartRotateCryptKey"
          ],
          "type": "string",
          "description": "Started crypt key rotation"
        }
      }
    },
    {
      "type": "object",
      "required": [
        "k"
      ],
      "properties": {
        "k": {
          "enum": [
            "FinishRotateCryptKeySuccess"
          ],
          "type": "string",
          "description": "Finished crypt key rotation"
        }
      }
    },
    {
      "type": "object",
      "required": [
        "k"
      ],
      "properties": {
        "k": {
          "enum": [
            "FinishRotateCryptKeyFailure"
          ],
          "type": "string",
          "description": "Failed crypt key rotation"
        }
      }
    },
    {
      "type": "object",
      "required": [
        "k"
      ],
      "properties": {
        "k": {
          "enum": [
            "StartRotatePki"
          ],
          "type": "string",
          "description": "Started PKI rotation"
        }
      }
    },
    {
      "type": "object",
      "required": [
        "k"
      ],
      "properties": {
        "k": {
          "enum": [
            "FinishRotatePkiSuccess"
          ],
          "type": "string",
          "description": "Finished PKI rotation"
        }
      }
    },
    {
      "type": "object",
      "required": [
        "k"
      ],
      "properties": {
        "k": {
          "enum": [
            "FinishRotatePkiFailure"
          ],
          "type": "string",
          "description": "Failed PKI rotation"
        }
      }
    },
    {
      "type": "object",
      "required": [
        "k",
        "url"
      ],
      "properties": {
        "k": {
          "enum": [
            "StartUpgrade"
          ],
          "type": "string",
          "description": "Started upgrade"
        },
        "url": {
          "type": "string",
          "description": "Location of upgrade bundle"
        }
      }
    },
    {
      "type": "object",
      "required": [
        "k"
      ],
      "properties": {
        "k": {
          "enum": [
            "FinishUpgradeSuccess"
          ],
          "type": "string",
          "description": "Finished upgrade"
        }
      }
    },
    {
      "type": "object",
      "required": [
        "k"
      ],
      "properties": {
        "k": {
          "enum": [
            "FinishUpgradeFailure"
          ],
          "type": "string",
          "description": "Failed upgrade"
        }
      }
    },
    {
      "type": "object",
      "required": [
        "k"
      ],
      "properties": {
        "k": {
          "enum": [
            "Reconcile"
          ],
          "type": "string",
          "description": "Reconciled"
        }
      }
    },
    {
      "type": "object",
      "required": [
        "k"
      ],
      "properties": {
        "k": {
          "enum": [
            "ConfigureCloudflaredTunnel"
          ],
          "type": "string",
          "description": "Configured Cloudflared tunnel"
        }
      }
    }
  ]
}
object mconn_event_metadata
{
  "type": "object",
  "required": [
    "a",
    "t",
    "n",
    "k"
  ],
  "properties": {
    "a": {
      "type": "number",
      "description": "Time the Event was collected (seconds since the Unix epoch)"
    },
    "k": {
      "type": "string",
      "description": "Kind"
    },
    "n": {
      "type": "number",
      "description": "Sequence number, used to order events with the same timestamp"
    },
    "t": {
      "type": "number",
      "description": "Time the Event was recorded (seconds since the Unix epoch)"
    }
  }
}
object mconn_good_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_response"
    },
    {
      "type": "object",
      "properties": {
        "errors": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/mconn_coded_message"
          },
          "maxLength": 0
        }
      }
    }
  ]
}
object mconn_none
{
  "type": "object",
  "nullable": true
}
object mconn_partner_device
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/mconn_uuid"
    }
  }
}
object mconn_partner_device_register_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_partner_device"
        }
      }
    }
  ]
}
object mconn_read_controller_connector_token_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "string",
          "x-sensitive": true
        }
      }
    }
  ]
}
object mconn_recorded_event
{
  "type": "object",
  "required": [
    "t",
    "n",
    "e"
  ],
  "properties": {
    "e": {
      "$ref": "#/components/schemas/mconn_event"
    },
    "n": {
      "type": "number",
      "description": "Sequence number, used to order events with the same timestamp"
    },
    "t": {
      "type": "number",
      "description": "Time the Event was recorded (seconds since the Unix epoch)"
    },
    "v": {
      "type": "string",
      "description": "Version"
    }
  },
  "description": "Recorded Event"
}
object mconn_response
{
  "type": "object",
  "required": [
    "result",
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "success": {
      "type": "boolean"
    },
    "messages": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mconn_coded_message"
      }
    }
  }
}
object mconn_snapshot
{
  "type": "object",
  "required": [
    "t",
    "v",
    "count_reclaim_failures",
    "count_reclaimed_paths",
    "count_record_failed",
    "count_transmit_failures"
  ],
  "properties": {
    "t": {
      "type": "number",
      "description": "Time the Snapshot was recorded (seconds since the Unix epoch)"
    },
    "v": {
      "type": "string",
      "description": "Version"
    },
    "bonds": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mconn_snapshot_bond"
      }
    },
    "delta": {
      "type": "number",
      "description": "Number of network operations applied during state transition"
    },
    "disks": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mconn_snapshot_disk"
      }
    },
    "mounts": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mconn_snapshot_mount"
      }
    },
    "epsilon": {
      "type": "number",
      "description": "Simulated number of network operations applied during state transition"
    },
    "netdevs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mconn_snapshot_netdev"
      }
    },
    "tunnels": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mconn_snapshot_tunnel"
      }
    },
    "ha_state": {
      "type": "string",
      "description": "Name of high availability state"
    },
    "ha_value": {
      "type": "number",
      "description": "Numeric value associated with high availability state (0 = disabled, 1 = active, 2 = standby, 3 = stopped, 4 = fault)"
    },
    "platform": {
      "type": "string",
      "description": "Platform identifier"
    },
    "thermals": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mconn_snapshot_thermal"
      }
    },
    "cpu_count": {
      "type": "number",
      "description": "Count of processors/cores"
    },
    "interfaces": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mconn_snapshot_interface"
      }
    },
    "dhcp_leases": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mconn_snapshot_dhcp_lease"
      }
    },
    "kernel_ctxt": {
      "type": "number",
      "description": "Number of context switches that the system underwent"
    },
    "kernel_btime": {
      "type": "number",
      "description": "Boot time (seconds since Unix epoch)"
    },
    "uptime_idle_ms": {
      "type": "number",
      "description": "Sum of how much time each core has spent idle"
    },
    "cpu_time_irq_ms": {
      "type": "number",
      "description": "Time spent servicing interrupts (milliseconds)"
    },
    "load_average_1m": {
      "type": "number",
      "description": "The one-minute load average"
    },
    "load_average_5m": {
      "type": "number",
      "description": "The five-minute load average"
    },
    "uptime_total_ms": {
      "type": "number",
      "description": "Uptime of the system, including time spent in suspend"
    },
    "cpu_pressure_10s": {
      "type": "number",
      "description": "Percentage of time over a 10 second window that tasks were stalled"
    },
    "cpu_pressure_60s": {
      "type": "number",
      "description": "Percentage of time over a 1 minute window that tasks were stalled"
    },
    "cpu_time_idle_ms": {
      "type": "number",
      "description": "Time spent in idle state (milliseconds)"
    },
    "cpu_time_nice_ms": {
      "type": "number",
      "description": "Time spent in low-priority user mode (milliseconds)"
    },
    "cpu_time_user_ms": {
      "type": "number",
      "description": "Time spent in user mode (milliseconds)"
    },
    "kernel_processes": {
      "type": "number",
      "description": "Number of forks since boot"
    },
    "load_average_15m": {
      "type": "number",
      "description": "The fifteen-minute load average"
    },
    "load_average_cur": {
      "type": "number",
      "description": "Number of currently runnable kernel scheduling entities"
    },
    "load_average_max": {
      "type": "number",
      "description": "Number of kernel scheduling entities that currently exist on the system"
    },
    "snmp_ip_frag_oks": {
      "type": "number",
      "description": "Number of datagrams successfully fragmented"
    },
    "snmp_tcp_in_errs": {
      "type": "number",
      "description": "Number of TCP segments received in error"
    },
    "snmp_tcp_in_segs": {
      "type": "number",
      "description": "Number of TCP segments received"
    },
    "snmp_tcp_rto_max": {
      "type": "number",
      "description": "Maximum value permitted by a TCP implementation for the retransmission timeout (milliseconds)"
    },
    "snmp_tcp_rto_min": {
      "type": "number",
      "description": "Minimum value permitted by a TCP implementation for the retransmission timeout (milliseconds)"
    },
    "cpu_pressure_300s": {
      "type": "number",
      "description": "Percentage of time over a 5 minute window that tasks were stalled"
    },
    "cpu_time_guest_ms": {
      "type": "number",
      "description": "Time spent running a virtual CPU or guest OS (milliseconds)"
    },
    "cpu_time_steal_ms": {
      "type": "number",
      "description": "Time stolen (milliseconds)"
    },
    "memory_free_bytes": {
      "type": "number",
      "description": "The sum of LowFree and HighFree"
    },
    "memory_slab_bytes": {
      "type": "number",
      "description": "In-kernel data structures cache"
    },
    "snmp_icmp_in_msgs": {
      "type": "number",
      "description": "Number of ICMP messages received"
    },
    "snmp_ip_reasm_oks": {
      "type": "number",
      "description": "Number of datagrams successfully reassembled"
    },
    "snmp_tcp_max_conn": {
      "type": "number",
      "description": "Limit on the total number of TCP connections"
    },
    "snmp_tcp_out_rsts": {
      "type": "number",
      "description": "Number of TCP segments sent with RST flag"
    },
    "snmp_tcp_out_segs": {
      "type": "number",
      "description": "Number of TCP segments sent"
    },
    "snmp_udp_no_ports": {
      "type": "number",
      "description": "Number of UDP datagrams received for which there was not application at the destination port"
    },
    "cpu_time_iowait_ms": {
      "type": "number",
      "description": "Time spent wait for I/O to complete (milliseconds)"
    },
    "cpu_time_system_ms": {
      "type": "number",
      "description": "Time spent in system mode (milliseconds)"
    },
    "memory_dirty_bytes": {
      "type": "number",
      "description": "Memory which is waiting to get written back to the disk"
    },
    "memory_shmem_bytes": {
      "type": "number",
      "description": "Amount of memory consumed by tmpfs"
    },
    "memory_total_bytes": {
      "type": "number",
      "description": "Total usable RAM"
    },
    "snmp_icmp_in_echos": {
      "type": "number",
      "description": "Number of ICMP Echo (request) messages received"
    },
    "snmp_icmp_out_msgs": {
      "type": "number",
      "description": "Number of ICMP messages attempted to send"
    },
    "snmp_ip_frag_fails": {
      "type": "number",
      "description": "Number of datagrams discarded because fragmentation failed"
    },
    "snmp_udp_in_errors": {
      "type": "number",
      "description": "Number of UDP datagrams failed to be delivered for reasons other than lack of application at the destination port"
    },
    "system_boot_time_s": {
      "type": "number",
      "description": "Boottime of the system (seconds since the Unix epoch)"
    },
    "count_record_failed": {
      "type": "number",
      "description": "Count of failed snapshot recordings"
    },
    "cpu_time_softirq_ms": {
      "type": "number",
      "description": "Time spent servicing softirqs (milliseconds)"
    },
    "memory_active_bytes": {
      "type": "number",
      "description": "Memory that has been used more recently"
    },
    "memory_bounce_bytes": {
      "type": "number",
      "description": "Memory used for block device bounce buffers"
    },
    "memory_cached_bytes": {
      "type": "number",
      "description": "In-memory cache for files read from the disk"
    },
    "memory_mapped_bytes": {
      "type": "number",
      "description": "Files which have been mapped into memory"
    },
    "memory_z_swap_bytes": {
      "type": "number",
      "description": "Memory consumed by the zswap backend, compressed"
    },
    "snmp_icmp_in_errors": {
      "type": "number",
      "description": "Number of ICMP messages received with ICMP-specific errors"
    },
    "snmp_icmp_out_echos": {
      "type": "number",
      "description": "Number of ICMP Echo (request) messages sent"
    },
    "snmp_ip_default_ttl": {
      "type": "number",
      "description": "Default value of the Time-To-Live field of the IP header"
    },
    "snmp_ip_in_delivers": {
      "type": "number",
      "description": "Number of input datagrams successfully delivered to IP user-protocols"
    },
    "snmp_ip_in_discards": {
      "type": "number",
      "description": "Number of input datagrams otherwise discarded"
    },
    "snmp_ip_in_receives": {
      "type": "number",
      "description": "Number of input datagrams received from interfaces"
    },
    "snmp_ip_reasm_fails": {
      "type": "number",
      "description": "Number of failures detected by the reassembly algorithm"
    },
    "snmp_ip_reasm_reqds": {
      "type": "number",
      "description": "Number of fragments received which needed to be reassembled"
    },
    "snmp_tcp_curr_estab": {
      "type": "number",
      "description": "Number of TCP connections in ESTABLISHED or CLOSE-WAIT"
    },
    "io_pressure_full_10s": {
      "type": "number",
      "description": "Percentage of time over a 10 second window that all tasks were stalled"
    },
    "io_pressure_full_60s": {
      "type": "number",
      "description": "Percentage of time over a 1 minute window that all tasks were stalled"
    },
    "io_pressure_some_10s": {
      "type": "number",
      "description": "Percentage of time over a 10 second window that some tasks were stalled"
    },
    "io_pressure_some_60s": {
      "type": "number",
      "description": "Percentage of time over a 1 minute window that some tasks were stalled"
    },
    "memory_buffers_bytes": {
      "type": "number",
      "description": "Relatively temporary storage for raw disk blocks"
    },
    "memory_per_cpu_bytes": {
      "type": "number",
      "description": "Memory allocated to the per-cpu alloctor used to back per-cpu allocations"
    },
    "snmp_icmp_out_errors": {
      "type": "number",
      "description": "Number of ICMP messages which this entity did not send due to ICMP-specific errors"
    },
    "snmp_ip_frag_creates": {
      "type": "number",
      "description": "Number of datagrams generated by fragmentation"
    },
    "snmp_ip_out_discards": {
      "type": "number",
      "description": "Number of output datagrams otherwise discarded"
    },
    "snmp_ip_out_requests": {
      "type": "number",
      "description": "Number of datagrams supplied for transmission"
    },
    "count_reclaimed_paths": {
      "type": "number",
      "description": "Count of reclaimed paths"
    },
    "cpu_pressure_total_us": {
      "type": "number",
      "description": "Total stall time (microseconds)"
    },
    "io_pressure_full_300s": {
      "type": "number",
      "description": "Percentage of time over a 5 minute window that all tasks were stalled"
    },
    "io_pressure_some_300s": {
      "type": "number",
      "description": "Percentage of time over a 3 minute window that some tasks were stalled"
    },
    "memory_cma_free_bytes": {
      "type": "number",
      "description": "Free CMA (Contiguous Memory Allocator) pages"
    },
    "memory_hugepages_free": {
      "type": "number",
      "description": "The number of huge pages in the pool that are not yet allocated"
    },
    "memory_hugepages_rsvd": {
      "type": "number",
      "description": "Number of huge pages for which a commitment has been made, but no allocation has yet been made"
    },
    "memory_hugepages_surp": {
      "type": "number",
      "description": "Number of huge pages in the pool above the threshold"
    },
    "memory_inactive_bytes": {
      "type": "number",
      "description": "Memory which has been less recently used"
    },
    "memory_low_free_bytes": {
      "type": "number",
      "description": "Amount of free lowmem"
    },
    "snmp_ip_in_hdr_errors": {
      "type": "number",
      "description": "Number of input datagrams discarded due to errors in the IP header"
    },
    "snmp_ip_out_no_routes": {
      "type": "number",
      "description": "Number of output datagrams discarded because no route matched"
    },
    "snmp_ip_reasm_timeout": {
      "type": "number",
      "description": "Number of seconds fragments are held while awaiting reassembly"
    },
    "snmp_tcp_active_opens": {
      "type": "number",
      "description": "Number of times TCP transitions to SYN-SENT from CLOSED"
    },
    "snmp_tcp_estab_resets": {
      "type": "number",
      "description": "Number of times TCP transitions to CLOSED from ESTABLISHED or CLOSE-WAIT"
    },
    "snmp_tcp_retrans_segs": {
      "type": "number",
      "description": "Number of TCP segments retransmitted"
    },
    "snmp_udp_in_datagrams": {
      "type": "number",
      "description": "Number of UDP datagrams delivered to UDP applications"
    },
    "count_reclaim_failures": {
      "type": "number",
      "description": "Count of failures to reclaim space"
    },
    "cpu_time_guest_nice_ms": {
      "type": "number",
      "description": "Time spent running a niced guest (milliseconds)"
    },
    "memory_available_bytes": {
      "type": "number",
      "description": "Estimate of how much memory is available for starting new applications"
    },
    "memory_cma_total_bytes": {
      "type": "number",
      "description": "Total CMA (Contiguous Memory Allocator) pages"
    },
    "memory_high_free_bytes": {
      "type": "number",
      "description": "Amount of free highmem"
    },
    "memory_hugepages_total": {
      "type": "number",
      "description": "The size of the pool of huge pages"
    },
    "memory_low_total_bytes": {
      "type": "number",
      "description": "Total amount of lowmem"
    },
    "memory_swap_free_bytes": {
      "type": "number",
      "description": "Amount of swap space that is currently unused"
    },
    "memory_writeback_bytes": {
      "type": "number",
      "description": "Memory which is actively being written back to the disk"
    },
    "memory_z_swapped_bytes": {
      "type": "number",
      "description": "Amount of anonymous memory stored in zswap, uncompressed"
    },
    "snmp_icmp_in_echo_reps": {
      "type": "number",
      "description": "Number of ICMP Echo Reply messages received"
    },
    "snmp_icmp_in_redirects": {
      "type": "number",
      "description": "Number of ICMP Redirect messages received"
    },
    "snmp_ip_forw_datagrams": {
      "type": "number",
      "description": "Number of datagrams forwarded to their final destination"
    },
    "snmp_ip_in_addr_errors": {
      "type": "number",
      "description": "Number of input datagrams discarded due to errors in the IP address"
    },
    "snmp_tcp_attempt_fails": {
      "type": "number",
      "description": "Number of times TCP transitions to CLOSED from SYN-SENT or SYN-RCVD, plus transitions to LISTEN from SYN-RCVD"
    },
    "snmp_tcp_passive_opens": {
      "type": "number",
      "description": "Number of times TCP transitions to SYN-RCVD from LISTEN"
    },
    "snmp_udp_out_datagrams": {
      "type": "number",
      "description": "Number of UDP datagrams sent"
    },
    "count_transmit_failures": {
      "type": "number",
      "description": "Count of failed snapshot transmissions"
    },
    "memory_anon_pages_bytes": {
      "type": "number",
      "description": "Non-file backed pages mapped into user-space page tables"
    },
    "memory_high_total_bytes": {
      "type": "number",
      "description": "Total amount of highmem"
    },
    "memory_swap_total_bytes": {
      "type": "number",
      "description": "Total amount of swap space available"
    },
    "snmp_icmp_in_addr_masks": {
      "type": "number",
      "description": "Number of ICMP Address Mask Request messages received"
    },
    "snmp_icmp_in_parm_probs": {
      "type": "number",
      "description": "Number of ICMP Parameter Problem messages received"
    },
    "snmp_icmp_in_time_excds": {
      "type": "number",
      "description": "Number of ICMP Time Exceeded messages received"
    },
    "snmp_icmp_in_timestamps": {
      "type": "number",
      "description": "Number of ICMP Timestamp (request) messages received"
    },
    "snmp_icmp_out_echo_reps": {
      "type": "number",
      "description": "Number of ICMP Echo Reply messages sent"
    },
    "snmp_icmp_out_redirects": {
      "type": "number",
      "description": "Number of ICMP Redirect messages sent"
    },
    "snmp_tcp_in_csum_errors": {
      "type": "number",
      "description": "Number of TCP segments received with checksum errors"
    },
    "kernel_processes_blocked": {
      "type": "number",
      "description": "Number of processes blocked waiting for I/O"
    },
    "kernel_processes_running": {
      "type": "number",
      "description": "Number of processes in runnable state"
    },
    "memory_page_tables_bytes": {
      "type": "number",
      "description": "Amount of memory dedicated to the lowest level of page tables"
    },
    "memory_pressure_full_10s": {
      "type": "number",
      "description": "Percentage of time over a 10 second window that all tasks were stalled"
    },
    "memory_pressure_full_60s": {
      "type": "number",
      "description": "Percentage of time over a 1 minute window that all tasks were stalled"
    },
    "memory_pressure_some_10s": {
      "type": "number",
      "description": "Percentage of time over a 10 second window that some tasks were stalled"
    },
    "memory_pressure_some_60s": {
      "type": "number",
      "description": "Percentage of time over a 1 minute window that some tasks were stalled"
    },
    "memory_s_unreclaim_bytes": {
      "type": "number",
      "description": "Part of slab that cannot be reclaimed on memory pressure"
    },
    "memory_swap_cached_bytes": {
      "type": "number",
      "description": "Memory swapped out and back in while still in swap file"
    },
    "snmp_icmp_in_csum_errors": {
      "type": "number",
      "description": "Number of ICMP messages received with bad checksums"
    },
    "snmp_icmp_in_src_quenchs": {
      "type": "number",
      "description": "Number of ICMP Source Quench messages received"
    },
    "snmp_icmp_out_addr_masks": {
      "type": "number",
      "description": "Number of ICMP Address Mask Request messages sent"
    },
    "snmp_icmp_out_parm_probs": {
      "type": "number",
      "description": "Number of ICMP Parameter Problem messages sent"
    },
    "snmp_icmp_out_time_excds": {
      "type": "number",
      "description": "Number of ICMP Time Exceeded messages sent"
    },
    "snmp_icmp_out_timestamps": {
      "type": "number",
      "description": "Number of ICMP Timestamp (request) messages sent"
    },
    "io_pressure_full_total_us": {
      "type": "number",
      "description": "Total stall time (microseconds)"
    },
    "io_pressure_some_total_us": {
      "type": "number",
      "description": "Total stall time (microseconds)"
    },
    "memory_commit_limit_bytes": {
      "type": "number",
      "description": "Total amount of memory currently available to be allocated on the system"
    },
    "memory_committed_as_bytes": {
      "type": "number",
      "description": "Amount of memory presently allocated on the system"
    },
    "memory_hugepagesize_bytes": {
      "type": "number",
      "description": "The size of huge pages"
    },
    "memory_kernel_stack_bytes": {
      "type": "number",
      "description": "Amount of memory allocated to kernel stacks"
    },
    "memory_pressure_full_300s": {
      "type": "number",
      "description": "Percentage of time over a 5 minute window that all tasks were stalled"
    },
    "memory_pressure_some_300s": {
      "type": "number",
      "description": "Percentage of time over a 5 minute window that some tasks were stalled"
    },
    "memory_vmalloc_used_bytes": {
      "type": "number",
      "description": "Amount of vmalloc area which is used"
    },
    "snmp_icmp_out_src_quenchs": {
      "type": "number",
      "description": "Number of ICMP Source Quench messages sent"
    },
    "snmp_ip_in_unknown_protos": {
      "type": "number",
      "description": "Number of input datagrams discarded due unknown or unsupported protocol"
    },
    "memory_k_reclaimable_bytes": {
      "type": "number",
      "description": "Kernel allocations that the kernel will attempt to reclaim under memory pressure"
    },
    "memory_s_reclaimable_bytes": {
      "type": "number",
      "description": "Part of slab that can be reclaimed on memory pressure"
    },
    "memory_vmalloc_chunk_bytes": {
      "type": "number",
      "description": "Largest contiguous block of vmalloc area which is free"
    },
    "memory_vmalloc_total_bytes": {
      "type": "number",
      "description": "Total size of vmalloc memory area"
    },
    "memory_writeback_tmp_bytes": {
      "type": "number",
      "description": "Memory used by FUSE for temporary writeback buffers"
    },
    "snmp_icmp_in_dest_unreachs": {
      "type": "number",
      "description": "Number of ICMP Destination Unreachable messages received"
    },
    "snmp_ip_forwarding_enabled": {
      "type": "boolean",
      "description": "Set when acting as an IP gateway"
    },
    "memory_anon_hugepages_bytes": {
      "type": "number",
      "description": "Non-file backed huge pages mapped into user-space page tables"
    },
    "snmp_icmp_in_addr_mask_reps": {
      "type": "number",
      "description": "Number of ICMP Address Mask Reply messages received"
    },
    "snmp_icmp_in_timestamp_reps": {
      "type": "number",
      "description": "Number of ICMP Address Mask Request messages received"
    },
    "snmp_icmp_out_dest_unreachs": {
      "type": "number",
      "description": "Number of ICMP Destination Unreachable messages sent"
    },
    "memory_shmem_hugepages_bytes": {
      "type": "number",
      "description": "Memory used by shmem and tmpfs, allocated with huge pages"
    },
    "snmp_icmp_out_addr_mask_reps": {
      "type": "number",
      "description": "Number of ICMP Address Mask Reply messages sent"
    },
    "snmp_icmp_out_timestamp_reps": {
      "type": "number",
      "description": "Number of ICMP Timestamp Reply messages sent"
    },
    "memory_pressure_full_total_us": {
      "type": "number",
      "description": "Total stall time (microseconds)"
    },
    "memory_pressure_some_total_us": {
      "type": "number",
      "description": "Total stall time (microseconds)"
    },
    "memory_shmem_pmd_mapped_bytes": {
      "type": "number",
      "description": "Shared memory mapped into user space with huge pages"
    },
    "memory_secondary_page_tables_bytes": {
      "type": "number",
      "description": "Amount of memory dedicated to the lowest level of page tables"
    }
  },
  "description": "Snapshot"
}
object mconn_snapshot_bond
{
  "type": "object",
  "required": [
    "name",
    "status"
  ],
  "properties": {
    "name": {
      "type": "string",
      "description": "Name of the network interface"
    },
    "status": {
      "type": "string",
      "description": "Current status of the network interface"
    }
  },
  "description": "Snapshot Bond"
}
object mconn_snapshot_dhcp_lease
{
  "type": "object",
  "required": [
    "interface_name",
    "expiry_time",
    "mac_address",
    "ip_address",
    "hostname",
    "client_id"
  ],
  "properties": {
    "hostname": {
      "type": "string",
      "description": "Hostname of the device the IP Address was leased to"
    },
    "client_id": {
      "type": "string",
      "description": "Client ID of the device the IP Address was leased to"
    },
    "ip_address": {
      "type": "string",
      "description": "IP Address that was leased"
    },
    "expiry_time": {
      "type": "number",
      "description": "Expiry time of the DHCP lease (seconds since the Unix epoch)"
    },
    "mac_address": {
      "type": "string",
      "description": "MAC Address of the device the IP Address was leased to"
    },
    "interface_name": {
      "type": "string",
      "description": "Name of the network interface"
    }
  },
  "description": "Snapshot DHCP lease"
}
object mconn_snapshot_disk
{
  "type": "object",
  "required": [
    "in_progress",
    "major",
    "merged",
    "minor",
    "name",
    "reads",
    "sectors_read",
    "sectors_written",
    "time_in_progress_ms",
    "time_reading_ms",
    "time_writing_ms",
    "weighted_time_in_progress_ms",
    "writes",
    "writes_merged"
  ],
  "properties": {
    "name": {
      "type": "string",
      "description": "Device name"
    },
    "major": {
      "type": "number",
      "description": "Device major number"
    },
    "minor": {
      "type": "number",
      "description": "Device minor number"
    },
    "reads": {
      "type": "number",
      "description": "Reads completed successfully"
    },
    "merged": {
      "type": "number",
      "description": "Reads merged"
    },
    "writes": {
      "type": "number",
      "description": "Writes completed"
    },
    "flushes": {
      "type": "number",
      "description": "Flushes completed successfully"
    },
    "discards": {
      "type": "number",
      "description": "Discards completed successfully"
    },
    "in_progress": {
      "type": "number",
      "description": "I/Os currently in progress"
    },
    "sectors_read": {
      "type": "number",
      "description": "Sectors read successfully"
    },
    "writes_merged": {
      "type": "number",
      "description": "Writes merged"
    },
    "discards_merged": {
      "type": "number",
      "description": "Discards merged"
    },
    "sectors_written": {
      "type": "number",
      "description": "Sectors written successfully"
    },
    "time_reading_ms": {
      "type": "number",
      "description": "Time spent reading (milliseconds)"
    },
    "time_writing_ms": {
      "type": "number",
      "description": "Time spent writing (milliseconds)"
    },
    "time_flushing_ms": {
      "type": "number",
      "description": "Time spent flushing (milliseconds)"
    },
    "sectors_discarded": {
      "type": "number",
      "description": "Sectors discarded"
    },
    "time_discarding_ms": {
      "type": "number",
      "description": "Time spent discarding (milliseconds)"
    },
    "time_in_progress_ms": {
      "type": "number",
      "description": "Time spent doing I/Os (milliseconds)"
    },
    "weighted_time_in_progress_ms": {
      "type": "number",
      "description": "Weighted time spent doing I/Os (milliseconds)"
    }
  },
  "description": "Snapshot Disk"
}
object mconn_snapshot_interface
{
  "type": "object",
  "required": [
    "name",
    "operstate"
  ],
  "properties": {
    "name": {
      "type": "string",
      "description": "Name of the network interface"
    },
    "speed": {
      "type": "number",
      "description": "Speed of the network interface (bits per second)"
    },
    "operstate": {
      "type": "string",
      "description": "UP/DOWN state of the network interface"
    },
    "ip_addresses": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mconn_snapshot_interface_address"
      }
    }
  },
  "description": "Snapshot Interface"
}
object mconn_snapshot_interface_address
{
  "type": "object",
  "required": [
    "interface_name",
    "ip_address"
  ],
  "properties": {
    "ip_address": {
      "type": "string",
      "description": "IP address of the network interface"
    },
    "interface_name": {
      "type": "string",
      "description": "Name of the network interface"
    }
  },
  "description": "Snapshot Interface Address"
}
object mconn_snapshot_metadata
{
  "type": "object",
  "required": [
    "a",
    "t"
  ],
  "properties": {
    "a": {
      "type": "number",
      "description": "Time the Snapshot was collected (seconds since the Unix epoch)"
    },
    "t": {
      "type": "number",
      "description": "Time the Snapshot was recorded (seconds since the Unix epoch)"
    }
  }
}
object mconn_snapshot_mount
{
  "type": "object",
  "required": [
    "name",
    "kind",
    "file_system",
    "mount_point"
  ],
  "properties": {
    "kind": {
      "type": "string",
      "description": "Kind of disk (HDD, SSD, etc.)"
    },
    "name": {
      "type": "string",
      "description": "Name of the disk mount"
    },
    "file_system": {
      "type": "string",
      "description": "File system on disk (EXT4, NTFS, etc.)"
    },
    "mount_point": {
      "type": "string",
      "description": "Path where disk is mounted"
    },
    "total_bytes": {
      "type": "number",
      "description": "Total disk size (bytes)"
    },
    "is_read_only": {
      "type": "boolean",
      "description": "Determines whether the disk is read-only"
    },
    "is_removable": {
      "type": "boolean",
      "description": "Determines whether the disk is removable"
    },
    "total_inodes": {
      "type": "number",
      "description": "Total inodes on filesystem"
    },
    "available_bytes": {
      "type": "number",
      "description": "Available disk size (bytes)"
    },
    "available_inodes": {
      "type": "number",
      "description": "Available inodes on filesystem"
    }
  },
  "description": "Snapshot Mount"
}
object mconn_snapshot_netdev
{
  "type": "object",
  "required": [
    "name",
    "recv_bytes",
    "recv_packets",
    "recv_errs",
    "recv_drop",
    "recv_fifo",
    "recv_frame",
    "recv_compressed",
    "recv_multicast",
    "sent_bytes",
    "sent_packets",
    "sent_errs",
    "sent_drop",
    "sent_fifo",
    "sent_colls",
    "sent_carrier",
    "sent_compressed"
  ],
  "properties": {
    "name": {
      "type": "string",
      "description": "Name of the network device"
    },
    "recv_drop": {
      "type": "number",
      "description": "Packets dropped"
    },
    "recv_errs": {
      "type": "number",
      "description": "Bad packets received"
    },
    "recv_fifo": {
      "type": "number",
      "description": "FIFO overruns"
    },
    "sent_drop": {
      "type": "number",
      "description": "Number of packets dropped during transmission"
    },
    "sent_errs": {
      "type": "number",
      "description": "Number of transmission errors"
    },
    "sent_fifo": {
      "type": "number",
      "description": "FIFO overruns"
    },
    "recv_bytes": {
      "type": "number",
      "description": "Total bytes received"
    },
    "recv_frame": {
      "type": "number",
      "description": "Frame alignment errors"
    },
    "sent_bytes": {
      "type": "number",
      "description": "Total bytes transmitted"
    },
    "sent_colls": {
      "type": "number",
      "description": "Number of collisions"
    },
    "recv_packets": {
      "type": "number",
      "description": "Total packets received"
    },
    "sent_carrier": {
      "type": "number",
      "description": "Number of packets not sent due to carrier errors"
    },
    "sent_packets": {
      "type": "number",
      "description": "Total packets transmitted"
    },
    "recv_multicast": {
      "type": "number",
      "description": "Multicast packets received"
    },
    "recv_compressed": {
      "type": "number",
      "description": "Compressed packets received"
    },
    "sent_compressed": {
      "type": "number",
      "description": "Number of compressed packets transmitted"
    }
  },
  "description": "Snapshot Netdev"
}
object mconn_snapshot_thermal
{
  "type": "object",
  "required": [
    "label"
  ],
  "properties": {
    "label": {
      "type": "string",
      "description": "Sensor identifier for the component"
    },
    "max_celcius": {
      "type": "number",
      "description": "Maximum temperature of the component (degrees Celsius)"
    },
    "current_celcius": {
      "type": "number",
      "description": "Current temperature of the component (degrees Celsius)"
    },
    "critical_celcius": {
      "type": "number",
      "description": "Critical failure temperature of the component (degrees Celsius)"
    }
  },
  "description": "Snapshot Thermal"
}
object mconn_snapshot_tunnel
{
  "type": "object",
  "required": [
    "tunnel_id",
    "interface_name",
    "health_state",
    "health_value"
  ],
  "properties": {
    "tunnel_id": {
      "type": "string",
      "description": "Tunnel identifier"
    },
    "probed_mtu": {
      "type": "number",
      "description": "MTU as measured between the two ends of the tunnel"
    },
    "health_state": {
      "type": "string",
      "description": "Name of tunnel health state (unknown, healthy, degraded, down)"
    },
    "health_value": {
      "type": "number",
      "description": "Numeric value associated with tunnel state (0 = unknown, 1 = healthy, 2 = degraded, 3 = down)"
    },
    "interface_name": {
      "type": "string",
      "description": "The tunnel interface name (i.e. xfrm1, xfrm3.99, etc.)"
    },
    "recent_healthy_pings": {
      "type": "number",
      "description": "Number of recent healthy pings for this tunnel"
    },
    "recent_unhealthy_pings": {
      "type": "number",
      "description": "Number of recent unhealthy pings for this tunnel"
    }
  },
  "description": "Snapshot Tunnels"
}
object mconn_support_cohort
{
  "type": "object",
  "required": [
    "id",
    "name"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/mconn_uuid"
    },
    "name": {
      "type": "string"
    },
    "desired_version": {
      "type": "string"
    }
  }
}
object mconn_support_cohort_fetch_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_support_cohort"
        }
      }
    }
  ]
}
object mconn_support_cohort_list_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/mconn_support_cohort"
          }
        }
      }
    }
  ]
}
object mconn_support_connector
{
  "type": "object",
  "required": [
    "id",
    "account_id",
    "notes",
    "activated",
    "last_updated",
    "timezone",
    "interrupt_window_hour_of_day",
    "interrupt_window_duration_hours",
    "interrupt_window_days_of_week",
    "interrupt_window_embargo_dates",
    "upgrade_asap"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/mconn_uuid"
    },
    "notes": {
      "type": "string"
    },
    "timezone": {
      "type": "string"
    },
    "activated": {
      "type": "boolean"
    },
    "cohort_id": {
      "$ref": "#/components/schemas/mconn_uuid"
    },
    "device_id": {
      "$ref": "#/components/schemas/mconn_uuid"
    },
    "account_id": {
      "$ref": "#/components/schemas/mconn_account_id"
    },
    "last_updated": {
      "type": "string"
    },
    "upgrade_asap": {
      "type": "boolean"
    },
    "last_heartbeat": {
      "type": "string"
    },
    "desired_version": {
      "type": "string"
    },
    "last_seen_version": {
      "type": "string"
    },
    "interrupt_window_hour_of_day": {
      "type": "number"
    },
    "interrupt_window_days_of_week": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mconn_day_of_week"
      }
    },
    "interrupt_window_embargo_dates": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mconn_embargo_date"
      },
      "maxItems": 100
    },
    "interrupt_window_duration_hours": {
      "type": "number",
      "maximum": 24,
      "minimum": 1
    }
  }
}
object mconn_support_connector_fetch_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_support_connector"
        }
      }
    }
  ]
}
object mconn_support_connector_list_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/mconn_support_connector"
          }
        }
      }
    }
  ]
}
object mconn_support_device
{
  "type": "object",
  "required": [
    "id",
    "metadata",
    "last_updated"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/mconn_uuid"
    },
    "ek_cert": {
      "type": "string"
    },
    "metadata": {
      "type": "string"
    },
    "imaged_at": {
      "type": "string"
    },
    "device_type": {
      "type": "string"
    },
    "last_updated": {
      "type": "string"
    },
    "serial_number": {
      "type": "string"
    },
    "pki_rotation_started_at": {
      "type": "string"
    },
    "pki_rotation_finished_at": {
      "type": "string"
    },
    "pki_rotation_status_code": {
      "type": "number"
    },
    "crypt_key_rotation_started_at": {
      "type": "string"
    },
    "crypt_key_rotation_finished_at": {
      "type": "string"
    },
    "crypt_key_rotation_status_code": {
      "type": "number"
    }
  }
}
object mconn_support_device_fetch_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_support_device"
        }
      }
    }
  ]
}
object mconn_support_device_list_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/mconn_support_device"
          }
        }
      }
    }
  ]
}
object mconn_support_macros_diagnose_connector_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_support_macros_diagnose_connector_result"
        }
      }
    }
  ]
}
object mconn_support_macros_diagnose_connector_result
{
  "type": "object",
  "properties": {
    "site": {
      "$ref": "#/components/schemas/mconn_support_site"
    },
    "device": {
      "$ref": "#/components/schemas/mconn_support_device"
    },
    "connector": {
      "$ref": "#/components/schemas/mconn_support_connector"
    }
  }
}
object mconn_support_macros_provision_licensed_connector_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_support_macros_provision_licensed_connector_result"
        }
      }
    }
  ]
}
object mconn_support_macros_provision_licensed_connector_result
{
  "type": "object",
  "required": [
    "license_key",
    "device",
    "connector"
  ],
  "properties": {
    "device": {
      "$ref": "#/components/schemas/mconn_support_device"
    },
    "connector": {
      "$ref": "#/components/schemas/mconn_support_connector"
    },
    "license_key": {
      "type": "string"
    }
  }
}
object mconn_support_macros_provision_physical_connector_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/mconn_good_response"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/mconn_support_macros_provision_physical_connector_result"
        }
      }
    }
  ]
}
object mconn_support_macros_provision_physical_connector_result
{
  "type": "object",
  "required": [
    "connector"
  ],
  "properties": {
    "connector": {
      "$ref": "#/components/schemas/mconn_support_connector"
    }
  }
}
object mconn_support_site
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/mconn_uuid"
    }
  }
}
string mconn_uuid
{
  "type": "string",
  "x-auditable": true
}
string moq_account_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "description": "Cloudflare account identifier."
}
object moq_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "code": {
            "type": "integer"
          },
          "message": {
            "type": "string"
          }
        }
      }
    },
    "success": {
      "type": "boolean",
      "example": true
    },
    "messages": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "code": {
            "type": "integer"
          },
          "message": {
            "type": "string"
          }
        }
      }
    }
  }
}
object moq_api-response-error
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "code",
          "message"
        ],
        "properties": {
          "code": {
            "type": "integer",
            "description": "Error codes:\n- 21001: Request body too large (HTTP 413)\n- 21002: Request body too small / missing name (HTTP 400)\n- 21003: Relay ID should be 32 hex characters (HTTP 400)\n- 21004: Failed to decode body — invalid JSON (HTTP 400)\n- 21005: Failed to read body (HTTP 400)\n- 21006: Unexpected server error (HTTP 500)\n- 21007: Relay not found (HTTP 404)\n- 21008: Relay limit exceeded for this account (HTTP 409)\n- 21009: origin_fallback and lingering_subscribe are mutually exclusive (HTTP 400)\n- 21010: Invalid token type — must be \"publish_subscribe\" or \"subscribe\" (HTTP 400)\n- 21011: Invalid relay name — name must not be empty (HTTP 400)\n"
          },
          "message": {
            "type": "string"
          }
        }
      },
      "example": [
        {
          "code": 21007,
          "message": "A MoQ relay with this ID was not found."
        }
      ]
    },
    "result": {
      "type": "object",
      "nullable": true
    },
    "success": {
      "type": "boolean",
      "example": false
    },
    "messages": {
      "type": "array",
      "items": {
        "type": "object"
      }
    }
  }
}
object moq_lingering_subscribe_config
{
  "type": "object",
  "properties": {
    "enabled": {
      "type": "boolean",
      "default": true
    },
    "max_timeout_ms": {
      "type": "integer",
      "default": 30000,
      "maximum": 300000,
      "minimum": 0,
      "description": "Relay-level ceiling on lingering subscribe timeout (ms). Default 30000."
    }
  }
}
object moq_origin_fallback_config
{
  "type": "object",
  "properties": {
    "urls": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "default": [],
      "description": "Ordered list of upstream origin relay URLs."
    },
    "enabled": {
      "type": "boolean",
      "default": false
    }
  }
}
object moq_relay
{
  "type": "object",
  "required": [
    "uid",
    "created",
    "modified",
    "name",
    "config"
  ],
  "properties": {
    "uid": {
      "type": "string",
      "example": "a1b2c3d4e5f67890a1b2c3d4e5f67890"
    },
    "name": {
      "type": "string",
      "example": "Production Live Stream"
    },
    "config": {
      "$ref": "#/components/schemas/moq_relay_config"
    },
    "status": {
      "enum": [
        "connected"
      ],
      "type": "string",
      "description": "\"connected\" when active, omitted otherwise."
    },
    "created": {
      "type": "string",
      "format": "date-time"
    },
    "modified": {
      "type": "string",
      "format": "date-time"
    }
  },
  "description": "Full relay details (no tokens)."
}
object moq_relay_config
{
  "type": "object",
  "properties": {
    "origin_fallback": {
      "$ref": "#/components/schemas/moq_origin_fallback_config"
    },
    "lingering_subscribe": {
      "$ref": "#/components/schemas/moq_lingering_subscribe_config"
    }
  },
  "description": "origin_fallback and lingering_subscribe are mutually exclusive.\n"
}
object moq_relay_create_response
{
  "type": "object",
  "required": [
    "uid",
    "created",
    "modified",
    "name",
    "token_publish_subscribe",
    "token_subscribe",
    "config"
  ],
  "properties": {
    "uid": {
      "type": "string",
      "example": "a1b2c3d4e5f67890a1b2c3d4e5f67890",
      "description": "Server-generated unique identifier (32 hex chars)."
    },
    "name": {
      "type": "string",
      "example": "Production Live Stream"
    },
    "config": {
      "$ref": "#/components/schemas/moq_relay_config"
    },
    "created": {
      "type": "string",
      "format": "date-time"
    },
    "modified": {
      "type": "string",
      "format": "date-time"
    },
    "token_subscribe": {
      "type": "string",
      "example": "eyJhbGciOiJFZDI1NTE5...",
      "description": "Subscribe-only token. Treat as sensitive."
    },
    "token_publish_subscribe": {
      "type": "string",
      "example": "eyJhbGciOiJFZDI1NTE5...",
      "description": "Full access token (publish + subscribe). Treat as sensitive."
    }
  },
  "description": "Relay with auto-generated tokens (shown once)."
}
object moq_relay_list_item
{
  "type": "object",
  "required": [
    "uid",
    "created",
    "modified",
    "name"
  ],
  "properties": {
    "uid": {
      "type": "string",
      "example": "a1b2c3d4e5f67890a1b2c3d4e5f67890"
    },
    "name": {
      "type": "string"
    },
    "created": {
      "type": "string",
      "format": "date-time"
    },
    "modified": {
      "type": "string",
      "format": "date-time"
    }
  },
  "description": "Abbreviated relay for list responses."
}
object moq_result_info
{
  "type": "object",
  "properties": {
    "count": {
      "type": "integer"
    },
    "total": {
      "type": "integer"
    }
  }
}
object moq_rotate_token_response
{
  "type": "object",
  "required": [
    "type",
    "token"
  ],
  "properties": {
    "type": {
      "enum": [
        "publish_subscribe",
        "subscribe"
      ],
      "type": "string"
    },
    "token": {
      "type": "string",
      "example": "eyJhbGciOiJFZDI1NTE5...",
      "description": "New token value (shown once). Treat as sensitive."
    }
  }
}
array mq_api-v4-error
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000,
        "x-auditable": true
      },
      "message": {
        "type": "string",
        "x-auditable": true
      }
    },
    "uniqueItems": true
  },
  "example": [
    {
      "code": 7003,
      "message": "No route for the URI"
    }
  ],
  "minLength": 1
}
object mq_api-v4-failure
{
  "type": "object",
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/mq_api-v4-error"
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Indicates if the API call was successful or not.",
      "x-auditable": true
    },
    "messages": {
      "$ref": "#/components/schemas/mq_api-v4-message"
    }
  }
}
array mq_api-v4-message
{
  "type": "array",
  "items": {
    "type": "string",
    "x-auditable": true
  },
  "example": []
}
object mq_api-v4-success
{
  "type": "object",
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/mq_api-v4-error"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "description": "Indicates if the API call was successful or not.",
      "x-auditable": true
    },
    "messages": {
      "$ref": "#/components/schemas/mq_api-v4-message"
    }
  }
}
number mq_batch-size
{
  "type": "number",
  "example": 50,
  "description": "The maximum number of messages to include in a batch.",
  "x-auditable": true
}
object mq_consumer-request
{
  "type": "object",
  "oneOf": [
    {
      "$ref": "#/components/schemas/mq_worker-consumer-request"
    },
    {
      "$ref": "#/components/schemas/mq_http-consumer-request"
    }
  ],
  "description": "Request body for creating or updating a consumer",
  "discriminator": {
    "mapping": {
      "worker": "#/components/schemas/mq_worker-consumer-request",
      "http_pull": "#/components/schemas/mq_http-consumer-request"
    },
    "propertyName": "type"
  }
}
object mq_consumer-response
{
  "type": "object",
  "oneOf": [
    {
      "$ref": "#/components/schemas/mq_worker-consumer-response"
    },
    {
      "$ref": "#/components/schemas/mq_http-consumer-response"
    }
  ],
  "description": "Response body representing a consumer",
  "discriminator": {
    "mapping": {
      "worker": "#/components/schemas/mq_worker-consumer-response",
      "http_pull": "#/components/schemas/mq_http-consumer-response"
    },
    "propertyName": "type"
  }
}
object mq_event-destination
{
  "type": "object",
  "oneOf": [
    {
      "$ref": "#/components/schemas/mq_event-destination-queue"
    }
  ],
  "description": "Destination configuration for the subscription"
}
object mq_event-destination-queue
{
  "type": "object",
  "required": [
    "type",
    "queue_id"
  ],
  "properties": {
    "type": {
      "enum": [
        "queues.queue"
      ],
      "type": "string",
      "description": "Type of destination",
      "x-auditable": true
    },
    "queue_id": {
      "type": "string",
      "description": "ID of the target queue",
      "x-auditable": true
    }
  }
}
object mq_event-source
{
  "type": "object",
  "oneOf": [
    {
      "$ref": "#/components/schemas/mq_event-source-images"
    },
    {
      "$ref": "#/components/schemas/mq_event-source-kv"
    },
    {
      "$ref": "#/components/schemas/mq_event-source-r2"
    },
    {
      "$ref": "#/components/schemas/mq_event-source-super-slurper"
    },
    {
      "$ref": "#/components/schemas/mq_event-source-vectorize"
    },
    {
      "$ref": "#/components/schemas/mq_event-source-workers-ai-model"
    },
    {
      "$ref": "#/components/schemas/mq_event-source-workers-builds-worker"
    },
    {
      "$ref": "#/components/schemas/mq_event-source-workflows-workflow"
    }
  ],
  "description": "Source configuration for the subscription"
}
object mq_event-source-images
{
  "type": "object",
  "properties": {
    "type": {
      "enum": [
        "images"
      ],
      "type": "string",
      "description": "Type of source",
      "x-auditable": true
    }
  }
}
object mq_event-source-kv
{
  "type": "object",
  "properties": {
    "type": {
      "enum": [
        "kv"
      ],
      "type": "string",
      "description": "Type of source",
      "x-auditable": true
    }
  }
}
object mq_event-source-r2
{
  "type": "object",
  "properties": {
    "type": {
      "enum": [
        "r2"
      ],
      "type": "string",
      "description": "Type of source",
      "x-auditable": true
    }
  }
}
object mq_event-source-super-slurper
{
  "type": "object",
  "properties": {
    "type": {
      "enum": [
        "superSlurper"
      ],
      "type": "string",
      "description": "Type of source",
      "x-auditable": true
    }
  }
}
object mq_event-source-vectorize
{
  "type": "object",
  "properties": {
    "type": {
      "enum": [
        "vectorize"
      ],
      "type": "string",
      "description": "Type of source",
      "x-auditable": true
    }
  }
}
object mq_event-source-workers-ai-model
{
  "type": "object",
  "properties": {
    "type": {
      "enum": [
        "workersAi.model"
      ],
      "type": "string",
      "description": "Type of source",
      "x-auditable": true
    },
    "model_name": {
      "type": "string",
      "description": "Name of the Workers AI model",
      "x-auditable": true
    }
  }
}
object mq_event-source-workers-builds-worker
{
  "type": "object",
  "properties": {
    "type": {
      "enum": [
        "workersBuilds.worker"
      ],
      "type": "string",
      "description": "Type of source",
      "x-auditable": true
    },
    "worker_name": {
      "type": "string",
      "description": "Name of the worker",
      "x-auditable": true
    }
  }
}
object mq_event-source-workflows-workflow
{
  "type": "object",
  "properties": {
    "type": {
      "enum": [
        "workflows.workflow"
      ],
      "type": "string",
      "description": "Type of source",
      "x-auditable": true
    },
    "workflow_name": {
      "type": "string",
      "description": "Name of the workflow",
      "x-auditable": true
    }
  }
}
object mq_event-subscription
{
  "type": "object",
  "required": [
    "id",
    "created_at",
    "modified_at",
    "name",
    "enabled",
    "source",
    "destination",
    "events"
  ],
  "properties": {
    "id": {
      "type": "string",
      "description": "Unique identifier for the subscription",
      "x-auditable": true
    },
    "name": {
      "type": "string",
      "description": "Name of the subscription",
      "x-auditable": true
    },
    "events": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "minItems": 1,
      "description": "List of event types this subscription handles",
      "x-auditable": true
    },
    "source": {
      "$ref": "#/components/schemas/mq_event-source"
    },
    "enabled": {
      "type": "boolean",
      "description": "Whether the subscription is active",
      "x-auditable": true
    },
    "created_at": {
      "type": "string",
      "format": "date-time",
      "description": "When the subscription was created",
      "x-auditable": true
    },
    "destination": {
      "$ref": "#/components/schemas/mq_event-destination"
    },
    "modified_at": {
      "type": "string",
      "format": "date-time",
      "description": "When the subscription was last modified",
      "x-auditable": true
    }
  }
}
object mq_http-consumer-request
{
  "type": "object",
  "required": [
    "type"
  ],
  "properties": {
    "type": {
      "enum": [
        "http_pull"
      ],
      "type": "string",
      "x-auditable": true
    },
    "settings": {
      "type": "object",
      "properties": {
        "batch_size": {
          "$ref": "#/components/schemas/mq_batch-size"
        },
        "max_retries": {
          "$ref": "#/components/schemas/mq_max-retries"
        },
        "retry_delay": {
          "$ref": "#/components/schemas/mq_retry-delay"
        },
        "visibility_timeout_ms": {
          "$ref": "#/components/schemas/mq_visibility-timeout"
        }
      }
    },
    "dead_letter_queue": {
      "$ref": "#/components/schemas/mq_queue-name"
    }
  }
}
object mq_http-consumer-response
{
  "type": "object",
  "properties": {
    "type": {
      "enum": [
        "http_pull"
      ],
      "type": "string",
      "x-auditable": true
    },
    "settings": {
      "type": "object",
      "properties": {
        "batch_size": {
          "$ref": "#/components/schemas/mq_batch-size"
        },
        "max_retries": {
          "$ref": "#/components/schemas/mq_max-retries"
        },
        "retry_delay": {
          "$ref": "#/components/schemas/mq_retry-delay"
        },
        "visibility_timeout_ms": {
          "$ref": "#/components/schemas/mq_visibility-timeout"
        }
      }
    },
    "created_on": {
      "type": "string",
      "format": "date-time",
      "x-auditable": true
    },
    "queue_name": {
      "$ref": "#/components/schemas/mq_queue-name"
    },
    "consumer_id": {
      "$ref": "#/components/schemas/mq_identifier"
    },
    "dead_letter_queue": {
      "type": "string",
      "description": "Name of the dead letter queue, or empty string if not configured",
      "x-auditable": true
    }
  }
}
string mq_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "readOnly": true,
  "maxLength": 32,
  "description": "A Resource identifier.",
  "x-auditable": true
}
string mq_lease-id
{
  "type": "string",
  "example": "eyJhbGciOiJkaXIiLCJlbmMiOiJBMjU2Q0JDLUhTNTEyIn0..Q8p21d7dceR6vUfwftONdQ.JVqZgAS-Zk7MqmqccYtTHeeMElNHaOMigeWdb8LyMOg.T2_HV99CYzGaQuhTyW8RsgbnpTRZHRM6N7UoSaAKeK0",
  "description": "An ID that represents an \"in-flight\" message that has been pulled from a Queue. You must hold on to this ID and use it to acknowledge this message.",
  "x-auditable": true
}
number mq_max-concurrency
{
  "type": "number",
  "example": 10,
  "description": "Maximum number of concurrent consumers that may consume from this Queue. Set to `null` to automatically opt in to the platform's maximum (recommended).",
  "x-auditable": true
}
number mq_max-retries
{
  "type": "number",
  "example": 3,
  "description": "The maximum number of retries",
  "x-auditable": true
}
number mq_max-wait-time
{
  "type": "number",
  "example": 5000,
  "description": "The number of milliseconds to wait for a batch to fill up before attempting to deliver it",
  "x-auditable": true
}
object mq_producer
{
  "type": "object",
  "oneOf": [
    {
      "$ref": "#/components/schemas/mq_worker-producer"
    },
    {
      "$ref": "#/components/schemas/mq_r2-producer"
    }
  ]
}
object mq_queue
{
  "type": "object",
  "properties": {
    "queue_id": {
      "type": "string",
      "readOnly": true,
      "x-auditable": true
    },
    "settings": {
      "$ref": "#/components/schemas/mq_queue-settings"
    },
    "consumers": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mq_consumer-response"
      },
      "readOnly": true
    },
    "producers": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mq_producer"
      },
      "readOnly": true
    },
    "created_on": {
      "type": "string",
      "readOnly": true,
      "x-auditable": true
    },
    "queue_name": {
      "$ref": "#/components/schemas/mq_queue-name"
    },
    "modified_on": {
      "type": "string",
      "readOnly": true,
      "x-auditable": true
    },
    "consumers_total_count": {
      "type": "number",
      "readOnly": true
    },
    "producers_total_count": {
      "type": "number",
      "readOnly": true,
      "x-auditable": true
    }
  }
}
object mq_queue-batch
{
  "type": "object",
  "properties": {
    "messages": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/mq_queue-message"
      }
    },
    "delay_seconds": {
      "type": "number",
      "example": "text",
      "description": "The number of seconds to wait for attempting to deliver this batch to consumers",
      "x-auditable": true
    }
  }
}
object mq_queue-message
{
  "allOf": [
    {
      "type": "object",
      "properties": {
        "delay_seconds": {
          "type": "number",
          "example": "text",
          "description": "The number of seconds to wait for attempting to deliver this message to consumers",
          "x-auditable": true
        }
      }
    },
    {
      "oneOf": [
        {
          "$ref": "#/components/schemas/mq_queue-message-text"
        },
        {
          "$ref": "#/components/schemas/mq_queue-message-json"
        }
      ]
    }
  ]
}
object mq_queue-message-json
{
  "type": "object",
  "properties": {
    "body": {
      "type": "object"
    },
    "content_type": {
      "enum": [
        "json"
      ],
      "type": "string",
      "x-auditable": true
    }
  }
}
object mq_queue-message-text
{
  "type": "object",
  "properties": {
    "body": {
      "type": "string"
    },
    "content_type": {
      "enum": [
        "text"
      ],
      "type": "string",
      "x-auditable": true
    }
  }
}
object mq_queue-metrics
{
  "type": "object",
  "required": [
    "backlog_count",
    "backlog_bytes",
    "oldest_message_timestamp_ms"
  ],
  "properties": {
    "backlog_bytes": {
      "type": "number",
      "example": 1024,
      "description": "The size in bytes of unacknowledged messages in the queue.",
      "x-auditable": true
    },
    "backlog_count": {
      "type": "number",
      "example": 5,
      "description": "The number of unacknowledged messages in the queue.",
      "x-auditable": true
    },
    "oldest_message_timestamp_ms": {
      "type": "number",
      "example": 1710950954154,
      "description": "Unix timestamp in milliseconds of the oldest unacknowledged message in the queue. Returns 0 if unknown.",
      "x-auditable": true
    }
  },
  "description": "Best-effort metrics for the queue. Values may be approximate due to the distributed nature of queues."
}
string mq_queue-name
{
  "type": "string",
  "example": "example-queue",
  "x-auditable": true
}
array mq_queue-pull-batch
{
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "id": {
        "type": "string",
        "example": "b01b5594f784d0165c2985833f5660dd",
        "readOnly": true,
        "x-auditable": true
      },
      "body": {
        "type": "string",
        "example": "hello world",
        "readOnly": true
      },
      "attempts": {
        "type": "number",
        "example": 1,
        "readOnly": true,
        "x-auditable": true
      },
      "lease_id": {
        "$ref": "#/components/schemas/mq_lease-id"
      },
      "metadata": {
        "type": "object",
        "example": {
          "CF-Content-Type": "text",
          "CF-sourceMessageSource": "dash"
        },
        "readOnly": true
      },
      "timestamp_ms": {
        "type": "number",
        "example": 1710950954154,
        "readOnly": true,
        "x-auditable": true
      }
    }
  }
}
object mq_queue-settings
{
  "type": "object",
  "properties": {
    "delivery_delay": {
      "type": "number",
      "example": 5,
      "description": "Number of seconds to delay delivery of all messages to consumers.",
      "x-auditable": true
    },
    "delivery_paused": {
      "type": "boolean",
      "example": true,
      "description": "Indicates if message delivery to consumers is currently paused.",
      "x-auditable": true
    },
    "message_retention_period": {
      "type": "number",
      "example": 345600,
      "description": "Number of seconds after which an unconsumed message will be delayed.",
      "x-auditable": true
    }
  }
}
object mq_r2-producer
{
  "type": "object",
  "properties": {
    "type": {
      "enum": [
        "r2_bucket"
      ],
      "type": "string",
      "x-auditable": true
    },
    "bucket_name": {
      "type": "string",
      "x-auditable": true
    }
  }
}
number mq_retry-delay
{
  "type": "number",
  "example": 10,
  "description": "The number of seconds to delay before making the message available for another attempt.",
  "x-auditable": true
}
string mq_script-name
{
  "type": "string",
  "example": "my-consumer-worker",
  "description": "Name of a Worker",
  "x-auditable": true
}
number mq_visibility-timeout
{
  "type": "number",
  "example": 6000,
  "description": "The number of milliseconds that a message is exclusively leased. After the timeout, the message becomes available for another attempt.",
  "x-auditable": true
}
object mq_worker-consumer-request
{
  "type": "object",
  "required": [
    "type",
    "script_name"
  ],
  "properties": {
    "type": {
      "enum": [
        "worker"
      ],
      "type": "string",
      "x-auditable": true
    },
    "settings": {
      "type": "object",
      "properties": {
        "batch_size": {
          "$ref": "#/components/schemas/mq_batch-size"
        },
        "max_retries": {
          "$ref": "#/components/schemas/mq_max-retries"
        },
        "retry_delay": {
          "$ref": "#/components/schemas/mq_retry-delay"
        },
        "max_concurrency": {
          "$ref": "#/components/schemas/mq_max-concurrency"
        },
        "max_wait_time_ms": {
          "$ref": "#/components/schemas/mq_max-wait-time"
        }
      }
    },
    "script_name": {
      "$ref": "#/components/schemas/mq_script-name"
    },
    "dead_letter_queue": {
      "$ref": "#/components/schemas/mq_queue-name"
    }
  }
}
object mq_worker-consumer-response
{
  "type": "object",
  "properties": {
    "type": {
      "enum": [
        "worker"
      ],
      "type": "string",
      "x-auditable": true
    },
    "settings": {
      "type": "object",
      "properties": {
        "batch_size": {
          "$ref": "#/components/schemas/mq_batch-size"
        },
        "max_retries": {
          "$ref": "#/components/schemas/mq_max-retries"
        },
        "retry_delay": {
          "$ref": "#/components/schemas/mq_retry-delay"
        },
        "max_concurrency": {
          "$ref": "#/components/schemas/mq_max-concurrency"
        },
        "max_wait_time_ms": {
          "$ref": "#/components/schemas/mq_max-wait-time"
        }
      }
    },
    "created_on": {
      "type": "string",
      "format": "date-time",
      "x-auditable": true
    },
    "queue_name": {
      "$ref": "#/components/schemas/mq_queue-name"
    },
    "consumer_id": {
      "$ref": "#/components/schemas/mq_identifier"
    },
    "script_name": {
      "$ref": "#/components/schemas/mq_script-name"
    },
    "dead_letter_queue": {
      "type": "string",
      "description": "Name of the dead letter queue, or empty string if not configured",
      "x-auditable": true
    }
  }
}
object mq_worker-producer
{
  "type": "object",
  "properties": {
    "type": {
      "enum": [
        "worker"
      ],
      "type": "string",
      "x-auditable": true
    },
    "script": {
      "type": "string",
      "x-auditable": true
    }
  }
}
string nsc_AccountTag
{
  "type": "string",
  "description": "Customer account tag"
}
string nsc_ApiBandwidth
{
  "enum": [
    "50M",
    "100M",
    "200M",
    "300M",
    "400M",
    "500M",
    "1G",
    "2G",
    "5G",
    "10G",
    "20G",
    "50G"
  ],
  "type": "string",
  "description": "Bandwidth structure as visible through the customer-facing API."
}
object nsc_BgpControl
{
  "type": "object",
  "required": [
    "customer_asn",
    "extra_prefixes"
  ],
  "properties": {
    "md5_key": {
      "type": "string",
      "nullable": true,
      "description": "MD5 key to use for session authentication.\n\nNote that *this is not a security measure*. MD5 is not a valid security mechanism, and the\nkey is not treated as a secret value. This is *only* supported for preventing\nmisconfiguration, not for defending against malicious attacks.\n\nThe MD5 key, if set, must be of non-zero length and consist only of the following types of\ncharacter:\n\n* ASCII alphanumerics: `[a-zA-Z0-9]`\n* Special characters in the set `'!@#$%^&*()+[]{}<>/.,;:_-~`= \\|`\n\nIn other words, MD5 keys may contain any printable ASCII character aside from newline (0x0A),\nquotation mark (`\"`), vertical tab (0x0B), carriage return (0x0D), tab (0x09), form feed\n(0x0C), and the question mark (`?`). Requests specifying an MD5 key with one or more of\nthese disallowed characters will be rejected."
    },
    "customer_asn": {
      "type": "integer",
      "format": "int32",
      "minimum": 0,
      "description": "ASN used on the customer end of the BGP session"
    },
    "extra_prefixes": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "A.B.C.D/N"
      },
      "example": "192.168.3.4/31",
      "description": "Extra set of static prefixes to advertise to the customer's end of the session"
    }
  }
}
string nsc_CloudflareSite
{
  "type": "string",
  "description": "A Cloudflare site name."
}
object nsc_Cni
{
  "type": "object",
  "required": [
    "id",
    "interconnect",
    "account",
    "p2p_ip",
    "cust_ip",
    "magic"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid"
    },
    "bgp": {
      "$ref": "#/components/schemas/nsc_BgpControl"
    },
    "magic": {
      "$ref": "#/components/schemas/nsc_MagicSettings"
    },
    "p2p_ip": {
      "type": "string",
      "format": "A.B.C.D/N",
      "example": "192.168.3.4/31",
      "description": "Cloudflare end of the point-to-point link"
    },
    "account": {
      "$ref": "#/components/schemas/nsc_AccountTag"
    },
    "cust_ip": {
      "type": "string",
      "format": "A.B.C.D/N",
      "example": "192.168.3.4/31",
      "description": "Customer end of the point-to-point link\n\nThis should always be inside the same prefix as `p2p_ip`."
    },
    "interconnect": {
      "type": "string",
      "description": "Interconnect identifier hosting this CNI"
    }
  }
}
object nsc_CniCreate
{
  "type": "object",
  "required": [
    "interconnect",
    "account",
    "magic"
  ],
  "properties": {
    "bgp": {
      "$ref": "#/components/schemas/nsc_BgpControl"
    },
    "magic": {
      "$ref": "#/components/schemas/nsc_MagicSettings"
    },
    "account": {
      "$ref": "#/components/schemas/nsc_AccountTag"
    },
    "interconnect": {
      "type": "string"
    }
  }
}
object nsc_CniList
{
  "type": "object",
  "required": [
    "items"
  ],
  "properties": {
    "next": {
      "type": "integer",
      "format": "int32",
      "nullable": true
    },
    "items": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/nsc_Cni"
      }
    }
  }
}
object nsc_FacilityInfo
{
  "type": "object",
  "required": [
    "name",
    "address"
  ],
  "properties": {
    "name": {
      "type": "string"
    },
    "address": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  }
}
object nsc_Interconnect
{
  "type": "object",
  "oneOf": [
    {
      "$ref": "#/components/schemas/nsc_Interconnect_Physical_Body"
    },
    {
      "$ref": "#/components/schemas/nsc_Interconnect_GcpPartner_Body"
    }
  ],
  "discriminator": {
    "mapping": {
      "direct": "#/components/schemas/nsc_Interconnect_Physical_Body",
      "gcp_partner": "#/components/schemas/nsc_Interconnect_GcpPartner_Body"
    },
    "propertyName": "type"
  }
}
object nsc_InterconnectCreate
{
  "type": "object",
  "oneOf": [
    {
      "$ref": "#/components/schemas/nsc_InterconnectCreate_Physical_Body"
    },
    {
      "$ref": "#/components/schemas/nsc_InterconnectCreate_GcpPartner_Body"
    }
  ],
  "discriminator": {
    "mapping": {
      "direct": "#/components/schemas/nsc_InterconnectCreate_Physical_Body",
      "gcp_partner": "#/components/schemas/nsc_InterconnectCreate_GcpPartner_Body"
    },
    "propertyName": "type"
  }
}
object nsc_InterconnectCreate_GcpPartner_Body
{
  "type": "object",
  "allOf": [
    {
      "type": "object",
      "required": [
        "type",
        "account"
      ],
      "properties": {
        "type": {
          "type": "string"
        },
        "account": {
          "type": "string"
        }
      }
    },
    {
      "type": "object",
      "required": [
        "pairing_key",
        "bandwidth"
      ],
      "properties": {
        "bandwidth": {
          "$ref": "#/components/schemas/nsc_ApiBandwidth"
        },
        "pairing_key": {
          "type": "string",
          "description": "Pairing key provided by GCP"
        }
      }
    }
  ],
  "title": "GcpPartner"
}
object nsc_InterconnectCreate_Physical_Body
{
  "type": "object",
  "allOf": [
    {
      "type": "object",
      "required": [
        "type",
        "account"
      ],
      "properties": {
        "type": {
          "type": "string"
        },
        "account": {
          "type": "string"
        }
      }
    },
    {
      "type": "object",
      "required": [
        "slot_id"
      ],
      "properties": {
        "speed": {
          "type": "string",
          "nullable": true
        },
        "slot_id": {
          "type": "string",
          "format": "uuid"
        }
      }
    }
  ],
  "title": "Physical"
}
object nsc_InterconnectList
{
  "type": "object",
  "required": [
    "items"
  ],
  "properties": {
    "next": {
      "type": "integer",
      "format": "int32",
      "nullable": true
    },
    "items": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/nsc_Interconnect"
      }
    }
  }
}
object nsc_Interconnect_GcpPartner_Body
{
  "type": "object",
  "allOf": [
    {
      "type": "object",
      "required": [
        "type",
        "name",
        "account"
      ],
      "properties": {
        "name": {
          "type": "string"
        },
        "type": {
          "type": "string"
        },
        "owner": {
          "type": "string"
        },
        "account": {
          "type": "string"
        }
      }
    },
    {
      "type": "object",
      "required": [
        "region"
      ],
      "properties": {
        "speed": {
          "$ref": "#/components/schemas/nsc_ApiBandwidth"
        },
        "region": {
          "type": "string"
        }
      }
    }
  ],
  "title": "GcpPartner"
}
object nsc_Interconnect_Physical_Body
{
  "type": "object",
  "allOf": [
    {
      "type": "object",
      "required": [
        "type",
        "name",
        "account"
      ],
      "properties": {
        "name": {
          "type": "string"
        },
        "type": {
          "type": "string"
        },
        "owner": {
          "type": "string"
        },
        "account": {
          "type": "string"
        }
      }
    },
    {
      "type": "object",
      "required": [
        "slot_id",
        "site",
        "speed",
        "facility"
      ],
      "properties": {
        "site": {
          "$ref": "#/components/schemas/nsc_CloudflareSite"
        },
        "speed": {
          "type": "string"
        },
        "slot_id": {
          "type": "string",
          "format": "uuid"
        },
        "facility": {
          "$ref": "#/components/schemas/nsc_FacilityInfo"
        }
      }
    }
  ],
  "title": "Physical"
}
object nsc_MagicSettings
{
  "type": "object",
  "required": [
    "conduit_name",
    "description",
    "mtu"
  ],
  "properties": {
    "mtu": {
      "type": "integer",
      "format": "int32",
      "minimum": 0
    },
    "description": {
      "type": "string"
    },
    "conduit_name": {
      "type": "string"
    }
  }
}
object nsc_Settings
{
  "type": "object",
  "required": [
    "default_asn"
  ],
  "properties": {
    "default_asn": {
      "type": "integer",
      "format": "int32",
      "minimum": 0
    }
  }
}
object nsc_SettingsRequest
{
  "type": "object",
  "properties": {
    "default_asn": {
      "type": "integer",
      "format": "int32",
      "minimum": 0,
      "nullable": true
    }
  }
}
object nsc_SlotInfo
{
  "type": "object",
  "required": [
    "id",
    "occupied",
    "site",
    "speed",
    "facility"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid",
      "description": "Slot ID"
    },
    "site": {
      "type": "string"
    },
    "speed": {
      "type": "string"
    },
    "account": {
      "$ref": "#/components/schemas/nsc_AccountTag"
    },
    "facility": {
      "$ref": "#/components/schemas/nsc_FacilityInfo"
    },
    "occupied": {
      "type": "boolean",
      "description": "Whether the slot is occupied or not"
    }
  }
}
object nsc_SlotList
{
  "type": "object",
  "required": [
    "items"
  ],
  "properties": {
    "next": {
      "type": "integer",
      "format": "int32",
      "nullable": true
    },
    "items": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/nsc_SlotInfo"
      }
    }
  }
}
object nsc_StatusInfo
{
  "type": "object",
  "oneOf": [
    {
      "type": "object",
      "required": [
        "state"
      ],
      "properties": {
        "state": {
          "enum": [
            "Pending"
          ],
          "type": "string"
        }
      }
    },
    {
      "type": "object",
      "required": [
        "state"
      ],
      "properties": {
        "state": {
          "enum": [
            "Down"
          ],
          "type": "string"
        },
        "reason": {
          "type": "string",
          "nullable": true,
          "description": "Diagnostic information, if available"
        }
      }
    },
    {
      "type": "object",
      "required": [
        "state"
      ],
      "properties": {
        "state": {
          "enum": [
            "Unhealthy"
          ],
          "type": "string"
        },
        "reason": {
          "type": "string",
          "nullable": true,
          "description": "Diagnostic information, if available"
        }
      }
    },
    {
      "type": "object",
      "required": [
        "state"
      ],
      "properties": {
        "state": {
          "enum": [
            "Healthy"
          ],
          "type": "string"
        }
      }
    }
  ],
  "discriminator": {
    "propertyName": "state"
  }
}
object observatory_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/observatory_api-response-common"
    }
  ]
}
object observatory_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/observatory_messages"
    },
    "success": {
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful.",
      "x-auditable": true
    },
    "messages": {
      "$ref": "#/components/schemas/observatory_messages"
    }
  }
}
object observatory_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/observatory_schemas-messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/observatory_schemas-messages"
        }
      ],
      "example": []
    }
  }
}
object observatory_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/observatory_api-response-common"
    }
  ]
}
object observatory_availabilities
{
  "type": "object",
  "properties": {
    "quota": {
      "type": "object",
      "properties": {
        "plan": {
          "type": "string",
          "example": "free",
          "description": "Cloudflare plan.",
          "x-auditable": true
        },
        "quotasPerPlan": {
          "type": "object",
          "properties": {
            "value": {
              "$ref": "#/components/schemas/observatory_plan-properties-info"
            }
          },
          "description": "The number of tests available per plan."
        },
        "remainingTests": {
          "type": "number",
          "example": 30,
          "description": "The number of remaining tests available.",
          "x-auditable": true
        },
        "remainingSchedules": {
          "type": "number",
          "example": 1,
          "description": "The number of remaining schedules available.",
          "x-auditable": true
        },
        "scheduleQuotasPerPlan": {
          "type": "object",
          "properties": {
            "value": {
              "$ref": "#/components/schemas/observatory_plan-properties-info"
            }
          },
          "description": "The number of schedules available per plan."
        }
      }
    },
    "regions": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/observatory_labeled_region"
      }
    },
    "regionsPerPlan": {
      "type": "object",
      "properties": {
        "pro": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/observatory_labeled_region"
          }
        },
        "free": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/observatory_labeled_region"
          }
        },
        "business": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/observatory_labeled_region"
          }
        },
        "enterprise": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/observatory_labeled_region"
          }
        }
      },
      "description": "Available regions."
    }
  }
}
object observatory_availabilities-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/observatory_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/observatory_availabilities"
        }
      }
    }
  ]
}
object observatory_count-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/observatory_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "count": {
              "type": "number",
              "example": 1,
              "description": "Number of items affected.",
              "x-auditable": true
            }
          }
        }
      }
    }
  ]
}
object observatory_create-schedule-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/observatory_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "test": {
              "$ref": "#/components/schemas/observatory_page_test"
            },
            "schedule": {
              "$ref": "#/components/schemas/observatory_schedule"
            }
          }
        }
      }
    }
  ]
}
string observatory_device_type
{
  "enum": [
    "DESKTOP",
    "MOBILE"
  ],
  "type": "string",
  "example": "DESKTOP",
  "description": "The type of device.",
  "x-auditable": true
}
string observatory_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Identifier.",
  "x-auditable": true
}
object observatory_labeled_region
{
  "type": "object",
  "properties": {
    "label": {
      "type": "string",
      "example": "Iowa, USA",
      "x-auditable": true
    },
    "value": {
      "$ref": "#/components/schemas/observatory_region"
    }
  },
  "description": "A test region with a label."
}
string observatory_lighthouse_error_code
{
  "enum": [
    "NOT_REACHABLE",
    "DNS_FAILURE",
    "NOT_HTML",
    "LIGHTHOUSE_TIMEOUT",
    "UNKNOWN"
  ],
  "type": "string",
  "example": "NOT_REACHABLE",
  "description": "The error code of the Lighthouse result.",
  "x-auditable": true
}
object observatory_lighthouse_report
{
  "type": "object",
  "properties": {
    "si": {
      "type": "number",
      "example": 100,
      "description": "Speed Index.",
      "x-auditable": true
    },
    "cls": {
      "type": "number",
      "example": 100,
      "description": "Cumulative Layout Shift.",
      "x-auditable": true
    },
    "fcp": {
      "type": "number",
      "example": 100,
      "description": "First Contentful Paint.",
      "x-auditable": true
    },
    "lcp": {
      "type": "number",
      "example": 100,
      "description": "Largest Contentful Paint.",
      "x-auditable": true
    },
    "tbt": {
      "type": "number",
      "example": 100,
      "description": "Total Blocking Time.",
      "x-auditable": true
    },
    "tti": {
      "type": "number",
      "example": 100,
      "description": "Time To Interactive.",
      "x-auditable": true
    },
    "ttfb": {
      "type": "number",
      "example": 100,
      "description": "Time To First Byte.",
      "x-auditable": true
    },
    "error": {
      "type": "object",
      "properties": {
        "code": {
          "$ref": "#/components/schemas/observatory_lighthouse_error_code"
        },
        "detail": {
          "type": "string",
          "example": "Details: net::ERR_CONNECTION_CLOSED",
          "description": "Detailed error message.",
          "x-auditable": true
        },
        "finalDisplayedUrl": {
          "type": "string",
          "example": "example.com",
          "description": "The final URL displayed to the user.",
          "x-auditable": true
        }
      }
    },
    "state": {
      "$ref": "#/components/schemas/observatory_lighthouse_state"
    },
    "deviceType": {
      "$ref": "#/components/schemas/observatory_device_type"
    },
    "jsonReportUrl": {
      "type": "string",
      "description": "The URL to the full Lighthouse JSON report.",
      "x-auditable": true
    },
    "performanceScore": {
      "type": "number",
      "example": 90,
      "description": "The Lighthouse performance score.",
      "x-auditable": true
    }
  },
  "description": "The Lighthouse report."
}
string observatory_lighthouse_state
{
  "enum": [
    "RUNNING",
    "COMPLETE",
    "FAILED"
  ],
  "type": "string",
  "example": "COMPLETE",
  "description": "The state of the Lighthouse report.",
  "x-auditable": true
}
array observatory_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000,
        "x-auditable": true
      },
      "message": {
        "type": "string",
        "x-auditable": true
      }
    },
    "uniqueItems": true
  },
  "example": []
}
object observatory_page-test-response-collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/observatory_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/observatory_page_test"
          }
        }
      }
    },
    {
      "type": "object",
      "properties": {
        "result_info": {
          "$ref": "#/components/schemas/observatory_result_info"
        }
      }
    }
  ]
}
object observatory_page-test-response-single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/observatory_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/observatory_page_test"
        }
      }
    }
  ]
}
object observatory_page_test
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/observatory_uuid"
    },
    "url": {
      "$ref": "#/components/schemas/observatory_url"
    },
    "date": {
      "$ref": "#/components/schemas/observatory_timestamp"
    },
    "region": {
      "$ref": "#/components/schemas/observatory_labeled_region"
    },
    "mobileReport": {
      "$ref": "#/components/schemas/observatory_lighthouse_report"
    },
    "desktopReport": {
      "$ref": "#/components/schemas/observatory_lighthouse_report"
    },
    "scheduleFrequency": {
      "$ref": "#/components/schemas/observatory_schedule_frequency"
    }
  }
}
object observatory_pages-response-collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/observatory_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "url": {
                "$ref": "#/components/schemas/observatory_url"
              },
              "tests": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/observatory_page_test"
                }
              },
              "region": {
                "$ref": "#/components/schemas/observatory_labeled_region"
              },
              "scheduleFrequency": {
                "$ref": "#/components/schemas/observatory_schedule_frequency"
              }
            }
          }
        }
      }
    }
  ]
}
object observatory_plan-properties-info
{
  "type": "object",
  "properties": {
    "pro": {
      "type": "integer",
      "example": 1,
      "x-auditable": true
    },
    "free": {
      "type": "integer",
      "example": 1,
      "x-auditable": true
    },
    "business": {
      "type": "integer",
      "example": 1,
      "x-auditable": true
    },
    "enterprise": {
      "type": "integer",
      "example": 1,
      "x-auditable": true
    }
  },
  "description": "Counts per account plan."
}
string observatory_region
{
  "enum": [
    "asia-east1",
    "asia-northeast1",
    "asia-northeast2",
    "asia-south1",
    "asia-southeast1",
    "australia-southeast1",
    "europe-north1",
    "europe-southwest1",
    "europe-west1",
    "europe-west2",
    "europe-west3",
    "europe-west4",
    "europe-west8",
    "europe-west9",
    "me-west1",
    "southamerica-east1",
    "us-central1",
    "us-east1",
    "us-east4",
    "us-south1",
    "us-west1"
  ],
  "type": "string",
  "example": "us-central1",
  "description": "A test region.",
  "x-auditable": true
}
object observatory_result_info
{
  "type": "object",
  "properties": {
    "page": {
      "type": "integer",
      "example": 1,
      "x-auditable": true
    },
    "count": {
      "type": "integer",
      "example": 5,
      "x-auditable": true
    },
    "per_page": {
      "type": "integer",
      "example": 5,
      "x-auditable": true
    },
    "total_count": {
      "type": "integer",
      "example": 3,
      "x-auditable": true
    }
  }
}
object observatory_schedule
{
  "type": "object",
  "properties": {
    "url": {
      "$ref": "#/components/schemas/observatory_url"
    },
    "region": {
      "$ref": "#/components/schemas/observatory_region"
    },
    "frequency": {
      "$ref": "#/components/schemas/observatory_schedule_frequency"
    }
  },
  "description": "The test schedule."
}
object observatory_schedule-response-single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/observatory_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/observatory_schedule"
        }
      }
    }
  ]
}
string observatory_schedule_frequency
{
  "enum": [
    "DAILY",
    "WEEKLY"
  ],
  "type": "string",
  "example": "DAILY",
  "description": "The frequency of the test.",
  "x-auditable": true
}
array observatory_schemas-messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string observatory_timestamp
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-01T05:20:00.12345Z",
  "x-auditable": true
}
object observatory_trend
{
  "type": "object",
  "properties": {
    "si": {
      "type": "array",
      "items": {
        "type": "number",
        "nullable": true,
        "x-auditable": true
      },
      "description": "Speed Index trend."
    },
    "cls": {
      "type": "array",
      "items": {
        "type": "number",
        "nullable": true,
        "x-auditable": true
      },
      "description": "Cumulative Layout Shift trend."
    },
    "fcp": {
      "type": "array",
      "items": {
        "type": "number",
        "nullable": true,
        "x-auditable": true
      },
      "description": "First Contentful Paint trend."
    },
    "lcp": {
      "type": "array",
      "items": {
        "type": "number",
        "nullable": true,
        "x-auditable": true
      },
      "description": "Largest Contentful Paint trend."
    },
    "tbt": {
      "type": "array",
      "items": {
        "type": "number",
        "nullable": true,
        "x-auditable": true
      },
      "description": "Total Blocking Time trend."
    },
    "tti": {
      "type": "array",
      "items": {
        "type": "number",
        "nullable": true,
        "x-auditable": true
      },
      "description": "Time To Interactive trend."
    },
    "ttfb": {
      "type": "array",
      "items": {
        "type": "number",
        "nullable": true,
        "x-auditable": true
      },
      "description": "Time To First Byte trend."
    },
    "performanceScore": {
      "type": "array",
      "items": {
        "type": "number",
        "nullable": true,
        "x-auditable": true
      },
      "description": "The Lighthouse score trend."
    }
  }
}
object observatory_trend-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/observatory_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/observatory_trend"
        }
      }
    }
  ]
}
string observatory_url
{
  "type": "string",
  "example": "example.com",
  "description": "A URL.",
  "x-auditable": true
}
string observatory_uuid
{
  "type": "string",
  "example": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
  "maxLength": 36,
  "description": "UUID.",
  "x-auditable": true
}
object organizations-api_Account
{
  "type": "object",
  "required": [
    "id",
    "name",
    "type",
    "settings",
    "created_on"
  ],
  "properties": {
    "id": {
      "type": "string"
    },
    "name": {
      "type": "string",
      "nullable": true
    },
    "type": {
      "enum": [
        "standard",
        "enterprise"
      ],
      "type": "string"
    },
    "settings": {
      "type": "object",
      "required": [
        "enforce_twofactor",
        "api_access_enabled",
        "access_approval_expiry",
        "abuse_contact_email",
        "use_account_custom_ns_by_default",
        "default_nameservers"
      ],
      "properties": {
        "enforce_twofactor": {
          "type": "boolean",
          "nullable": true
        },
        "api_access_enabled": {
          "type": "boolean",
          "nullable": true
        },
        "abuse_contact_email": {
          "type": "string",
          "nullable": true
        },
        "default_nameservers": {
          "type": "string",
          "nullable": true,
          "deprecated": true,
          "description": "Use [DNS Settings](https://developers.cloudflare.com/api/operations/dns-settings-for-an-account-list-dns-settings) instead. Deprecated."
        },
        "access_approval_expiry": {
          "type": "string",
          "format": "date-time",
          "nullable": true
        },
        "use_account_custom_ns_by_default": {
          "type": "boolean",
          "nullable": true,
          "deprecated": true,
          "description": "Use [DNS Settings](https://developers.cloudflare.com/api/operations/dns-settings-for-an-account-list-dns-settings) instead. Deprecated."
        }
      }
    },
    "created_on": {
      "type": "string",
      "format": "date-time"
    }
  }
}
object organizations-api_BatchAccountMoveResponse
{
  "type": "object",
  "required": [
    "statuses"
  ],
  "properties": {
    "statuses": {
      "type": "object",
      "required": [
        "tag",
        "moved"
      ],
      "properties": {
        "tag": {
          "type": "string"
        },
        "moved": {
          "type": "boolean"
        },
        "message": {
          "type": "string"
        }
      }
    }
  }
}
object organizations-api_BatchCreateMembersRequest
{
  "type": "object",
  "required": [
    "members"
  ],
  "properties": {
    "members": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/organizations-api_CreateSingleMember"
      },
      "maxItems": 10
    }
  }
}
object organizations-api_BoolAllocation
{
  "type": "object",
  "required": [
    "type",
    "value"
  ],
  "properties": {
    "type": {
      "enum": [
        "bool"
      ],
      "type": "string"
    },
    "value": {
      "type": "boolean"
    }
  }
}
object organizations-api_CreateMemberRequest
{
  "type": "object",
  "required": [
    "member"
  ],
  "properties": {
    "member": {
      "$ref": "#/components/schemas/organizations-api_CreateSingleMember"
    }
  }
}
object organizations-api_CreateSingleMember
{
  "type": "object",
  "required": [
    "user"
  ],
  "properties": {
    "user": {
      "type": "object",
      "required": [
        "email"
      ],
      "properties": {
        "email": {
          "type": "string"
        }
      }
    },
    "status": {
      "enum": [
        "active",
        "canceled"
      ],
      "type": "string"
    }
  }
}
object organizations-api_DeleteOrganizationResponse
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "string"
    }
  }
}
object organizations-api_Entitlement
{
  "type": "object",
  "required": [
    "feature",
    "allocation"
  ],
  "properties": {
    "feature": {
      "$ref": "#/components/schemas/organizations-api_Feature"
    },
    "allocation": {
      "anyOf": [
        {
          "$ref": "#/components/schemas/organizations-api_MaxCountAllocation"
        },
        {
          "$ref": "#/components/schemas/organizations-api_BoolAllocation"
        },
        {
          "$ref": "#/components/schemas/organizations-api_NullAllocation"
        }
      ]
    }
  }
}
object organizations-api_Feature
{
  "type": "object",
  "required": [
    "key"
  ],
  "properties": {
    "key": {
      "type": "string"
    }
  }
}
object organizations-api_InnateEntitlements
{
  "type": "object",
  "required": [
    "allow_add_subdomain",
    "cname_setup_allowed",
    "partial_setup_allowed",
    "allow_auto_accept_invites",
    "mhs_certificate_count",
    "custom_entitlements"
  ],
  "properties": {
    "allow_add_subdomain": {
      "$ref": "#/components/schemas/organizations-api_BoolAllocation"
    },
    "cname_setup_allowed": {
      "$ref": "#/components/schemas/organizations-api_BoolAllocation"
    },
    "custom_entitlements": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/organizations-api_Entitlement"
      },
      "nullable": true
    },
    "mhs_certificate_count": {
      "$ref": "#/components/schemas/organizations-api_MaxCountAllocation"
    },
    "partial_setup_allowed": {
      "$ref": "#/components/schemas/organizations-api_BoolAllocation"
    },
    "allow_auto_accept_invites": {
      "$ref": "#/components/schemas/organizations-api_BoolAllocation"
    }
  }
}
object organizations-api_MaxCountAllocation
{
  "type": "object",
  "required": [
    "type",
    "value"
  ],
  "properties": {
    "type": {
      "enum": [
        "max_count"
      ],
      "type": "string"
    },
    "value": {
      "type": "integer"
    }
  }
}
object organizations-api_Member
{
  "type": "object",
  "required": [
    "id",
    "status",
    "user",
    "meta",
    "create_time",
    "update_time"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/organizations-api_MemberID"
    },
    "meta": {
      "type": "object",
      "additionalProperties": {
        "type": "object"
      }
    },
    "user": {
      "$ref": "#/components/schemas/organizations-api_MemberSubjectUser"
    },
    "status": {
      "enum": [
        "active",
        "canceled"
      ],
      "type": "string"
    },
    "create_time": {
      "type": "string",
      "format": "date-time"
    },
    "update_time": {
      "type": "string",
      "format": "date-time"
    }
  }
}
string organizations-api_MemberID
{
  "type": "string",
  "example": "a7b9c3d2e8f4g1h5i6j0k9l2m3n7o4p8",
  "pattern": "^[a-f0-9]{32}$",
  "description": "Organization Member ID"
}
object organizations-api_MemberSubjectUser
{
  "type": "object",
  "required": [
    "id",
    "email",
    "name",
    "two_factor_authentication_enabled"
  ],
  "properties": {
    "id": {
      "type": "string"
    },
    "name": {
      "type": "string"
    },
    "email": {
      "type": "string"
    },
    "two_factor_authentication_enabled": {
      "type": "boolean"
    }
  }
}
object organizations-api_MoveAccountResponse
{
  "type": "object",
  "required": [
    "account_id",
    "source_organization_id",
    "destination_organization_id"
  ],
  "properties": {
    "account_id": {
      "type": "string"
    },
    "source_organization_id": {
      "type": "string"
    },
    "destination_organization_id": {
      "type": "string"
    }
  }
}
object organizations-api_NullAllocation
{
  "type": "object",
  "required": [
    "type"
  ],
  "properties": {
    "type": {
      "enum": [
        ""
      ],
      "type": "string"
    },
    "value": {
      "type": "object"
    }
  }
}
object organizations-api_Organization
{
  "type": "object",
  "required": [
    "id",
    "name",
    "create_time",
    "meta"
  ],
  "properties": {
    "id": {
      "allOf": [
        {
          "$ref": "#/components/schemas/organizations-api_OrganizationID"
        }
      ],
      "readOnly": true
    },
    "meta": {
      "type": "object",
      "readOnly": true,
      "properties": {
        "flags": {
          "allOf": [
            {
              "$ref": "#/components/schemas/organizations-api_OrganizationFlags"
            }
          ]
        },
        "managed_by": {
          "type": "string"
        }
      },
      "additionalProperties": {
        "type": "object"
      }
    },
    "name": {
      "type": "string"
    },
    "parent": {
      "type": "object",
      "required": [
        "id",
        "name"
      ],
      "properties": {
        "id": {
          "$ref": "#/components/schemas/organizations-api_OrganizationID"
        },
        "name": {
          "type": "string",
          "readOnly": true
        }
      }
    },
    "profile": {
      "$ref": "#/components/schemas/organizations-api_Profile"
    },
    "create_time": {
      "type": "string",
      "format": "date-time",
      "readOnly": true
    }
  },
  "description": "References an Organization in the Cloudflare data model."
}
object organizations-api_OrganizationFlags
{
  "type": "object",
  "required": [
    "account_creation",
    "account_deletion",
    "account_migration",
    "account_mobility",
    "sub_org_creation"
  ],
  "properties": {
    "account_creation": {
      "type": "string"
    },
    "account_deletion": {
      "type": "string"
    },
    "account_mobility": {
      "type": "string"
    },
    "sub_org_creation": {
      "type": "string"
    },
    "account_migration": {
      "type": "string"
    }
  },
  "description": "Enable features for Organizations."
}
string organizations-api_OrganizationID
{
  "type": "string",
  "title": "Organization ID",
  "example": "a7b9c3d2e8f4g1h5i6j0k9l2m3n7o4p8",
  "pattern": "^[a-f0-9]{32}$"
}
object organizations-api_PageTokenResultInfo
{
  "type": "object",
  "properties": {
    "total_size": {
      "type": "integer",
      "description": "Counts the total amount of items in a list with the applied filters. The API omits next_page_token to indicate no more items in a particular list."
    },
    "next_page_token": {
      "type": "string",
      "description": "Use this opaque token in the next request to retrieve the\nnext page.\n\nParameters used to filter the retrieved list must remain in subsequent\nrequests with a page token."
    }
  }
}
object organizations-api_Profile
{
  "type": "object",
  "required": [
    "business_name",
    "business_email",
    "business_phone",
    "business_address",
    "external_metadata"
  ],
  "properties": {
    "business_name": {
      "type": "string"
    },
    "business_email": {
      "type": "string"
    },
    "business_phone": {
      "type": "string"
    },
    "business_address": {
      "type": "string"
    },
    "external_metadata": {
      "type": "string"
    }
  }
}
object organizations-api_ProfileResponse
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "type": "array",
      "items": {
        "type": "object"
      },
      "maxItems": 0
    },
    "result": {
      "$ref": "#/components/schemas/organizations-api_Profile"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean"
    },
    "messages": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/organizations-api_V4Message"
      }
    }
  }
}
object organizations-api_Tenant
{
  "type": "object",
  "required": [
    "tenant_tag",
    "tenant_name",
    "tenant_labels",
    "tenant_type",
    "tenant_status",
    "tenant_metadata",
    "tenant_contacts",
    "cdate",
    "edate",
    "tenant_network",
    "tenant_units"
  ],
  "properties": {
    "cdate": {
      "type": "string",
      "format": "date-time"
    },
    "edate": {
      "type": "string",
      "format": "date-time"
    },
    "tenant_tag": {
      "type": "string"
    },
    "customer_id": {
      "type": "string"
    },
    "tenant_name": {
      "type": "string"
    },
    "tenant_type": {
      "type": "string"
    },
    "tenant_units": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/organizations-api_TenantUnit"
      }
    },
    "tenant_labels": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "tenant_status": {
      "type": "string"
    },
    "tenant_network": {
      "type": "object"
    },
    "tenant_contacts": {
      "type": "object",
      "properties": {
        "email": {
          "type": "string"
        },
        "website": {
          "type": "string"
        }
      }
    },
    "tenant_metadata": {
      "type": "object",
      "properties": {
        "dns": {
          "type": "object",
          "required": [
            "ns_pool"
          ],
          "properties": {
            "ns_pool": {
              "type": "object",
              "properties": {
                "primary": {
                  "type": "string"
                },
                "secondary": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    }
  }
}
object organizations-api_TenantMembership
{
  "type": "object",
  "required": [
    "user_tag",
    "user_email",
    "user_name"
  ],
  "properties": {
    "user_tag": {
      "type": "string"
    },
    "user_name": {
      "type": "string"
    },
    "user_email": {
      "type": "string"
    }
  }
}
object organizations-api_TenantUnit
{
  "type": "object",
  "required": [
    "unit_tag",
    "unit_name",
    "unit_status",
    "unit_metadata",
    "unit_memberships"
  ],
  "properties": {
    "unit_tag": {
      "type": "string"
    },
    "unit_name": {
      "type": "string"
    },
    "unit_status": {
      "type": "string"
    },
    "unit_metadata": {
      "type": "object"
    },
    "unit_memberships": {
      "type": "array",
      "items": {
        "type": "object"
      }
    }
  }
}
object organizations-api_V4ErrorResponse
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/organizations-api_V4Message"
      }
    },
    "result": {
      "type": "object"
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean"
    },
    "messages": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/organizations-api_V4Message"
      }
    }
  }
}
object organizations-api_V4Message
{
  "type": "object",
  "required": [
    "code",
    "message"
  ],
  "properties": {
    "code": {
      "type": "integer"
    },
    "message": {
      "type": "string"
    }
  }
}
object page-shield_api-get-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/page-shield_api-response-common"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "nullable": true
        }
      }
    }
  ]
}
object page-shield_api-list-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/page-shield_api-response-common"
    },
    {
      "required": [
        "result_info"
      ],
      "properties": {
        "result_info": {
          "$ref": "#/components/schemas/page-shield_result_info"
        }
      }
    }
  ]
}
object page-shield_api-response-common
{
  "type": "object",
  "required": [
    "success"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/page-shield_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful"
    },
    "messages": {
      "$ref": "#/components/schemas/page-shield_messages"
    }
  }
}
object page-shield_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/page-shield_messages"
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful"
    },
    "messages": {
      "$ref": "#/components/schemas/page-shield_messages"
    }
  }
}
object page-shield_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/page-shield_api-response-common"
    },
    {
      "properties": {
        "result": {
          "anyOf": [
            {
              "type": "object"
            },
            {
              "type": "array",
              "items": {}
            },
            {
              "type": "string"
            }
          ]
        }
      }
    }
  ]
}
object page-shield_connection
{
  "required": [
    "id",
    "url",
    "added_at",
    "first_seen_at",
    "last_seen_at",
    "host",
    "url_contains_cdn_cgi_path"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/page-shield_id"
    },
    "url": {
      "type": "string",
      "example": "https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.6.0/js/bootstrap.min.js"
    },
    "host": {
      "type": "string",
      "example": "blog.cloudflare.com"
    },
    "added_at": {
      "type": "string",
      "format": "date-time",
      "example": "2021-08-18T10:51:10.09615Z"
    },
    "page_urls": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "blog.cloudflare.com/page1",
        "blog.cloudflare.com/page2"
      ]
    },
    "last_seen_at": {
      "type": "string",
      "format": "date-time",
      "example": "2021-09-02T09:57:54Z"
    },
    "first_seen_at": {
      "type": "string",
      "format": "date-time",
      "example": "2021-08-18T10:51:08Z"
    },
    "first_page_url": {
      "type": "string",
      "example": "blog.cloudflare.com/page"
    },
    "url_reported_malicious": {
      "type": "boolean",
      "example": false
    },
    "malicious_url_categories": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "Malware"
      ]
    },
    "domain_reported_malicious": {
      "type": "boolean",
      "example": false
    },
    "url_contains_cdn_cgi_path": {
      "type": "boolean",
      "example": false
    },
    "malicious_domain_categories": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "Malware"
      ]
    }
  }
}
object page-shield_cookie
{
  "required": [
    "id",
    "type",
    "name",
    "host",
    "first_seen_at",
    "last_seen_at"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/page-shield_id"
    },
    "host": {
      "type": "string",
      "example": "blog.cloudflare.com"
    },
    "name": {
      "type": "string",
      "example": "session_id"
    },
    "type": {
      "enum": [
        "first_party",
        "unknown"
      ],
      "type": "string",
      "example": "first_party"
    },
    "page_urls": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "blog.cloudflare.com/page1",
        "blog.cloudflare.com/page2"
      ]
    },
    "last_seen_at": {
      "type": "string",
      "format": "date-time",
      "example": "2021-09-02T09:57:54Z"
    },
    "first_seen_at": {
      "type": "string",
      "format": "date-time",
      "example": "2021-08-18T10:51:08Z"
    },
    "path_attribute": {
      "type": "string",
      "example": "/"
    },
    "domain_attribute": {
      "type": "string",
      "example": "cloudflare.com"
    },
    "secure_attribute": {
      "type": "boolean",
      "example": true
    },
    "expires_attribute": {
      "type": "string",
      "format": "date-time",
      "example": "2021-10-02T09:57:54Z"
    },
    "max_age_attribute": {
      "type": "integer",
      "example": 3600
    },
    "http_only_attribute": {
      "type": "boolean",
      "example": true
    },
    "same_site_attribute": {
      "enum": [
        "lax",
        "strict",
        "none"
      ],
      "type": "string",
      "example": "strict"
    }
  }
}
integer page-shield_cryptomining_score
{
  "type": "integer",
  "maximum": 99,
  "minimum": 1,
  "nullable": true,
  "description": "The cryptomining score of the JavaScript content."
}
integer page-shield_dataflow_score
{
  "type": "integer",
  "maximum": 99,
  "minimum": 1,
  "nullable": true,
  "description": "The dataflow score of the JavaScript content. This field has been deprecated in favour of js_integrity_score."
}
boolean page-shield_enabled
{
  "type": "boolean",
  "example": true,
  "description": "When true, indicates that Page Shield is enabled.",
  "x-auditable": true
}
string page-shield_fetched_at
{
  "type": "string",
  "nullable": true,
  "description": "The timestamp of when the script was last fetched."
}
object page-shield_get-zone-connection-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/page-shield_api-get-response-collection"
    },
    {
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "$ref": "#/components/schemas/page-shield_connection"
        }
      }
    }
  ]
}
object page-shield_get-zone-cookie-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/page-shield_api-get-response-collection"
    },
    {
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "$ref": "#/components/schemas/page-shield_cookie"
        }
      }
    }
  ]
}
object page-shield_get-zone-policy-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/page-shield_api-get-response-collection"
    },
    {
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "$ref": "#/components/schemas/page-shield_policy-with-id"
        }
      }
    }
  ]
}
object page-shield_get-zone-script-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/page-shield_api-get-response-collection"
    },
    {
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "allOf": [
            {
              "$ref": "#/components/schemas/page-shield_script"
            },
            {
              "properties": {
                "versions": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/page-shield_version"
                  },
                  "example": [
                    {
                      "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b423",
                      "fetched_at": "2021-08-18T10:51:08Z",
                      "malware_score": 5,
                      "magecart_score": 10,
                      "cryptomining_score": 20,
                      "js_integrity_score": 2
                    }
                  ],
                  "nullable": true
                }
              }
            }
          ]
        }
      }
    }
  ]
}
object page-shield_get-zone-settings-response
{
  "required": [
    "enabled",
    "updated_at",
    "use_cloudflare_reporting_endpoint",
    "use_connection_url_path"
  ],
  "properties": {
    "enabled": {
      "$ref": "#/components/schemas/page-shield_enabled"
    },
    "updated_at": {
      "$ref": "#/components/schemas/page-shield_updated_at"
    },
    "use_connection_url_path": {
      "$ref": "#/components/schemas/page-shield_use_connection_url_path"
    },
    "use_cloudflare_reporting_endpoint": {
      "$ref": "#/components/schemas/page-shield_use_cloudflare_reporting_endpoint"
    }
  }
}
string page-shield_hash
{
  "type": "string",
  "nullable": true,
  "maxLength": 64,
  "minLength": 64,
  "description": "The computed hash of the analyzed script."
}
string page-shield_id
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "readOnly": true,
  "maxLength": 32,
  "description": "Identifier",
  "x-auditable": true
}
integer page-shield_js_integrity_score
{
  "type": "integer",
  "maximum": 99,
  "minimum": 1,
  "nullable": true,
  "description": "The integrity score of the JavaScript content."
}
object page-shield_list-zone-connections-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/page-shield_api-list-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/page-shield_connection"
          }
        }
      }
    }
  ]
}
object page-shield_list-zone-cookies-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/page-shield_api-list-response-collection"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/page-shield_cookie"
          }
        }
      }
    }
  ]
}
object page-shield_list-zone-policies-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/page-shield_api-list-response-collection"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/page-shield_policy-with-id"
          }
        }
      }
    }
  ]
}
object page-shield_list-zone-scripts-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/page-shield_api-list-response-collection"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/page-shield_script"
          }
        }
      }
    }
  ]
}
integer page-shield_magecart_score
{
  "type": "integer",
  "maximum": 99,
  "minimum": 1,
  "nullable": true,
  "description": "The magecart score of the JavaScript content."
}
integer page-shield_malware_score
{
  "type": "integer",
  "maximum": 99,
  "minimum": 1,
  "nullable": true,
  "description": "The malware score of the JavaScript content."
}
array page-shield_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "message": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
integer page-shield_obfuscation_score
{
  "type": "integer",
  "maximum": 99,
  "minimum": 1,
  "nullable": true,
  "description": "The obfuscation score of the JavaScript content. This field has been deprecated in favour of js_integrity_score."
}
object page-shield_policy
{
  "required": [
    "description",
    "action",
    "expression",
    "enabled",
    "value"
  ],
  "properties": {
    "value": {
      "$ref": "#/components/schemas/page-shield_policy-value"
    },
    "action": {
      "$ref": "#/components/schemas/page-shield_policy-action"
    },
    "enabled": {
      "$ref": "#/components/schemas/page-shield_policy-enabled"
    },
    "expression": {
      "$ref": "#/components/schemas/page-shield_policy-expression"
    },
    "description": {
      "$ref": "#/components/schemas/page-shield_policy-description"
    }
  }
}
string page-shield_policy-action
{
  "enum": [
    "allow",
    "log",
    "add_reporting_directives"
  ],
  "type": "string",
  "example": "allow",
  "description": "The action to take if the expression matches",
  "x-auditable": true
}
string page-shield_policy-description
{
  "type": "string",
  "example": "Checkout page CSP policy",
  "description": "A description for the policy",
  "x-auditable": true
}
boolean page-shield_policy-enabled
{
  "type": "boolean",
  "example": true,
  "description": "Whether the policy is enabled",
  "x-auditable": true
}
string page-shield_policy-expression
{
  "type": "string",
  "example": "ends_with(http.request.uri.path, \"/checkout\")",
  "description": "The expression which must match for the policy to be applied, using the Cloudflare Firewall rule expression syntax",
  "x-auditable": true
}
string page-shield_policy-value
{
  "type": "string",
  "example": "script-src 'none';",
  "description": "The policy which will be applied",
  "x-auditable": true
}
object page-shield_policy-with-id
{
  "allOf": [
    {
      "$ref": "#/components/schemas/page-shield_policy"
    },
    {
      "required": [
        "id"
      ],
      "properties": {
        "id": {
          "$ref": "#/components/schemas/page-shield_id"
        }
      }
    }
  ],
  "required": [
    "id",
    "description",
    "action",
    "expression",
    "enabled",
    "value"
  ]
}
object page-shield_result_info
{
  "type": "object",
  "required": [
    "page",
    "per_page",
    "count",
    "total_count",
    "total_pages"
  ],
  "properties": {
    "page": {
      "type": "number",
      "example": 1,
      "description": "Current page within paginated list of results"
    },
    "count": {
      "type": "number",
      "example": 1,
      "description": "Total number of results for the requested service"
    },
    "per_page": {
      "type": "number",
      "example": 20,
      "description": "Number of results per page of results"
    },
    "total_count": {
      "type": "number",
      "example": 2000,
      "description": "Total results available without any search parameters"
    },
    "total_pages": {
      "type": "number",
      "example": 100,
      "description": "Total number of pages"
    }
  }
}
object page-shield_script
{
  "required": [
    "id",
    "url",
    "added_at",
    "first_seen_at",
    "last_seen_at",
    "host",
    "url_contains_cdn_cgi_path"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/page-shield_id"
    },
    "url": {
      "type": "string",
      "example": "https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.6.0/js/bootstrap.min.js"
    },
    "hash": {
      "$ref": "#/components/schemas/page-shield_hash"
    },
    "host": {
      "type": "string",
      "example": "blog.cloudflare.com"
    },
    "added_at": {
      "type": "string",
      "format": "date-time",
      "example": "2021-08-18T10:51:10.09615Z"
    },
    "page_urls": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "blog.cloudflare.com/page1",
        "blog.cloudflare.com/page2"
      ]
    },
    "fetched_at": {
      "$ref": "#/components/schemas/page-shield_fetched_at"
    },
    "last_seen_at": {
      "type": "string",
      "format": "date-time",
      "example": "2021-09-02T09:57:54Z"
    },
    "first_seen_at": {
      "type": "string",
      "format": "date-time",
      "example": "2021-08-18T10:51:08Z"
    },
    "malware_score": {
      "$ref": "#/components/schemas/page-shield_malware_score"
    },
    "dataflow_score": {
      "allOf": [
        {
          "$ref": "#/components/schemas/page-shield_dataflow_score"
        }
      ],
      "deprecated": true
    },
    "first_page_url": {
      "type": "string",
      "example": "blog.cloudflare.com/page"
    },
    "magecart_score": {
      "$ref": "#/components/schemas/page-shield_magecart_score"
    },
    "obfuscation_score": {
      "allOf": [
        {
          "$ref": "#/components/schemas/page-shield_obfuscation_score"
        }
      ],
      "deprecated": true
    },
    "cryptomining_score": {
      "$ref": "#/components/schemas/page-shield_cryptomining_score"
    },
    "js_integrity_score": {
      "$ref": "#/components/schemas/page-shield_js_integrity_score"
    },
    "url_reported_malicious": {
      "type": "boolean",
      "example": false
    },
    "malicious_url_categories": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "Malware"
      ]
    },
    "domain_reported_malicious": {
      "type": "boolean",
      "example": false
    },
    "url_contains_cdn_cgi_path": {
      "type": "boolean",
      "example": false
    },
    "malicious_domain_categories": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "Malware"
      ]
    }
  }
}
object page-shield_update-zone-settings-response
{
  "required": [
    "enabled",
    "updated_at",
    "use_cloudflare_reporting_endpoint",
    "use_connection_url_path"
  ],
  "properties": {
    "enabled": {
      "$ref": "#/components/schemas/page-shield_enabled"
    },
    "updated_at": {
      "$ref": "#/components/schemas/page-shield_updated_at"
    },
    "use_connection_url_path": {
      "$ref": "#/components/schemas/page-shield_use_connection_url_path"
    },
    "use_cloudflare_reporting_endpoint": {
      "$ref": "#/components/schemas/page-shield_use_cloudflare_reporting_endpoint"
    }
  }
}
string page-shield_updated_at
{
  "type": "string",
  "example": "2022-10-12T17:56:52.083582+01:00",
  "description": "The timestamp of when Page Shield was last updated.",
  "x-auditable": true
}
boolean page-shield_use_cloudflare_reporting_endpoint
{
  "type": "boolean",
  "example": true,
  "description": "When true, CSP reports will be sent to https://csp-reporting.cloudflare.com/cdn-cgi/script_monitor/report",
  "x-auditable": true
}
boolean page-shield_use_connection_url_path
{
  "type": "boolean",
  "example": true,
  "description": "When true, the paths associated with connections URLs will also be analyzed.",
  "x-auditable": true
}
object page-shield_version
{
  "type": "object",
  "properties": {
    "hash": {
      "$ref": "#/components/schemas/page-shield_hash"
    },
    "fetched_at": {
      "$ref": "#/components/schemas/page-shield_fetched_at"
    },
    "malware_score": {
      "$ref": "#/components/schemas/page-shield_malware_score"
    },
    "dataflow_score": {
      "allOf": [
        {
          "$ref": "#/components/schemas/page-shield_dataflow_score"
        }
      ],
      "deprecated": true
    },
    "magecart_score": {
      "$ref": "#/components/schemas/page-shield_magecart_score"
    },
    "obfuscation_score": {
      "allOf": [
        {
          "$ref": "#/components/schemas/page-shield_obfuscation_score"
        }
      ],
      "deprecated": true
    },
    "cryptomining_score": {
      "$ref": "#/components/schemas/page-shield_cryptomining_score"
    },
    "js_integrity_score": {
      "$ref": "#/components/schemas/page-shield_js_integrity_score"
    }
  },
  "description": "The version of the analyzed script."
}
object page-shield_zone_settings_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/page-shield_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object"
        }
      }
    }
  ]
}
object pages_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/pages_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result_info": {
          "type": "object",
          "properties": {
            "page": {
              "type": "number",
              "example": 1,
              "description": "Current page within paginated list of results."
            },
            "count": {
              "type": "number",
              "example": 1,
              "description": "Total number of results for the requested service."
            },
            "per_page": {
              "type": "number",
              "example": 20,
              "description": "Number of results per page of results."
            },
            "total_count": {
              "type": "number",
              "example": 2000,
              "description": "Total results available without any search parameters."
            },
            "total_pages": {
              "type": "number",
              "example": 100,
              "description": "The number of total pages in the entire result set."
            }
          }
        }
      }
    }
  ]
}
object pages_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/pages_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/pages_messages"
    }
  }
}
object pages_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/pages_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/pages_messages"
        }
      ],
      "example": []
    }
  }
}
object pages_build_config
{
  "type": "object",
  "required": [
    "web_analytics_tag",
    "web_analytics_token"
  ],
  "properties": {
    "root_dir": {
      "type": "string",
      "example": "/",
      "nullable": true,
      "description": "Directory to run the command.",
      "x-auditable": true
    },
    "build_caching": {
      "type": "boolean",
      "example": true,
      "nullable": true,
      "description": "Enable build caching for the project.",
      "x-auditable": true
    },
    "build_command": {
      "type": "string",
      "example": "npm run build",
      "nullable": true,
      "description": "Command used to build project.",
      "x-auditable": true
    },
    "destination_dir": {
      "type": "string",
      "example": "build",
      "nullable": true,
      "description": "Assets output directory of the build.",
      "x-auditable": true
    },
    "web_analytics_tag": {
      "type": "string",
      "example": "cee1c73f6e4743d0b5e6bb1a0bcaabcc",
      "nullable": true,
      "description": "The classifying tag for analytics.",
      "x-auditable": true
    },
    "web_analytics_token": {
      "type": "string",
      "example": "021e1057c18547eca7b79f2516f06o7x",
      "nullable": true,
      "description": "The auth token for analytics.",
      "x-sensitive": true
    }
  },
  "description": "Configs for the project build process."
}
object pages_deployment
{
  "type": "object",
  "required": [
    "aliases",
    "build_config",
    "created_on",
    "deployment_trigger",
    "environment",
    "env_vars",
    "id",
    "is_skipped",
    "latest_stage",
    "modified_on",
    "project_id",
    "project_name",
    "short_id",
    "source",
    "stages",
    "url"
  ],
  "properties": {
    "id": {
      "type": "string",
      "example": "f64788e9-fccd-4d4a-a28a-cb84f88f6",
      "readOnly": true,
      "description": "Id of the deployment.",
      "x-auditable": true
    },
    "url": {
      "type": "string",
      "example": "https://f64788e9.ninjakittens.pages.dev",
      "readOnly": true,
      "description": "The live URL to view this deployment.",
      "x-auditable": true
    },
    "source": {
      "$ref": "#/components/schemas/pages_source"
    },
    "stages": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/pages_stage"
      },
      "example": [
        {
          "name": "queued",
          "status": "active",
          "ended_on": "2021-06-03T15:39:03.134378Z",
          "started_on": "2021-06-03T15:38:15.608194Z"
        },
        {
          "name": "initialize",
          "status": "idle",
          "ended_on": null,
          "started_on": null
        },
        {
          "name": "clone_repo",
          "status": "idle",
          "ended_on": null,
          "started_on": null
        },
        {
          "name": "build",
          "status": "idle",
          "ended_on": null,
          "started_on": null
        },
        {
          "name": "deploy",
          "status": "idle",
          "ended_on": null,
          "started_on": null
        }
      ],
      "readOnly": true,
      "description": "List of past stages."
    },
    "aliases": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "example": [
        "https://branchname.projectname.pages.dev"
      ],
      "nullable": true,
      "readOnly": true,
      "description": "A list of alias URLs pointing to this deployment."
    },
    "env_vars": {
      "$ref": "#/components/schemas/pages_env_vars"
    },
    "short_id": {
      "type": "string",
      "example": "f64788e9",
      "readOnly": true,
      "description": "Short Id (8 character) of the deployment.",
      "x-auditable": true
    },
    "created_on": {
      "type": "string",
      "format": "date-time",
      "example": "2021-03-09T00:55:03.923456Z",
      "readOnly": true,
      "description": "When the deployment was created.",
      "x-auditable": true
    },
    "is_skipped": {
      "type": "boolean",
      "example": true,
      "readOnly": true,
      "description": "If the deployment has been skipped.",
      "x-auditable": true
    },
    "project_id": {
      "type": "string",
      "example": "7b162ea7-7367-4d67-bcde-1160995d5",
      "readOnly": true,
      "description": "Id of the project.",
      "x-auditable": true
    },
    "environment": {
      "enum": [
        "preview",
        "production"
      ],
      "type": "string",
      "example": "preview",
      "readOnly": true,
      "description": "Type of deploy.",
      "x-auditable": true
    },
    "modified_on": {
      "type": "string",
      "format": "date-time",
      "example": "2021-03-09T00:58:59.045655",
      "readOnly": true,
      "description": "When the deployment was last modified.",
      "x-auditable": true
    },
    "build_config": {
      "$ref": "#/components/schemas/pages_build_config"
    },
    "latest_stage": {
      "$ref": "#/components/schemas/pages_stage"
    },
    "project_name": {
      "$ref": "#/components/schemas/pages_project_name"
    },
    "uses_functions": {
      "type": "boolean",
      "nullable": true,
      "readOnly": true,
      "description": "Whether the deployment uses functions.",
      "x-auditable": true
    },
    "deployment_trigger": {
      "type": "object",
      "readOnly": true,
      "required": [
        "type",
        "metadata"
      ],
      "properties": {
        "type": {
          "enum": [
            "github:push",
            "ad_hoc",
            "deploy_hook"
          ],
          "type": "string",
          "example": "ad_hoc",
          "description": "What caused the deployment.",
          "x-auditable": true
        },
        "metadata": {
          "type": "object",
          "required": [
            "branch",
            "commit_hash",
            "commit_message",
            "commit_dirty"
          ],
          "properties": {
            "branch": {
              "type": "string",
              "example": "main",
              "description": "Where the trigger happened.",
              "x-auditable": true
            },
            "commit_hash": {
              "type": "string",
              "example": "ad9ccd918a81025731e10e40267e11273a263421",
              "description": "Hash of the deployment trigger commit.",
              "x-auditable": true
            },
            "commit_dirty": {
              "type": "boolean",
              "example": false,
              "description": "Whether the deployment trigger commit was dirty.",
              "x-auditable": true
            },
            "commit_message": {
              "type": "string",
              "example": "Update index.html",
              "description": "Message of the deployment trigger commit.",
              "x-auditable": true
            }
          },
          "description": "Additional info about the trigger."
        }
      },
      "description": "Info about what caused the deployment."
    }
  }
}
object pages_deployment_config_values
{
  "type": "object",
  "required": [
    "env_vars",
    "fail_open",
    "always_use_latest_compatibility_date",
    "compatibility_date",
    "compatibility_flags",
    "build_image_major_version",
    "usage_model"
  ],
  "properties": {
    "limits": {
      "type": "object",
      "example": {
        "cpu_ms": 100
      },
      "required": [
        "cpu_ms"
      ],
      "properties": {
        "cpu_ms": {
          "type": "integer",
          "example": 100,
          "description": "CPU time limit in milliseconds.",
          "x-auditable": true
        }
      },
      "description": "Limits for Pages Functions."
    },
    "browsers": {
      "type": "object",
      "example": {
        "BROWSER": {}
      },
      "description": "Browser bindings used for Pages Functions.",
      "additionalProperties": {
        "type": "object",
        "nullable": true,
        "description": "Browser binding.",
        "x-stainless-empty-object": true
      }
    },
    "env_vars": {
      "$ref": "#/components/schemas/pages_env_vars"
    },
    "services": {
      "type": "object",
      "example": {
        "SERVICE_BINDING": {
          "service": "example-worker",
          "entrypoint": "MyHandler",
          "environment": "production"
        }
      },
      "description": "Services used for Pages Functions.",
      "additionalProperties": {
        "type": "object",
        "required": [
          "service",
          "environment"
        ],
        "properties": {
          "service": {
            "type": "string",
            "description": "The Service name.",
            "x-auditable": true
          },
          "entrypoint": {
            "type": "string",
            "nullable": true,
            "description": "The entrypoint to bind to.",
            "x-auditable": true
          },
          "environment": {
            "type": "string",
            "description": "The Service environment.",
            "x-auditable": true
          }
        },
        "description": "Service binding."
      }
    },
    "fail_open": {
      "type": "boolean",
      "example": true,
      "description": "Whether to fail open when the deployment config cannot be applied.",
      "x-auditable": true
    },
    "placement": {
      "type": "object",
      "example": {
        "mode": "smart"
      },
      "required": [
        "mode"
      ],
      "properties": {
        "mode": {
          "type": "string",
          "example": "smart",
          "description": "Placement mode.",
          "x-auditable": true
        }
      },
      "description": "Placement setting used for Pages Functions."
    },
    "r2_buckets": {
      "type": "object",
      "example": {
        "R2_BINDING": {
          "name": "some-bucket"
        }
      },
      "description": "R2 buckets used for Pages Functions.",
      "additionalProperties": {
        "type": "object",
        "required": [
          "name"
        ],
        "properties": {
          "name": {
            "type": "string",
            "example": "some-bucket",
            "description": "Name of the R2 bucket.",
            "x-auditable": true
          },
          "jurisdiction": {
            "type": "string",
            "example": "eu",
            "nullable": true,
            "description": "Jurisdiction of the R2 bucket.",
            "x-auditable": true
          }
        },
        "description": "R2 binding."
      }
    },
    "ai_bindings": {
      "type": "object",
      "example": {
        "AI_BINDING": {
          "project_id": "some-project-id"
        }
      },
      "description": "Constellation bindings used for Pages Functions.",
      "additionalProperties": {
        "type": "object",
        "required": [
          "project_id"
        ],
        "properties": {
          "project_id": {
            "type": "string",
            "x-auditable": true
          }
        },
        "description": "AI binding."
      }
    },
    "usage_model": {
      "enum": [
        "standard",
        "bundled",
        "unbound"
      ],
      "type": "string",
      "example": "standard",
      "deprecated": true,
      "description": "The usage model for Pages Functions.",
      "x-auditable": true,
      "x-stainless-deprecation-message": "All new projects now use the Standard usage model."
    },
    "d1_databases": {
      "type": "object",
      "example": {
        "D1_BINDING": {
          "id": "445e2955-951a-43f8-a35b-a4d0c8138f63"
        }
      },
      "description": "D1 databases used for Pages Functions.",
      "additionalProperties": {
        "type": "object",
        "required": [
          "id"
        ],
        "properties": {
          "id": {
            "type": "string",
            "example": "445e2955-951a-43f8-a35b-a4d0c8138f63",
            "description": "UUID of the D1 database.",
            "x-auditable": true
          }
        },
        "description": "D1 binding."
      }
    },
    "kv_namespaces": {
      "type": "object",
      "example": {
        "KV_BINDING": {
          "namespace_id": "5eb63bbbe01eeed093cb22bb8f5acdc3"
        }
      },
      "description": "KV namespaces used for Pages Functions.",
      "additionalProperties": {
        "type": "object",
        "required": [
          "namespace_id"
        ],
        "properties": {
          "namespace_id": {
            "type": "string",
            "example": "5eb63bbbe01eeed093cb22bb8f5acdc3",
            "description": "ID of the KV namespace.",
            "x-auditable": true
          }
        },
        "description": "KV namespace binding."
      }
    },
    "queue_producers": {
      "type": "object",
      "example": {
        "QUEUE_PRODUCER_BINDING": {
          "name": "some-queue"
        }
      },
      "description": "Queue Producer bindings used for Pages Functions.",
      "additionalProperties": {
        "type": "object",
        "required": [
          "name"
        ],
        "properties": {
          "name": {
            "type": "string",
            "example": "some-queue",
            "description": "Name of the Queue.",
            "x-auditable": true
          }
        },
        "description": "Queue Producer binding."
      }
    },
    "mtls_certificates": {
      "type": "object",
      "example": {
        "MTLS": {
          "certificate_id": "d7cdd17c-916f-4cb7-aabe-585eb382ec4e"
        }
      },
      "description": "mTLS bindings used for Pages Functions.",
      "additionalProperties": {
        "type": "object",
        "required": [
          "certificate_id"
        ],
        "properties": {
          "certificate_id": {
            "type": "string",
            "example": "d7cdd17c-916f-4cb7-aabe-585eb382ec4e",
            "x-auditable": true
          }
        },
        "description": "mTLS binding."
      }
    },
    "compatibility_date": {
      "type": "string",
      "example": "2025-01-01",
      "description": "Compatibility date used for Pages Functions.",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    },
    "vectorize_bindings": {
      "type": "object",
      "example": {
        "VECTORIZE": {
          "index_name": "my_index"
        }
      },
      "description": "Vectorize bindings used for Pages Functions.",
      "additionalProperties": {
        "type": "object",
        "required": [
          "index_name"
        ],
        "properties": {
          "index_name": {
            "type": "string",
            "example": "my_index",
            "x-auditable": true
          }
        },
        "description": "Vectorize binding."
      }
    },
    "compatibility_flags": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "example": [
        "url_standard"
      ],
      "description": "Compatibility flags used for Pages Functions."
    },
    "hyperdrive_bindings": {
      "type": "object",
      "example": {
        "HYPERDRIVE": {
          "id": "a76a99bc342644deb02c38d66082262a"
        }
      },
      "description": "Hyperdrive bindings used for Pages Functions.",
      "additionalProperties": {
        "type": "object",
        "required": [
          "id"
        ],
        "properties": {
          "id": {
            "type": "string",
            "example": "a76a99bc342644deb02c38d66082262a",
            "x-auditable": true
          }
        },
        "description": "Hyperdrive binding."
      }
    },
    "wrangler_config_hash": {
      "type": "string",
      "example": "abc123def456",
      "description": "Hash of the Wrangler configuration used for the deployment.",
      "x-auditable": true
    },
    "analytics_engine_datasets": {
      "type": "object",
      "example": {
        "ANALYTICS_ENGINE_BINDING": {
          "dataset": "api_analytics"
        }
      },
      "description": "Analytics Engine bindings used for Pages Functions.",
      "additionalProperties": {
        "type": "object",
        "required": [
          "dataset"
        ],
        "properties": {
          "dataset": {
            "type": "string",
            "example": "api_analytics",
            "description": "Name of the dataset.",
            "x-auditable": true
          }
        },
        "description": "Analytics Engine binding."
      }
    },
    "build_image_major_version": {
      "type": "integer",
      "example": 3,
      "description": "The major version of the build image to use for Pages Functions.",
      "x-auditable": true
    },
    "durable_object_namespaces": {
      "type": "object",
      "example": {
        "DO_BINDING": {
          "namespace_id": "5eb63bbbe01eeed093cb22bb8f5acdc3"
        }
      },
      "description": "Durable Object namespaces used for Pages Functions.",
      "additionalProperties": {
        "type": "object",
        "required": [
          "namespace_id"
        ],
        "properties": {
          "namespace_id": {
            "type": "string",
            "example": "5eb63bbbe01eeed093cb22bb8f5acdc3",
            "description": "ID of the Durable Object namespace.",
            "x-auditable": true
          }
        },
        "description": "Durable Object binding."
      }
    },
    "always_use_latest_compatibility_date": {
      "type": "boolean",
      "example": false,
      "description": "Whether to always use the latest compatibility date for Pages Functions.",
      "x-auditable": true
    }
  }
}
object pages_deployment_config_values_request
{
  "type": "object",
  "properties": {
    "limits": {
      "type": "object",
      "example": {
        "cpu_ms": 100
      },
      "required": [
        "cpu_ms"
      ],
      "properties": {
        "cpu_ms": {
          "type": "integer",
          "example": 100,
          "description": "CPU time limit in milliseconds.",
          "x-auditable": true
        }
      },
      "description": "Limits for Pages Functions."
    },
    "browsers": {
      "type": "object",
      "example": {
        "BROWSER": {}
      },
      "description": "Browser bindings used for Pages Functions.",
      "additionalProperties": {
        "type": "object",
        "nullable": true,
        "description": "Browser binding.",
        "x-stainless-empty-object": true
      }
    },
    "env_vars": {
      "type": "object",
      "description": "Environment variables used for builds and Pages Functions.",
      "additionalProperties": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/pages_plain_text_env_var"
          },
          {
            "$ref": "#/components/schemas/pages_secret_text_env_var"
          }
        ],
        "nullable": true,
        "discriminator": {
          "mapping": {
            "plain_text": "#/components/schemas/pages_plain_text_env_var",
            "secret_text": "#/components/schemas/pages_secret_text_env_var"
          },
          "propertyName": "type"
        }
      }
    },
    "services": {
      "type": "object",
      "example": {
        "SERVICE_BINDING": {
          "service": "example-worker",
          "entrypoint": "MyHandler",
          "environment": "production"
        }
      },
      "description": "Services used for Pages Functions.",
      "additionalProperties": {
        "type": "object",
        "nullable": true,
        "required": [
          "service"
        ],
        "properties": {
          "service": {
            "type": "string",
            "description": "The Service name.",
            "x-auditable": true
          },
          "entrypoint": {
            "type": "string",
            "nullable": true,
            "description": "The entrypoint to bind to.",
            "x-auditable": true
          },
          "environment": {
            "type": "string",
            "description": "The Service environment.",
            "x-auditable": true
          }
        },
        "description": "Service binding."
      }
    },
    "fail_open": {
      "type": "boolean",
      "default": true,
      "example": true,
      "description": "Whether to fail open when the deployment config cannot be applied.",
      "x-auditable": true
    },
    "placement": {
      "type": "object",
      "example": {
        "mode": "smart"
      },
      "required": [
        "mode"
      ],
      "properties": {
        "mode": {
          "type": "string",
          "example": "smart",
          "description": "Placement mode.",
          "x-auditable": true
        }
      },
      "description": "Placement setting used for Pages Functions."
    },
    "r2_buckets": {
      "type": "object",
      "example": {
        "R2_BINDING": {
          "name": "some-bucket"
        }
      },
      "description": "R2 buckets used for Pages Functions.",
      "additionalProperties": {
        "type": "object",
        "nullable": true,
        "required": [
          "name"
        ],
        "properties": {
          "name": {
            "type": "string",
            "example": "some-bucket",
            "description": "Name of the R2 bucket.",
            "x-auditable": true
          },
          "jurisdiction": {
            "type": "string",
            "example": "eu",
            "nullable": true,
            "description": "Jurisdiction of the R2 bucket.",
            "x-auditable": true
          }
        },
        "description": "R2 binding."
      }
    },
    "ai_bindings": {
      "type": "object",
      "example": {
        "AI_BINDING": {
          "project_id": "some-project-id"
        }
      },
      "description": "Constellation bindings used for Pages Functions.",
      "additionalProperties": {
        "type": "object",
        "nullable": true,
        "required": [
          "project_id"
        ],
        "properties": {
          "project_id": {
            "type": "string",
            "x-auditable": true
          }
        },
        "description": "AI binding."
      }
    },
    "usage_model": {
      "enum": [
        "standard",
        "bundled",
        "unbound"
      ],
      "type": "string",
      "default": "standard",
      "example": "standard",
      "deprecated": true,
      "description": "The usage model for Pages Functions.",
      "x-auditable": true,
      "x-stainless-deprecation-message": "All new projects now use the Standard usage model."
    },
    "d1_databases": {
      "type": "object",
      "example": {
        "D1_BINDING": {
          "id": "445e2955-951a-43f8-a35b-a4d0c8138f63"
        }
      },
      "description": "D1 databases used for Pages Functions.",
      "additionalProperties": {
        "type": "object",
        "nullable": true,
        "required": [
          "id"
        ],
        "properties": {
          "id": {
            "type": "string",
            "example": "445e2955-951a-43f8-a35b-a4d0c8138f63",
            "description": "UUID of the D1 database.",
            "x-auditable": true
          }
        },
        "description": "D1 binding."
      }
    },
    "kv_namespaces": {
      "type": "object",
      "example": {
        "KV_BINDING": {
          "namespace_id": "5eb63bbbe01eeed093cb22bb8f5acdc3"
        }
      },
      "description": "KV namespaces used for Pages Functions.",
      "additionalProperties": {
        "type": "object",
        "nullable": true,
        "required": [
          "namespace_id"
        ],
        "properties": {
          "namespace_id": {
            "type": "string",
            "example": "5eb63bbbe01eeed093cb22bb8f5acdc3",
            "description": "ID of the KV namespace.",
            "x-auditable": true
          }
        },
        "description": "KV namespace binding."
      }
    },
    "queue_producers": {
      "type": "object",
      "example": {
        "QUEUE_PRODUCER_BINDING": {
          "name": "some-queue"
        }
      },
      "description": "Queue Producer bindings used for Pages Functions.",
      "additionalProperties": {
        "type": "object",
        "nullable": true,
        "required": [
          "name"
        ],
        "properties": {
          "name": {
            "type": "string",
            "example": "some-queue",
            "description": "Name of the Queue.",
            "x-auditable": true
          }
        },
        "description": "Queue Producer binding."
      }
    },
    "mtls_certificates": {
      "type": "object",
      "example": {
        "MTLS": {
          "certificate_id": "d7cdd17c-916f-4cb7-aabe-585eb382ec4e"
        }
      },
      "description": "mTLS bindings used for Pages Functions.",
      "additionalProperties": {
        "type": "object",
        "nullable": true,
        "required": [
          "certificate_id"
        ],
        "properties": {
          "certificate_id": {
            "type": "string",
            "example": "d7cdd17c-916f-4cb7-aabe-585eb382ec4e",
            "x-auditable": true
          }
        },
        "description": "mTLS binding."
      }
    },
    "compatibility_date": {
      "type": "string",
      "example": "2025-01-01",
      "description": "Compatibility date used for Pages Functions.",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    },
    "vectorize_bindings": {
      "type": "object",
      "example": {
        "VECTORIZE": {
          "index_name": "my_index"
        }
      },
      "description": "Vectorize bindings used for Pages Functions.",
      "additionalProperties": {
        "type": "object",
        "nullable": true,
        "required": [
          "index_name"
        ],
        "properties": {
          "index_name": {
            "type": "string",
            "example": "my_index",
            "x-auditable": true
          }
        },
        "description": "Vectorize binding."
      }
    },
    "compatibility_flags": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "example": [
        "url_standard"
      ],
      "description": "Compatibility flags used for Pages Functions."
    },
    "hyperdrive_bindings": {
      "type": "object",
      "example": {
        "HYPERDRIVE": {
          "id": "a76a99bc342644deb02c38d66082262a"
        }
      },
      "description": "Hyperdrive bindings used for Pages Functions.",
      "additionalProperties": {
        "type": "object",
        "nullable": true,
        "required": [
          "id"
        ],
        "properties": {
          "id": {
            "type": "string",
            "example": "a76a99bc342644deb02c38d66082262a",
            "x-auditable": true
          }
        },
        "description": "Hyperdrive binding."
      }
    },
    "wrangler_config_hash": {
      "type": "string",
      "example": "abc123def456",
      "description": "Hash of the Wrangler configuration used for the deployment.",
      "x-auditable": true
    },
    "analytics_engine_datasets": {
      "type": "object",
      "example": {
        "ANALYTICS_ENGINE_BINDING": {
          "dataset": "api_analytics"
        }
      },
      "description": "Analytics Engine bindings used for Pages Functions.",
      "additionalProperties": {
        "type": "object",
        "nullable": true,
        "required": [
          "dataset"
        ],
        "properties": {
          "dataset": {
            "type": "string",
            "example": "api_analytics",
            "description": "Name of the dataset.",
            "x-auditable": true
          }
        },
        "description": "Analytics Engine binding."
      }
    },
    "build_image_major_version": {
      "type": "integer",
      "default": 3,
      "example": 3,
      "description": "The major version of the build image to use for Pages Functions.",
      "x-auditable": true
    },
    "durable_object_namespaces": {
      "type": "object",
      "example": {
        "DO_BINDING": {
          "namespace_id": "5eb63bbbe01eeed093cb22bb8f5acdc3"
        }
      },
      "description": "Durable Object namespaces used for Pages Functions.",
      "additionalProperties": {
        "type": "object",
        "nullable": true,
        "required": [
          "namespace_id"
        ],
        "properties": {
          "namespace_id": {
            "type": "string",
            "example": "5eb63bbbe01eeed093cb22bb8f5acdc3",
            "description": "ID of the Durable Object namespace.",
            "x-auditable": true
          }
        },
        "description": "Durable Object binding."
      }
    },
    "always_use_latest_compatibility_date": {
      "type": "boolean",
      "default": false,
      "example": false,
      "description": "Whether to always use the latest compatibility date for Pages Functions.",
      "x-auditable": true
    }
  }
}
object pages_deployment_log
{
  "type": "object",
  "example": {
    "data": [
      {
        "ts": "2021-04-20T19:35:29.0749819Z",
        "line": "Cloning repository..."
      },
      {
        "ts": "2021-04-20T19:35:30.0749819Z",
        "line": "From https://github.com/cloudflare/example"
      },
      {
        "ts": "2021-04-20T19:35:30.0749819Z",
        "line": " * branch            209c5bb11d89533f426b2f8469bcae12fdccf71b -> FETCH_HEAD"
      },
      {
        "ts": "2021-04-20T19:35:30.0749819Z",
        "line": ""
      },
      {
        "ts": "2021-04-20T19:35:30.0749819Z",
        "line": "HEAD is now at 209c5bb Update index.html"
      },
      {
        "ts": "2021-04-20T19:35:30.0749819Z",
        "line": ""
      },
      {
        "ts": "2021-04-20T19:35:30.0749819Z",
        "line": ""
      },
      {
        "ts": "2021-04-20T19:35:30.0749819Z",
        "line": "Success: Finished cloning repository files"
      },
      {
        "ts": "2021-04-20T19:35:59.0749819Z",
        "line": "Installing dependencies"
      },
      {
        "ts": "2021-04-20T19:35:59.0931208Z",
        "line": "Python version set to 2.7"
      },
      {
        "ts": "2021-04-20T19:36:02.2369501Z",
        "line": "v12.18.0 is already installed."
      },
      {
        "ts": "2021-04-20T19:36:02.6028886Z",
        "line": "Now using node v12.18.0 (npm v6.14.4)"
      },
      {
        "ts": "2021-04-20T19:36:02.624555Z",
        "line": "Started restoring cached build plugins"
      },
      {
        "ts": "2021-04-20T19:36:02.6340688Z",
        "line": "Finished restoring cached build plugins"
      },
      {
        "ts": "2021-04-20T19:36:02.963095Z",
        "line": "Attempting ruby version 2.7.1, read from environment"
      },
      {
        "ts": "2021-04-20T19:36:04.2236084Z",
        "line": "Using ruby version 2.7.1"
      },
      {
        "ts": "2021-04-20T19:36:04.5450152Z",
        "line": "Using PHP version 5.6"
      },
      {
        "ts": "2021-04-20T19:36:04.5740509Z",
        "line": "5.2 is already installed."
      },
      {
        "ts": "2021-04-20T19:36:04.577035Z",
        "line": "Using Swift version 5.2"
      },
      {
        "ts": "2021-04-20T19:36:04.5771615Z",
        "line": "Installing Hugo 0.54.0"
      },
      {
        "ts": "2021-04-20T19:36:05.4786868Z",
        "line": "Hugo Static Site Generator v0.54.0-B1A82C61A/extended linux/amd64 BuildDate: 2019-02-01T10:04:38Z"
      },
      {
        "ts": "2021-04-20T19:36:05.4794366Z",
        "line": "Started restoring cached go cache"
      },
      {
        "ts": "2021-04-20T19:36:05.481977Z",
        "line": "Finished restoring cached go cache"
      },
      {
        "ts": "2021-04-20T19:36:05.9049776Z",
        "line": "go version go1.14.4 linux/amd64"
      },
      {
        "ts": "2021-04-20T19:36:05.9086053Z",
        "line": "go version go1.14.4 linux/amd64"
      },
      {
        "ts": "2021-04-20T19:36:05.9163568Z",
        "line": "Installing missing commands"
      },
      {
        "ts": "2021-04-20T19:36:05.9163934Z",
        "line": "Verify run directory"
      },
      {
        "ts": "2021-04-20T19:36:05.9164636Z",
        "line": "Executing user command: echo \"skipping build step: no build command specified\""
      },
      {
        "ts": "2021-04-20T19:36:05.9165087Z",
        "line": "skipping build step: no build command specified"
      },
      {
        "ts": "2021-04-20T19:36:05.917412Z",
        "line": "Finished"
      }
    ],
    "total": 30,
    "includes_container_logs": true
  },
  "required": [
    "total",
    "includes_container_logs",
    "data"
  ],
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "ts",
          "line"
        ],
        "properties": {
          "ts": {
            "type": "string",
            "readOnly": true
          },
          "line": {
            "type": "string",
            "readOnly": true
          }
        }
      }
    },
    "total": {
      "type": "integer",
      "readOnly": true
    },
    "includes_container_logs": {
      "type": "boolean",
      "readOnly": true
    }
  }
}
object pages_deployments
{
  "$ref": "#/components/schemas/pages_deployment"
}
object pages_domain
{
  "type": "object",
  "required": [
    "id",
    "domain_id",
    "name",
    "status",
    "created_on",
    "certificate_authority",
    "zone_tag",
    "validation_data",
    "verification_data"
  ],
  "properties": {
    "id": {
      "type": "string",
      "readOnly": true,
      "x-auditable": true
    },
    "name": {
      "$ref": "#/components/schemas/pages_domain_name"
    },
    "status": {
      "enum": [
        "initializing",
        "pending",
        "active",
        "deactivated",
        "blocked",
        "error"
      ],
      "type": "string",
      "readOnly": true,
      "x-auditable": true
    },
    "zone_tag": {
      "type": "string",
      "readOnly": true,
      "x-auditable": true
    },
    "domain_id": {
      "type": "string",
      "readOnly": true,
      "x-auditable": true
    },
    "created_on": {
      "type": "string",
      "readOnly": true,
      "x-auditable": true
    },
    "validation_data": {
      "type": "object",
      "readOnly": true,
      "required": [
        "status",
        "method"
      ],
      "properties": {
        "method": {
          "enum": [
            "http",
            "txt"
          ],
          "type": "string",
          "x-auditable": true
        },
        "status": {
          "enum": [
            "initializing",
            "pending",
            "active",
            "deactivated",
            "error"
          ],
          "type": "string",
          "x-auditable": true
        },
        "txt_name": {
          "type": "string",
          "x-auditable": true
        },
        "txt_value": {
          "type": "string",
          "x-auditable": true
        },
        "error_message": {
          "type": "string",
          "x-auditable": true
        }
      }
    },
    "verification_data": {
      "type": "object",
      "readOnly": true,
      "required": [
        "status"
      ],
      "properties": {
        "status": {
          "enum": [
            "pending",
            "active",
            "deactivated",
            "blocked",
            "error"
          ],
          "type": "string"
        },
        "error_message": {
          "type": "string",
          "x-auditable": true
        }
      }
    },
    "certificate_authority": {
      "enum": [
        "google",
        "lets_encrypt"
      ],
      "type": "string",
      "example": "lets_encrypt",
      "readOnly": true,
      "x-auditable": true
    }
  }
}
string pages_domain_name
{
  "type": "string",
  "example": "this-is-my-domain-01.com",
  "pattern": "^([a-zA-Z0-9][\\-a-zA-Z0-9]*\\.)+[\\-a-zA-Z0-9]{2,20}$",
  "description": "The domain name.",
  "x-auditable": true
}
object pages_env_vars
{
  "type": "object",
  "nullable": true,
  "description": "Environment variables used for builds and Pages Functions.",
  "additionalProperties": {
    "type": "object",
    "oneOf": [
      {
        "$ref": "#/components/schemas/pages_plain_text_env_var"
      },
      {
        "$ref": "#/components/schemas/pages_secret_text_env_var"
      }
    ],
    "nullable": true,
    "discriminator": {
      "mapping": {
        "plain_text": "#/components/schemas/pages_plain_text_env_var",
        "secret_text": "#/components/schemas/pages_secret_text_env_var"
      },
      "propertyName": "type"
    }
  }
}
string pages_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Identifier.",
  "x-auditable": true
}
array pages_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
object pages_plain_text_env_var
{
  "type": "object",
  "example": {
    "type": "plain_text",
    "value": "hello world"
  },
  "nullable": true,
  "required": [
    "type",
    "value"
  ],
  "properties": {
    "type": {
      "enum": [
        "plain_text"
      ],
      "type": "string",
      "x-auditable": true
    },
    "value": {
      "type": "string",
      "description": "Environment variable value."
    }
  },
  "description": "A plaintext environment variable."
}
object pages_project
{
  "type": "object",
  "required": [
    "id",
    "name",
    "deployment_configs",
    "latest_deployment",
    "canonical_deployment",
    "created_on",
    "production_branch",
    "production_script_name",
    "preview_script_name",
    "uses_functions",
    "framework",
    "framework_version"
  ],
  "properties": {
    "id": {
      "type": "string",
      "example": "7b162ea7-7367-4d67-bcde-1160995d5",
      "readOnly": true,
      "description": "ID of the project.",
      "x-auditable": true
    },
    "name": {
      "$ref": "#/components/schemas/pages_project_name"
    },
    "source": {
      "$ref": "#/components/schemas/pages_source"
    },
    "domains": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "example": [
        "customdomain.com",
        "customdomain.org"
      ],
      "readOnly": true,
      "description": "A list of associated custom domains for the project."
    },
    "framework": {
      "type": "string",
      "readOnly": true,
      "description": "Framework the project is using.",
      "x-auditable": true
    },
    "subdomain": {
      "type": "string",
      "example": "helloworld.pages.dev",
      "readOnly": true,
      "description": "The Cloudflare subdomain associated with the project.",
      "x-auditable": true
    },
    "created_on": {
      "type": "string",
      "format": "date-time",
      "example": "2017-01-01T00:00:00Z",
      "readOnly": true,
      "description": "When the project was created.",
      "x-auditable": true
    },
    "build_config": {
      "$ref": "#/components/schemas/pages_build_config"
    },
    "uses_functions": {
      "type": "boolean",
      "nullable": true,
      "readOnly": true,
      "description": "Whether the project uses functions.",
      "x-auditable": true
    },
    "framework_version": {
      "type": "string",
      "readOnly": true,
      "description": "Version of the framework the project is using.",
      "x-auditable": true
    },
    "latest_deployment": {
      "allOf": [
        {
          "$ref": "#/components/schemas/pages_deployment"
        },
        {
          "type": "object",
          "nullable": true,
          "readOnly": true,
          "description": "Most recent deployment of the project."
        }
      ]
    },
    "production_branch": {
      "type": "string",
      "example": "main",
      "description": "Production branch of the project. Used to identify production deployments.",
      "x-auditable": true
    },
    "deployment_configs": {
      "type": "object",
      "required": [
        "production",
        "preview"
      ],
      "properties": {
        "preview": {
          "allOf": [
            {
              "$ref": "#/components/schemas/pages_deployment_config_values"
            }
          ],
          "description": "Configs for preview deploys."
        },
        "production": {
          "allOf": [
            {
              "$ref": "#/components/schemas/pages_deployment_config_values"
            }
          ],
          "description": "Configs for production deploys."
        }
      },
      "description": "Configs for deployments in a project."
    },
    "preview_script_name": {
      "type": "string",
      "example": "pages-worker--1234567-preview",
      "readOnly": true,
      "description": "Name of the preview script.",
      "x-auditable": true
    },
    "canonical_deployment": {
      "allOf": [
        {
          "$ref": "#/components/schemas/pages_deployment"
        },
        {
          "type": "object",
          "nullable": true,
          "readOnly": true,
          "description": "Most recent production deployment of the project."
        }
      ]
    },
    "production_script_name": {
      "type": "string",
      "example": "pages-worker--1234567-production",
      "readOnly": true,
      "description": "Name of the production script.",
      "x-auditable": true
    }
  }
}
object pages_project-object
{
  "$ref": "#/components/schemas/pages_project"
}
string pages_project_name
{
  "type": "string",
  "example": "this-is-my-project-01",
  "pattern": "^[a-z0-9][a-z0-9-]*$",
  "description": "Name of the project.",
  "x-auditable": true
}
object pages_secret_text_env_var
{
  "type": "object",
  "example": {
    "type": "secret_text",
    "value": ""
  },
  "nullable": true,
  "required": [
    "type",
    "value"
  ],
  "properties": {
    "type": {
      "enum": [
        "secret_text"
      ],
      "type": "string",
      "x-auditable": true
    },
    "value": {
      "type": "string",
      "description": "Secret value.",
      "x-sensitive": true
    }
  },
  "description": "An encrypted environment variable."
}
object pages_source
{
  "type": "object",
  "required": [
    "type",
    "config"
  ],
  "properties": {
    "type": {
      "enum": [
        "github",
        "gitlab"
      ],
      "type": "string",
      "example": "github",
      "description": "The source control management provider.",
      "x-auditable": true
    },
    "config": {
      "type": "object",
      "required": [
        "deployments_enabled",
        "owner",
        "owner_id",
        "path_excludes",
        "path_includes",
        "pr_comments_enabled",
        "preview_branch_excludes",
        "preview_branch_includes",
        "preview_deployment_setting",
        "production_branch",
        "production_deployments_enabled",
        "repo_id",
        "repo_name"
      ],
      "properties": {
        "owner": {
          "type": "string",
          "example": "my-org",
          "description": "The owner of the repository.",
          "x-auditable": true
        },
        "repo_id": {
          "type": "string",
          "example": "12345678",
          "description": "The ID of the repository.",
          "x-auditable": true
        },
        "owner_id": {
          "type": "string",
          "example": "12345678",
          "description": "The owner ID of the repository.",
          "x-auditable": true
        },
        "repo_name": {
          "type": "string",
          "example": "my-repo",
          "description": "The name of the repository.",
          "x-auditable": true
        },
        "path_excludes": {
          "type": "array",
          "items": {
            "type": "string",
            "x-auditable": true
          },
          "description": "A list of paths that should be excluded from triggering a preview deployment. Wildcard syntax (`*`) is supported."
        },
        "path_includes": {
          "type": "array",
          "items": {
            "type": "string",
            "x-auditable": true
          },
          "description": "A list of paths that should be watched to trigger a preview deployment. Wildcard syntax (`*`) is supported."
        },
        "production_branch": {
          "type": "string",
          "example": "main",
          "description": "The production branch of the repository.",
          "x-auditable": true
        },
        "deployments_enabled": {
          "type": "boolean",
          "deprecated": true,
          "description": "Whether to enable automatic deployments when pushing to the source repository.\nWhen disabled, no deployments (production or preview) will be triggered automatically.\n",
          "x-auditable": true,
          "x-stainless-deprecation-message": "Use `production_deployments_enabled` and `preview_deployment_setting` for more granular control."
        },
        "pr_comments_enabled": {
          "type": "boolean",
          "description": "Whether to enable PR comments.",
          "x-auditable": true
        },
        "preview_branch_excludes": {
          "type": "array",
          "items": {
            "type": "string",
            "x-auditable": true
          },
          "description": "A list of branches that should not trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with `preview_deployment_setting` set to `custom`."
        },
        "preview_branch_includes": {
          "type": "array",
          "items": {
            "type": "string",
            "x-auditable": true
          },
          "description": "A list of branches that should trigger a preview deployment. Wildcard syntax (`*`) is supported. Must be used with `preview_deployment_setting` set to `custom`."
        },
        "preview_deployment_setting": {
          "enum": [
            "all",
            "none",
            "custom"
          ],
          "type": "string",
          "description": "Controls whether commits to preview branches trigger a preview deployment.",
          "x-auditable": true
        },
        "production_deployments_enabled": {
          "type": "boolean",
          "description": "Whether to trigger a production deployment on commits to the production branch.",
          "x-auditable": true
        }
      }
    }
  },
  "description": "Configs for the project source control."
}
object pages_stage
{
  "type": "object",
  "readOnly": true,
  "required": [
    "name",
    "started_on",
    "ended_on",
    "status"
  ],
  "properties": {
    "name": {
      "enum": [
        "queued",
        "initialize",
        "clone_repo",
        "build",
        "deploy"
      ],
      "type": "string",
      "example": "deploy",
      "description": "The current build stage.",
      "x-auditable": true
    },
    "status": {
      "enum": [
        "success",
        "idle",
        "active",
        "failure",
        "canceled"
      ],
      "type": "string",
      "example": "success",
      "readOnly": true,
      "description": "State of the current stage.",
      "x-auditable": true
    },
    "ended_on": {
      "type": "string",
      "format": "date-time",
      "example": "2021-03-09T00:58:59.045655",
      "nullable": true,
      "readOnly": true,
      "description": "When the stage ended.",
      "x-auditable": true
    },
    "started_on": {
      "type": "string",
      "format": "date-time",
      "example": "2021-03-09T00:55:03.923456Z",
      "nullable": true,
      "readOnly": true,
      "description": "When the stage started.",
      "x-auditable": true
    }
  },
  "description": "The status of the deployment."
}
string pay-per-crawl_BotAccessMode
{
  "enum": [
    "charge",
    "bypass"
  ],
  "type": "string"
}
object pay-per-crawl_DaricConfig
{
  "type": "object",
  "properties": {
    "enabled": {
      "type": "boolean"
    },
    "bot_overrides": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/components/schemas/pay-per-crawl_BotAccessMode"
      }
    },
    "price_usd_microcents": {
      "type": "integer"
    }
  }
}
object pay-per-crawl_DaricZoneCanBeEnabled
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string"
    },
    "can_be_enabled": {
      "type": "boolean"
    }
  }
}
object pay-per-crawl_ErrorSource
{
  "type": "object",
  "properties": {
    "pointer": {
      "type": "string"
    }
  }
}
object pay-per-crawl_Msg
{
  "type": "object",
  "properties": {
    "code": {
      "type": "integer"
    },
    "meta": {
      "description": "Meta object containing non-standard meta-information about the error.\nThis field must be an object or null!"
    },
    "source": {
      "$ref": "#/components/schemas/pay-per-crawl_Source"
    },
    "message": {
      "type": "string"
    },
    "error_chain": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/pay-per-crawl_Msg"
      }
    },
    "documentation_url": {
      "type": "string"
    }
  }
}
object pay-per-crawl_RESTError
{
  "type": "object",
  "properties": {
    "code": {
      "type": "integer"
    },
    "error": {
      "type": "string"
    },
    "source": {
      "$ref": "#/components/schemas/pay-per-crawl_ErrorSource"
    },
    "documentation_url": {
      "type": "string"
    }
  }
}
object pay-per-crawl_ResultInfo
{
  "type": "object",
  "properties": {
    "page": {
      "type": "integer"
    },
    "count": {
      "type": "integer"
    },
    "per_page": {
      "type": "integer"
    },
    "total_count": {
      "type": "integer"
    },
    "total_pages": {
      "type": "integer",
      "description": "TotalPages is a pointer so that if TotalPages == 0 we return that there\nare indeed 0 pages. omitempty would have removed the field otherwise.\nThis is important as a customer may be relying on always reading this\nproperty and it should not be absent just because it is 0, only absent\nif a value is never provided."
    }
  }
}
object pay-per-crawl_Source
{
  "type": "object",
  "properties": {
    "pointer": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Pointer is a JSON Pointer [RFC6901] to the associated entity in the request document\ne.g. \"/data\" for a primary data object, or \"/data/attributes/title\" for a specific attribute."
    },
    "parameter": {
      "type": "string",
      "description": "Parameter is a string indicating which URI query parameter caused the error."
    },
    "parameter_value_index": {
      "type": "integer",
      "description": "ParameterPosition indicates position of parameter value which caused the error,\nfor cases when there are multiple values for the same parameter."
    }
  }
}
object pay-per-crawl_StripeConnectResp
{
  "type": "object",
  "properties": {
    "url": {
      "type": "string"
    }
  }
}
object pay-per-crawl_StripeConnection
{
  "type": "object",
  "properties": {
    "connect_status": {
      "type": "string"
    },
    "stripe_account_id": {
      "type": "string"
    }
  }
}
object pay-per-crawl_ZonesCanBeEnabledPayload
{
  "type": "object",
  "properties": {
    "zones": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/pay-per-crawl_DaricZoneCanBeEnabled"
      }
    }
  }
}
object pay-per-crawl_apiErrorResponse
{
  "type": "object",
  "properties": {
    "errors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/pay-per-crawl_RESTError"
      }
    },
    "result": {},
    "success": {
      "type": "boolean"
    }
  }
}
object pay-per-crawl_apiNoResultResponse
{
  "type": "object",
  "properties": {
    "errors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/pay-per-crawl_Msg"
      }
    },
    "success": {
      "type": "boolean"
    },
    "messages": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/pay-per-crawl_Msg"
      }
    },
    "result_info": {
      "$ref": "#/components/schemas/pay-per-crawl_ResultInfo"
    }
  }
}
object pay-per-crawl_createStripeConfigResponse
{
  "type": "object",
  "properties": {
    "errors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/pay-per-crawl_Msg"
      }
    },
    "result": {
      "$ref": "#/components/schemas/pay-per-crawl_StripeConnectResp"
    },
    "success": {
      "type": "boolean"
    },
    "messages": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/pay-per-crawl_Msg"
      }
    },
    "result_info": {
      "$ref": "#/components/schemas/pay-per-crawl_ResultInfo"
    }
  }
}
object pay-per-crawl_getConfigResponse
{
  "type": "object",
  "properties": {
    "errors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/pay-per-crawl_Msg"
      }
    },
    "result": {
      "$ref": "#/components/schemas/pay-per-crawl_DaricConfig"
    },
    "success": {
      "type": "boolean"
    },
    "messages": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/pay-per-crawl_Msg"
      }
    },
    "result_info": {
      "$ref": "#/components/schemas/pay-per-crawl_ResultInfo"
    }
  }
}
object pay-per-crawl_getStripeConfigResponse
{
  "type": "object",
  "properties": {
    "errors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/pay-per-crawl_Msg"
      }
    },
    "result": {
      "$ref": "#/components/schemas/pay-per-crawl_StripeConnection"
    },
    "success": {
      "type": "boolean"
    },
    "messages": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/pay-per-crawl_Msg"
      }
    },
    "result_info": {
      "$ref": "#/components/schemas/pay-per-crawl_ResultInfo"
    }
  }
}
object pay-per-crawl_queryZonesCanBeEnabledResponse
{
  "type": "object",
  "properties": {
    "errors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/pay-per-crawl_Msg"
      }
    },
    "result": {
      "$ref": "#/components/schemas/pay-per-crawl_ZonesCanBeEnabledPayload"
    },
    "success": {
      "type": "boolean"
    },
    "messages": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/pay-per-crawl_Msg"
      }
    },
    "result_info": {
      "$ref": "#/components/schemas/pay-per-crawl_ResultInfo"
    }
  }
}
object public-ip_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/public-ip_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/public-ip_messages"
    }
  }
}
object public-ip_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/public-ip_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/public-ip_messages"
        }
      ],
      "example": []
    }
  }
}
object public-ip_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/public-ip_api-response-common"
    }
  ]
}
string public-ip_etag
{
  "type": "string",
  "example": "a8e453d9d129a3769407127936edfdb0",
  "description": "A digest of the IP data. Useful for determining if the data has changed."
}
object public-ip_ips
{
  "type": "object",
  "properties": {
    "etag": {
      "$ref": "#/components/schemas/public-ip_etag"
    },
    "ipv4_cidrs": {
      "$ref": "#/components/schemas/public-ip_ipv4_cidrs"
    },
    "ipv6_cidrs": {
      "$ref": "#/components/schemas/public-ip_ipv6_cidrs"
    }
  }
}
object public-ip_ips_jdcloud
{
  "type": "object",
  "properties": {
    "etag": {
      "$ref": "#/components/schemas/public-ip_etag"
    },
    "ipv4_cidrs": {
      "$ref": "#/components/schemas/public-ip_ipv4_cidrs"
    },
    "ipv6_cidrs": {
      "$ref": "#/components/schemas/public-ip_ipv6_cidrs"
    },
    "jdcloud_cidrs": {
      "$ref": "#/components/schemas/public-ip_jdcloud_cidrs"
    }
  }
}
array public-ip_ipv4_cidrs
{
  "type": "array",
  "items": {
    "type": "string",
    "example": "199.27.128.0/21",
    "description": "IPv4 CIDR."
  },
  "description": "List of Cloudflare IPv4 CIDR addresses."
}
array public-ip_ipv6_cidrs
{
  "type": "array",
  "items": {
    "type": "string",
    "example": "2400:cb00::/32",
    "description": "IPv6 CIDR."
  },
  "description": "List of Cloudflare IPv6 CIDR addresses."
}
array public-ip_jdcloud_cidrs
{
  "type": "array",
  "items": {
    "type": "string",
    "example": "199.27.128.0/21",
    "description": "IPv4 or IPv6 CIDR."
  },
  "description": "List IPv4 and IPv6 CIDRs, only populated if `?networks=jdcloud` is used."
}
array public-ip_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string r2-data-catalog_account-id
{
  "type": "string",
  "example": "0123456789abcdef0123456789abcdef",
  "pattern": "^[a-fA-F0-9]{32}$",
  "description": "Use this to identify the account."
}
object r2-data-catalog_api-response-collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/r2-data-catalog_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result_info": {
          "type": "object",
          "properties": {
            "page": {
              "type": "integer",
              "description": "Specifies the current page number."
            },
            "count": {
              "type": "integer",
              "description": "Indicates the number of results in this page."
            },
            "per_page": {
              "type": "integer",
              "description": "Specifies the number of results per page."
            },
            "total_count": {
              "type": "integer",
              "description": "Specifies the total number of results."
            }
          }
        }
      }
    }
  ]
}
object r2-data-catalog_api-response-common-failure
{
  "type": "object",
  "properties": {
    "errors": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "code": {
            "type": "integer"
          },
          "message": {
            "type": "string"
          }
        }
      },
      "minItems": 1
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean"
    },
    "messages": {
      "type": "array",
      "items": {
        "type": "object"
      }
    }
  }
}
array r2-data-catalog_api-response-errors
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "description": "Specifies the error code."
      },
      "message": {
        "type": "string",
        "description": "Describes the error."
      }
    }
  },
  "description": "Contains errors if the API call was unsuccessful."
}
array r2-data-catalog_api-response-messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "description": "Specifies the message code."
      },
      "message": {
        "type": "string",
        "description": "Contains the message text."
      }
    }
  },
  "description": "Contains informational messages."
}
object r2-data-catalog_api-response-single
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/r2-data-catalog_api-response-errors"
    },
    "success": {
      "$ref": "#/components/schemas/r2-data-catalog_api-response-success"
    },
    "messages": {
      "$ref": "#/components/schemas/r2-data-catalog_api-response-messages"
    }
  }
}
boolean r2-data-catalog_api-response-success
{
  "type": "boolean",
  "example": true,
  "description": "Indicates whether the API call was successful."
}
string r2-data-catalog_bucket-name
{
  "type": "string",
  "example": "my-data-bucket",
  "pattern": "^[a-z0-9]([a-z0-9\\-]*[a-z0-9])?$",
  "maxLength": 63,
  "minLength": 3,
  "description": "Specifies the R2 bucket name."
}
object r2-data-catalog_catalog
{
  "type": "object",
  "required": [
    "id",
    "name",
    "bucket",
    "status"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid",
      "example": "550e8400-e29b-41d4-a716-446655440000",
      "description": "Use this to uniquely identify the catalog."
    },
    "name": {
      "type": "string",
      "example": "account123_my-bucket",
      "description": "Specifies the catalog name (generated from account and bucket name)."
    },
    "bucket": {
      "type": "string",
      "example": "my-data-bucket",
      "description": "Specifies the associated R2 bucket name."
    },
    "status": {
      "$ref": "#/components/schemas/r2-data-catalog_catalog-status"
    },
    "credential_status": {
      "type": "string",
      "allOf": [
        {
          "$ref": "#/components/schemas/r2-data-catalog_credential-status"
        }
      ],
      "nullable": true,
      "description": "Shows the credential configuration status."
    },
    "maintenance_config": {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/r2-data-catalog_catalog-maintenance-config"
        }
      ],
      "nullable": true,
      "description": "Configures maintenance for the catalog."
    }
  },
  "description": "Contains R2 Data Catalog information."
}
object r2-data-catalog_catalog-activation-response
{
  "type": "object",
  "required": [
    "id",
    "name"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid",
      "example": "550e8400-e29b-41d4-a716-446655440000",
      "description": "Use this to uniquely identify the activated catalog."
    },
    "name": {
      "type": "string",
      "example": "account123_my-bucket",
      "description": "Specifies the name of the activated catalog."
    }
  },
  "description": "Contains response from activating an R2 bucket as a catalog."
}
object r2-data-catalog_catalog-compaction-config
{
  "type": "object",
  "required": [
    "state",
    "target_size_mb"
  ],
  "properties": {
    "state": {
      "$ref": "#/components/schemas/r2-data-catalog_catalog-maintenance-state"
    },
    "target_size_mb": {
      "$ref": "#/components/schemas/r2-data-catalog_catalog-target-file-size"
    }
  },
  "description": "Configures compaction for catalog maintenance."
}
object r2-data-catalog_catalog-credential-request
{
  "type": "object",
  "required": [
    "token"
  ],
  "properties": {
    "token": {
      "type": "string",
      "example": "your-cloudflare-api-token-here",
      "description": "Provides the Cloudflare API token for accessing R2."
    }
  },
  "description": "Contains request to store catalog credentials."
}
object r2-data-catalog_catalog-list
{
  "type": "object",
  "required": [
    "warehouses"
  ],
  "properties": {
    "warehouses": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/r2-data-catalog_catalog"
      },
      "description": "Lists catalogs in the account."
    }
  },
  "description": "Contains the list of catalogs."
}
object r2-data-catalog_catalog-maintenance-config
{
  "type": "object",
  "properties": {
    "compaction": {
      "$ref": "#/components/schemas/r2-data-catalog_catalog-compaction-config"
    },
    "snapshot_expiration": {
      "$ref": "#/components/schemas/r2-data-catalog_snapshot-expiration-config"
    }
  },
  "description": "Configures maintenance for the catalog."
}
object r2-data-catalog_catalog-maintenance-config-response
{
  "type": "object",
  "required": [
    "maintenance_config",
    "credential_status"
  ],
  "properties": {
    "credential_status": {
      "$ref": "#/components/schemas/r2-data-catalog_credential-status"
    },
    "maintenance_config": {
      "$ref": "#/components/schemas/r2-data-catalog_catalog-maintenance-config"
    }
  },
  "description": "Contains maintenance configuration and credential status."
}
string r2-data-catalog_catalog-maintenance-state
{
  "enum": [
    "enabled",
    "disabled"
  ],
  "type": "string",
  "example": "enabled",
  "description": "Specifies the state of maintenance operations."
}
object r2-data-catalog_catalog-maintenance-update-request
{
  "allOf": [
    {
      "$ref": "#/components/schemas/r2-data-catalog_maintenance-update-params"
    }
  ],
  "description": "Contains request to update catalog maintenance configuration."
}
string r2-data-catalog_catalog-status
{
  "enum": [
    "active",
    "inactive"
  ],
  "type": "string",
  "example": "active",
  "description": "Indicates the status of the catalog."
}
string r2-data-catalog_catalog-target-file-size
{
  "enum": [
    "64",
    "128",
    "256",
    "512"
  ],
  "type": "string",
  "example": "128",
  "description": "Sets the target file size for compaction in megabytes. Defaults to \"128\"."
}
object r2-data-catalog_compaction-update-params
{
  "type": "object",
  "properties": {
    "state": {
      "allOf": [
        {
          "$ref": "#/components/schemas/r2-data-catalog_catalog-maintenance-state"
        }
      ],
      "description": "Updates the state optionally."
    },
    "target_size_mb": {
      "allOf": [
        {
          "$ref": "#/components/schemas/r2-data-catalog_catalog-target-file-size"
        }
      ],
      "description": "Updates the target file size optionally."
    }
  },
  "description": "Updates compaction configuration (all fields optional)."
}
string r2-data-catalog_credential-status
{
  "enum": [
    "present",
    "absent"
  ],
  "type": "string",
  "example": "present",
  "description": "Shows the credential configuration status."
}
object r2-data-catalog_maintenance-update-params
{
  "type": "object",
  "properties": {
    "compaction": {
      "$ref": "#/components/schemas/r2-data-catalog_compaction-update-params"
    },
    "snapshot_expiration": {
      "$ref": "#/components/schemas/r2-data-catalog_snapshot-expiration-update-params"
    }
  },
  "description": "Contains maintenance update parameters."
}
object r2-data-catalog_namespace-details
{
  "type": "object",
  "required": [
    "namespace",
    "namespace_uuid"
  ],
  "properties": {
    "namespace": {
      "$ref": "#/components/schemas/r2-data-catalog_namespace-identifier"
    },
    "created_at": {
      "type": "string",
      "format": "date-time",
      "nullable": true,
      "description": "Indicates the creation timestamp in ISO 8601 format."
    },
    "updated_at": {
      "type": "string",
      "format": "date-time",
      "nullable": true,
      "description": "Shows the last update timestamp in ISO 8601 format. Null if never updated."
    },
    "namespace_uuid": {
      "type": "string",
      "format": "uuid",
      "description": "Contains the UUID that persists across renames."
    }
  },
  "description": "Contains namespace with metadata details."
}
array r2-data-catalog_namespace-identifier
{
  "type": "array",
  "items": {
    "type": "string"
  },
  "example": [
    "bronze",
    "analytics"
  ],
  "maxItems": 16,
  "minItems": 1,
  "description": "Specifies the hierarchical namespace parts as an array of strings.\nFor example, [\"bronze\", \"analytics\"] represents the namespace \"bronze.analytics\".\n"
}
object r2-data-catalog_namespace-list-response
{
  "type": "object",
  "required": [
    "namespaces"
  ],
  "properties": {
    "details": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/r2-data-catalog_namespace-details"
      },
      "nullable": true,
      "description": "Contains detailed metadata for each namespace when return_details is true.\nEach object includes the namespace, UUID, and timestamps.\n"
    },
    "namespaces": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/r2-data-catalog_namespace-identifier"
      },
      "description": "Lists namespaces in the catalog."
    },
    "namespace_uuids": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "uuid"
      },
      "example": [
        "0199b999-6869-7383-bb1f-d30e059d5326",
        "0199b99b-2c88-73b3-8dbb-421e0e8f2757"
      ],
      "nullable": true,
      "description": "Contains UUIDs for each namespace when return_uuids is true.\nThe order corresponds to the namespaces array.\n"
    },
    "next_page_token": {
      "type": "string",
      "example": "MSYxNzU5NzU1NTc4NTA0MTk0JjAxOTliOTliLTJjODgtNzNiMy04ZGJiLTQyMWUwZThmMjc1Nw",
      "nullable": true,
      "description": "Use this opaque token to fetch the next page of results.\nA null or absent value indicates the last page.\n"
    }
  },
  "description": "Contains the list of namespaces with optional pagination."
}
object r2-data-catalog_snapshot-expiration-config
{
  "type": "object",
  "required": [
    "state",
    "min_snapshots_to_keep",
    "max_snapshot_age"
  ],
  "properties": {
    "state": {
      "$ref": "#/components/schemas/r2-data-catalog_catalog-maintenance-state"
    },
    "max_snapshot_age": {
      "type": "string",
      "example": "7d",
      "pattern": "^\\d+(d|h|m|s)$",
      "description": "Specifies the maximum age for snapshots. The system deletes snapshots older than this age.\nFormat: <number><unit> where unit is d (days), h (hours), m (minutes), or s (seconds).\nExamples: \"7d\" (7 days), \"48h\" (48 hours), \"2880m\" (2,880 minutes).\nDefaults to \"7d\".\n"
    },
    "min_snapshots_to_keep": {
      "type": "integer",
      "format": "int64",
      "example": 100,
      "minimum": 1,
      "description": "Specifies the minimum number of snapshots to retain. Defaults to 100."
    }
  },
  "description": "Configures snapshot expiration settings."
}
object r2-data-catalog_snapshot-expiration-update-params
{
  "type": "object",
  "properties": {
    "state": {
      "allOf": [
        {
          "$ref": "#/components/schemas/r2-data-catalog_catalog-maintenance-state"
        }
      ],
      "description": "Updates the state optionally."
    },
    "max_snapshot_age": {
      "type": "string",
      "pattern": "^\\d+(d|h|m|s)$",
      "description": "Updates the maximum age for snapshots optionally."
    },
    "min_snapshots_to_keep": {
      "type": "integer",
      "format": "int64",
      "minimum": 1,
      "description": "Updates the minimum number of snapshots to retain optionally."
    }
  },
  "description": "Updates snapshot expiration configuration (all fields optional)."
}
object r2-data-catalog_table-compaction-config
{
  "type": "object",
  "required": [
    "state",
    "target_size_mb"
  ],
  "properties": {
    "state": {
      "$ref": "#/components/schemas/r2-data-catalog_catalog-maintenance-state"
    },
    "target_size_mb": {
      "$ref": "#/components/schemas/r2-data-catalog_catalog-target-file-size"
    }
  },
  "description": "Configures compaction settings for table optimization."
}
object r2-data-catalog_table-details
{
  "type": "object",
  "required": [
    "identifier",
    "table_uuid"
  ],
  "properties": {
    "location": {
      "type": "string",
      "nullable": true,
      "description": "Specifies the base S3 URI for table storage location."
    },
    "created_at": {
      "type": "string",
      "format": "date-time",
      "nullable": true,
      "description": "Indicates the creation timestamp in ISO 8601 format."
    },
    "identifier": {
      "$ref": "#/components/schemas/r2-data-catalog_table-identifier"
    },
    "table_uuid": {
      "type": "string",
      "format": "uuid",
      "description": "Contains the UUID that persists across renames."
    },
    "updated_at": {
      "type": "string",
      "format": "date-time",
      "nullable": true,
      "description": "Shows the last update timestamp in ISO 8601 format. Null if never updated."
    },
    "metadata_location": {
      "type": "string",
      "nullable": true,
      "description": "Contains the S3 URI to table metadata file. Null for staged tables."
    }
  },
  "description": "Contains table with metadata."
}
object r2-data-catalog_table-identifier
{
  "type": "object",
  "required": [
    "namespace",
    "name"
  ],
  "properties": {
    "name": {
      "type": "string",
      "example": "events",
      "description": "Specifies the table name."
    },
    "namespace": {
      "$ref": "#/components/schemas/r2-data-catalog_namespace-identifier"
    }
  },
  "description": "Specifies a unique table identifier within a catalog."
}
object r2-data-catalog_table-list-response
{
  "type": "object",
  "required": [
    "identifiers"
  ],
  "properties": {
    "details": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/r2-data-catalog_table-details"
      },
      "nullable": true,
      "description": "Contains detailed metadata for each table when return_details is true.\nEach object includes identifier, UUID, timestamps, and locations.\n"
    },
    "identifiers": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/r2-data-catalog_table-identifier"
      },
      "description": "Lists tables in the namespace."
    },
    "table_uuids": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "uuid"
      },
      "example": [
        "0199b9a1-28a0-71e0-a73e-b0fc32c8468e",
        "0199b9a1-3c74-7731-bf53-d8c67ead079d"
      ],
      "nullable": true,
      "description": "Contains UUIDs for each table when return_uuids is true.\nThe order corresponds to the identifiers array.\n"
    },
    "next_page_token": {
      "type": "string",
      "example": "MSYxNzU5NzU2MTI4NTU2Njk2JjAxOTliOWEzLTkxMmUtN2ZhMS05YzllLTg5MTAxMGQzYTg0MQ",
      "nullable": true,
      "description": "Use this opaque token to fetch the next page of results.\nA null or absent value indicates the last page.\n"
    }
  },
  "description": "Contains the list of tables with optional pagination."
}
object r2-data-catalog_table-maintenance-config
{
  "type": "object",
  "properties": {
    "compaction": {
      "$ref": "#/components/schemas/r2-data-catalog_table-compaction-config"
    },
    "snapshot_expiration": {
      "$ref": "#/components/schemas/r2-data-catalog_snapshot-expiration-config"
    }
  },
  "description": "Configures maintenance for the table."
}
object r2-data-catalog_table-maintenance-config-response
{
  "type": "object",
  "required": [
    "maintenance_config"
  ],
  "properties": {
    "maintenance_config": {
      "$ref": "#/components/schemas/r2-data-catalog_table-maintenance-config"
    }
  },
  "description": "Contains table maintenance configuration."
}
object r2-data-catalog_table-maintenance-update-request
{
  "allOf": [
    {
      "$ref": "#/components/schemas/r2-data-catalog_maintenance-update-params"
    }
  ],
  "description": "Contains request to update table maintenance configuration."
}
object r2-slurper_ConnectivityResponse
{
  "type": "object",
  "properties": {
    "connectivityStatus": {
      "enum": [
        "success",
        "error"
      ],
      "type": "string"
    }
  }
}
object r2-slurper_CreateJobRequest
{
  "type": "object",
  "properties": {
    "source": {
      "$ref": "#/components/schemas/r2-slurper_SourceJobSchema"
    },
    "target": {
      "$ref": "#/components/schemas/r2-slurper_R2TargetSchema"
    },
    "overwrite": {
      "type": "boolean",
      "default": true
    }
  }
}
object r2-slurper_GCSLikeCredsSchema
{
  "type": "object",
  "required": [
    "clientEmail",
    "privateKey"
  ],
  "properties": {
    "privateKey": {
      "type": "string",
      "x-sensitive": true
    },
    "clientEmail": {
      "type": "string"
    }
  }
}
object r2-slurper_GCSSourceSchema
{
  "type": "object",
  "required": [
    "vendor",
    "bucket",
    "secret"
  ],
  "properties": {
    "keys": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "maxItems": 10000,
      "nullable": true
    },
    "bucket": {
      "type": "string"
    },
    "secret": {
      "$ref": "#/components/schemas/r2-slurper_GCSLikeCredsSchema"
    },
    "vendor": {
      "enum": [
        "gcs"
      ],
      "type": "string"
    },
    "pathPrefix": {
      "type": "string",
      "nullable": true
    }
  }
}
object r2-slurper_JobLogResponse
{
  "type": "object",
  "properties": {
    "job": {
      "type": "string"
    },
    "logType": {
      "enum": [
        "migrationStart",
        "migrationComplete",
        "migrationAbort",
        "migrationError",
        "migrationPause",
        "migrationResume",
        "migrationErrorFailedContinuation",
        "importErrorRetryExhaustion",
        "importSkippedStorageClass",
        "importSkippedOversized",
        "importSkippedEmptyObject",
        "importSkippedUnsupportedContentType",
        "importSkippedExcludedContentType",
        "importSkippedInvalidMedia",
        "importSkippedRequiresRetrieval"
      ],
      "type": "string"
    },
    "message": {
      "type": "string",
      "nullable": true
    },
    "createdAt": {
      "type": "string"
    },
    "objectKey": {
      "type": "string",
      "nullable": true
    }
  }
}
object r2-slurper_JobProgressResponse
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string"
    },
    "status": {
      "$ref": "#/components/schemas/r2-slurper_JobStatus"
    },
    "objects": {
      "type": "integer"
    },
    "createdAt": {
      "type": "string"
    },
    "failedObjects": {
      "type": "integer"
    },
    "skippedObjects": {
      "type": "integer"
    },
    "transferredObjects": {
      "type": "integer"
    }
  }
}
object r2-slurper_JobResponse
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string"
    },
    "source": {
      "oneOf": [
        {
          "type": "object",
          "title": "S3SourceResponseSchema",
          "properties": {
            "keys": {
              "type": "array",
              "items": {
                "type": "string"
              },
              "nullable": true
            },
            "bucket": {
              "type": "string"
            },
            "vendor": {
              "enum": [
                "s3"
              ],
              "type": "string"
            },
            "endpoint": {
              "type": "string",
              "nullable": true
            },
            "pathPrefix": {
              "type": "string",
              "nullable": true
            }
          }
        },
        {
          "type": "object",
          "title": "GCSSourceResponseSchema",
          "properties": {
            "keys": {
              "type": "array",
              "items": {
                "type": "string"
              },
              "nullable": true
            },
            "bucket": {
              "type": "string"
            },
            "vendor": {
              "enum": [
                "gcs"
              ],
              "type": "string"
            },
            "pathPrefix": {
              "type": "string",
              "nullable": true
            }
          }
        },
        {
          "type": "object",
          "title": "R2SourceResponseSchema",
          "properties": {
            "keys": {
              "type": "array",
              "items": {
                "type": "string"
              },
              "nullable": true
            },
            "bucket": {
              "type": "string"
            },
            "vendor": {
              "enum": [
                "r2"
              ],
              "type": "string"
            },
            "pathPrefix": {
              "type": "string",
              "nullable": true
            },
            "jurisdiction": {
              "$ref": "#/components/schemas/r2-slurper_Jurisdiction"
            }
          }
        }
      ]
    },
    "status": {
      "$ref": "#/components/schemas/r2-slurper_JobStatus"
    },
    "target": {
      "type": "object",
      "title": "R2TargetResponseSchema",
      "properties": {
        "bucket": {
          "type": "string"
        },
        "vendor": {
          "enum": [
            "r2"
          ],
          "type": "string"
        },
        "jurisdiction": {
          "$ref": "#/components/schemas/r2-slurper_Jurisdiction"
        }
      }
    },
    "createdAt": {
      "type": "string"
    },
    "overwrite": {
      "type": "boolean"
    },
    "finishedAt": {
      "type": "string",
      "nullable": true
    }
  }
}
string r2-slurper_JobStatus
{
  "enum": [
    "running",
    "paused",
    "aborted",
    "completed"
  ],
  "type": "string"
}
string r2-slurper_Jurisdiction
{
  "enum": [
    "default",
    "eu",
    "fedramp"
  ],
  "type": "string"
}
object r2-slurper_R2SourceSchema
{
  "type": "object",
  "required": [
    "vendor",
    "bucket",
    "secret"
  ],
  "properties": {
    "keys": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "maxItems": 10000,
      "nullable": true
    },
    "bucket": {
      "type": "string"
    },
    "secret": {
      "$ref": "#/components/schemas/r2-slurper_S3LikeCredsSchema"
    },
    "vendor": {
      "enum": [
        "r2"
      ],
      "type": "string"
    },
    "pathPrefix": {
      "type": "string",
      "nullable": true
    },
    "jurisdiction": {
      "$ref": "#/components/schemas/r2-slurper_Jurisdiction"
    }
  }
}
object r2-slurper_R2TargetSchema
{
  "type": "object",
  "required": [
    "vendor",
    "bucket",
    "secret"
  ],
  "properties": {
    "bucket": {
      "type": "string"
    },
    "secret": {
      "$ref": "#/components/schemas/r2-slurper_S3LikeCredsSchema"
    },
    "vendor": {
      "enum": [
        "r2"
      ],
      "type": "string"
    },
    "jurisdiction": {
      "$ref": "#/components/schemas/r2-slurper_Jurisdiction"
    }
  }
}
object r2-slurper_S3LikeCredsSchema
{
  "type": "object",
  "required": [
    "accessKeyId",
    "secretAccessKey"
  ],
  "properties": {
    "accessKeyId": {
      "type": "string"
    },
    "secretAccessKey": {
      "type": "string",
      "x-sensitive": true
    }
  }
}
object r2-slurper_S3SourceSchema
{
  "type": "object",
  "required": [
    "vendor",
    "bucket",
    "secret"
  ],
  "properties": {
    "keys": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "maxItems": 10000,
      "nullable": true
    },
    "bucket": {
      "type": "string"
    },
    "region": {
      "type": "string",
      "nullable": true
    },
    "secret": {
      "$ref": "#/components/schemas/r2-slurper_S3LikeCredsSchema"
    },
    "vendor": {
      "enum": [
        "s3"
      ],
      "type": "string"
    },
    "endpoint": {
      "type": "string",
      "nullable": true
    },
    "pathPrefix": {
      "type": "string",
      "nullable": true
    }
  }
}
object r2-slurper_SourceJobSchema
{
  "type": "object",
  "oneOf": [
    {
      "$ref": "#/components/schemas/r2-slurper_S3SourceSchema"
    },
    {
      "$ref": "#/components/schemas/r2-slurper_GCSSourceSchema"
    },
    {
      "$ref": "#/components/schemas/r2-slurper_R2SourceSchema"
    }
  ]
}
array r2-slurper_api-v4-error
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000,
        "x-auditable": true
      },
      "message": {
        "type": "string",
        "x-auditable": true
      }
    },
    "uniqueItems": true
  },
  "example": [
    {
      "code": 7003,
      "message": "No route for the URI"
    }
  ],
  "minLength": 1
}
object r2-slurper_api-v4-failure
{
  "type": "object",
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/r2-slurper_api-v4-error"
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Indicates if the API call was successful or not.",
      "x-auditable": true
    },
    "messages": {
      "$ref": "#/components/schemas/r2-slurper_api-v4-message"
    }
  }
}
array r2-slurper_api-v4-message
{
  "type": "array",
  "items": {
    "type": "string",
    "x-auditable": true
  },
  "example": []
}
object r2-slurper_api-v4-success
{
  "type": "object",
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/r2-slurper_api-v4-error"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "description": "Indicates if the API call was successful or not.",
      "x-auditable": true
    },
    "messages": {
      "$ref": "#/components/schemas/r2-slurper_api-v4-message"
    }
  }
}
string r2_account_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Account ID."
}
object r2_account_level_metrics
{
  "type": "object",
  "properties": {
    "standard": {
      "$ref": "#/components/schemas/r2_class_based_metrics"
    },
    "infrequentAccess": {
      "$ref": "#/components/schemas/r2_class_based_metrics"
    }
  },
  "description": "Metrics based on the class they belong to."
}
object r2_add_custom_domain_request
{
  "type": "object",
  "example": {
    "domain": "prefix.example-domain.com",
    "zoneId": "36ca64a6d92827b8a6b90be344bb1bfd",
    "enabled": true
  },
  "required": [
    "domain",
    "zoneId",
    "enabled"
  ],
  "properties": {
    "domain": {
      "type": "string",
      "description": "Name of the custom domain to be added.",
      "x-auditable": true
    },
    "minTLS": {
      "enum": [
        "1.0",
        "1.1",
        "1.2",
        "1.3"
      ],
      "type": "string",
      "description": "Minimum TLS Version the custom domain will accept for incoming connections. If not set, defaults to 1.0.",
      "x-auditable": true
    },
    "zoneId": {
      "type": "string",
      "description": "Zone ID of the custom domain.",
      "x-auditable": true
    },
    "ciphers": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "An allowlist of ciphers for TLS termination. These ciphers must be in the BoringSSL format.",
      "x-auditable": true
    },
    "enabled": {
      "type": "boolean",
      "description": "Whether to enable public bucket access at the custom domain. If undefined, the domain will be enabled.",
      "x-auditable": true
    }
  }
}
object r2_add_custom_domain_response
{
  "type": "object",
  "example": {
    "domain": "example-domain.com",
    "enabled": true
  },
  "required": [
    "domain",
    "enabled"
  ],
  "properties": {
    "domain": {
      "type": "string",
      "description": "Domain name of the affected custom domain.",
      "x-auditable": true
    },
    "minTLS": {
      "enum": [
        "1.0",
        "1.1",
        "1.2",
        "1.3"
      ],
      "type": "string",
      "description": "Minimum TLS Version the custom domain will accept for incoming connections. If not set, defaults to 1.0.",
      "x-auditable": true
    },
    "ciphers": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "An allowlist of ciphers for TLS termination. These ciphers must be in the BoringSSL format.",
      "x-auditable": true
    },
    "enabled": {
      "type": "boolean",
      "description": "Whether this bucket is publicly accessible at the specified custom domain."
    }
  }
}
object r2_bucket
{
  "type": "object",
  "properties": {
    "name": {
      "$ref": "#/components/schemas/r2_bucket_name"
    },
    "location": {
      "$ref": "#/components/schemas/r2_bucket_location"
    },
    "jurisdiction": {
      "$ref": "#/components/schemas/r2_jurisdiction"
    },
    "creation_date": {
      "type": "string",
      "description": "Creation timestamp."
    },
    "storage_class": {
      "$ref": "#/components/schemas/r2_storage_class"
    }
  },
  "description": "A single R2 bucket."
}
object r2_bucket-config
{
  "type": "object",
  "properties": {
    "queues": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/r2_queues-config"
      },
      "description": "List of queues associated with the bucket."
    },
    "bucketName": {
      "type": "string",
      "description": "Name of the bucket.",
      "x-auditable": true
    }
  }
}
object r2_bucket-lock-rule
{
  "type": "object",
  "required": [
    "id",
    "condition",
    "enabled"
  ],
  "properties": {
    "id": {
      "type": "string",
      "example": "Lock all objects for 24 hours",
      "description": "Unique identifier for this rule.",
      "x-auditable": true
    },
    "prefix": {
      "type": "string",
      "description": "Rule will only apply to objects/uploads in the bucket that start with the given prefix, an empty prefix can be provided to scope rule to all objects/uploads.",
      "x-auditable": true
    },
    "enabled": {
      "type": "boolean",
      "description": "Whether or not this rule is in effect.",
      "x-auditable": true
    },
    "condition": {
      "oneOf": [
        {
          "$ref": "#/components/schemas/r2_lock-rule-age-condition"
        },
        {
          "$ref": "#/components/schemas/r2_lock-rule-date-condition"
        },
        {
          "$ref": "#/components/schemas/r2_lock-rule-indefinite-condition"
        }
      ]
    }
  }
}
object r2_bucket-lock-rule-config
{
  "type": "object",
  "properties": {
    "rules": {
      "type": "array",
      "items": {
        "allOf": [
          {
            "$ref": "#/components/schemas/r2_bucket-lock-rule"
          }
        ]
      }
    }
  }
}
string r2_bucket_location
{
  "enum": [
    "apac",
    "eeur",
    "enam",
    "weur",
    "wnam",
    "oc"
  ],
  "type": "string",
  "description": "Location of the bucket.",
  "x-auditable": true,
  "x-stainless-terraform-configurability": "computed_optional"
}
string r2_bucket_name
{
  "type": "string",
  "example": "example-bucket",
  "pattern": "^[a-z0-9][a-z0-9-]*[a-z0-9]",
  "maxLength": 64,
  "minLength": 3,
  "description": "Name of the bucket.",
  "x-auditable": true
}
object r2_class_based_metrics
{
  "type": "object",
  "properties": {
    "uploaded": {
      "$ref": "#/components/schemas/r2_object_size_metrics"
    },
    "published": {
      "$ref": "#/components/schemas/r2_object_size_metrics"
    }
  },
  "description": "Metrics based on what state they are in(uploaded or published)."
}
object r2_cors-rule
{
  "type": "object",
  "required": [
    "allowed"
  ],
  "properties": {
    "id": {
      "type": "string",
      "example": "Allow Local Development",
      "description": "Identifier for this rule.",
      "x-auditable": true
    },
    "allowed": {
      "type": "object",
      "required": [
        "methods",
        "origins"
      ],
      "properties": {
        "headers": {
          "type": "array",
          "items": {
            "type": "string",
            "example": "x-requested-by",
            "x-auditable": true
          },
          "description": "Specifies the value for the Access-Control-Allow-Headers header R2 sets when requesting objects in this bucket from a browser. Cross-origin requests that include custom headers (e.g. x-user-id) should specify these headers as AllowedHeaders."
        },
        "methods": {
          "type": "array",
          "items": {
            "enum": [
              "GET",
              "PUT",
              "POST",
              "DELETE",
              "HEAD"
            ],
            "type": "string",
            "x-auditable": true
          },
          "description": "Specifies the value for the Access-Control-Allow-Methods header R2 sets when requesting objects in a bucket from a browser."
        },
        "origins": {
          "type": "array",
          "items": {
            "type": "string",
            "example": "http://localhost:3000",
            "x-auditable": true
          },
          "description": "Specifies the value for the Access-Control-Allow-Origin header R2 sets when requesting objects in a bucket from a browser."
        }
      },
      "description": "Object specifying allowed origins, methods and headers for this CORS rule."
    },
    "exposeHeaders": {
      "type": "array",
      "items": {
        "type": "string",
        "example": "Content-Encoding",
        "x-auditable": true
      },
      "description": "Specifies the headers that can be exposed back, and accessed by, the JavaScript making the cross-origin request. If you need to access headers beyond the safelisted response headers, such as Content-Encoding or cf-cache-status, you must specify it here."
    },
    "maxAgeSeconds": {
      "type": "number",
      "example": 3600,
      "description": "Specifies the amount of time (in seconds) browsers are allowed to cache CORS preflight responses. Browsers may limit this to 2 hours or less, even if the maximum value (86400) is specified.",
      "x-auditable": true
    }
  }
}
string r2_domain_name
{
  "type": "string",
  "example": "example-domain/custom-domain.com",
  "description": "Name of the custom domain.",
  "x-auditable": true
}
object r2_edit_custom_domain_request
{
  "type": "object",
  "example": {
    "minTLS": "1.2",
    "enabled": true
  },
  "properties": {
    "minTLS": {
      "enum": [
        "1.0",
        "1.1",
        "1.2",
        "1.3"
      ],
      "type": "string",
      "description": "Minimum TLS Version the custom domain will accept for incoming connections. If not set, defaults to previous value.",
      "x-auditable": true
    },
    "ciphers": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "An allowlist of ciphers for TLS termination. These ciphers must be in the BoringSSL format.",
      "x-auditable": true
    },
    "enabled": {
      "type": "boolean",
      "description": "Whether to enable public bucket access at the specified custom domain.",
      "x-auditable": true
    }
  }
}
object r2_edit_custom_domain_response
{
  "type": "object",
  "example": {
    "domain": "example-domain.com",
    "enabled": true
  },
  "required": [
    "domain"
  ],
  "properties": {
    "domain": {
      "type": "string",
      "description": "Domain name of the affected custom domain.",
      "x-auditable": true
    },
    "minTLS": {
      "enum": [
        "1.0",
        "1.1",
        "1.2",
        "1.3"
      ],
      "type": "string",
      "description": "Minimum TLS Version the custom domain will accept for incoming connections. If not set, defaults to 1.0.",
      "x-auditable": true
    },
    "ciphers": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "An allowlist of ciphers for TLS termination. These ciphers must be in the BoringSSL format.",
      "x-auditable": true
    },
    "enabled": {
      "type": "boolean",
      "description": "Whether this bucket is publicly accessible at the specified custom domain.",
      "x-auditable": true
    }
  }
}
object r2_edit_managed_domain_request
{
  "type": "object",
  "example": {
    "enabled": true
  },
  "required": [
    "enabled"
  ],
  "properties": {
    "enabled": {
      "type": "boolean",
      "description": "Whether to enable public bucket access at the r2.dev domain.",
      "x-auditable": true
    }
  }
}
object r2_enable_sippy_aws
{
  "properties": {
    "source": {
      "type": "object",
      "properties": {
        "bucket": {
          "type": "string",
          "description": "Name of the AWS S3 bucket.",
          "x-auditable": true
        },
        "region": {
          "type": "string",
          "description": "Name of the AWS availability zone.",
          "x-auditable": true
        },
        "provider": {
          "enum": [
            "aws"
          ],
          "type": "string",
          "x-auditable": true
        },
        "accessKeyId": {
          "type": "string",
          "description": "Access Key ID of an IAM credential (ideally scoped to a single S3 bucket)."
        },
        "secretAccessKey": {
          "type": "string",
          "description": "Secret Access Key of an IAM credential (ideally scoped to a single S3 bucket).",
          "x-sensitive": true
        }
      },
      "description": "AWS S3 bucket to copy objects from."
    },
    "destination": {
      "type": "object",
      "properties": {
        "provider": {
          "enum": [
            "r2"
          ],
          "type": "string",
          "x-auditable": true
        },
        "accessKeyId": {
          "type": "string",
          "description": "ID of a Cloudflare API token.\nThis is the value labelled \"Access Key ID\" when creating an API.\ntoken from the [R2 dashboard](https://dash.cloudflare.com/?to=/:account/r2/api-tokens).\n\nSippy will use this token when writing objects to R2, so it is\nbest to scope this token to the bucket you're enabling Sippy for.\n"
        },
        "secretAccessKey": {
          "type": "string",
          "description": "Value of a Cloudflare API token.\nThis is the value labelled \"Secret Access Key\" when creating an API.\ntoken from the [R2 dashboard](https://dash.cloudflare.com/?to=/:account/r2/api-tokens).\n\nSippy will use this token when writing objects to R2, so it is\nbest to scope this token to the bucket you're enabling Sippy for.\n",
          "x-sensitive": true
        }
      },
      "description": "R2 bucket to copy objects to."
    }
  }
}
object r2_enable_sippy_gcs
{
  "properties": {
    "source": {
      "type": "object",
      "properties": {
        "bucket": {
          "type": "string",
          "description": "Name of the GCS bucket.",
          "x-auditable": true
        },
        "provider": {
          "enum": [
            "gcs"
          ],
          "type": "string"
        },
        "privateKey": {
          "type": "string",
          "description": "Private Key of an IAM credential (ideally scoped to a single GCS bucket).",
          "x-sensitive": true
        },
        "clientEmail": {
          "type": "string",
          "description": "Client email of an IAM credential (ideally scoped to a single GCS bucket)."
        }
      },
      "description": "GCS bucket to copy objects from."
    },
    "destination": {
      "type": "object",
      "properties": {
        "provider": {
          "enum": [
            "r2"
          ],
          "type": "string"
        },
        "accessKeyId": {
          "type": "string",
          "description": "ID of a Cloudflare API token.\nThis is the value labelled \"Access Key ID\" when creating an API.\ntoken from the [R2 dashboard](https://dash.cloudflare.com/?to=/:account/r2/api-tokens).\n\nSippy will use this token when writing objects to R2, so it is\nbest to scope this token to the bucket you're enabling Sippy for.\n"
        },
        "secretAccessKey": {
          "type": "string",
          "description": "Value of a Cloudflare API token.\nThis is the value labelled \"Secret Access Key\" when creating an API.\ntoken from the [R2 dashboard](https://dash.cloudflare.com/?to=/:account/r2/api-tokens).\n\nSippy will use this token when writing objects to R2, so it is\nbest to scope this token to the bucket you're enabling Sippy for.\n",
          "x-sensitive": true
        }
      },
      "description": "R2 bucket to copy objects to."
    }
  }
}
object r2_enable_sippy_s3
{
  "properties": {
    "source": {
      "type": "object",
      "properties": {
        "provider": {
          "enum": [
            "s3"
          ],
          "type": "string",
          "x-auditable": true
        },
        "bucketUrl": {
          "type": "string",
          "description": "URL to the S3-compatible API of the bucket.",
          "x-auditable": true
        },
        "accessKeyId": {
          "type": "string",
          "description": "Access Key ID of an IAM credential (ideally scoped to a single S3 bucket)."
        },
        "secretAccessKey": {
          "type": "string",
          "description": "Secret Access Key of an IAM credential (ideally scoped to a single S3 bucket).",
          "x-sensitive": true
        }
      },
      "description": "General S3-compatible provider to copy objects from."
    },
    "destination": {
      "type": "object",
      "properties": {
        "provider": {
          "enum": [
            "r2"
          ],
          "type": "string",
          "x-auditable": true
        },
        "accessKeyId": {
          "type": "string",
          "description": "ID of a Cloudflare API token.\nThis is the value labelled \"Access Key ID\" when creating an API.\ntoken from the [R2 dashboard](https://dash.cloudflare.com/?to=/:account/r2/api-tokens).\n\nSippy will use this token when writing objects to R2, so it is\nbest to scope this token to the bucket you're enabling Sippy for.\n"
        },
        "secretAccessKey": {
          "type": "string",
          "description": "Value of a Cloudflare API token.\nThis is the value labelled \"Secret Access Key\" when creating an API.\ntoken from the [R2 dashboard](https://dash.cloudflare.com/?to=/:account/r2/api-tokens).\n\nSippy will use this token when writing objects to R2, so it is\nbest to scope this token to the bucket you're enabling Sippy for.\n",
          "x-sensitive": true
        }
      },
      "description": "R2 bucket to copy objects to."
    }
  }
}
array r2_errors
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "message": {
        "type": "string"
      }
    },
    "uniqueItems": true
  }
}
object r2_get_custom_domain_response
{
  "type": "object",
  "example": {
    "domain": "prefix.example-domain.one.com",
    "status": {
      "ssl": "pending",
      "ownership": "deactivated"
    },
    "zoneId": "36ca64a6d92827b8a6b90be344bb1bfd",
    "enabled": false,
    "zoneName": "example-domain.one.com"
  },
  "required": [
    "domain",
    "status",
    "enabled"
  ],
  "properties": {
    "domain": {
      "type": "string",
      "description": "Domain name of the custom domain to be added.",
      "x-auditable": true
    },
    "minTLS": {
      "enum": [
        "1.0",
        "1.1",
        "1.2",
        "1.3"
      ],
      "type": "string",
      "description": "Minimum TLS Version the custom domain will accept for incoming connections. If not set, defaults to 1.0.",
      "x-auditable": true
    },
    "status": {
      "type": "object",
      "required": [
        "ssl",
        "ownership"
      ],
      "properties": {
        "ssl": {
          "enum": [
            "initializing",
            "pending",
            "active",
            "deactivated",
            "error",
            "unknown"
          ],
          "type": "string",
          "description": "SSL certificate status.",
          "x-auditable": true
        },
        "ownership": {
          "enum": [
            "pending",
            "active",
            "deactivated",
            "blocked",
            "error",
            "unknown"
          ],
          "type": "string",
          "description": "Ownership status of the domain.",
          "x-auditable": true
        }
      }
    },
    "zoneId": {
      "type": "string",
      "description": "Zone ID of the custom domain resides in.",
      "x-auditable": true
    },
    "ciphers": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "An allowlist of ciphers for TLS termination. These ciphers must be in the BoringSSL format.",
      "x-auditable": true
    },
    "enabled": {
      "type": "boolean",
      "description": "Whether this bucket is publicly accessible at the specified custom domain.",
      "x-auditable": true
    },
    "zoneName": {
      "type": "string",
      "description": "Zone that the custom domain resides in.",
      "x-auditable": true
    }
  }
}
string r2_jurisdiction
{
  "enum": [
    "default",
    "eu",
    "fedramp"
  ],
  "type": "string",
  "default": "default",
  "description": "Jurisdiction where objects in this bucket are guaranteed to be stored.",
  "x-auditable": true,
  "x-stainless-param": "jurisdiction"
}
object r2_lifecycle-age-condition
{
  "type": "object",
  "required": [
    "type",
    "maxAge"
  ],
  "properties": {
    "type": {
      "enum": [
        "Age"
      ],
      "type": "string",
      "x-auditable": true
    },
    "maxAge": {
      "type": "integer",
      "x-auditable": true
    }
  },
  "description": "Condition for lifecycle transitions to apply after an object reaches an age in seconds."
}
object r2_lifecycle-config
{
  "type": "object",
  "properties": {
    "rules": {
      "type": "array",
      "items": {
        "allOf": [
          {
            "$ref": "#/components/schemas/r2_lifecycle-rule"
          }
        ]
      }
    }
  }
}
object r2_lifecycle-date-condition
{
  "type": "object",
  "required": [
    "type",
    "date"
  ],
  "properties": {
    "date": {
      "type": "string",
      "format": "date-time",
      "x-auditable": true
    },
    "type": {
      "enum": [
        "Date"
      ],
      "type": "string",
      "x-auditable": true
    }
  },
  "description": "Condition for lifecycle transitions to apply on a specific date."
}
object r2_lifecycle-rule
{
  "type": "object",
  "required": [
    "id",
    "conditions",
    "enabled"
  ],
  "properties": {
    "id": {
      "type": "string",
      "example": "Expire all objects older than 24 hours",
      "description": "Unique identifier for this rule.",
      "x-auditable": true
    },
    "enabled": {
      "type": "boolean",
      "description": "Whether or not this rule is in effect.",
      "x-auditable": true
    },
    "conditions": {
      "type": "object",
      "required": [
        "prefix"
      ],
      "properties": {
        "prefix": {
          "type": "string",
          "description": "Transitions will only apply to objects/uploads in the bucket that start with the given prefix, an empty prefix can be provided to scope rule to all objects/uploads.",
          "x-auditable": true
        }
      },
      "description": "Conditions that apply to all transitions of this rule."
    },
    "deleteObjectsTransition": {
      "type": "object",
      "properties": {
        "condition": {
          "oneOf": [
            {
              "$ref": "#/components/schemas/r2_lifecycle-age-condition"
            },
            {
              "$ref": "#/components/schemas/r2_lifecycle-date-condition"
            }
          ]
        }
      },
      "description": "Transition to delete objects."
    },
    "storageClassTransitions": {
      "type": "array",
      "items": {
        "allOf": [
          {
            "$ref": "#/components/schemas/r2_lifecycle-storage-transition"
          }
        ]
      },
      "description": "Transitions to change the storage class of objects."
    },
    "abortMultipartUploadsTransition": {
      "type": "object",
      "properties": {
        "condition": {
          "allOf": [
            {
              "$ref": "#/components/schemas/r2_lifecycle-age-condition"
            }
          ]
        }
      },
      "description": "Transition to abort ongoing multipart uploads."
    }
  }
}
object r2_lifecycle-storage-transition
{
  "type": "object",
  "required": [
    "condition",
    "storageClass"
  ],
  "properties": {
    "condition": {
      "oneOf": [
        {
          "$ref": "#/components/schemas/r2_lifecycle-age-condition"
        },
        {
          "$ref": "#/components/schemas/r2_lifecycle-date-condition"
        }
      ]
    },
    "storageClass": {
      "enum": [
        "InfrequentAccess"
      ],
      "type": "string",
      "x-auditable": true
    }
  }
}
object r2_list_custom_domains_response
{
  "type": "object",
  "example": {
    "domains": [
      {
        "domain": "prefix.example-domain.one.com",
        "status": {
          "ssl": "pending",
          "ownership": "deactivated"
        },
        "zoneId": "36ca64a6d92827b8a6b90be344bb1bfd",
        "enabled": false,
        "zoneName": "example-domain.one.com"
      },
      {
        "domain": "prefix.example-domain.two.com",
        "status": {
          "ssl": "active",
          "ownership": "active"
        },
        "zoneId": "d9d28585d5f8f5b0f857b055bf574f19",
        "enabled": true
      }
    ]
  },
  "required": [
    "domains"
  ],
  "properties": {
    "domains": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "domain",
          "status",
          "enabled"
        ],
        "properties": {
          "domain": {
            "type": "string",
            "description": "Domain name of the custom domain to be added.",
            "x-auditable": true
          },
          "minTLS": {
            "enum": [
              "1.0",
              "1.1",
              "1.2",
              "1.3"
            ],
            "type": "string",
            "description": "Minimum TLS Version the custom domain will accept for incoming connections. If not set, defaults to 1.0.",
            "x-auditable": true
          },
          "status": {
            "type": "object",
            "required": [
              "ssl",
              "ownership"
            ],
            "properties": {
              "ssl": {
                "enum": [
                  "initializing",
                  "pending",
                  "active",
                  "deactivated",
                  "error",
                  "unknown"
                ],
                "type": "string",
                "description": "SSL certificate status.",
                "x-auditable": true
              },
              "ownership": {
                "enum": [
                  "pending",
                  "active",
                  "deactivated",
                  "blocked",
                  "error",
                  "unknown"
                ],
                "type": "string",
                "description": "Ownership status of the domain.",
                "x-auditable": true
              }
            }
          },
          "zoneId": {
            "type": "string",
            "description": "Zone ID of the custom domain resides in.",
            "x-auditable": true
          },
          "ciphers": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "An allowlist of ciphers for TLS termination. These ciphers must be in the BoringSSL format.",
            "x-auditable": true
          },
          "enabled": {
            "type": "boolean",
            "description": "Whether this bucket is publicly accessible at the specified custom domain.",
            "x-auditable": true
          },
          "zoneName": {
            "type": "string",
            "description": "Zone that the custom domain resides in.",
            "x-auditable": true
          }
        }
      }
    }
  }
}
object r2_local_uploads_configuration
{
  "type": "object",
  "properties": {
    "enabled": {
      "type": "boolean",
      "description": "Whether local uploads is enabled for this bucket. When enabled, object's data is written to the nearest region first, then asynchronously replicated to the bucket's primary region.",
      "x-auditable": true
    }
  },
  "description": "Configuration for local uploads on a bucket."
}
object r2_lock-rule-age-condition
{
  "type": "object",
  "required": [
    "type",
    "maxAgeSeconds"
  ],
  "properties": {
    "type": {
      "enum": [
        "Age"
      ],
      "type": "string",
      "x-auditable": true
    },
    "maxAgeSeconds": {
      "type": "integer",
      "example": 100,
      "x-auditable": true
    }
  },
  "description": "Condition to apply a lock rule to an object for how long in seconds."
}
object r2_lock-rule-date-condition
{
  "type": "object",
  "required": [
    "type",
    "date"
  ],
  "properties": {
    "date": {
      "type": "string",
      "format": "date-time",
      "x-auditable": true
    },
    "type": {
      "enum": [
        "Date"
      ],
      "type": "string",
      "x-auditable": true
    }
  },
  "description": "Condition to apply a lock rule to an object until a specific date."
}
object r2_lock-rule-indefinite-condition
{
  "type": "object",
  "required": [
    "type"
  ],
  "properties": {
    "type": {
      "enum": [
        "Indefinite"
      ],
      "type": "string",
      "x-auditable": true
    }
  },
  "description": "Condition to apply a lock rule indefinitely."
}
object r2_managed_domain_response
{
  "type": "object",
  "example": {
    "domain": "pub-0113a9e4549cf9b1ff1bf56e04da0cef.r2.dev",
    "enabled": true,
    "bucketId": "0113a9e4549cf9b1ff1bf56e04da0cef"
  },
  "required": [
    "bucketId",
    "domain",
    "enabled"
  ],
  "properties": {
    "domain": {
      "type": "string",
      "description": "Domain name of the bucket's r2.dev domain.",
      "x-auditable": true
    },
    "enabled": {
      "type": "boolean",
      "description": "Whether this bucket is publicly accessible at the r2.dev domain.",
      "x-auditable": true
    },
    "bucketId": {
      "type": "string",
      "maxLength": 32,
      "description": "Bucket ID.",
      "x-auditable": true
    }
  }
}
array r2_messages
{
  "type": "array",
  "items": {
    "type": "string"
  }
}
object r2_object_size_metrics
{
  "type": "object",
  "properties": {
    "objects": {
      "type": "number",
      "description": "Number of objects stored."
    },
    "payloadSize": {
      "type": "number",
      "description": "Amount of storage used by object data."
    },
    "metadataSize": {
      "type": "number",
      "description": "Amount of."
    }
  },
  "description": "Metrics on number of objects/amount of storage used."
}
string r2_queue_identifier
{
  "type": "string",
  "example": "11111aa1-11aa-111a-a1a1-a1a111a11a11",
  "maxLength": 32,
  "description": "Queue ID.",
  "x-auditable": true
}
object r2_queues-config
{
  "type": "object",
  "properties": {
    "rules": {
      "type": "array",
      "items": {
        "allOf": [
          {
            "$ref": "#/components/schemas/r2_rule"
          },
          {
            "type": "object",
            "properties": {
              "ruleId": {
                "type": "string",
                "example": "11111aa1-11aa-111a-a1a1-a1a111a11a11",
                "description": "Rule ID.",
                "x-auditable": true
              },
              "createdAt": {
                "type": "string",
                "example": "2024-09-19T21:54:48.405Z",
                "description": "Timestamp when the rule was created.",
                "x-auditable": true
              },
              "description": {
                "type": "string",
                "example": "Notifications from source bucket to queue",
                "description": "A description that can be used to identify the event notification rule after creation.",
                "x-auditable": true
              }
            }
          }
        ]
      }
    },
    "queueId": {
      "type": "string",
      "example": "11111aa1-11aa-111a-a1a1-a1a111a11a11",
      "description": "Queue ID.",
      "x-auditable": true
    },
    "queueName": {
      "type": "string",
      "example": "first-queue",
      "description": "Name of the queue.",
      "x-auditable": true
    }
  }
}
string r2_r2-action
{
  "enum": [
    "PutObject",
    "CopyObject",
    "DeleteObject",
    "CompleteMultipartUpload",
    "LifecycleDeletion"
  ],
  "type": "string",
  "x-auditable": true
}
object r2_remove_custom_domain_response
{
  "type": "object",
  "example": {
    "domain": "example-domain/custom-domain.com"
  },
  "required": [
    "domain"
  ],
  "properties": {
    "domain": {
      "type": "string",
      "description": "Name of the removed custom domain.",
      "x-auditable": true
    }
  }
}
object r2_result_info
{
  "type": "object",
  "properties": {
    "cursor": {
      "type": "string",
      "example": "1-JTdCJTIydiUyMiUzQTElMkMlMjJzdGFydEFmdGVyJTIyJTNBJTIyZGF2aWRwdWJsaWMlMjIlN0Q=",
      "description": "A continuation token that should be used to fetch the next page of results."
    },
    "per_page": {
      "type": "number",
      "example": 20,
      "description": "Maximum number of results on this page."
    }
  }
}
object r2_rule
{
  "type": "object",
  "required": [
    "actions"
  ],
  "properties": {
    "prefix": {
      "type": "string",
      "example": "img/",
      "description": "Notifications will be sent only for objects with this prefix.",
      "x-auditable": true
    },
    "suffix": {
      "type": "string",
      "example": ".jpeg",
      "description": "Notifications will be sent only for objects with this suffix.",
      "x-auditable": true
    },
    "actions": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/r2_r2-action"
      },
      "example": [
        "PutObject",
        "CopyObject"
      ],
      "description": "Array of R2 object actions that will trigger notifications.",
      "uniqueItems": true
    },
    "description": {
      "type": "string",
      "example": "Notifications from source bucket to queue",
      "description": "A description that can be used to identify the event notification rule after creation.",
      "x-auditable": true
    }
  }
}
object r2_sippy
{
  "type": "object",
  "properties": {
    "source": {
      "type": "object",
      "properties": {
        "bucket": {
          "type": "string",
          "nullable": true,
          "description": "Name of the bucket on the provider (AWS, GCS only).",
          "x-auditable": true
        },
        "region": {
          "type": "string",
          "nullable": true,
          "description": "Region where the bucket resides (AWS only).",
          "x-auditable": true
        },
        "provider": {
          "enum": [
            "aws",
            "gcs",
            "s3"
          ],
          "type": "string",
          "x-auditable": true
        },
        "bucketUrl": {
          "type": "string",
          "nullable": true,
          "description": "S3-compatible URL (Generic S3-compatible providers only).",
          "x-auditable": true
        }
      },
      "description": "Details about the configured source bucket."
    },
    "enabled": {
      "type": "boolean",
      "description": "State of Sippy for this bucket.",
      "x-auditable": true
    },
    "destination": {
      "type": "object",
      "properties": {
        "bucket": {
          "type": "string",
          "description": "Name of the bucket on the provider.",
          "x-auditable": true
        },
        "account": {
          "type": "string",
          "x-auditable": true
        },
        "provider": {
          "enum": [
            "r2"
          ],
          "type": "string",
          "x-auditable": true
        },
        "accessKeyId": {
          "type": "string",
          "description": "ID of the Cloudflare API token used when writing objects to this\nbucket.\n"
        }
      },
      "description": "Details about the configured destination bucket."
    }
  }
}
string r2_storage_class
{
  "enum": [
    "Standard",
    "InfrequentAccess"
  ],
  "type": "string",
  "default": "Standard",
  "description": "Storage class for newly uploaded objects, unless specified otherwise.",
  "x-auditable": true
}
object r2_temp_access_creds_request
{
  "type": "object",
  "example": {
    "bucket": "example-bucket",
    "objects": [
      "example-object"
    ],
    "prefixes": [
      "example-prefix/"
    ],
    "permission": "object-read-write",
    "ttlSeconds": 3600,
    "parentAccessKeyId": "example-access-key-id"
  },
  "required": [
    "bucket",
    "permission",
    "ttlSeconds",
    "parentAccessKeyId"
  ],
  "properties": {
    "bucket": {
      "type": "string",
      "description": "Name of the R2 bucket.",
      "x-auditable": true
    },
    "objects": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "description": "Optional object paths to scope the credentials to."
    },
    "prefixes": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "description": "Optional prefix paths to scope the credentials to."
    },
    "permission": {
      "enum": [
        "admin-read-write",
        "admin-read-only",
        "object-read-write",
        "object-read-only"
      ],
      "type": "string",
      "description": "Permissions allowed on the credentials.",
      "x-auditable": true
    },
    "ttlSeconds": {
      "type": "number",
      "default": 900,
      "maximum": 604800,
      "description": "How long the credentials will live for in seconds.",
      "x-auditable": true
    },
    "parentAccessKeyId": {
      "type": "string",
      "description": "The parent access key id to use for signing."
    }
  }
}
object r2_temp_access_creds_response
{
  "type": "object",
  "example": {
    "accessKeyId": "example-access-key-id",
    "sessionToken": "example-session-token",
    "secretAccessKey": "example-secret-key"
  },
  "properties": {
    "accessKeyId": {
      "type": "string",
      "description": "ID for new access key."
    },
    "sessionToken": {
      "type": "string",
      "description": "Security token.",
      "x-sensitive": true
    },
    "secretAccessKey": {
      "type": "string",
      "description": "Secret access key.",
      "x-sensitive": true
    }
  }
}
object r2_v4_response
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/r2_errors"
    },
    "result": {
      "type": "object"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/r2_messages"
    }
  }
}
object r2_v4_response_failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/r2_errors"
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/r2_messages"
    }
  }
}
object r2_v4_response_list
{
  "allOf": [
    {
      "$ref": "#/components/schemas/r2_v4_response"
    },
    {
      "type": "object",
      "properties": {
        "result_info": {
          "$ref": "#/components/schemas/r2_result_info"
        }
      }
    }
  ]
}
object realtimekit_AIConfig
{
  "type": "object",
  "title": "AIConfig",
  "properties": {
    "summarization": {
      "$ref": "#/components/schemas/realtimekit_SummarizationConfig"
    },
    "transcription": {
      "$ref": "#/components/schemas/realtimekit_TranscriptionConfig"
    }
  },
  "description": "The AI Config allows you to customize the behavior of meeting transcriptions and summaries"
}
object realtimekit_ActiveSession
{
  "type": "object",
  "required": [
    "id",
    "associated_id",
    "meeting_display_name",
    "type",
    "status",
    "live_participants",
    "max_concurrent_participants",
    "minutes_consumed",
    "organization_id",
    "started_at",
    "created_at",
    "updated_at"
  ],
  "properties": {
    "id": {
      "type": "string",
      "readOnly": true,
      "description": "ID of the session"
    },
    "meta": {
      "type": "object",
      "description": "Any meta data about session."
    },
    "type": {
      "enum": [
        "meeting",
        "livestream",
        "participant"
      ],
      "type": "string",
      "description": "type of session"
    },
    "status": {
      "enum": [
        "LIVE",
        "ENDED"
      ],
      "type": "string",
      "description": "current status of session"
    },
    "ended_at": {
      "type": "string",
      "description": "timestamp when session ended"
    },
    "created_at": {
      "type": "string",
      "description": "timestamp when session created"
    },
    "started_at": {
      "type": "string",
      "description": "timestamp when session started"
    },
    "updated_at": {
      "type": "string",
      "description": "timestamp when session was last updated"
    },
    "associated_id": {
      "type": "string",
      "description": "ID of the meeting this session is associated with. In the case of V2 meetings, it is always a UUID. In V1 meetings, it is a room name of the form `abcdef-ghijkl`"
    },
    "breakout_rooms": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/realtimekit_ActiveSession"
      },
      "readOnly": true
    },
    "organization_id": {
      "type": "string",
      "description": "App id that hosted this session"
    },
    "minutes_consumed": {
      "type": "number",
      "description": "number of minutes consumed since the session started"
    },
    "live_participants": {
      "type": "number",
      "description": "number of participants currently in the session"
    },
    "meeting_display_name": {
      "type": "string",
      "description": "Title of the meeting this session belongs to"
    },
    "max_concurrent_participants": {
      "type": "number",
      "description": "number of maximum participants that were in the session"
    }
  }
}
object realtimekit_AudioConfig
{
  "type": "object",
  "title": "AudioConfig",
  "properties": {
    "codec": {
      "enum": [
        "MP3",
        "AAC"
      ],
      "type": "string",
      "default": "AAC",
      "description": "Codec using which the recording will be encoded. If VP8/VP9 is selected for videoConfig, changing audioConfig is not allowed. In this case, the codec in the audioConfig is automatically set to vorbis."
    },
    "channel": {
      "enum": [
        "mono",
        "stereo"
      ],
      "type": "string",
      "default": "stereo",
      "description": "Audio signal pathway within an audio file that carries a specific sound source."
    },
    "export_file": {
      "type": "boolean",
      "default": true,
      "description": "Controls whether to export audio file seperately"
    }
  },
  "description": "Object containing configuration regarding the audio that is being recorded."
}
object realtimekit_ChatMessage
{
  "type": "object",
  "required": [
    "chat_download_url",
    "chat_download_url_expiry"
  ],
  "properties": {
    "chat_download_url": {
      "type": "string",
      "description": "URL where the chat logs can be downloaded"
    },
    "chat_download_url_expiry": {
      "type": "string",
      "description": "Time when the download URL will expire"
    }
  }
}
object realtimekit_CreateChatChannelInfo
{
  "type": "object",
  "properties": {
    "visibility": {
      "enum": [
        "public",
        "private"
      ],
      "type": "string"
    },
    "display_name": {
      "type": "string"
    },
    "custom_participant_ids": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  }
}
object realtimekit_DaywiseStats
{
  "type": "object",
  "properties": {
    "date": {
      "type": "string",
      "description": "Date in YYYY-MM-DD format"
    },
    "sessions_count": {
      "type": "number",
      "description": "Number of sessions_count happened in the given time period"
    },
    "sessions_minutes_consumed": {
      "type": "number",
      "description": "Total meetings minutes consumed across all sessions in the given time period."
    },
    "recordings_minutes_consumed": {
      "type": "number",
      "description": "Total recordings minutes consumed across all sessions in the given time period."
    }
  }
}
object realtimekit_ErrorResponse
{
  "type": "object",
  "required": [
    "success",
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "number",
          "example": 404,
          "description": "Error code"
        },
        "message": {
          "type": "string",
          "example": "Error: resource not found",
          "description": "Error message"
        }
      },
      "description": "Object containing details of the error that occurred"
    },
    "success": {
      "type": "boolean",
      "example": false,
      "description": "Whether the operation succeeded or not"
    }
  }
}
object realtimekit_GenericErrorResponse
{
  "type": "object",
  "required": [
    "success",
    "error"
  ],
  "properties": {
    "error": {
      "type": "object",
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "type": "number",
          "description": "HTTP status code of the error."
        },
        "message": {
          "type": "string",
          "description": "Error message describing what went wrong."
        }
      }
    },
    "success": {
      "type": "boolean",
      "default": false,
      "description": "Success status of the request."
    }
  }
}
object realtimekit_GenericSuccessResponse
{
  "type": "object",
  "title": "GenericSuccessResponse",
  "required": [
    "success"
  ],
  "properties": {
    "data": {
      "type": "object",
      "description": "Data returned by the operation"
    },
    "success": {
      "type": "boolean",
      "default": true,
      "description": "Success status of the operation"
    }
  }
}
object realtimekit_InteractiveConfig
{
  "type": "object",
  "title": "InteractiveConfig",
  "properties": {
    "type": {
      "enum": [
        "ID3"
      ],
      "type": "string",
      "description": "The metadata is presented in the form of ID3 tags."
    }
  },
  "description": "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."
}
object realtimekit_LivestreamBase
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "The livestream ID."
    },
    "name": {
      "type": "string",
      "nullable": true,
      "description": "Name of the livestream."
    },
    "org_id": {
      "type": "string"
    },
    "status": {
      "enum": [
        "LIVE",
        "IDLE",
        "ERRORED",
        "INVOKED"
      ],
      "type": "string",
      "description": "The status of the livestream."
    },
    "disabled": {
      "type": "boolean",
      "description": "Specifies if the livestream was disabled."
    },
    "created_at": {
      "type": "string",
      "format": "date-time",
      "description": "The timestamp at which the livestream was created. The time is returned in ISO format."
    },
    "meeting_id": {
      "type": "string",
      "nullable": true,
      "description": "ID of the meeting."
    },
    "stream_key": {
      "type": "string",
      "description": "Unique key for accessing each livestream."
    },
    "updated_at": {
      "type": "string",
      "format": "date-time",
      "description": "The timestamp at which the livestream was updated. The time is returned in ISO format."
    },
    "playback_url": {
      "type": "string",
      "description": "The web address that viewers can use to watch the livestream."
    },
    "ingest_server": {
      "type": "string",
      "description": "The server URL to which the RTMP encoder sends the video and audio data."
    }
  }
}
object realtimekit_LivestreamingConfig
{
  "type": "object",
  "title": "LivestreamingConfig",
  "properties": {
    "rtmp_url": {
      "type": "string",
      "format": "uri",
      "example": "rtmp://a.rtmp.youtube.com/live2",
      "description": "RTMP URL to stream to"
    }
  }
}
object realtimekit_Meeting
{
  "type": "object",
  "required": [
    "id",
    "created_at",
    "updated_at"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid",
      "readOnly": true,
      "description": "ID of the meeting."
    },
    "title": {
      "type": "string",
      "description": "Title of the meeting."
    },
    "status": {
      "enum": [
        "ACTIVE",
        "INACTIVE"
      ],
      "type": "string",
      "description": "Whether the meeting is `ACTIVE` or `INACTIVE`. Users will not be able to join an `INACTIVE` meeting."
    },
    "created_at": {
      "type": "string",
      "format": "date-time",
      "readOnly": true,
      "description": "Timestamp the object was created at. The time is returned in ISO format."
    },
    "updated_at": {
      "type": "string",
      "format": "date-time",
      "readOnly": true,
      "description": "Timestamp the object was updated at. The time is returned in ISO format."
    },
    "persist_chat": {
      "type": "boolean",
      "description": "Specifies if Chat within a meeting should persist for a week."
    },
    "record_on_start": {
      "type": "boolean",
      "description": "Specifies if the meeting should start getting recorded as soon as someone joins the meeting."
    },
    "summarize_on_end": {
      "type": "boolean",
      "description": "Automatically generate summary of meetings using transcripts. Requires Transcriptions to be enabled, and can be retrieved via Webhooks or summary API."
    },
    "live_stream_on_start": {
      "type": "boolean",
      "description": "Specifies if the meeting should start getting livestreamed on start."
    },
    "session_keep_alive_time_in_secs": {
      "type": "number",
      "default": 60,
      "maximum": 600,
      "minimum": 60,
      "description": "Time in seconds, for which a session remains active, after the last participant has left the meeting."
    }
  }
}
object realtimekit_OverallStats
{
  "type": "object",
  "properties": {
    "sessions_count": {
      "type": "number",
      "description": "Number of sessions_count happened in the given time period"
    },
    "sessions_minutes_consumed": {
      "type": "number",
      "description": "Total meetings minutes consumed across all sessions in the given time period."
    },
    "recordings_minutes_consumed": {
      "type": "number",
      "description": "Total recordings minutes consumed across all sessions in the given time period."
    }
  }
}
object realtimekit_PagingResponse
{
  "type": "object",
  "title": "PagingResponse",
  "required": [
    "success",
    "data",
    "paging"
  ],
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "type": "object"
      }
    },
    "paging": {
      "type": "object",
      "required": [
        "total_count",
        "start_offset",
        "end_offset"
      ],
      "properties": {
        "end_offset": {
          "type": "number",
          "example": 30
        },
        "total_count": {
          "type": "number",
          "example": 30,
          "minimum": 0
        },
        "start_offset": {
          "type": "number",
          "example": 1
        }
      }
    },
    "success": {
      "type": "boolean",
      "example": true
    }
  }
}
object realtimekit_Participant
{
  "type": "object",
  "title": "Participant",
  "required": [
    "id",
    "custom_participant_id",
    "preset_name",
    "created_at",
    "updated_at"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid",
      "description": "ID of the participant."
    },
    "name": {
      "type": "string",
      "nullable": true,
      "description": "Name of the participant."
    },
    "picture": {
      "type": "string",
      "format": "uri",
      "nullable": true,
      "description": "URL to a picture of the participant."
    },
    "created_at": {
      "type": "string",
      "format": "date-time",
      "description": "When this object was created. The time is returned in ISO format."
    },
    "updated_at": {
      "type": "string",
      "format": "date-time",
      "description": "When this object was updated. The time is returned in ISO format."
    },
    "preset_name": {
      "type": "string",
      "description": "Preset applied to the participant."
    },
    "custom_participant_id": {
      "type": "string",
      "description": "A unique participant ID generated by the client."
    }
  },
  "description": "Represents a participant."
}
object realtimekit_ParticipantPeerStats
{
  "type": "object",
  "properties": {
    "peer_stats": {
      "type": "object",
      "properties": {
        "config": {
          "type": "string"
        },
        "events": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "type": {
                "type": "string"
              },
              "timestamp": {
                "type": "string"
              }
            }
          }
        },
        "status": {
          "type": "string"
        },
        "device_info": {
          "type": "object",
          "properties": {
            "os": {
              "type": "string"
            },
            "cpus": {
              "type": "number"
            },
            "engine": {
              "type": "string"
            },
            "memory": {
              "type": "number"
            },
            "browser": {
              "type": "string"
            },
            "sdk_name": {
              "type": "string"
            },
            "is_mobile": {
              "type": "boolean"
            },
            "os_version": {
              "type": "string"
            },
            "user_agent": {
              "type": "string"
            },
            "sdk_version": {
              "type": "string"
            },
            "webgl_support": {
              "type": "string"
            },
            "browser_version": {
              "type": "string"
            }
          }
        },
        "ip_information": {
          "type": "object",
          "properties": {
            "org": {
              "type": "string"
            },
            "city": {
              "type": "string"
            },
            "ipv4": {
              "type": "string"
            },
            "portal": {
              "type": "string"
            },
            "region": {
              "type": "string"
            },
            "country": {
              "type": "string"
            },
            "timezone": {
              "type": "string"
            },
            "ip_location": {
              "type": "string"
            }
          }
        },
        "precall_network_information": {
          "type": "object",
          "properties": {
            "rtt": {
              "type": "number"
            },
            "jitter": {
              "type": "number"
            },
            "backend_rtt": {
              "type": "number"
            },
            "throughtput": {
              "type": "number"
            },
            "fractional_loss": {
              "type": "number"
            },
            "turn_connectivity": {
              "type": "boolean"
            },
            "relay_connectivity": {
              "type": "boolean"
            },
            "effective_networktype": {
              "type": "string"
            },
            "reflexive_connectivity": {
              "type": "boolean"
            }
          }
        }
      }
    }
  }
}
object realtimekit_ParticipantQualityStats
{
  "type": "object",
  "properties": {
    "quality_stats": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "end": {
            "type": "string"
          },
          "start": {
            "type": "string"
          },
          "peer_id": {
            "type": "string"
          },
          "audio_stats": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "jitter": {
                  "type": "number"
                },
                "quality": {
                  "type": "number"
                },
                "timestamp": {
                  "type": "string"
                },
                "packets_lost": {
                  "type": "number"
                },
                "concealment_events": {
                  "type": "number"
                }
              }
            }
          },
          "video_stats": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "jitter": {
                  "type": "number"
                },
                "quality": {
                  "type": "number"
                },
                "timestamp": {
                  "type": "string"
                },
                "frame_width": {
                  "type": "number"
                },
                "frame_height": {
                  "type": "number"
                },
                "packets_lost": {
                  "type": "number"
                },
                "frames_dropped": {
                  "type": "number"
                },
                "frames_per_second": {
                  "type": "number"
                }
              }
            }
          },
          "audio_bandwidth": {
            "type": "number"
          },
          "average_quality": {
            "type": "number"
          },
          "video_bandwidth": {
            "type": "number"
          },
          "audio_packet_loss": {
            "type": "number"
          },
          "video_packet_loss": {
            "type": "number"
          }
        }
      }
    }
  }
}
object realtimekit_ParticipantsList
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "Participant ID. This maps to the corresponding peerId."
    },
    "left_at": {
      "type": "string",
      "description": "timestamp at which participant left the session."
    },
    "user_id": {
      "type": "string",
      "description": "User id for this participant."
    },
    "duration": {
      "type": "number",
      "description": "number of minutes for which the participant was in the session."
    },
    "joined_at": {
      "type": "string",
      "description": "timestamp at which participant joined the session."
    },
    "created_at": {
      "type": "string",
      "description": "timestamp when this participant was created."
    },
    "updated_at": {
      "type": "string",
      "description": "timestamp when this participant's data was last updated."
    },
    "preset_name": {
      "type": "string",
      "description": "Name of the preset associated with the participant."
    },
    "display_name": {
      "type": "string",
      "description": "Display name of participant when joining the session."
    },
    "custom_participant_id": {
      "type": "string",
      "description": "ID passed by client to create this participant."
    }
  }
}
object realtimekit_PatchWebhookRequest
{
  "type": "object",
  "properties": {
    "url": {
      "type": "string",
      "format": "uri",
      "example": "https://webhook.site/b23a5bbd-c7b0-4ced-a9e2-78ae7889897e",
      "description": "URL the webhook will send events to"
    },
    "name": {
      "type": "string",
      "description": "Name of the webhook"
    },
    "events": {
      "type": "array",
      "items": {
        "enum": [
          "meeting.started",
          "meeting.ended",
          "meeting.participantJoined",
          "meeting.participantLeft",
          "recording.statusUpdate",
          "livestreaming.statusUpdate",
          "meeting.chatSynced",
          "meeting.transcript",
          "meeting.summary"
        ],
        "type": "string"
      },
      "description": "Events that the webhook will get triggered by"
    },
    "enabled": {
      "type": "boolean",
      "default": true
    }
  }
}
object realtimekit_Poll
{
  "type": "object",
  "required": [
    "id",
    "question",
    "options"
  ],
  "properties": {
    "id": {
      "type": "string",
      "readOnly": true,
      "description": "ID of the poll"
    },
    "voted": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "options": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "text",
          "count",
          "votes"
        ],
        "properties": {
          "text": {
            "type": "string",
            "description": "Text of the answer option"
          },
          "count": {
            "type": "number"
          },
          "votes": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "id",
                "name"
              ],
              "properties": {
                "id": {
                  "type": "string"
                },
                "name": {
                  "type": "string"
                }
              }
            }
          }
        }
      },
      "description": "Answer options"
    },
    "question": {
      "type": "string",
      "description": "Question asked by the poll"
    },
    "anonymous": {
      "type": "boolean"
    },
    "created_by": {
      "type": "string"
    },
    "hide_votes": {
      "type": "boolean"
    }
  }
}
object realtimekit_Preset
{
  "type": "object",
  "title": "Preset",
  "required": [
    "name",
    "config",
    "ui"
  ],
  "properties": {
    "ui": {
      "type": "object",
      "required": [
        "design_tokens"
      ],
      "properties": {
        "config_diff": {
          "type": "object"
        },
        "design_tokens": {
          "type": "object",
          "required": [
            "border_radius",
            "border_width",
            "spacing_base",
            "theme",
            "colors",
            "logo"
          ],
          "properties": {
            "logo": {
              "type": "string"
            },
            "theme": {
              "enum": [
                "dark"
              ],
              "type": "string"
            },
            "colors": {
              "type": "object",
              "required": [
                "brand",
                "background",
                "danger",
                "text",
                "text_on_brand",
                "success",
                "video_bg",
                "warning"
              ],
              "properties": {
                "text": {
                  "type": "string",
                  "default": "#EEEEEE"
                },
                "brand": {
                  "type": "object",
                  "required": [
                    "300",
                    "400",
                    "500",
                    "600",
                    "700"
                  ],
                  "properties": {
                    "300": {
                      "type": "string",
                      "default": "#844d1c"
                    },
                    "400": {
                      "type": "string",
                      "default": "#9d5b22"
                    },
                    "500": {
                      "type": "string",
                      "default": "#b56927"
                    },
                    "600": {
                      "type": "string",
                      "default": "#d37c30"
                    },
                    "700": {
                      "type": "string",
                      "default": "#d9904f"
                    }
                  }
                },
                "danger": {
                  "type": "string",
                  "default": "#FF2D2D"
                },
                "success": {
                  "type": "string",
                  "default": "#62A504"
                },
                "warning": {
                  "type": "string",
                  "default": "#FFCD07"
                },
                "video_bg": {
                  "type": "string",
                  "default": "#191919"
                },
                "background": {
                  "type": "object",
                  "required": [
                    "600",
                    "700",
                    "800",
                    "900",
                    "1000"
                  ],
                  "properties": {
                    "600": {
                      "type": "string",
                      "default": "#222222"
                    },
                    "700": {
                      "type": "string",
                      "default": "#1f1f1f"
                    },
                    "800": {
                      "type": "string",
                      "default": "#1b1b1b"
                    },
                    "900": {
                      "type": "string",
                      "default": "#181818"
                    },
                    "1000": {
                      "type": "string",
                      "default": "#141414"
                    }
                  }
                },
                "text_on_brand": {
                  "type": "string",
                  "default": "#EEEEEE"
                }
              }
            },
            "border_width": {
              "enum": [
                "thin"
              ],
              "type": "string"
            },
            "spacing_base": {
              "type": "number",
              "default": 4
            },
            "border_radius": {
              "enum": [
                "rounded"
              ],
              "type": "string"
            }
          }
        }
      }
    },
    "name": {
      "type": "string",
      "description": "Name of the preset"
    },
    "config": {
      "type": "object",
      "required": [
        "view_type",
        "max_video_streams",
        "max_screenshare_count",
        "media"
      ],
      "properties": {
        "media": {
          "type": "object",
          "required": [
            "video",
            "screenshare"
          ],
          "properties": {
            "audio": {
              "type": "object",
              "properties": {
                "enable_stereo": {
                  "type": "boolean",
                  "default": false,
                  "description": "Enable Stereo for your meetings"
                },
                "enable_high_bitrate": {
                  "type": "boolean",
                  "default": false,
                  "description": "Enable High Quality Audio for your meetings"
                }
              },
              "description": "Control options for Audio quality."
            },
            "video": {
              "type": "object",
              "required": [
                "quality",
                "frame_rate"
              ],
              "properties": {
                "quality": {
                  "enum": [
                    "hd",
                    "vga",
                    "qvga"
                  ],
                  "type": "string",
                  "description": "Video quality of participants"
                },
                "frame_rate": {
                  "type": "integer",
                  "maximum": 30,
                  "description": "Frame rate of participants' video"
                }
              },
              "description": "Configuration options for participant videos"
            },
            "screenshare": {
              "type": "object",
              "required": [
                "quality",
                "frame_rate"
              ],
              "properties": {
                "quality": {
                  "enum": [
                    "hd",
                    "vga",
                    "qvga"
                  ],
                  "type": "string",
                  "description": "Quality of screen share "
                },
                "frame_rate": {
                  "type": "integer",
                  "description": "Frame rate of screen share"
                }
              },
              "description": "Configuration options for participant screen shares"
            }
          },
          "description": "Media configuration options. eg: Video quality"
        },
        "view_type": {
          "enum": [
            "GROUP_CALL",
            "WEBINAR",
            "AUDIO_ROOM"
          ],
          "type": "string",
          "description": "Type of the meeting"
        },
        "max_video_streams": {
          "type": "object",
          "required": [
            "mobile",
            "desktop"
          ],
          "properties": {
            "mobile": {
              "type": "integer",
              "description": "Maximum number of streams visible on mobile devices"
            },
            "desktop": {
              "type": "integer",
              "description": "Maximum number of video streams visible on desktop devices"
            }
          },
          "description": "Maximum number of streams that are visible on a device"
        },
        "max_screenshare_count": {
          "type": "integer",
          "description": "Maximum number of screen shares that can be active at a given time"
        }
      }
    },
    "permissions": {
      "type": "object",
      "required": [
        "accept_waiting_requests",
        "can_accept_production_requests",
        "can_edit_display_name",
        "can_spotlight",
        "recorder_type",
        "disable_participant_audio",
        "disable_participant_screensharing",
        "disable_participant_video",
        "kick_participant",
        "pin_participant",
        "can_record",
        "can_livestream",
        "waiting_room_type",
        "plugins",
        "connected_meetings",
        "polls",
        "media",
        "chat",
        "hidden_participant",
        "show_participant_list",
        "can_change_participant_permissions"
      ],
      "properties": {
        "chat": {
          "type": "object",
          "required": [
            "public",
            "private"
          ],
          "properties": {
            "public": {
              "type": "object",
              "required": [
                "can_send",
                "text",
                "files"
              ],
              "properties": {
                "text": {
                  "type": "boolean",
                  "description": "Can send text messages"
                },
                "files": {
                  "type": "boolean",
                  "description": "Can send file messages"
                },
                "can_send": {
                  "type": "boolean",
                  "description": "Can send messages in general"
                }
              }
            },
            "private": {
              "type": "object",
              "required": [
                "can_send",
                "can_receive",
                "text",
                "files"
              ],
              "properties": {
                "text": {
                  "type": "boolean"
                },
                "files": {
                  "type": "boolean"
                },
                "can_send": {
                  "type": "boolean"
                },
                "can_receive": {
                  "type": "boolean"
                }
              }
            }
          },
          "description": "Chat permissions"
        },
        "media": {
          "type": "object",
          "required": [
            "video",
            "audio",
            "screenshare"
          ],
          "properties": {
            "audio": {
              "type": "object",
              "required": [
                "can_produce"
              ],
              "properties": {
                "can_produce": {
                  "enum": [
                    "ALLOWED",
                    "NOT_ALLOWED",
                    "CAN_REQUEST"
                  ],
                  "type": "string",
                  "description": "Can produce audio"
                }
              },
              "description": "Audio permissions"
            },
            "video": {
              "type": "object",
              "required": [
                "can_produce"
              ],
              "properties": {
                "can_produce": {
                  "enum": [
                    "ALLOWED",
                    "NOT_ALLOWED",
                    "CAN_REQUEST"
                  ],
                  "type": "string",
                  "description": "Can produce video"
                }
              },
              "description": "Video permissions"
            },
            "screenshare": {
              "type": "object",
              "required": [
                "can_produce"
              ],
              "properties": {
                "can_produce": {
                  "enum": [
                    "ALLOWED",
                    "NOT_ALLOWED",
                    "CAN_REQUEST"
                  ],
                  "type": "string",
                  "description": "Can produce screen share video"
                }
              },
              "description": "Screenshare permissions"
            }
          },
          "description": "Media permissions"
        },
        "polls": {
          "type": "object",
          "required": [
            "can_create",
            "can_vote",
            "can_view"
          ],
          "properties": {
            "can_view": {
              "type": "boolean",
              "description": "Can view polls"
            },
            "can_vote": {
              "type": "boolean",
              "description": "Can vote on polls"
            },
            "can_create": {
              "type": "boolean",
              "description": "Can create polls"
            }
          },
          "description": "Poll permissions"
        },
        "plugins": {
          "type": "object",
          "required": [
            "can_close",
            "can_start",
            "can_edit_config",
            "config"
          ],
          "properties": {
            "config": {
              "oneOf": [
                {
                  "type": "string",
                  "format": "uuid"
                },
                {
                  "type": "object",
                  "required": [
                    "access_control",
                    "handles_view_only"
                  ],
                  "properties": {
                    "access_control": {
                      "enum": [
                        "FULL_ACCESS",
                        "VIEW_ONLY"
                      ],
                      "type": "string"
                    },
                    "handles_view_only": {
                      "type": "boolean"
                    }
                  }
                }
              ]
            },
            "can_close": {
              "type": "boolean",
              "description": "Can close plugins that are already open"
            },
            "can_start": {
              "type": "boolean",
              "description": "Can start plugins"
            },
            "can_edit_config": {
              "type": "boolean",
              "description": "Can edit plugin config"
            }
          },
          "description": "Plugin permissions"
        },
        "can_record": {
          "type": "boolean"
        },
        "is_recorder": {
          "type": "boolean",
          "default": false
        },
        "can_spotlight": {
          "type": "boolean"
        },
        "recorder_type": {
          "enum": [
            "RECORDER",
            "LIVESTREAMER",
            "NONE"
          ],
          "type": "string",
          "default": "NONE",
          "description": "Type of the recording peer"
        },
        "can_livestream": {
          "type": "boolean"
        },
        "pin_participant": {
          "type": "boolean"
        },
        "kick_participant": {
          "type": "boolean"
        },
        "waiting_room_type": {
          "enum": [
            "SKIP",
            "ON_PRIVILEGED_USER_ENTRY",
            "SKIP_ON_ACCEPT"
          ],
          "type": "string",
          "description": "Waiting room type"
        },
        "connected_meetings": {
          "type": "object",
          "required": [
            "can_alter_connected_meetings",
            "can_switch_connected_meetings",
            "can_switch_to_parent_meeting"
          ],
          "properties": {
            "can_alter_connected_meetings": {
              "type": "boolean"
            },
            "can_switch_to_parent_meeting": {
              "type": "boolean"
            },
            "can_switch_connected_meetings": {
              "type": "boolean"
            }
          }
        },
        "hidden_participant": {
          "type": "boolean",
          "description": "Whether this participant is visible to others or not"
        },
        "can_edit_display_name": {
          "type": "boolean"
        },
        "show_participant_list": {
          "type": "boolean"
        },
        "accept_waiting_requests": {
          "type": "boolean",
          "description": "Whether this participant can accept waiting requests"
        },
        "disable_participant_audio": {
          "type": "boolean"
        },
        "disable_participant_video": {
          "type": "boolean"
        },
        "can_accept_production_requests": {
          "type": "boolean"
        },
        "disable_participant_screensharing": {
          "type": "boolean"
        },
        "can_change_participant_permissions": {
          "type": "boolean"
        }
      }
    }
  }
}
object realtimekit_PresetListItem
{
  "type": "object",
  "title": "PresetListItem",
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid",
      "description": "ID of the preset"
    },
    "name": {
      "type": "string",
      "description": "Name of the preset"
    },
    "created_at": {
      "type": "string",
      "format": "date-time",
      "description": "Timestamp this preset was created at"
    },
    "updated_at": {
      "type": "string",
      "format": "date-time",
      "description": "Timestamp this preset was last updated"
    }
  },
  "description": "Returned by Get All Presets route"
}
object realtimekit_Recording
{
  "type": "object",
  "title": "Recording",
  "required": [
    "id",
    "download_url",
    "download_url_expiry",
    "audio_download_url",
    "file_size",
    "session_id",
    "output_file_name",
    "status",
    "invoked_time",
    "started_time",
    "stopped_time"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid",
      "readOnly": true,
      "description": "ID of the recording"
    },
    "status": {
      "enum": [
        "INVOKED",
        "RECORDING",
        "UPLOADING",
        "UPLOADED",
        "ERRORED",
        "PAUSED"
      ],
      "type": "string",
      "description": "Current status of the recording."
    },
    "file_size": {
      "type": "number",
      "nullable": true,
      "readOnly": true,
      "description": "File size of the recording, in bytes."
    },
    "session_id": {
      "type": "string",
      "format": "uuid",
      "nullable": true,
      "readOnly": true,
      "description": "ID of the meeting session this recording is for."
    },
    "download_url": {
      "type": "string",
      "format": "uri",
      "nullable": true,
      "readOnly": true,
      "description": "URL where the recording can be downloaded."
    },
    "invoked_time": {
      "type": "string",
      "format": "date-time",
      "description": "Timestamp when this recording was invoked."
    },
    "started_time": {
      "type": "string",
      "format": "date-time",
      "nullable": true,
      "description": "Timestamp when this recording actually started after being invoked. Usually a few seconds after `invoked_time`."
    },
    "stopped_time": {
      "type": "string",
      "format": "date-time",
      "nullable": true,
      "description": "Timestamp when this recording was stopped. Optional; is present only when the recording has actually been stopped."
    },
    "output_file_name": {
      "type": "string",
      "description": "File name of the recording."
    },
    "audio_download_url": {
      "type": "string",
      "format": "uri",
      "nullable": true,
      "readOnly": true,
      "description": "If the audio_config is passed, the URL for downloading the audio recording is returned."
    },
    "recording_duration": {
      "type": "integer",
      "description": "Total recording time in seconds."
    },
    "download_url_expiry": {
      "type": "string",
      "format": "date-time",
      "nullable": true,
      "readOnly": true,
      "description": "Timestamp when the download URL expires."
    }
  }
}
object realtimekit_RecordingConfig
{
  "type": "object",
  "title": "RecordingConfig",
  "properties": {
    "max_seconds": {
      "type": "number",
      "maximum": 86400,
      "minimum": 60,
      "description": "Specifies the maximum duration for recording in seconds, ranging from a minimum of 60 seconds to a maximum of 24 hours."
    },
    "audio_config": {
      "$ref": "#/components/schemas/realtimekit_AudioConfig"
    },
    "video_config": {
      "$ref": "#/components/schemas/realtimekit_VideoConfig"
    },
    "storage_config": {
      "$ref": "#/components/schemas/realtimekit_StorageConfig"
    },
    "file_name_prefix": {
      "type": "string",
      "description": "Adds a prefix to the beginning of the file name of the recording."
    },
    "live_streaming_config": {
      "$ref": "#/components/schemas/realtimekit_LivestreamingConfig"
    },
    "realtimekit_bucket_config": {
      "$ref": "#/components/schemas/realtimekit_realtimekitBucketConfig"
    }
  },
  "description": "Recording Configurations to be used for this meeting. This level of configs takes higher preference over App level configs on the RealtimeKit developer portal.\n"
}
object realtimekit_SessionParticipant
{
  "type": "object",
  "title": "SessionParticipant",
  "required": [
    "id",
    "created_at",
    "updated_at"
  ],
  "properties": {
    "id": {
      "type": "string",
      "description": "ID of the session participant"
    },
    "name": {
      "type": "string",
      "description": "Name of the session participant."
    },
    "email": {
      "type": "string",
      "description": "Email of the session participant."
    },
    "picture": {
      "type": "string",
      "description": "A URL pointing to a picture of the participant."
    },
    "created_at": {
      "type": "string"
    },
    "updated_at": {
      "type": "string"
    }
  }
}
object realtimekit_StorageConfig
{
  "type": "object",
  "title": "StorageConfig",
  "nullable": true,
  "required": [
    "type"
  ],
  "properties": {
    "host": {
      "type": "string",
      "description": "SSH destination server host for SFTP type storage medium"
    },
    "path": {
      "type": "string",
      "description": "Path relative to the bucket root at which the recording will be placed."
    },
    "port": {
      "type": "number",
      "description": "SSH destination server port for SFTP type storage medium"
    },
    "type": {
      "enum": [
        "aws",
        "azure",
        "digitalocean",
        "gcs",
        "sftp"
      ],
      "type": "string",
      "description": "Type of storage media."
    },
    "bucket": {
      "type": "string",
      "description": "Name of the storage medium's bucket."
    },
    "region": {
      "type": "string",
      "example": "us-east-1",
      "description": "Region of the storage medium."
    },
    "secret": {
      "type": "string",
      "description": "Secret key of the storage medium. Similar to `access_key`, it is only writeable by clients, not readable."
    },
    "password": {
      "type": "string",
      "description": "SSH destination server password for SFTP type storage medium when auth_method is \"PASSWORD\". If auth_method is \"KEY\", this specifies the password for the ssh private key."
    },
    "username": {
      "type": "string",
      "description": "SSH destination server username for SFTP type storage medium"
    },
    "access_key": {
      "type": "string",
      "writeOnly": true,
      "description": "Access key of the storage medium. Access key is not required for the `gcs` storage media type.\n\nNote that this field is not readable by clients, only writeable."
    },
    "auth_method": {
      "enum": [
        "KEY",
        "PASSWORD"
      ],
      "type": "string",
      "description": "Authentication method used for \"sftp\" type storage medium\n"
    },
    "private_key": {
      "type": "string",
      "description": "Private key used to login to destination SSH server for SFTP type storage medium, when auth_method used is \"KEY\""
    }
  }
}
object realtimekit_SummarizationConfig
{
  "type": "object",
  "title": "SummarizationConfig",
  "properties": {
    "word_limit": {
      "type": "integer",
      "default": 500,
      "maximum": 1000,
      "minimum": 150,
      "description": "Sets the maximum number of words in the meeting summary."
    },
    "text_format": {
      "enum": [
        "plain_text",
        "markdown"
      ],
      "type": "string",
      "default": "markdown",
      "description": "Determines the text format of the summary, such as plain text or markdown."
    },
    "summary_type": {
      "enum": [
        "general",
        "team_meeting",
        "sales_call",
        "client_check_in",
        "interview",
        "daily_standup",
        "one_on_one_meeting",
        "lecture",
        "code_review"
      ],
      "type": "string",
      "default": "general",
      "description": "Defines the style of the summary, such as general, team meeting, or sales call."
    }
  },
  "description": "Summary Config"
}
object realtimekit_TrackConfigLayer
{
  "type": "object",
  "title": "TrackLayerConfig",
  "properties": {
    "outputs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/realtimekit_TrackLayerOutput"
      }
    },
    "file_name_prefix": {
      "type": "string",
      "description": "A file name prefix to apply for files generated from this layer"
    }
  }
}
object realtimekit_TrackLayerOutput
{
  "type": "object",
  "title": "TrackLayerOutput",
  "properties": {
    "type": {
      "enum": [
        "REALTIMEKIT_BUCKET",
        "STORAGE_CONFIG"
      ],
      "type": "string",
      "default": "REALTIMEKIT_BUCKET",
      "description": "The type of output destination this layer is being exported to."
    },
    "storage_config": {
      "$ref": "#/components/schemas/realtimekit_StorageConfig"
    }
  }
}
object realtimekit_Transcript
{
  "type": "object",
  "required": [
    "sessionId",
    "transcript_download_url",
    "transcript_download_url_expiry"
  ],
  "properties": {
    "sessionId": {
      "type": "string"
    },
    "transcript_download_url": {
      "type": "string",
      "description": "URL where the transcript can be downloaded"
    },
    "transcript_download_url_expiry": {
      "type": "string",
      "description": "Time when the download URL will expire"
    }
  }
}
object realtimekit_TranscriptSummary
{
  "type": "object",
  "title": "TranscriptSummary",
  "required": [
    "sessionId",
    "summaryDownloadUrl",
    "summaryDownloadUrlExpiry"
  ],
  "properties": {
    "sessionId": {
      "type": "string"
    },
    "summaryDownloadUrl": {
      "type": "string",
      "description": "URL where the summary of transcripts can be downloaded"
    },
    "summaryDownloadUrlExpiry": {
      "type": "string",
      "description": "Time of Expiry before when you need to download the csv file."
    }
  }
}
object realtimekit_TranscriptionConfig
{
  "type": "object",
  "title": "TranscriptionConfig",
  "properties": {
    "keywords": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Adds specific terms to improve accurate detection during transcription."
    },
    "language": {
      "enum": [
        "en-US",
        "en-IN",
        "de",
        "hi",
        "sv",
        "ru",
        "pl",
        "el",
        "fr",
        "nl"
      ],
      "type": "string",
      "default": "en-US",
      "description": "Specifies the language code for transcription to ensure accurate results."
    },
    "profanity_filter": {
      "type": "boolean",
      "default": false,
      "description": "Control the inclusion of offensive language in transcriptions."
    }
  },
  "description": "Transcription Configurations"
}
object realtimekit_UpdatePreset
{
  "type": "object",
  "title": "UpdatePreset",
  "properties": {
    "ui": {
      "type": "object",
      "properties": {
        "config_diff": {
          "type": "object"
        },
        "design_tokens": {
          "type": "object",
          "properties": {
            "logo": {
              "type": "string"
            },
            "theme": {
              "enum": [
                "dark"
              ],
              "type": "string"
            },
            "colors": {
              "type": "object",
              "properties": {
                "text": {
                  "type": "string",
                  "default": "#EEEEEE"
                },
                "brand": {
                  "type": "object",
                  "properties": {
                    "300": {
                      "type": "string",
                      "default": "#844d1c"
                    },
                    "400": {
                      "type": "string",
                      "default": "#9d5b22"
                    },
                    "500": {
                      "type": "string",
                      "default": "#b56927"
                    },
                    "600": {
                      "type": "string",
                      "default": "#d37c30"
                    },
                    "700": {
                      "type": "string",
                      "default": "#d9904f"
                    }
                  }
                },
                "danger": {
                  "type": "string",
                  "default": "#FF2D2D"
                },
                "success": {
                  "type": "string",
                  "default": "#62A504"
                },
                "warning": {
                  "type": "string",
                  "default": "#FFCD07"
                },
                "video_bg": {
                  "type": "string",
                  "default": "#191919"
                },
                "background": {
                  "type": "object",
                  "properties": {
                    "600": {
                      "type": "string",
                      "default": "#222222"
                    },
                    "700": {
                      "type": "string",
                      "default": "#1f1f1f"
                    },
                    "800": {
                      "type": "string",
                      "default": "#1b1b1b"
                    },
                    "900": {
                      "type": "string",
                      "default": "#181818"
                    },
                    "1000": {
                      "type": "string",
                      "default": "#141414"
                    }
                  }
                },
                "text_on_brand": {
                  "type": "string",
                  "default": "#EEEEEE"
                }
              }
            },
            "border_width": {
              "enum": [
                "thin"
              ],
              "type": "string"
            },
            "spacing_base": {
              "type": "number",
              "default": 4
            },
            "border_radius": {
              "enum": [
                "rounded"
              ],
              "type": "string"
            }
          }
        }
      }
    },
    "name": {
      "type": "string",
      "description": "Name of the preset"
    },
    "config": {
      "type": "object",
      "properties": {
        "media": {
          "type": "object",
          "properties": {
            "video": {
              "type": "object",
              "properties": {
                "quality": {
                  "enum": [
                    "hd",
                    "vga",
                    "qvga"
                  ],
                  "type": "string",
                  "description": "Video quality of participants"
                },
                "frame_rate": {
                  "type": "integer",
                  "maximum": 30,
                  "description": "Frame rate of participants' video"
                }
              },
              "description": "Configuration options for participant videos"
            },
            "screenshare": {
              "type": "object",
              "properties": {
                "quality": {
                  "enum": [
                    "hd",
                    "vga",
                    "qvga"
                  ],
                  "type": "string",
                  "description": "Quality of screen share "
                },
                "frame_rate": {
                  "type": "integer",
                  "description": "Frame rate of screen share"
                }
              },
              "description": "Configuration options for participant screen shares"
            }
          },
          "description": "Media configuration options. eg: Video quality"
        },
        "view_type": {
          "enum": [
            "GROUP_CALL",
            "WEBINAR",
            "AUDIO_ROOM"
          ],
          "type": "string",
          "description": "Type of the meeting"
        },
        "max_video_streams": {
          "type": "object",
          "properties": {
            "mobile": {
              "type": "integer",
              "description": "Maximum number of streams visible on mobile devices"
            },
            "desktop": {
              "type": "integer",
              "description": "Maximum number of video streams visible on desktop devices"
            }
          },
          "description": "Maximum number of streams that are visible on a device"
        },
        "max_screenshare_count": {
          "type": "integer",
          "description": "Maximum number of screen shares that can be active at a given time"
        }
      }
    },
    "permissions": {
      "type": "object",
      "properties": {
        "chat": {
          "type": "object",
          "properties": {
            "public": {
              "type": "object",
              "properties": {
                "text": {
                  "type": "boolean",
                  "description": "Can send text messages"
                },
                "files": {
                  "type": "boolean",
                  "description": "Can send file messages"
                },
                "can_send": {
                  "type": "boolean",
                  "description": "Can send messages in general"
                }
              }
            },
            "private": {
              "type": "object",
              "properties": {
                "text": {
                  "type": "boolean"
                },
                "files": {
                  "type": "boolean"
                },
                "can_send": {
                  "type": "boolean"
                },
                "can_receive": {
                  "type": "boolean"
                }
              }
            }
          },
          "description": "Chat permissions"
        },
        "media": {
          "type": "object",
          "properties": {
            "audio": {
              "type": "object",
              "properties": {
                "can_produce": {
                  "enum": [
                    "ALLOWED",
                    "NOT_ALLOWED",
                    "CAN_REQUEST"
                  ],
                  "type": "string",
                  "description": "Can produce audio"
                }
              },
              "description": "Audio permissions"
            },
            "video": {
              "type": "object",
              "properties": {
                "can_produce": {
                  "enum": [
                    "ALLOWED",
                    "NOT_ALLOWED",
                    "CAN_REQUEST"
                  ],
                  "type": "string",
                  "description": "Can produce video"
                }
              },
              "description": "Video permissions"
            },
            "screenshare": {
              "type": "object",
              "properties": {
                "can_produce": {
                  "enum": [
                    "ALLOWED",
                    "NOT_ALLOWED",
                    "CAN_REQUEST"
                  ],
                  "type": "string",
                  "description": "Can produce screen share video"
                }
              },
              "description": "Screenshare permissions"
            }
          },
          "description": "Media permissions"
        },
        "polls": {
          "type": "object",
          "properties": {
            "can_view": {
              "type": "boolean",
              "description": "Can view polls"
            },
            "can_vote": {
              "type": "boolean",
              "description": "Can vote on polls"
            },
            "can_create": {
              "type": "boolean",
              "description": "Can create polls"
            }
          },
          "description": "Poll permissions"
        },
        "plugins": {
          "type": "object",
          "properties": {
            "config": {
              "oneOf": [
                {
                  "type": "string",
                  "format": "uuid"
                },
                {
                  "type": "object",
                  "properties": {
                    "access_control": {
                      "enum": [
                        "FULL_ACCESS",
                        "VIEW_ONLY"
                      ],
                      "type": "string"
                    },
                    "handles_view_only": {
                      "type": "boolean"
                    }
                  }
                }
              ]
            },
            "can_close": {
              "type": "boolean",
              "description": "Can close plugins that are already open"
            },
            "can_start": {
              "type": "boolean",
              "description": "Can start plugins"
            },
            "can_edit_config": {
              "type": "boolean",
              "description": "Can edit plugin config"
            }
          },
          "description": "Plugin permissions"
        },
        "can_record": {
          "type": "boolean"
        },
        "is_recorder": {
          "type": "boolean",
          "default": false
        },
        "can_spotlight": {
          "type": "boolean"
        },
        "recorder_type": {
          "enum": [
            "RECORDER",
            "LIVESTREAMER",
            "NONE"
          ],
          "type": "string",
          "default": "NONE",
          "description": "Type of the recording peer"
        },
        "can_livestream": {
          "type": "boolean"
        },
        "pin_participant": {
          "type": "boolean"
        },
        "kick_participant": {
          "type": "boolean"
        },
        "waiting_room_type": {
          "enum": [
            "SKIP",
            "ON_PRIVILEGED_USER_ENTRY",
            "SKIP_ON_ACCEPT"
          ],
          "type": "string",
          "description": "Waiting room type"
        },
        "connected_meetings": {
          "type": "object",
          "properties": {
            "can_alter_connected_meetings": {
              "type": "boolean"
            },
            "can_switch_to_parent_meeting": {
              "type": "boolean"
            },
            "can_switch_connected_meetings": {
              "type": "boolean"
            }
          }
        },
        "hidden_participant": {
          "type": "boolean",
          "description": "Whether this participant is visible to others or not"
        },
        "can_edit_display_name": {
          "type": "boolean"
        },
        "show_participant_list": {
          "type": "boolean"
        },
        "accept_waiting_requests": {
          "type": "boolean",
          "description": "Whether this participant can accept waiting requests"
        },
        "disable_participant_audio": {
          "type": "boolean"
        },
        "disable_participant_video": {
          "type": "boolean"
        },
        "can_accept_production_requests": {
          "type": "boolean"
        },
        "disable_participant_screensharing": {
          "type": "boolean"
        },
        "can_change_participant_permissions": {
          "type": "boolean"
        }
      }
    }
  }
}
object realtimekit_VideoConfig
{
  "type": "object",
  "title": "VideoConfig",
  "properties": {
    "codec": {
      "enum": [
        "H264",
        "VP8"
      ],
      "type": "string",
      "default": "H264",
      "description": "Codec using which the recording will be encoded."
    },
    "width": {
      "type": "integer",
      "default": 1280,
      "example": 1280,
      "maximum": 1920,
      "minimum": 1,
      "description": "Width of the recording video in pixels"
    },
    "height": {
      "type": "integer",
      "default": 720,
      "example": 720,
      "maximum": 1920,
      "minimum": 1,
      "description": "Height of the recording video in pixels"
    },
    "watermark": {
      "type": "object",
      "properties": {
        "url": {
          "type": "string",
          "format": "uri",
          "description": "URL of the watermark image"
        },
        "size": {
          "type": "object",
          "properties": {
            "width": {
              "type": "integer",
              "minimum": 1,
              "description": "Width of the watermark in px"
            },
            "height": {
              "type": "integer",
              "minimum": 1,
              "description": "Height of the watermark in px"
            }
          },
          "description": "Size of the watermark"
        },
        "position": {
          "enum": [
            "left top",
            "right top",
            "left bottom",
            "right bottom"
          ],
          "type": "string",
          "default": "left top",
          "description": "Position of the watermark"
        }
      },
      "description": "Watermark to be added to the recording"
    },
    "export_file": {
      "type": "boolean",
      "default": true,
      "description": "Controls whether to export video file seperately"
    }
  }
}
object realtimekit_Webhook
{
  "type": "object",
  "required": [
    "id",
    "name",
    "url",
    "events",
    "created_at",
    "updated_at",
    "enabled"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid",
      "example": "0d1f069d-43bb-489a-ad8c-7eb95592ba8e",
      "readOnly": true,
      "description": "ID of the webhook"
    },
    "url": {
      "type": "string",
      "format": "uri",
      "example": "https://webhook.site/b23a5bbd-c7b0-4ced-a9e2-78ae7889897e",
      "description": "URL the webhook will send events to"
    },
    "name": {
      "type": "string",
      "example": "All events webhook",
      "description": "Name of the webhook"
    },
    "events": {
      "type": "array",
      "items": {
        "enum": [
          "meeting.started",
          "meeting.ended",
          "meeting.participantJoined",
          "meeting.participantLeft",
          "meeting.chatSynced",
          "recording.statusUpdate",
          "livestreaming.statusUpdate",
          "meeting.transcript",
          "meeting.summary"
        ],
        "type": "string"
      },
      "example": [
        "meeting.started",
        "meeting.ended",
        "meeting.participantJoined",
        "meeting.participantLeft",
        "meeting.chatSynced",
        "recording.statusUpdate",
        "livestreaming.statusUpdate",
        "meeting.transcript",
        "meeting.summary"
      ],
      "description": "Events this webhook will send updates for"
    },
    "enabled": {
      "type": "boolean",
      "description": "Set to true if the webhook is active"
    },
    "created_at": {
      "type": "string",
      "format": "date-time",
      "example": "2022-05-28T07:01:53.075Z",
      "description": "Timestamp when this webhook was created"
    },
    "updated_at": {
      "type": "string",
      "format": "date-time",
      "example": "2022-05-28T07:01:53.075Z",
      "description": "Timestamp when this webhook was updated"
    }
  }
}
object realtimekit_WebhookRequest
{
  "type": "object",
  "required": [
    "name",
    "url",
    "events"
  ],
  "properties": {
    "url": {
      "type": "string",
      "format": "uri",
      "example": "https://webhook.site/b23a5bbd-c7b0-4ced-a9e2-78ae7889897e",
      "description": "URL this webhook will send events to"
    },
    "name": {
      "type": "string",
      "example": "All events webhook",
      "description": "Name of the webhook"
    },
    "events": {
      "type": "array",
      "items": {
        "enum": [
          "meeting.started",
          "meeting.ended",
          "meeting.participantJoined",
          "meeting.participantLeft",
          "meeting.chatSynced",
          "recording.statusUpdate",
          "livestreaming.statusUpdate",
          "meeting.transcript",
          "meeting.summary"
        ],
        "type": "string"
      },
      "example": [
        "meeting.started",
        "meeting.ended",
        "meeting.participantJoined",
        "meeting.participantLeft",
        "meeting.chatSynced",
        "recording.statusUpdate",
        "livestreaming.statusUpdate",
        "meeting.transcript",
        "meeting.summary"
      ],
      "description": "Events that this webhook will get triggered by"
    },
    "enabled": {
      "type": "boolean",
      "default": true,
      "description": "Set whether or not the webhook should be active when created"
    }
  }
}
object realtimekit_WebhookSuccessResponse
{
  "type": "object",
  "required": [
    "success",
    "data"
  ],
  "properties": {
    "data": {
      "$ref": "#/components/schemas/realtimekit_Webhook"
    },
    "success": {
      "type": "boolean",
      "example": true
    }
  }
}
object realtimekit_WebhooksListSuccessResponse
{
  "type": "object",
  "required": [
    "success",
    "data"
  ],
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/realtimekit_Webhook"
      }
    },
    "success": {
      "type": "boolean",
      "example": true
    }
  }
}
string realtimekit_account_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "The account identifier tag.",
  "x-auditable": true
}
string realtimekit_app_id
{
  "type": "string",
  "example": "14a396e7-ca44-4937-bf1f-050a69118543",
  "maxLength": 32,
  "description": "The app identifier tag."
}
string realtimekit_created
{
  "type": "string",
  "format": "date-time",
  "example": "2025-01-02T02:20:00Z",
  "description": "The date and time the item was created."
}
string realtimekit_identifier
{
  "type": "string",
  "example": "2a95132c15732412d22c1476fa83f27a",
  "maxLength": 32,
  "minLength": 32,
  "description": "A Cloudflare-generated unique identifier for a item.",
  "x-auditable": true
}
string realtimekit_modified
{
  "type": "string",
  "format": "date-time",
  "example": "2025-01-02T02:20:00Z",
  "description": "The date and time the item was last modified."
}
object realtimekit_realtimekitBucketConfig
{
  "type": "object",
  "title": "realtimekitBucketConfig",
  "required": [
    "enabled"
  ],
  "properties": {
    "enabled": {
      "type": "boolean",
      "description": "Controls whether recordings are uploaded to RealtimeKit's bucket. If set to false, `download_url`, `audio_download_url`, `download_url_expiry` won't be generated for a recording."
    }
  }
}
string realtimekit_secret
{
  "type": "string",
  "example": "66bcf64aa8907b9f9d90ac17746a77ce394c393b92b3916633dc02846e608ad4",
  "maxLength": 64,
  "minLength": 64,
  "description": "Bearer token",
  "x-sensitive": true
}
object realtimekit_startReason
{
  "type": "object",
  "title": "startReason",
  "properties": {
    "caller": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string",
          "example": "RealtimeKit_test",
          "description": "Name of the user who started the recording."
        },
        "type": {
          "enum": [
            "ORGANIZATION",
            "USER"
          ],
          "type": "string",
          "description": "The type can be an App or a user. If the type is `user`, then only the `user_Id` and `name` are returned."
        },
        "user_Id": {
          "type": "string",
          "format": "uuid",
          "example": "d61f6956-e68f-4375-bf10-c38a704d1bec",
          "description": "The user ID of the person who started the recording."
        }
      }
    },
    "reason": {
      "enum": [
        "API_CALL",
        "RECORD_ON_START"
      ],
      "type": "string",
      "description": "Specifies if the recording was started using the \"Start a Recording\"API or using the parameter RECORD_ON_START in the \"Create a meeting\" API. \n\nIf the recording is initiated using the \"RECORD_ON_START\" parameter, the user details will not be populated."
    }
  }
}
object realtimekit_stopReason
{
  "type": "object",
  "title": "stopReason",
  "properties": {
    "caller": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string",
          "example": "RealtimeKit_test",
          "description": "Name of the user who stopped the recording."
        },
        "type": {
          "enum": [
            "ORGANIZATION",
            "USER"
          ],
          "type": "string",
          "description": "The type can be an App or a user. If the type is `user`, then only the `user_Id` and `name` are returned."
        },
        "user_Id": {
          "type": "string",
          "format": "uuid",
          "example": "d61f6956-e68f-4375-bf10-c38a704d1bec",
          "description": "The user ID of the person who stopped the recording."
        }
      }
    },
    "reason": {
      "enum": [
        "API_CALL",
        "INTERNAL_ERROR",
        "ALL_PEERS_LEFT"
      ],
      "type": "string",
      "description": "Specifies the reason why the recording stopped."
    }
  }
}
boolean realtimekit_success
{
  "type": "boolean"
}
string registrar-api_address
{
  "type": "string",
  "example": "123 Sesame St.",
  "description": "Address."
}
string registrar-api_address2
{
  "type": "string",
  "example": "Suite 430",
  "description": "Optional address line for unit, floor, suite, etc."
}
object registrar-api_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/registrar-api_api-response-common"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {},
          "nullable": true
        },
        "result_info": {
          "$ref": "#/components/schemas/registrar-api_result_info"
        }
      }
    }
  ]
}
object registrar-api_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/registrar-api_messages"
    },
    "result": {
      "anyOf": [
        {
          "type": "object"
        },
        {
          "type": "array",
          "items": {
            "type": "object"
          }
        },
        {
          "type": "string"
        }
      ]
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful"
    },
    "messages": {
      "$ref": "#/components/schemas/registrar-api_messages"
    }
  }
}
object registrar-api_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/registrar-api_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minItems": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful"
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/registrar-api_messages"
        }
      ],
      "example": []
    }
  }
}
object registrar-api_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/registrar-api_api-response-common"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "nullable": true
        }
      }
    }
  ]
}
boolean registrar-api_auto_renew
{
  "type": "boolean",
  "example": true,
  "description": "Auto-renew controls whether subscription is automatically renewed upon domain expiration.",
  "x-auditable": true
}
boolean registrar-api_available
{
  "type": "boolean",
  "example": false,
  "description": "Shows if a domain is available for transferring into Cloudflare Registrar."
}
boolean registrar-api_can_register
{
  "type": "boolean",
  "example": false,
  "description": "Indicates if the domain can be registered as a new domain."
}
string registrar-api_city
{
  "type": "string",
  "example": "Austin",
  "description": "City."
}
string registrar-api_contact_identifier
{
  "type": "string",
  "example": "ea95132c15732412d22c1476fa83f27a",
  "readOnly": true,
  "maxLength": 32,
  "description": "Contact Identifier."
}
object registrar-api_contact_properties
{
  "type": "object",
  "required": [
    "first_name",
    "last_name",
    "address",
    "city",
    "state",
    "zip",
    "country",
    "phone",
    "organization"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/registrar-api_contact_identifier"
    },
    "fax": {
      "$ref": "#/components/schemas/registrar-api_fax"
    },
    "zip": {
      "$ref": "#/components/schemas/registrar-api_zipcode"
    },
    "city": {
      "$ref": "#/components/schemas/registrar-api_city"
    },
    "email": {
      "$ref": "#/components/schemas/registrar-api_email"
    },
    "phone": {
      "$ref": "#/components/schemas/registrar-api_telephone"
    },
    "state": {
      "$ref": "#/components/schemas/registrar-api_state"
    },
    "address": {
      "$ref": "#/components/schemas/registrar-api_address"
    },
    "country": {
      "$ref": "#/components/schemas/registrar-api_country"
    },
    "address2": {
      "$ref": "#/components/schemas/registrar-api_address2"
    },
    "last_name": {
      "$ref": "#/components/schemas/registrar-api_last_name"
    },
    "first_name": {
      "$ref": "#/components/schemas/registrar-api_first_name"
    },
    "organization": {
      "$ref": "#/components/schemas/registrar-api_organization"
    }
  }
}
object registrar-api_contacts
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/registrar-api_contact_properties"
    }
  ]
}
string registrar-api_country
{
  "type": "string",
  "example": "US",
  "nullable": true,
  "maxLength": 30,
  "description": "The country in which the user lives."
}
string registrar-api_created_at
{
  "type": "string",
  "format": "date-time",
  "example": "2018-08-28T17:26:26Z",
  "description": "Shows time of creation."
}
string registrar-api_current_registrar
{
  "type": "string",
  "example": "Cloudflare",
  "description": "Shows name of current registrar."
}
object registrar-api_cursor_result_info
{
  "type": "object",
  "required": [
    "cursor",
    "per_page",
    "count"
  ],
  "properties": {
    "count": {
      "type": "integer",
      "example": 20,
      "description": "Number of items in the current result set."
    },
    "cursor": {
      "type": "string",
      "example": "eyJ0IjoiMjAyNS0wNi0xNVQxMjowMDowMC4wMDAwMDBaIiwibiI6ImJyYXZvLm5ldCJ9",
      "description": "Opaque cursor for fetching the next page. Pass this value as the\n`cursor` query parameter in a subsequent request. An empty string\nindicates there are no more pages.\n"
    },
    "per_page": {
      "type": "integer",
      "example": 20,
      "description": "Maximum number of items per page."
    }
  },
  "description": "Cursor-based pagination metadata. Used by list endpoints that support\ncursor pagination. Pass the `cursor` value as a query parameter in the\nnext request to fetch the next page. An empty string indicates there\nare no more pages.\n"
}
object registrar-api_domain_check_request
{
  "type": "object",
  "required": [
    "domains"
  ],
  "properties": {
    "domains": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "example.com",
        "example.net"
      ],
      "maxItems": 20,
      "minItems": 1,
      "description": "List of fully qualified domain names (FQDNs) to check for availability. Each domain must include the extension.\n- Minimum: 1 domain\n- Maximum: 20 domains per request\n- Domains on unsupported extensions are returned with `registrable: false` and a `reason` field\n- Malformed domain names (e.g., missing extension) may be omitted from the response\n"
    }
  },
  "description": "Request body for checking domain availability."
}
object registrar-api_domain_check_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/registrar-api_api-response-common"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "type": "object",
          "required": [
            "domains"
          ],
          "properties": {
            "domains": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/registrar-api_domain_check_result"
              },
              "description": "Array of domain availability results. Domains on unsupported\nextensions are included with `registrable: false` and a `reason`\nfield. Malformed domain names may be omitted.\n"
            }
          },
          "description": "Contains the availability check results."
        }
      }
    }
  ]
}
object registrar-api_domain_check_result
{
  "type": "object",
  "required": [
    "name",
    "registrable"
  ],
  "properties": {
    "name": {
      "type": "string",
      "example": "example.com",
      "description": "The fully qualified domain name (FQDN) in punycode format for internationalized domain names (IDNs)."
    },
    "tier": {
      "enum": [
        "standard",
        "premium"
      ],
      "type": "string",
      "example": "standard",
      "description": "The pricing tier for this domain. Always present when `registrable` is `true`; defaults to `standard` for most domains. May be absent when `registrable` is `false`.\n- `standard`: Standard registry pricing\n- `premium`: Premium domain with higher pricing set by the registry"
    },
    "reason": {
      "enum": [
        "extension_not_supported_via_api",
        "extension_not_supported",
        "extension_disallows_registration",
        "domain_premium",
        "domain_unavailable"
      ],
      "type": "string",
      "example": "domain_unavailable",
      "description": "Present only when `registrable` is `false`. Explains why the domain cannot be registered via this API.\n- `extension_not_supported_via_api`: Cloudflare Registrar supports this extension in the dashboard but it is not yet available for programmatic registration via this API. The user can register via `https://dash.cloudflare.com/{account_id}/domains/registrations`.\n- `extension_not_supported`: This extension is not supported by Cloudflare Registrar at all.\n- `extension_disallows_registration`: The extension's registry has temporarily or permanently frozen new registrations. No registrar can register domains on this extension at this time.\n- `domain_premium`: The domain is premium priced. Premium registration is not currently supported by this API.\n- `domain_unavailable`: The domain is already registered, reserved, or otherwise not available on a supported extension."
    },
    "pricing": {
      "$ref": "#/components/schemas/registrar-api_pricing"
    },
    "registrable": {
      "type": "boolean",
      "example": true,
      "description": "Indicates whether this domain can be registered programmatically through this API based on a real-time registry check.\n- `true`: Domain is available for registration. The `pricing` object will be included.\n- `false`: Domain is not available. See the `reason` field for why. `tier` may still be present on some non-registrable results, such as premium domains."
    }
  },
  "description": "Represents a single authoritative domain availability result returned by the Check endpoint. Check results reflect current registry status and should be used immediately before registration."
}
string registrar-api_domain_identifier
{
  "type": "string",
  "example": "ea95132c15732412d22c1476fa83f27a",
  "readOnly": true,
  "maxLength": 32,
  "description": "Domain identifier."
}
string registrar-api_domain_name
{
  "type": "string",
  "example": "example.com",
  "description": "Fully qualified domain name (FQDN) including the extension\n(e.g., `example.com`, `mybrand.app`). The domain name uniquely\nidentifies a registration — the same domain cannot be registered\ntwice, making it a natural idempotency key for registration requests.\n",
  "x-auditable": true
}
object registrar-api_domain_properties
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/registrar-api_domain_identifier"
    },
    "locked": {
      "$ref": "#/components/schemas/registrar-api_locked"
    },
    "available": {
      "$ref": "#/components/schemas/registrar-api_available"
    },
    "created_at": {
      "$ref": "#/components/schemas/registrar-api_created_at"
    },
    "expires_at": {
      "$ref": "#/components/schemas/registrar-api_expires_at"
    },
    "updated_at": {
      "$ref": "#/components/schemas/registrar-api_updated_at"
    },
    "transfer_in": {
      "$ref": "#/components/schemas/registrar-api_transfer_in"
    },
    "can_register": {
      "$ref": "#/components/schemas/registrar-api_can_register"
    },
    "supported_tld": {
      "$ref": "#/components/schemas/registrar-api_supported_tld"
    },
    "current_registrar": {
      "$ref": "#/components/schemas/registrar-api_current_registrar"
    },
    "registry_statuses": {
      "$ref": "#/components/schemas/registrar-api_registry_statuses"
    },
    "registrant_contact": {
      "$ref": "#/components/schemas/registrar-api_registrant_contact"
    }
  }
}
object registrar-api_domain_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/registrar-api_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/registrar-api_domains"
          }
        }
      }
    }
  ]
}
object registrar-api_domain_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/registrar-api_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object"
        }
      }
    }
  ]
}
object registrar-api_domain_search_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/registrar-api_api-response-common"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "type": "object",
          "required": [
            "domains"
          ],
          "properties": {
            "domains": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/registrar-api_domain_search_result"
              },
              "description": "Array of domain suggestions sorted by relevance. May be empty if no domains match the search criteria."
            }
          },
          "description": "Contains the search results."
        }
      }
    }
  ]
}
object registrar-api_domain_search_result
{
  "type": "object",
  "required": [
    "name",
    "registrable"
  ],
  "properties": {
    "name": {
      "type": "string",
      "example": "example.com",
      "description": "The fully qualified domain name (FQDN) in punycode format for internationalized domain names (IDNs)."
    },
    "tier": {
      "enum": [
        "standard",
        "premium"
      ],
      "type": "string",
      "example": "standard",
      "description": "The pricing tier for this domain. Always present when `registrable` is `true`;\ndefaults to `standard` for most domains. May be absent when `registrable`\nis `false`.\n- `standard`: Standard registry pricing\n- `premium`: Premium domain with higher pricing set by the registry\n"
    },
    "reason": {
      "enum": [
        "extension_not_supported_via_api",
        "extension_not_supported",
        "extension_disallows_registration",
        "domain_premium",
        "domain_unavailable"
      ],
      "type": "string",
      "example": "domain_unavailable",
      "description": "Present only when `registrable` is `false` on search results. Explains why the domain does not appear registrable through this API. These values are advisory; use POST /domain-check for authoritative status.\n- `extension_not_supported_via_api`: Cloudflare Registrar supports this extension in the dashboard but it is not yet available for programmatic registration via this API.\n- `extension_not_supported`: This extension is not supported by Cloudflare Registrar at all.\n- `extension_disallows_registration`: The extension's registry has temporarily or permanently frozen new registrations.\n- `domain_premium`: The domain is premium priced. Premium registration is not currently supported by this API.\n- `domain_unavailable`: The domain appears unavailable."
    },
    "pricing": {
      "$ref": "#/components/schemas/registrar-api_pricing"
    },
    "registrable": {
      "type": "boolean",
      "example": true,
      "description": "Indicates whether this domain appears available based on search data. Search results are non-authoritative and may be stale. - `true`: The domain appears available. Use POST /domain-check to confirm before registration.\n- `false`: The domain does not appear available in search results."
    }
  },
  "description": "Represents a single domain suggestion returned by the Search endpoint. Search results are non-authoritative and may be based on cached data. Use POST /domain-check to confirm real-time availability and pricing before registration."
}
object registrar-api_domain_update_properties
{
  "type": "object",
  "properties": {
    "locked": {
      "$ref": "#/components/schemas/registrar-api_locked"
    },
    "privacy": {
      "$ref": "#/components/schemas/registrar-api_privacy"
    },
    "auto_renew": {
      "$ref": "#/components/schemas/registrar-api_auto_renew"
    }
  }
}
object registrar-api_domains
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/registrar-api_domain_properties"
    }
  ]
}
string registrar-api_email
{
  "type": "string",
  "example": "user@example.com",
  "maxLength": 90,
  "description": "The contact email address of the user."
}
string registrar-api_expires_at
{
  "type": "string",
  "format": "date-time",
  "example": "2019-08-28T23:59:59Z",
  "description": "Shows when domain name registration expires."
}
string registrar-api_fax
{
  "type": "string",
  "example": "123-867-5309",
  "description": "Contact fax number."
}
string registrar-api_first_name
{
  "type": "string",
  "example": "John",
  "nullable": true,
  "maxLength": 60,
  "description": "User's first name"
}
string registrar-api_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "readOnly": true,
  "maxLength": 32,
  "description": "Identifier"
}
string registrar-api_last_name
{
  "type": "string",
  "example": "Appleseed",
  "nullable": true,
  "maxLength": 60,
  "description": "User's last name"
}
boolean registrar-api_locked
{
  "type": "boolean",
  "example": false,
  "description": "Shows whether a registrar lock is in place for a domain.",
  "x-auditable": true
}
array registrar-api_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "message": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string registrar-api_organization
{
  "type": "string",
  "example": "Cloudflare, Inc.",
  "description": "Name of organization."
}
object registrar-api_pricing
{
  "type": "object",
  "required": [
    "currency",
    "registration_cost",
    "renewal_cost"
  ],
  "properties": {
    "currency": {
      "type": "string",
      "example": "USD",
      "description": "ISO-4217 currency code for the prices (e.g., \"USD\", \"EUR\", \"GBP\")."
    },
    "renewal_cost": {
      "type": "string",
      "example": "8.57",
      "description": "Per-year renewal cost for this domain. Applied to each year beyond\nthe first year of a multi-year registration, and to each annual\nauto-renewal thereafter. May differ from `registration_cost`,\nespecially for premium domains where initial registration often\ncosts more than renewals.\n"
    },
    "registration_cost": {
      "type": "string",
      "example": "8.57",
      "description": "The first-year cost to register this domain. For premium domains\n(`tier: premium`), this price is set by the registry and may be\nsignificantly higher than standard pricing. For multi-year\nregistrations, this cost applies to the first year only; subsequent\nyears are charged at `renewal_cost`.\n"
    }
  },
  "description": "Annual pricing information for a registrable domain. This object is only\npresent when `registrable` is `true`. All prices are per year and returned\nas strings to preserve decimal precision.\n\n`registration_cost` and `renewal_cost` are frequently the same value, but\nmay differ — especially for premium domains where registries set different\nrates for initial registration vs. renewal. For a multi-year registration\n(e.g., 4 years), the first year is charged at `registration_cost` and each\nsubsequent year at `renewal_cost`. Registry pricing may change over time;\nthe values returned here reflect the current registry rate. Premium pricing\nmay be surfaced by Search and Check, but premium registration is not currently\nsupported by this API.\n"
}
boolean registrar-api_privacy
{
  "type": "boolean",
  "example": true,
  "description": "Privacy option controls redacting WHOIS information.",
  "x-auditable": true
}
object registrar-api_registrant_contact
{
  "allOf": [
    {
      "$ref": "#/components/schemas/registrar-api_contacts"
    }
  ],
  "description": "Shows contact information for domain registrant."
}
object registrar-api_registration
{
  "type": "object",
  "required": [
    "domain_name",
    "status",
    "created_at",
    "expires_at",
    "auto_renew",
    "privacy_mode",
    "locked"
  ],
  "properties": {
    "locked": {
      "type": "boolean",
      "example": true,
      "description": "Whether the domain is locked for transfer."
    },
    "status": {
      "enum": [
        "active",
        "registration_pending",
        "expired",
        "suspended",
        "redemption_period",
        "pending_delete"
      ],
      "type": "string",
      "example": "active",
      "description": "Current registration status.\n- `active`: Domain is registered and operational\n- `registration_pending`: Registration is in progress\n- `expired`: Domain has expired\n- `suspended`: Domain is suspended by the registry\n- `redemption_period`: Domain is in the redemption grace period\n- `pending_delete`: Domain is pending deletion by the registry\n"
    },
    "auto_renew": {
      "type": "boolean",
      "example": true,
      "description": "Whether the domain will be automatically renewed before expiration."
    },
    "created_at": {
      "type": "string",
      "format": "date-time",
      "example": "2025-01-15T10:00:00Z",
      "description": "When the domain was registered. Present when the registration resource exists."
    },
    "expires_at": {
      "type": "string",
      "format": "date-time",
      "example": "2026-01-15T10:00:00Z",
      "nullable": true,
      "description": "When the domain registration expires. Present when the registration is ready; may be null only while `status` is `registration_pending`."
    },
    "domain_name": {
      "$ref": "#/components/schemas/registrar-api_domain_name"
    },
    "privacy_mode": {
      "enum": [
        false,
        "redaction"
      ],
      "type": "string",
      "example": "redaction",
      "description": "Current WHOIS privacy mode for the registration."
    }
  },
  "description": "A domain registration resource representing the current state of a registered domain."
}
object registrar-api_registration-response-collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/registrar-api_api-response-common"
    },
    {
      "type": "object",
      "required": [
        "result",
        "result_info"
      ],
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/registrar-api_registration"
          }
        },
        "result_info": {
          "$ref": "#/components/schemas/registrar-api_cursor_result_info"
        }
      }
    }
  ]
}
object registrar-api_registration-response-single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/registrar-api_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/registrar-api_registration"
        }
      }
    }
  ]
}
object registrar-api_registration_contact
{
  "type": "object",
  "required": [
    "phone",
    "email",
    "postal_info"
  ],
  "properties": {
    "fax": {
      "type": "string",
      "example": "+1.5555555555",
      "description": "Fax number in E.164 format (e.g., `+1.5555555555`). Optional.\nMost registrations do not require a fax number.\n"
    },
    "email": {
      "type": "string",
      "format": "email",
      "example": "ada@example.com",
      "description": "Email address for the registrant. Used for domain-related\ncommunications from the registry, including ownership verification\nand renewal notices.\n"
    },
    "phone": {
      "type": "string",
      "example": "+1.5555555555",
      "description": "Phone number in E.164 format: `+{country_code}.{number}` with no\nspaces or dashes. Examples: `+1.5555555555` (US), `+44.2071234567`\n(UK), `+81.312345678` (Japan).\n"
    },
    "postal_info": {
      "$ref": "#/components/schemas/registrar-api_registration_contact_postal_info"
    }
  },
  "description": "Registrant contact data for the domain registration. This information\nis submitted to the domain registry and, depending on extension and\nprivacy settings, may appear in public WHOIS records.\n"
}
object registrar-api_registration_contact_address
{
  "type": "object",
  "required": [
    "street",
    "city",
    "state",
    "postal_code",
    "country_code"
  ],
  "properties": {
    "city": {
      "type": "string",
      "example": "Austin",
      "description": "City or locality name."
    },
    "state": {
      "type": "string",
      "example": "TX",
      "description": "State, province, or region. Use the standard abbreviation where applicable (e.g., `TX` for Texas, `ON` for Ontario)."
    },
    "street": {
      "type": "string",
      "example": "123 Main St",
      "description": "Street address including building/suite number."
    },
    "postal_code": {
      "type": "string",
      "example": "78701",
      "description": "Postal or ZIP code."
    },
    "country_code": {
      "type": "string",
      "example": "US",
      "description": "Two-letter country code per ISO 3166-1 alpha-2 (e.g., `US`, `GB`, `CA`, `DE`)."
    }
  },
  "description": "Physical mailing address for the registrant contact."
}
object registrar-api_registration_contact_postal_info
{
  "type": "object",
  "required": [
    "name",
    "address"
  ],
  "properties": {
    "name": {
      "type": "string",
      "example": "Ada Lovelace",
      "description": "Full legal name of the registrant (individual or authorized representative)."
    },
    "address": {
      "$ref": "#/components/schemas/registrar-api_registration_contact_address"
    },
    "organization": {
      "type": "string",
      "example": "Example Inc",
      "description": "Organization or company name. Optional for individual registrants."
    }
  },
  "description": "Postal/mailing information for the registrant contact."
}
object registrar-api_registration_contacts
{
  "type": "object",
  "properties": {
    "registrant": {
      "$ref": "#/components/schemas/registrar-api_registration_contact"
    }
  },
  "description": "Contact data for the registration request.\n\nIf the `contacts` object is omitted entirely from the request, or if\n`contacts.registrant` is not provided, the system will use the account's\ndefault address book entry as the registrant contact. This default must be\npre-configured by the account owner at\n`https://dash.cloudflare.com/{account_id}/domains/registrations`, where\nthey can create or update the address book entry and accept the required\nagreement. No API exists for managing address book entries at this time.\n\nIf no default address book entry exists and no registrant contact is\nprovided, the registration request will fail with a validation error.\n"
}
object registrar-api_registration_create_request
{
  "type": "object",
  "required": [
    "domain_name"
  ],
  "properties": {
    "years": {
      "type": "integer",
      "example": 1,
      "maximum": 10,
      "minimum": 1,
      "description": "Number of years to register (1–10). If omitted, defaults to the\nminimum registration period required by the registry for this\nextension. For most extensions this is 1 year, but some extensions\nrequire longer minimum terms (e.g., `.ai` requires a minimum of\n2 years).\n\nThe registry for each extension may also enforce its own maximum\nregistration term. If the requested value exceeds the registry's\nmaximum, the registration will be rejected. When in doubt, use the\ndefault by omitting this field.\n"
    },
    "contacts": {
      "$ref": "#/components/schemas/registrar-api_registration_contacts"
    },
    "auto_renew": {
      "type": "boolean",
      "default": false,
      "example": false,
      "description": "Enable or disable automatic renewal. Defaults to `false` if omitted.\nSetting this field to `true` is an explicit opt-in authorizing\nCloudflare to charge the account's default payment method up to 30\ndays before domain expiry to renew the domain automatically.\nRenewal pricing may change over time based on registry pricing.\n"
    },
    "domain_name": {
      "$ref": "#/components/schemas/registrar-api_domain_name"
    },
    "privacy_mode": {
      "enum": [
        false,
        "redaction"
      ],
      "type": "string",
      "default": "redaction",
      "example": "redaction",
      "description": "WHOIS privacy mode for the registration. Defaults to `redaction`.\n- `off`: Do not request WHOIS privacy.\n- `redaction`: Request WHOIS redaction where supported by the extension.\n  Some extensions do not support privacy/redaction.\n"
    }
  }
}
object registrar-api_registration_update_request
{
  "type": "object",
  "properties": {
    "auto_renew": {
      "type": "boolean",
      "example": true,
      "description": "Enable or disable automatic renewal.\nSetting this field to `true` authorizes Cloudflare to charge the\naccount's default payment method up to 30 days before domain expiry\nto renew the domain automatically. Renewal pricing may change over\ntime based on registry pricing.\n"
    }
  },
  "description": "Request to update an existing domain registration.\n\nThis endpoint currently supports updating `auto_renew` only.\n",
  "minProperties": 1
}
string registrar-api_registry_statuses
{
  "type": "string",
  "example": "ok,serverTransferProhibited",
  "description": "A comma-separated list of registry status codes. A full list of status codes can be found at [EPP Status Codes](https://www.icann.org/resources/pages/epp-status-codes-2014-06-16-en)."
}
object registrar-api_result_info
{
  "type": "object",
  "properties": {
    "page": {
      "type": "number",
      "example": 1,
      "description": "Current page within paginated list of results"
    },
    "count": {
      "type": "number",
      "example": 1,
      "description": "Total number of results for the requested service"
    },
    "per_page": {
      "type": "number",
      "example": 20,
      "description": "Number of results per page of results"
    },
    "total_count": {
      "type": "number",
      "example": 2000,
      "description": "Total results available without any search parameters"
    }
  }
}
string registrar-api_state
{
  "type": "string",
  "example": "TX",
  "description": "State."
}
boolean registrar-api_supported_tld
{
  "type": "boolean",
  "example": true,
  "description": "Whether a particular TLD is currently supported by Cloudflare Registrar. Refer to [TLD Policies](https://www.cloudflare.com/tld-policies/) for a list of supported TLDs."
}
string registrar-api_telephone
{
  "type": "string",
  "example": "+1 123-123-1234",
  "nullable": true,
  "maxLength": 20,
  "description": "User's telephone number"
}
object registrar-api_transfer_in
{
  "properties": {
    "accept_foa": {
      "enum": [
        "needed",
        "ok"
      ],
      "type": "string",
      "example": "needed",
      "description": "Form of authorization has been accepted by the registrant."
    },
    "unlock_domain": {
      "enum": [
        "needed",
        "ok",
        "pending",
        "trying",
        "unknown"
      ],
      "type": "string",
      "example": "ok",
      "description": "Domain is unlocked at the foreign registrar."
    },
    "disable_privacy": {
      "enum": [
        "needed",
        "ok",
        "unknown"
      ],
      "type": "string",
      "example": "ok",
      "description": "Privacy guards are disabled at the foreign registrar."
    },
    "enter_auth_code": {
      "enum": [
        "needed",
        "ok",
        "pending",
        "trying",
        "rejected"
      ],
      "type": "string",
      "example": "needed",
      "description": "Auth code has been entered and verified."
    },
    "approve_transfer": {
      "enum": [
        "needed",
        "ok",
        "pending",
        "trying",
        "rejected",
        "unknown"
      ],
      "type": "string",
      "example": "unknown",
      "description": "Shows transfer status with the registry."
    },
    "can_cancel_transfer": {
      "type": "boolean",
      "example": true,
      "description": "Indicates if cancellation is still possible."
    }
  },
  "description": "Statuses for domain transfers into Cloudflare Registrar."
}
string registrar-api_updated_at
{
  "type": "string",
  "format": "date-time",
  "example": "2018-08-28T17:26:26Z",
  "description": "Last updated."
}
object registrar-api_workflow-status-response-single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/registrar-api_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/registrar-api_workflow_status"
        }
      }
    }
  ]
}
object registrar-api_workflow_error
{
  "type": "object",
  "required": [
    "code",
    "message"
  ],
  "properties": {
    "code": {
      "type": "string",
      "example": "registry_rejected",
      "description": "Machine-readable error code identifying the failure reason."
    },
    "message": {
      "type": "string",
      "example": "Registry rejected the request.",
      "description": "Human-readable explanation of the failure. May include registry-specific details."
    }
  },
  "description": "Error details when a workflow reaches the `failed` state. The specific\nerror codes and messages depend on the workflow type (registration,\nupdate, etc.) and the underlying registry response. These workflow\nerror codes are separate from immediate HTTP error `errors[].code`\nvalues returned by non-2xx responses. Surface\n`error.message` to the user for context.\n"
}
object registrar-api_workflow_links
{
  "type": "object",
  "required": [
    "self"
  ],
  "properties": {
    "self": {
      "type": "string",
      "example": "/accounts/{account_id}/registrar/registrations/example.com/registration-status",
      "description": "URL to this status resource."
    },
    "resource": {
      "type": "string",
      "example": "/accounts/{account_id}/registrar/registrations/example.com",
      "description": "URL to the domain resource."
    }
  }
}
object registrar-api_workflow_status
{
  "type": "object",
  "required": [
    "state",
    "completed",
    "created_at",
    "updated_at",
    "links"
  ],
  "properties": {
    "error": {
      "allOf": [
        {
          "$ref": "#/components/schemas/registrar-api_workflow_error"
        }
      ],
      "nullable": true
    },
    "links": {
      "$ref": "#/components/schemas/registrar-api_workflow_links"
    },
    "state": {
      "enum": [
        "pending",
        "in_progress",
        "action_required",
        "blocked",
        "succeeded",
        "failed"
      ],
      "type": "string",
      "example": "in_progress",
      "description": "Workflow lifecycle state.\n- `pending`: Workflow has been created but not yet started processing.\n- `in_progress`: Actively processing. Continue polling `links.self`.\n  The workflow has an internal deadline and will not remain in this\n  state indefinitely.\n- `action_required`: Paused — requires action by the user (not the\n  system). See `context.action` for what is needed. An automated\n  polling loop must break on this state; it will not resolve on its\n  own without user intervention.\n- `blocked`: The workflow cannot make progress due to a third party\n  such as the domain extension's registry or a losing registrar.\n  No user action will help. Continue polling — the block may resolve\n  when the third party responds.\n- `succeeded`: Terminal. The operation completed successfully.\n  `completed` will be `true`. For registrations, `context.registration`\n  contains the resulting registration resource.\n- `failed`: Terminal. The operation failed. `completed` will be `true`.\n  See `error.code` and `error.message` for the reason. Do not\n  auto-retry without user review.\n"
    },
    "context": {
      "type": "object",
      "description": "Workflow-specific data for this workflow.\n\nThe workflow subject is identified by `context.domain_name` for\ndomain-centric workflows.\n",
      "additionalProperties": true
    },
    "completed": {
      "type": "boolean",
      "example": false,
      "description": "Whether the workflow has reached a terminal state. `true` when\n`state` is `succeeded` or `failed`. `false` for `pending`,\n`in_progress`, `action_required`, and `blocked`.\n"
    },
    "created_at": {
      "type": "string",
      "format": "date-time"
    },
    "updated_at": {
      "type": "string",
      "format": "date-time"
    }
  },
  "description": "Status of an async registration workflow."
}
string registrar-api_zipcode
{
  "type": "string",
  "example": "12345",
  "nullable": true,
  "maxLength": 20,
  "description": "The zipcode or postal code where the user lives."
}
object request-tracer_account_identifier
{
  "$ref": "#/components/schemas/request-tracer_identifier"
}
object request-tracer_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/request-tracer_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/request-tracer_messages"
    }
  }
}
object request-tracer_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/request-tracer_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/request-tracer_messages"
        }
      ],
      "example": []
    }
  }
}
string request-tracer_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Identifier.",
  "x-auditable": true
}
array request-tracer_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
array request-tracer_trace
{
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "kind": {
        "type": "string",
        "example": "zone",
        "description": "If step type is ruleset, then kind of this ruleset",
        "x-auditable": true
      },
      "name": {
        "type": "string",
        "example": "some ruleset name",
        "description": "If step type is ruleset, then name of this ruleset",
        "x-auditable": true
      },
      "type": {
        "type": "string",
        "example": "rule",
        "description": "Tracing step type",
        "x-auditable": true
      },
      "trace": {
        "$ref": "#/components/schemas/request-tracer_trace"
      },
      "action": {
        "type": "string",
        "example": "execute",
        "pattern": "^[a-z_]+$",
        "description": "If step type is rule, then action performed by this rule",
        "x-auditable": true
      },
      "matched": {
        "type": "boolean",
        "example": true,
        "description": "Whether tracing step affected tracing request/response",
        "x-auditable": true
      },
      "step_name": {
        "type": "string",
        "example": "rule_id01",
        "description": "Tracing step identifying name",
        "x-auditable": true
      },
      "expression": {
        "type": "string",
        "example": "ip.src ne 1.1.1.1",
        "description": "If step type is rule, then expression used to match for this rule",
        "x-auditable": true
      },
      "description": {
        "type": "string",
        "example": "some rule",
        "description": "If step type is rule or ruleset, the description of this entity",
        "x-auditable": true
      },
      "action_parameters": {
        "type": "object",
        "example": {
          "id": "4814384a9e5d4991b9815dcfc25d2f1f"
        },
        "description": "If step type is rule, then action parameters of this rule as JSON",
        "x-auditable": true
      }
    },
    "description": "List of steps acting on request/response"
  }
}
string resource-sharing_account_id
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Account identifier.",
  "x-auditable": true
}
string resource-sharing_account_name
{
  "type": "string",
  "example": "Account A",
  "description": "The display name of an account.",
  "x-auditable": true
}
object resource-sharing_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/resource-sharing_api-response-common"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {},
          "nullable": true
        },
        "result_info": {
          "$ref": "#/components/schemas/resource-sharing_result_info"
        }
      }
    }
  ]
}
object resource-sharing_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/resource-sharing_v4errors"
    },
    "result": {
      "anyOf": [
        {
          "type": "object"
        },
        {
          "type": "array",
          "items": {}
        },
        {
          "type": "string"
        }
      ]
    },
    "success": {
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    }
  }
}
object resource-sharing_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/resource-sharing_v4errors"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful.",
      "x-auditable": true
    }
  }
}
object resource-sharing_create_share_recipient_request
{
  "type": "object",
  "properties": {
    "account_id": {
      "$ref": "#/components/schemas/resource-sharing_account_id"
    },
    "organization_id": {
      "$ref": "#/components/schemas/resource-sharing_organization_id"
    }
  },
  "description": "Account or organization ID must be provided."
}
object resource-sharing_create_share_request
{
  "type": "object",
  "required": [
    "name",
    "resources",
    "recipients"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/resource-sharing_share_name"
    },
    "resources": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/resource-sharing_create_share_resource_request"
      }
    },
    "recipients": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/resource-sharing_create_share_recipient_request"
      }
    }
  }
}
object resource-sharing_create_share_resource_request
{
  "type": "object",
  "required": [
    "resource_id",
    "resource_type",
    "resource_account_id",
    "meta"
  ],
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/resource-sharing_resource_meta"
    },
    "resource_id": {
      "$ref": "#/components/schemas/resource-sharing_resource_resource_id"
    },
    "resource_type": {
      "$ref": "#/components/schemas/resource-sharing_resource_type"
    },
    "resource_account_id": {
      "$ref": "#/components/schemas/resource-sharing_account_id"
    }
  }
}
string resource-sharing_created
{
  "type": "string",
  "format": "date-time",
  "example": "2023-09-21T18:56:32.624632Z",
  "description": "When the share was created.",
  "x-auditable": true
}
string resource-sharing_modified
{
  "type": "string",
  "format": "date-time",
  "example": "2023-09-21T18:56:32.624632Z",
  "description": "When the share was modified.",
  "x-auditable": true
}
string resource-sharing_organization_id
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Organization identifier.",
  "x-auditable": true
}
string resource-sharing_recipient_association_status
{
  "enum": [
    "associating",
    "associated",
    "disassociating",
    "disassociated"
  ],
  "type": "string",
  "description": "Share Recipient association status.",
  "x-auditable": true
}
string resource-sharing_recipient_id
{
  "type": "string",
  "example": "3fd85f74b32742f1bff64a85009dda07",
  "maxLength": 32,
  "description": "Share Recipient identifier tag.",
  "x-auditable": true
}
string resource-sharing_recipient_resource_error
{
  "type": "string",
  "example": "Recipient is missing necessary entitlement",
  "description": "Share Recipient error message.",
  "x-auditable": true
}
boolean resource-sharing_recipient_resource_error_terminal
{
  "type": "boolean",
  "example": true,
  "description": "Whether the error is terminal or will be continually retried.",
  "x-auditable": true
}
string resource-sharing_resource_id
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Share Resource identifier.",
  "x-auditable": true
}
object resource-sharing_resource_meta
{
  "type": "object",
  "description": "Resource Metadata."
}
string resource-sharing_resource_resource_id
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Share Resource identifier.",
  "x-auditable": true
}
string resource-sharing_resource_status
{
  "enum": [
    "active",
    "deleting",
    "deleted"
  ],
  "type": "string",
  "description": "Resource Status.",
  "x-auditable": true
}
string resource-sharing_resource_type
{
  "enum": [
    "custom-ruleset",
    "gateway-policy",
    "gateway-destination-ip",
    "gateway-block-page-settings",
    "gateway-extended-email-matching"
  ],
  "type": "string",
  "description": "Resource Type.",
  "x-auditable": true
}
integer resource-sharing_resource_version
{
  "type": "integer",
  "description": "Resource Version.",
  "x-auditable": true
}
object resource-sharing_result_info
{
  "type": "object",
  "properties": {
    "page": {
      "type": "number",
      "example": 1,
      "description": "Current page within paginated list of results."
    },
    "count": {
      "type": "number",
      "example": 1,
      "description": "Total number of results for the requested service."
    },
    "per_page": {
      "type": "number",
      "example": 20,
      "description": "Number of results per page of results."
    },
    "total_count": {
      "type": "number",
      "example": 2000,
      "description": "Total results available without any search parameters."
    },
    "total_pages": {
      "type": "number",
      "example": 50,
      "description": "Total number of pages using the given per page."
    }
  }
}
string resource-sharing_share_id
{
  "type": "string",
  "example": "3fd85f74b32742f1bff64a85009dda07",
  "maxLength": 32,
  "description": "Share identifier tag.",
  "x-auditable": true
}
string resource-sharing_share_kind
{
  "enum": [
    "sent",
    "received"
  ],
  "type": "string",
  "x-auditable": true
}
string resource-sharing_share_name
{
  "type": "string",
  "example": "My Shared WAF Managed Rule",
  "description": "The name of the share.",
  "x-auditable": true
}
object resource-sharing_share_object
{
  "required": [
    "id",
    "name",
    "account_id",
    "account_name",
    "organization_id",
    "created",
    "modified",
    "status",
    "target_type"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/resource-sharing_share_id"
    },
    "kind": {
      "$ref": "#/components/schemas/resource-sharing_share_kind"
    },
    "name": {
      "$ref": "#/components/schemas/resource-sharing_share_name"
    },
    "status": {
      "$ref": "#/components/schemas/resource-sharing_share_status"
    },
    "created": {
      "$ref": "#/components/schemas/resource-sharing_created"
    },
    "modified": {
      "$ref": "#/components/schemas/resource-sharing_modified"
    },
    "resources": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/resource-sharing_share_resource_object"
      },
      "description": "A list of resources that are part of the share. This field is only included when requested via the 'include_resources' parameter."
    },
    "account_id": {
      "$ref": "#/components/schemas/resource-sharing_account_id"
    },
    "target_type": {
      "$ref": "#/components/schemas/resource-sharing_share_target_type"
    },
    "account_name": {
      "$ref": "#/components/schemas/resource-sharing_account_name"
    },
    "organization_id": {
      "$ref": "#/components/schemas/resource-sharing_organization_id"
    },
    "associated_recipient_count": {
      "type": "integer",
      "example": 10,
      "description": "The number of recipients in the 'associated' state. This field is only included when requested via the 'include_recipient_counts' parameter."
    },
    "associating_recipient_count": {
      "type": "integer",
      "example": 1,
      "description": "The number of recipients in the 'associating' state. This field is only included when requested via the 'include_recipient_counts' parameter."
    },
    "disassociated_recipient_count": {
      "type": "integer",
      "example": 0,
      "description": "The number of recipients in the 'disassociated' state. This field is only included when requested via the 'include_recipient_counts' parameter."
    },
    "disassociating_recipient_count": {
      "type": "integer",
      "example": 0,
      "description": "The number of recipients in the 'disassociating' state. This field is only included when requested via the 'include_recipient_counts' parameter."
    }
  }
}
object resource-sharing_share_recipient_object
{
  "required": [
    "id",
    "account_id",
    "association_status",
    "created",
    "modified"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/resource-sharing_recipient_id"
    },
    "created": {
      "$ref": "#/components/schemas/resource-sharing_created"
    },
    "modified": {
      "$ref": "#/components/schemas/resource-sharing_modified"
    },
    "resources": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/resource-sharing_share_recipient_resource_object"
      }
    },
    "account_id": {
      "$ref": "#/components/schemas/resource-sharing_account_id"
    },
    "association_status": {
      "$ref": "#/components/schemas/resource-sharing_recipient_association_status"
    }
  }
}
object resource-sharing_share_recipient_resource_object
{
  "required": [
    "error",
    "terminal",
    "resource_id",
    "resource_version"
  ],
  "properties": {
    "error": {
      "$ref": "#/components/schemas/resource-sharing_recipient_resource_error"
    },
    "terminal": {
      "$ref": "#/components/schemas/resource-sharing_recipient_resource_error_terminal"
    },
    "resource_id": {
      "$ref": "#/components/schemas/resource-sharing_resource_resource_id"
    },
    "resource_version": {
      "$ref": "#/components/schemas/resource-sharing_resource_version"
    }
  }
}
object resource-sharing_share_recipient_response_collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/resource-sharing_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/resource-sharing_share_recipient_object"
          }
        }
      }
    }
  ]
}
object resource-sharing_share_recipient_response_single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/resource-sharing_api-response-common"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/resource-sharing_share_recipient_object"
        }
      }
    }
  ]
}
object resource-sharing_share_resource_object
{
  "required": [
    "id",
    "resource_id",
    "resource_type",
    "resource_account_id",
    "meta",
    "status",
    "created",
    "modified",
    "resource_version"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/resource-sharing_resource_id"
    },
    "meta": {
      "$ref": "#/components/schemas/resource-sharing_resource_meta"
    },
    "status": {
      "$ref": "#/components/schemas/resource-sharing_resource_status"
    },
    "created": {
      "$ref": "#/components/schemas/resource-sharing_created"
    },
    "modified": {
      "$ref": "#/components/schemas/resource-sharing_modified"
    },
    "resource_id": {
      "$ref": "#/components/schemas/resource-sharing_resource_resource_id"
    },
    "resource_type": {
      "$ref": "#/components/schemas/resource-sharing_resource_type"
    },
    "resource_version": {
      "$ref": "#/components/schemas/resource-sharing_resource_version"
    },
    "resource_account_id": {
      "$ref": "#/components/schemas/resource-sharing_account_id"
    }
  }
}
object resource-sharing_share_resource_response_collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/resource-sharing_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/resource-sharing_share_resource_object"
          }
        }
      }
    }
  ]
}
object resource-sharing_share_resource_response_single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/resource-sharing_api-response-common"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/resource-sharing_share_resource_object"
        }
      }
    }
  ]
}
object resource-sharing_share_response_collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/resource-sharing_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/resource-sharing_share_object"
          }
        }
      }
    }
  ]
}
object resource-sharing_share_response_single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/resource-sharing_api-response-common"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/resource-sharing_share_object"
        }
      }
    }
  ]
}
string resource-sharing_share_status
{
  "enum": [
    "active",
    "deleting",
    "deleted"
  ],
  "type": "string",
  "x-auditable": true
}
string resource-sharing_share_target_type
{
  "enum": [
    "account",
    "organization"
  ],
  "type": "string",
  "x-auditable": true
}
array resource-sharing_update_share_recipients_request
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/resource-sharing_create_share_recipient_request"
  }
}
object resource-sharing_update_share_request
{
  "type": "object",
  "required": [
    "name"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/resource-sharing_share_name"
    }
  }
}
object resource-sharing_update_share_resource_request
{
  "type": "object",
  "required": [
    "meta"
  ],
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/resource-sharing_resource_meta"
    }
  }
}
object resource-sharing_v4error
{
  "type": "object",
  "required": [
    "code",
    "message"
  ],
  "properties": {
    "code": {
      "type": "integer",
      "minimum": 1000
    },
    "message": {
      "type": "string"
    }
  }
}
array resource-sharing_v4errors
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/resource-sharing_v4error"
  },
  "example": []
}
string resource-tagging_access_application_id
{
  "type": "string",
  "format": "uuid",
  "example": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
  "description": "Access application ID is required only for access_application_policy resources"
}
object resource-tagging_account_id
{
  "allOf": [
    {
      "$ref": "#/components/schemas/resource-tagging_identifier"
    }
  ],
  "minLength": 32
}
string resource-tagging_account_resource_type
{
  "enum": [
    "access_application",
    "access_group",
    "account",
    "ai_gateway",
    "alerting_policy",
    "alerting_webhook",
    "cloudflared_tunnel",
    "d1_database",
    "durable_object_namespace",
    "gateway_list",
    "gateway_rule",
    "image",
    "kv_namespace",
    "queue",
    "r2_bucket",
    "resource_share",
    "stream_live_input",
    "stream_video",
    "worker",
    "worker_version"
  ],
  "type": "string",
  "example": "worker",
  "description": "Identifies the type of account-level resource.",
  "x-auditable": true
}
string resource-tagging_account_resource_type_base_enum
{
  "enum": [
    "access_application",
    "access_group",
    "account",
    "ai_gateway",
    "alerting_policy",
    "alerting_webhook",
    "cloudflared_tunnel",
    "d1_database",
    "durable_object_namespace",
    "gateway_list",
    "gateway_rule",
    "image",
    "kv_namespace",
    "queue",
    "r2_bucket",
    "resource_share",
    "stream_live_input",
    "stream_video",
    "worker"
  ],
  "type": "string",
  "example": "worker",
  "description": "Enum for base account-level resource types (those with no extra required fields).",
  "x-auditable": true
}
string resource-tagging_account_resource_type_worker_version_enum
{
  "enum": [
    "worker_version"
  ],
  "type": "string",
  "example": "worker_version",
  "description": "Enum for worker_version resource type.",
  "x-auditable": true
}
object resource-tagging_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/resource-tagging_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/resource-tagging_messages"
    }
  }
}
object resource-tagging_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/resource-tagging_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/resource-tagging_messages"
        }
      ],
      "example": []
    }
  }
}
object resource-tagging_cursor_result_info
{
  "type": "object",
  "properties": {
    "count": {
      "type": "integer",
      "example": 20,
      "description": "Indicates the number of results returned in the current page."
    },
    "cursor": {
      "type": "string",
      "example": "eyJhY2NvdW50X2lkIjoxMjM0NTY3ODkwfQ",
      "nullable": true,
      "description": "Provides a cursor for the next page of results. Include this value in the next request to continue pagination."
    }
  }
}
object resource-tagging_delete_tags_request_account_level
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/resource-tagging_delete_tags_request_account_level_worker_version"
    },
    {
      "$ref": "#/components/schemas/resource-tagging_delete_tags_request_account_level_base"
    }
  ],
  "description": "Request body schema for deleting tags from account-level resources. Use /zones/{zone_id}/tags for zone-level resources.",
  "discriminator": {
    "mapping": {
      "image": "#/components/schemas/resource-tagging_delete_tags_request_account_level_base",
      "queue": "#/components/schemas/resource-tagging_delete_tags_request_account_level_base",
      "worker": "#/components/schemas/resource-tagging_delete_tags_request_account_level_base",
      "account": "#/components/schemas/resource-tagging_delete_tags_request_account_level_base",
      "r2_bucket": "#/components/schemas/resource-tagging_delete_tags_request_account_level_base",
      "ai_gateway": "#/components/schemas/resource-tagging_delete_tags_request_account_level_base",
      "d1_database": "#/components/schemas/resource-tagging_delete_tags_request_account_level_base",
      "access_group": "#/components/schemas/resource-tagging_delete_tags_request_account_level_base",
      "gateway_list": "#/components/schemas/resource-tagging_delete_tags_request_account_level_base",
      "gateway_rule": "#/components/schemas/resource-tagging_delete_tags_request_account_level_base",
      "kv_namespace": "#/components/schemas/resource-tagging_delete_tags_request_account_level_base",
      "stream_video": "#/components/schemas/resource-tagging_delete_tags_request_account_level_base",
      "resource_share": "#/components/schemas/resource-tagging_delete_tags_request_account_level_base",
      "worker_version": "#/components/schemas/resource-tagging_delete_tags_request_account_level_worker_version",
      "alerting_policy": "#/components/schemas/resource-tagging_delete_tags_request_account_level_base",
      "alerting_webhook": "#/components/schemas/resource-tagging_delete_tags_request_account_level_base",
      "stream_live_input": "#/components/schemas/resource-tagging_delete_tags_request_account_level_base",
      "access_application": "#/components/schemas/resource-tagging_delete_tags_request_account_level_base",
      "cloudflared_tunnel": "#/components/schemas/resource-tagging_delete_tags_request_account_level_base",
      "durable_object_namespace": "#/components/schemas/resource-tagging_delete_tags_request_account_level_base"
    },
    "propertyName": "resource_type"
  }
}
object resource-tagging_delete_tags_request_account_level_base
{
  "type": "object",
  "required": [
    "resource_type",
    "resource_id"
  ],
  "properties": {
    "resource_id": {
      "$ref": "#/components/schemas/resource-tagging_resource_id"
    },
    "resource_type": {
      "$ref": "#/components/schemas/resource-tagging_account_resource_type_base_enum"
    }
  },
  "description": "Request body schema for deleting tags from account-level resources."
}
object resource-tagging_delete_tags_request_account_level_worker_version
{
  "allOf": [
    {
      "$ref": "#/components/schemas/resource-tagging_delete_tags_request_account_level_base"
    },
    {
      "required": [
        "worker_id"
      ],
      "properties": {
        "worker_id": {
          "$ref": "#/components/schemas/resource-tagging_worker_id"
        },
        "resource_type": {
          "$ref": "#/components/schemas/resource-tagging_account_resource_type_worker_version_enum"
        }
      }
    }
  ],
  "description": "Request body schema for deleting tags from worker_version resources."
}
object resource-tagging_delete_tags_request_zone_level
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/resource-tagging_delete_tags_request_zone_level_base"
    },
    {
      "$ref": "#/components/schemas/resource-tagging_delete_tags_request_zone_level_access_application_policy"
    }
  ],
  "description": "Request body schema for deleting tags from zone-level resources.",
  "discriminator": {
    "mapping": {
      "zone": "#/components/schemas/resource-tagging_delete_tags_request_zone_level_base",
      "dns_record": "#/components/schemas/resource-tagging_delete_tags_request_zone_level_base",
      "custom_hostname": "#/components/schemas/resource-tagging_delete_tags_request_zone_level_base",
      "custom_certificate": "#/components/schemas/resource-tagging_delete_tags_request_zone_level_base",
      "api_gateway_operation": "#/components/schemas/resource-tagging_delete_tags_request_zone_level_base",
      "access_application_policy": "#/components/schemas/resource-tagging_delete_tags_request_zone_level_access_application_policy",
      "managed_client_certificate": "#/components/schemas/resource-tagging_delete_tags_request_zone_level_base"
    },
    "propertyName": "resource_type"
  }
}
object resource-tagging_delete_tags_request_zone_level_access_application_policy
{
  "allOf": [
    {
      "$ref": "#/components/schemas/resource-tagging_delete_tags_request_zone_level_base"
    },
    {
      "required": [
        "access_application_id"
      ],
      "properties": {
        "resource_type": {
          "$ref": "#/components/schemas/resource-tagging_zone_resource_type_access_application_policy_enum"
        },
        "access_application_id": {
          "$ref": "#/components/schemas/resource-tagging_access_application_id"
        }
      }
    }
  ],
  "description": "Request body schema for deleting tags from access_application_policy resources."
}
object resource-tagging_delete_tags_request_zone_level_base
{
  "type": "object",
  "required": [
    "resource_type",
    "resource_id"
  ],
  "properties": {
    "resource_id": {
      "$ref": "#/components/schemas/resource-tagging_resource_id"
    },
    "resource_type": {
      "$ref": "#/components/schemas/resource-tagging_zone_resource_type_base_enum"
    }
  },
  "description": "Request body schema for deleting tags from zone-level resources. Zone ID comes from URL path."
}
string resource-tagging_etag
{
  "type": "string",
  "example": "v1:RBNvo1WzZ4oRRq0W9-hkng",
  "readOnly": true,
  "description": "ETag identifier for optimistic concurrency control. Formatted as \"v1:<hash>\" where\nthe hash is the base64url-encoded SHA-256 (truncated to 128 bits) of the tags map\ncanonicalized using RFC 8785 (JSON Canonicalization Scheme). Clients should treat\nETags as opaque strings and pass them back via the If-Match header on write operations.\n"
}
string resource-tagging_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Identifier.",
  "x-auditable": true
}
array resource-tagging_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string resource-tagging_resource_id
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "description": "Identifies the unique resource.",
  "x-auditable": true
}
string resource-tagging_resource_name
{
  "type": "string",
  "example": "my-worker-script",
  "description": "Human-readable name of the resource."
}
string resource-tagging_resource_type
{
  "enum": [
    "access_application",
    "access_application_policy",
    "access_group",
    "account",
    "ai_gateway",
    "alerting_policy",
    "alerting_webhook",
    "api_gateway_operation",
    "cloudflared_tunnel",
    "custom_certificate",
    "custom_hostname",
    "d1_database",
    "dns_record",
    "durable_object_namespace",
    "gateway_list",
    "gateway_rule",
    "image",
    "kv_namespace",
    "managed_client_certificate",
    "queue",
    "r2_bucket",
    "resource_share",
    "stream_live_input",
    "stream_video",
    "worker",
    "worker_version",
    "zone"
  ],
  "type": "string",
  "example": "zone",
  "description": "Identifies the type of resource.",
  "x-auditable": true
}
object resource-tagging_set_tags_request_account_level
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/resource-tagging_set_tags_request_account_level_worker_version"
    },
    {
      "$ref": "#/components/schemas/resource-tagging_set_tags_request_account_level_base"
    }
  ],
  "description": "Request body schema for setting tags on account-level resources.",
  "discriminator": {
    "mapping": {
      "image": "#/components/schemas/resource-tagging_set_tags_request_account_level_base",
      "queue": "#/components/schemas/resource-tagging_set_tags_request_account_level_base",
      "worker": "#/components/schemas/resource-tagging_set_tags_request_account_level_base",
      "account": "#/components/schemas/resource-tagging_set_tags_request_account_level_base",
      "r2_bucket": "#/components/schemas/resource-tagging_set_tags_request_account_level_base",
      "ai_gateway": "#/components/schemas/resource-tagging_set_tags_request_account_level_base",
      "d1_database": "#/components/schemas/resource-tagging_set_tags_request_account_level_base",
      "access_group": "#/components/schemas/resource-tagging_set_tags_request_account_level_base",
      "gateway_list": "#/components/schemas/resource-tagging_set_tags_request_account_level_base",
      "gateway_rule": "#/components/schemas/resource-tagging_set_tags_request_account_level_base",
      "kv_namespace": "#/components/schemas/resource-tagging_set_tags_request_account_level_base",
      "stream_video": "#/components/schemas/resource-tagging_set_tags_request_account_level_base",
      "resource_share": "#/components/schemas/resource-tagging_set_tags_request_account_level_base",
      "worker_version": "#/components/schemas/resource-tagging_set_tags_request_account_level_worker_version",
      "alerting_policy": "#/components/schemas/resource-tagging_set_tags_request_account_level_base",
      "alerting_webhook": "#/components/schemas/resource-tagging_set_tags_request_account_level_base",
      "stream_live_input": "#/components/schemas/resource-tagging_set_tags_request_account_level_base",
      "access_application": "#/components/schemas/resource-tagging_set_tags_request_account_level_base",
      "cloudflared_tunnel": "#/components/schemas/resource-tagging_set_tags_request_account_level_base",
      "durable_object_namespace": "#/components/schemas/resource-tagging_set_tags_request_account_level_base"
    },
    "propertyName": "resource_type"
  }
}
object resource-tagging_set_tags_request_account_level_base
{
  "allOf": [
    {
      "$ref": "#/components/schemas/resource-tagging_delete_tags_request_account_level_base"
    },
    {
      "properties": {
        "tags": {
          "$ref": "#/components/schemas/resource-tagging_tags"
        }
      }
    }
  ],
  "description": "Request body schema for setting tags on account-level resources with no extra requirements."
}
object resource-tagging_set_tags_request_account_level_worker_version
{
  "allOf": [
    {
      "$ref": "#/components/schemas/resource-tagging_delete_tags_request_account_level_worker_version"
    },
    {
      "properties": {
        "tags": {
          "$ref": "#/components/schemas/resource-tagging_tags"
        }
      }
    }
  ],
  "description": "Request body schema for setting tags on worker_version resources."
}
object resource-tagging_set_tags_request_zone_level
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/resource-tagging_set_tags_request_zone_level_base"
    },
    {
      "$ref": "#/components/schemas/resource-tagging_set_tags_request_zone_level_access_application_policy"
    }
  ],
  "description": "Request body schema for setting tags on zone-level resources.",
  "discriminator": {
    "mapping": {
      "zone": "#/components/schemas/resource-tagging_set_tags_request_zone_level_base",
      "dns_record": "#/components/schemas/resource-tagging_set_tags_request_zone_level_base",
      "custom_hostname": "#/components/schemas/resource-tagging_set_tags_request_zone_level_base",
      "custom_certificate": "#/components/schemas/resource-tagging_set_tags_request_zone_level_base",
      "api_gateway_operation": "#/components/schemas/resource-tagging_set_tags_request_zone_level_base",
      "access_application_policy": "#/components/schemas/resource-tagging_set_tags_request_zone_level_access_application_policy",
      "managed_client_certificate": "#/components/schemas/resource-tagging_set_tags_request_zone_level_base"
    },
    "propertyName": "resource_type"
  }
}
object resource-tagging_set_tags_request_zone_level_access_application_policy
{
  "allOf": [
    {
      "$ref": "#/components/schemas/resource-tagging_delete_tags_request_zone_level_access_application_policy"
    },
    {
      "properties": {
        "tags": {
          "$ref": "#/components/schemas/resource-tagging_tags"
        }
      }
    }
  ],
  "description": "Request body schema for setting tags on access_application_policy resources."
}
object resource-tagging_set_tags_request_zone_level_base
{
  "allOf": [
    {
      "$ref": "#/components/schemas/resource-tagging_delete_tags_request_zone_level_base"
    },
    {
      "properties": {
        "tags": {
          "$ref": "#/components/schemas/resource-tagging_tags"
        }
      }
    }
  ],
  "description": "Request body schema for setting tags on zone-level resources with no extra requirements."
}
object resource-tagging_tag_keys_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/resource-tagging_api-response-common"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "example": [
            "environment",
            "team",
            "region"
          ],
          "description": "Contains an array of distinct tag keys."
        },
        "result_info": {
          "$ref": "#/components/schemas/resource-tagging_cursor_result_info"
        }
      }
    }
  ]
}
object resource-tagging_tag_values_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/resource-tagging_api-response-common"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "example": [
            "production",
            "staging"
          ]
        },
        "result_info": {
          "$ref": "#/components/schemas/resource-tagging_cursor_result_info"
        }
      }
    }
  ]
}
object resource-tagging_tagged_resource_object
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_access_application"
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_access_application_policy"
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_access_group"
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_account"
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_ai_gateway"
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_alerting_policy"
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_alerting_webhook"
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_api_gateway_operation"
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_cloudflared_tunnel"
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_custom_certificate"
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_custom_hostname"
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_d1_database"
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_dns_record"
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_durable_object_namespace"
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_gateway_list"
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_gateway_rule"
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_image"
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_kv_namespace"
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_managed_client_certificate"
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_queue"
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_r2_bucket"
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_resource_share"
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_stream_live_input"
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_stream_video"
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_worker"
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_worker_version"
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_zone"
    }
  ],
  "discriminator": {
    "mapping": {
      "zone": "#/components/schemas/resource-tagging_tagged_resource_object_zone",
      "image": "#/components/schemas/resource-tagging_tagged_resource_object_image",
      "queue": "#/components/schemas/resource-tagging_tagged_resource_object_queue",
      "worker": "#/components/schemas/resource-tagging_tagged_resource_object_worker",
      "account": "#/components/schemas/resource-tagging_tagged_resource_object_account",
      "r2_bucket": "#/components/schemas/resource-tagging_tagged_resource_object_r2_bucket",
      "ai_gateway": "#/components/schemas/resource-tagging_tagged_resource_object_ai_gateway",
      "dns_record": "#/components/schemas/resource-tagging_tagged_resource_object_dns_record",
      "d1_database": "#/components/schemas/resource-tagging_tagged_resource_object_d1_database",
      "access_group": "#/components/schemas/resource-tagging_tagged_resource_object_access_group",
      "gateway_list": "#/components/schemas/resource-tagging_tagged_resource_object_gateway_list",
      "gateway_rule": "#/components/schemas/resource-tagging_tagged_resource_object_gateway_rule",
      "kv_namespace": "#/components/schemas/resource-tagging_tagged_resource_object_kv_namespace",
      "stream_video": "#/components/schemas/resource-tagging_tagged_resource_object_stream_video",
      "resource_share": "#/components/schemas/resource-tagging_tagged_resource_object_resource_share",
      "worker_version": "#/components/schemas/resource-tagging_tagged_resource_object_worker_version",
      "alerting_policy": "#/components/schemas/resource-tagging_tagged_resource_object_alerting_policy",
      "custom_hostname": "#/components/schemas/resource-tagging_tagged_resource_object_custom_hostname",
      "alerting_webhook": "#/components/schemas/resource-tagging_tagged_resource_object_alerting_webhook",
      "stream_live_input": "#/components/schemas/resource-tagging_tagged_resource_object_stream_live_input",
      "access_application": "#/components/schemas/resource-tagging_tagged_resource_object_access_application",
      "cloudflared_tunnel": "#/components/schemas/resource-tagging_tagged_resource_object_cloudflared_tunnel",
      "custom_certificate": "#/components/schemas/resource-tagging_tagged_resource_object_custom_certificate",
      "api_gateway_operation": "#/components/schemas/resource-tagging_tagged_resource_object_api_gateway_operation",
      "durable_object_namespace": "#/components/schemas/resource-tagging_tagged_resource_object_durable_object_namespace",
      "access_application_policy": "#/components/schemas/resource-tagging_tagged_resource_object_access_application_policy",
      "managed_client_certificate": "#/components/schemas/resource-tagging_tagged_resource_object_managed_client_certificate"
    },
    "propertyName": "type"
  }
}
object resource-tagging_tagged_resource_object_access_application
{
  "allOf": [
    {
      "type": "object",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "enum": [
            "access_application"
          ],
          "type": "string"
        }
      }
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_account_level_base"
    }
  ],
  "description": "Response for access_application resources"
}
object resource-tagging_tagged_resource_object_access_application_policy
{
  "allOf": [
    {
      "type": "object",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "enum": [
            "access_application_policy"
          ],
          "type": "string"
        }
      }
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_access_application_policy_base"
    }
  ],
  "description": "Response for access_application_policy resources"
}
object resource-tagging_tagged_resource_object_access_application_policy_base
{
  "type": "object",
  "required": [
    "id",
    "tags",
    "name",
    "etag",
    "zone_id",
    "access_application_id"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/resource-tagging_resource_id"
    },
    "etag": {
      "$ref": "#/components/schemas/resource-tagging_etag"
    },
    "name": {
      "$ref": "#/components/schemas/resource-tagging_resource_name"
    },
    "tags": {
      "$ref": "#/components/schemas/resource-tagging_tags"
    },
    "zone_id": {
      "$ref": "#/components/schemas/resource-tagging_zone_id"
    },
    "access_application_id": {
      "$ref": "#/components/schemas/resource-tagging_access_application_id"
    }
  },
  "description": "Base schema for access_application_policy resources (without type discriminator)"
}
object resource-tagging_tagged_resource_object_access_group
{
  "allOf": [
    {
      "type": "object",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "enum": [
            "access_group"
          ],
          "type": "string"
        }
      }
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_account_level_base"
    }
  ],
  "description": "Response for access_group resources"
}
object resource-tagging_tagged_resource_object_account
{
  "allOf": [
    {
      "type": "object",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "enum": [
            "account"
          ],
          "type": "string"
        }
      }
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_account_level_base"
    }
  ],
  "description": "Response for account resources"
}
object resource-tagging_tagged_resource_object_account_level_base
{
  "type": "object",
  "required": [
    "id",
    "tags",
    "name",
    "etag"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/resource-tagging_resource_id"
    },
    "etag": {
      "$ref": "#/components/schemas/resource-tagging_etag"
    },
    "name": {
      "$ref": "#/components/schemas/resource-tagging_resource_name"
    },
    "tags": {
      "$ref": "#/components/schemas/resource-tagging_tags"
    }
  },
  "description": "Base schema for account-level resources (without type discriminator)"
}
object resource-tagging_tagged_resource_object_ai_gateway
{
  "allOf": [
    {
      "type": "object",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "enum": [
            "ai_gateway"
          ],
          "type": "string"
        }
      }
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_account_level_base"
    }
  ],
  "description": "Response for ai_gateway resources"
}
object resource-tagging_tagged_resource_object_alerting_policy
{
  "allOf": [
    {
      "type": "object",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "enum": [
            "alerting_policy"
          ],
          "type": "string"
        }
      }
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_account_level_base"
    }
  ],
  "description": "Response for alerting_policy resources"
}
object resource-tagging_tagged_resource_object_alerting_webhook
{
  "allOf": [
    {
      "type": "object",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "enum": [
            "alerting_webhook"
          ],
          "type": "string"
        }
      }
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_account_level_base"
    }
  ],
  "description": "Response for alerting_webhook resources"
}
object resource-tagging_tagged_resource_object_api_gateway_operation
{
  "allOf": [
    {
      "type": "object",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "enum": [
            "api_gateway_operation"
          ],
          "type": "string"
        }
      }
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_zone_level_base"
    }
  ],
  "description": "Response for api_gateway_operation resources"
}
object resource-tagging_tagged_resource_object_cloudflared_tunnel
{
  "allOf": [
    {
      "type": "object",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "enum": [
            "cloudflared_tunnel"
          ],
          "type": "string"
        }
      }
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_account_level_base"
    }
  ],
  "description": "Response for cloudflared_tunnel resources"
}
object resource-tagging_tagged_resource_object_custom_certificate
{
  "allOf": [
    {
      "type": "object",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "enum": [
            "custom_certificate"
          ],
          "type": "string"
        }
      }
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_zone_level_base"
    }
  ],
  "description": "Response for custom_certificate resources"
}
object resource-tagging_tagged_resource_object_custom_hostname
{
  "allOf": [
    {
      "type": "object",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "enum": [
            "custom_hostname"
          ],
          "type": "string"
        }
      }
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_zone_level_base"
    }
  ],
  "description": "Response for custom_hostname resources"
}
object resource-tagging_tagged_resource_object_d1_database
{
  "allOf": [
    {
      "type": "object",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "enum": [
            "d1_database"
          ],
          "type": "string"
        }
      }
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_account_level_base"
    }
  ],
  "description": "Response for d1_database resources"
}
object resource-tagging_tagged_resource_object_dns_record
{
  "allOf": [
    {
      "type": "object",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "enum": [
            "dns_record"
          ],
          "type": "string"
        }
      }
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_zone_level_base"
    }
  ],
  "description": "Response for dns_record resources"
}
object resource-tagging_tagged_resource_object_durable_object_namespace
{
  "allOf": [
    {
      "type": "object",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "enum": [
            "durable_object_namespace"
          ],
          "type": "string"
        }
      }
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_account_level_base"
    }
  ],
  "description": "Response for durable_object_namespace resources"
}
object resource-tagging_tagged_resource_object_gateway_list
{
  "allOf": [
    {
      "type": "object",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "enum": [
            "gateway_list"
          ],
          "type": "string"
        }
      }
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_account_level_base"
    }
  ],
  "description": "Response for gateway_list resources"
}
object resource-tagging_tagged_resource_object_gateway_rule
{
  "allOf": [
    {
      "type": "object",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "enum": [
            "gateway_rule"
          ],
          "type": "string"
        }
      }
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_account_level_base"
    }
  ],
  "description": "Response for gateway_rule resources"
}
object resource-tagging_tagged_resource_object_image
{
  "allOf": [
    {
      "type": "object",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "enum": [
            "image"
          ],
          "type": "string"
        }
      }
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_account_level_base"
    }
  ],
  "description": "Response for image resources"
}
object resource-tagging_tagged_resource_object_kv_namespace
{
  "allOf": [
    {
      "type": "object",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "enum": [
            "kv_namespace"
          ],
          "type": "string"
        }
      }
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_account_level_base"
    }
  ],
  "description": "Response for kv_namespace resources"
}
object resource-tagging_tagged_resource_object_managed_client_certificate
{
  "allOf": [
    {
      "type": "object",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "enum": [
            "managed_client_certificate"
          ],
          "type": "string"
        }
      }
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_zone_level_base"
    }
  ],
  "description": "Response for managed_client_certificate resources"
}
object resource-tagging_tagged_resource_object_queue
{
  "allOf": [
    {
      "type": "object",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "enum": [
            "queue"
          ],
          "type": "string"
        }
      }
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_account_level_base"
    }
  ],
  "description": "Response for queue resources"
}
object resource-tagging_tagged_resource_object_r2_bucket
{
  "allOf": [
    {
      "type": "object",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "enum": [
            "r2_bucket"
          ],
          "type": "string"
        }
      }
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_account_level_base"
    }
  ],
  "description": "Response for r2_bucket resources"
}
object resource-tagging_tagged_resource_object_resource_share
{
  "allOf": [
    {
      "type": "object",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "enum": [
            "resource_share"
          ],
          "type": "string"
        }
      }
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_account_level_base"
    }
  ],
  "description": "Response for resource_share resources"
}
object resource-tagging_tagged_resource_object_stream_live_input
{
  "allOf": [
    {
      "type": "object",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "enum": [
            "stream_live_input"
          ],
          "type": "string"
        }
      }
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_account_level_base"
    }
  ],
  "description": "Response for stream_live_input resources"
}
object resource-tagging_tagged_resource_object_stream_video
{
  "allOf": [
    {
      "type": "object",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "enum": [
            "stream_video"
          ],
          "type": "string"
        }
      }
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_account_level_base"
    }
  ],
  "description": "Response for stream_video resources"
}
object resource-tagging_tagged_resource_object_worker
{
  "allOf": [
    {
      "type": "object",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "enum": [
            "worker"
          ],
          "type": "string"
        }
      }
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_account_level_base"
    }
  ],
  "description": "Response for worker resources"
}
object resource-tagging_tagged_resource_object_worker_version
{
  "allOf": [
    {
      "type": "object",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "enum": [
            "worker_version"
          ],
          "type": "string"
        }
      }
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_worker_version_base"
    }
  ],
  "description": "Response for worker_version resources"
}
object resource-tagging_tagged_resource_object_worker_version_base
{
  "type": "object",
  "required": [
    "id",
    "tags",
    "name",
    "etag",
    "worker_id"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/resource-tagging_resource_id"
    },
    "etag": {
      "$ref": "#/components/schemas/resource-tagging_etag"
    },
    "name": {
      "$ref": "#/components/schemas/resource-tagging_resource_name"
    },
    "tags": {
      "$ref": "#/components/schemas/resource-tagging_tags"
    },
    "worker_id": {
      "$ref": "#/components/schemas/resource-tagging_worker_id"
    }
  },
  "description": "Base schema for worker_version resources (without type discriminator)"
}
object resource-tagging_tagged_resource_object_zone
{
  "allOf": [
    {
      "type": "object",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "enum": [
            "zone"
          ],
          "type": "string"
        }
      }
    },
    {
      "$ref": "#/components/schemas/resource-tagging_tagged_resource_object_zone_level_base"
    }
  ],
  "description": "Response for zone resources"
}
object resource-tagging_tagged_resource_object_zone_level_base
{
  "type": "object",
  "required": [
    "id",
    "tags",
    "name",
    "etag",
    "zone_id"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/resource-tagging_resource_id"
    },
    "etag": {
      "$ref": "#/components/schemas/resource-tagging_etag"
    },
    "name": {
      "$ref": "#/components/schemas/resource-tagging_resource_name"
    },
    "tags": {
      "$ref": "#/components/schemas/resource-tagging_tags"
    },
    "zone_id": {
      "$ref": "#/components/schemas/resource-tagging_zone_id"
    }
  },
  "description": "Base schema for zone-level resources (without type discriminator)"
}
object resource-tagging_tagged_resource_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/resource-tagging_api-response-common"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/resource-tagging_tagged_resource_object"
          }
        },
        "result_info": {
          "$ref": "#/components/schemas/resource-tagging_cursor_result_info"
        }
      }
    }
  ]
}
object resource-tagging_tagged_resource_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/resource-tagging_api-response-common"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/resource-tagging_tagged_resource_object"
        }
      }
    }
  ]
}
object resource-tagging_tags
{
  "type": "object",
  "example": {
    "team": "engineering",
    "environment": "production"
  },
  "description": "Contains key-value pairs of tags.",
  "x-auditable": true,
  "additionalProperties": {
    "type": "string",
    "minLength": 1
  }
}
string resource-tagging_worker_id
{
  "type": "string",
  "example": "3f72a691-44b3-4c11-8642-c18a88ddaa5e",
  "description": "Worker ID is required only for worker_version resources"
}
object resource-tagging_zone_id
{
  "allOf": [
    {
      "$ref": "#/components/schemas/resource-tagging_identifier"
    }
  ],
  "minLength": 32,
  "description": "Zone ID is required only for zone-level resources"
}
string resource-tagging_zone_resource_type
{
  "enum": [
    "access_application_policy",
    "api_gateway_operation",
    "custom_certificate",
    "custom_hostname",
    "dns_record",
    "managed_client_certificate",
    "zone"
  ],
  "type": "string",
  "example": "zone",
  "description": "Identifies the type of zone-level resource.",
  "x-auditable": true
}
string resource-tagging_zone_resource_type_access_application_policy_enum
{
  "enum": [
    "access_application_policy"
  ],
  "type": "string",
  "example": "access_application_policy",
  "description": "Enum for access_application_policy resource type.",
  "x-auditable": true
}
string resource-tagging_zone_resource_type_base_enum
{
  "enum": [
    "api_gateway_operation",
    "custom_certificate",
    "custom_hostname",
    "dns_record",
    "managed_client_certificate",
    "zone"
  ],
  "type": "string",
  "example": "zone",
  "description": "Enum for base zone-level resource types (those with no extra required fields).",
  "x-auditable": true
}
string rulesets_AccountId
{
  "type": "string",
  "title": "Account ID",
  "example": "abf9b32d38c5f572afde3336ec0ce302",
  "pattern": "^[0-9a-f]{32}$",
  "description": "The unique ID of the account."
}
object rulesets_BlockRule
{
  "allOf": [
    {
      "$ref": "#/components/schemas/rulesets_Rule"
    },
    {
      "title": "Block Rule",
      "properties": {
        "action": {
          "enum": [
            "block"
          ]
        },
        "description": {
          "example": "Block the request."
        },
        "action_parameters": {
          "properties": {
            "response": {
              "type": "object",
              "title": "Response",
              "required": [
                "status_code",
                "content",
                "content_type"
              ],
              "properties": {
                "content": {
                  "type": "string",
                  "title": "Content",
                  "example": "{\n  \"success\": false,\n  \"error\": \"you have been blocked\"\n}",
                  "minLength": 1,
                  "description": "The content to return."
                },
                "status_code": {
                  "type": "integer",
                  "title": "Status Code",
                  "maximum": 499,
                  "minimum": 400,
                  "description": "The status code to return."
                },
                "content_type": {
                  "type": "string",
                  "title": "Content Type",
                  "example": "application/json",
                  "minLength": 1,
                  "description": "The type of the content to return."
                }
              },
              "description": "The response to show when the block is applied."
            }
          }
        }
      }
    }
  ]
}
object rulesets_ChallengeRule
{
  "allOf": [
    {
      "$ref": "#/components/schemas/rulesets_Rule"
    },
    {
      "title": "Challenge Rule",
      "properties": {
        "action": {
          "enum": [
            "challenge"
          ]
        },
        "description": {
          "example": "Issue an Interactive Challenge if the visitor has not solved an Interactive Challenge prior to the request."
        }
      }
    }
  ]
}
object rulesets_CompressResponseRule
{
  "allOf": [
    {
      "$ref": "#/components/schemas/rulesets_Rule"
    },
    {
      "title": "Response Compression Rule",
      "properties": {
        "action": {
          "enum": [
            "compress_response"
          ]
        },
        "description": {
          "example": "Modify the compression algorithm used in the response."
        },
        "action_parameters": {
          "required": [
            "algorithms"
          ],
          "properties": {
            "algorithms": {
              "type": "array",
              "items": {
                "type": "object",
                "title": "Algorithm",
                "properties": {
                  "name": {
                    "enum": [
                      "none",
                      "auto",
                      "default",
                      "gzip",
                      "brotli",
                      "zstd"
                    ],
                    "type": "string",
                    "title": "Algorithm Name",
                    "example": "none",
                    "description": "Name of the compression algorithm to enable."
                  }
                },
                "description": "Compression algorithm to enable."
              },
              "title": "Algorithms",
              "minItems": 1,
              "description": "Custom order for compression algorithms.",
              "uniqueItems": true
            }
          }
        }
      }
    }
  ]
}
string rulesets_Cursor
{
  "type": "string",
  "title": "Cursor",
  "example": "dGhpc2lzYW5leGFtcGxlCg",
  "minLength": 1,
  "description": "The cursor to use for the next page."
}
object rulesets_DDoSDynamicRule
{
  "allOf": [
    {
      "$ref": "#/components/schemas/rulesets_Rule"
    },
    {
      "title": "DDoS Dynamic Rule",
      "properties": {
        "action": {
          "enum": [
            "ddos_dynamic"
          ]
        },
        "description": {
          "example": "Perform a specific action according to a set of internal guidelines defined by Cloudflare."
        }
      }
    }
  ]
}
array rulesets_Errors
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/rulesets_Message"
  },
  "title": "Errors",
  "description": "A list of error messages.",
  "uniqueItems": true
}
array rulesets_ExecuteCategoryOverrides
{
  "type": "array",
  "items": {
    "type": "object",
    "title": "Category Override",
    "required": [
      "category"
    ],
    "properties": {
      "action": {
        "allOf": [
          {
            "$ref": "#/components/schemas/rulesets_RuleAction"
          },
          {
            "example": "log",
            "description": "The action to override rules in the category with."
          }
        ]
      },
      "enabled": {
        "allOf": [
          {
            "$ref": "#/components/schemas/rulesets_RuleEnabled"
          },
          {
            "description": "Whether to enable execution of rules in the category."
          }
        ]
      },
      "category": {
        "allOf": [
          {
            "$ref": "#/components/schemas/rulesets_RuleCategory"
          },
          {
            "description": "The name of the category to override."
          }
        ]
      },
      "sensitivity_level": {
        "allOf": [
          {
            "$ref": "#/components/schemas/rulesets_ExecuteSensitivityLevel"
          },
          {
            "description": "The sensitivity level to use for rules in the category. This option is only applicable for DDoS phases."
          }
        ]
      }
    },
    "description": "A category-level override.",
    "minProperties": 2
  },
  "title": "Category Overrides",
  "minItems": 1,
  "description": "A list of category-level overrides. This option has the second-highest precedence after rule-level overrides.",
  "uniqueItems": true
}
object rulesets_ExecuteMatchedData
{
  "type": "object",
  "title": "Matched Data",
  "required": [
    "public_key"
  ],
  "properties": {
    "public_key": {
      "type": "string",
      "title": "Public Key",
      "example": "iGqBmyIUxuWt1rvxoAharN9FUXneUBxA/Y19PyyrEG0=",
      "minLength": 1,
      "description": "The public key to encrypt matched data logs with."
    }
  },
  "description": "The configuration to use for matched data logging."
}
object rulesets_ExecuteOverrides
{
  "type": "object",
  "title": "Overrides",
  "properties": {
    "rules": {
      "$ref": "#/components/schemas/rulesets_ExecuteRuleOverrides"
    },
    "action": {
      "allOf": [
        {
          "$ref": "#/components/schemas/rulesets_RuleAction"
        },
        {
          "example": "log",
          "description": "An action to override all rules with. This option has lower precedence than rule and category overrides."
        }
      ]
    },
    "enabled": {
      "allOf": [
        {
          "$ref": "#/components/schemas/rulesets_RuleEnabled"
        },
        {
          "description": "Whether to enable execution of all rules. This option has lower precedence than rule and category overrides."
        }
      ]
    },
    "categories": {
      "$ref": "#/components/schemas/rulesets_ExecuteCategoryOverrides"
    },
    "sensitivity_level": {
      "allOf": [
        {
          "$ref": "#/components/schemas/rulesets_ExecuteSensitivityLevel"
        },
        {
          "description": "A sensitivity level to set for all rules. This option has lower precedence than rule and category overrides and is only applicable for DDoS phases."
        }
      ]
    }
  },
  "description": "A set of overrides to apply to the target ruleset.",
  "minProperties": 1
}
object rulesets_ExecuteRule
{
  "allOf": [
    {
      "$ref": "#/components/schemas/rulesets_Rule"
    },
    {
      "title": "Execute Rule",
      "properties": {
        "action": {
          "enum": [
            "execute"
          ]
        },
        "description": {
          "example": "Execute another ruleset."
        },
        "action_parameters": {
          "required": [
            "id"
          ],
          "properties": {
            "id": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/rulesets_RulesetId"
                },
                {
                  "example": "4814384a9e5d4991b9815dcfc25d2f1f",
                  "description": "The ID of the ruleset to execute."
                }
              ]
            },
            "overrides": {
              "$ref": "#/components/schemas/rulesets_ExecuteOverrides"
            },
            "matched_data": {
              "$ref": "#/components/schemas/rulesets_ExecuteMatchedData"
            }
          }
        }
      }
    }
  ]
}
array rulesets_ExecuteRuleOverrides
{
  "type": "array",
  "items": {
    "type": "object",
    "title": "Rule Override",
    "required": [
      "id"
    ],
    "properties": {
      "id": {
        "allOf": [
          {
            "$ref": "#/components/schemas/rulesets_RuleId"
          },
          {
            "example": "8ac8bc2a661e475d940980f9317f28e1",
            "description": "The ID of the rule to override."
          }
        ]
      },
      "action": {
        "allOf": [
          {
            "$ref": "#/components/schemas/rulesets_RuleAction"
          },
          {
            "example": "log",
            "description": "The action to override the rule with."
          }
        ]
      },
      "enabled": {
        "allOf": [
          {
            "$ref": "#/components/schemas/rulesets_RuleEnabled"
          },
          {
            "description": "Whether to enable execution of the rule."
          }
        ]
      },
      "score_threshold": {
        "type": "integer",
        "title": "Score Threshold",
        "description": "The score threshold to use for the rule."
      },
      "sensitivity_level": {
        "allOf": [
          {
            "$ref": "#/components/schemas/rulesets_ExecuteSensitivityLevel"
          },
          {
            "description": "The sensitivity level to use for the rule. This option is only applicable for DDoS phases."
          }
        ]
      }
    },
    "description": "A rule-level override.",
    "minProperties": 2
  },
  "title": "Rule Overrides",
  "minItems": 1,
  "description": "A list of rule-level overrides. This option has the highest precedence.",
  "uniqueItems": true
}
string rulesets_ExecuteSensitivityLevel
{
  "enum": [
    "default",
    "medium",
    "low",
    "eoff"
  ],
  "type": "string",
  "title": "Sensitivity Level",
  "example": "default"
}
object rulesets_ForceConnectionCloseRule
{
  "allOf": [
    {
      "$ref": "#/components/schemas/rulesets_Rule"
    },
    {
      "title": "Force Connection Close Rule",
      "properties": {
        "action": {
          "enum": [
            "force_connection_close"
          ]
        },
        "description": {
          "example": "Close ongoing HTTP connections. This action does not block a request, but it forces the client to reconnect. For HTTP/2 and HTTP/3 connections, the connection will be closed even if it breaks other requests running on the same connection."
        }
      }
    }
  ]
}
object rulesets_JsChallengeRule
{
  "allOf": [
    {
      "$ref": "#/components/schemas/rulesets_Rule"
    },
    {
      "title": "JavaScript Challenge Rule",
      "properties": {
        "action": {
          "enum": [
            "js_challenge"
          ]
        },
        "description": {
          "example": "Issue a non-interactive JavaScript Challenge if the visitor has not solved an Interactive Challenge, Managed Challenge, or JavaScript Challenge prior to the request."
        }
      }
    }
  ]
}
array rulesets_LogCustomFieldCookieFields
{
  "type": "array",
  "items": {
    "type": "object",
    "title": "Cookie Field",
    "required": [
      "name"
    ],
    "properties": {
      "name": {
        "type": "string",
        "title": "Cookie Name",
        "example": "myCookie",
        "minLength": 1,
        "description": "The name of the cookie."
      }
    },
    "description": "The cookie field to log."
  },
  "title": "Cookie Fields",
  "minItems": 1,
  "description": "The cookie fields to log."
}
array rulesets_LogCustomFieldRawResponseFields
{
  "type": "array",
  "items": {
    "type": "object",
    "title": "Raw Response Field",
    "required": [
      "name"
    ],
    "properties": {
      "name": {
        "type": "string",
        "title": "Header Name",
        "example": "my-response-header",
        "minLength": 1,
        "description": "The name of the response header."
      },
      "preserve_duplicates": {
        "type": "boolean",
        "title": "Preserve Duplicates",
        "default": false,
        "example": true,
        "description": "Whether to log duplicate values of the same header."
      }
    },
    "description": "The raw response field to log."
  },
  "title": "Raw Response Fields",
  "minItems": 1,
  "description": "The raw response fields to log."
}
array rulesets_LogCustomFieldRequestFields
{
  "type": "array",
  "items": {
    "type": "object",
    "title": "Raw Request Field",
    "required": [
      "name"
    ],
    "properties": {
      "name": {
        "type": "string",
        "title": "Header Name",
        "example": "my-request-header",
        "minLength": 1,
        "description": "The name of the header."
      }
    },
    "description": "The raw request field to log."
  },
  "title": "Raw Request Fields",
  "minItems": 1,
  "description": "The raw request fields to log."
}
array rulesets_LogCustomFieldResponseFields
{
  "type": "array",
  "items": {
    "type": "object",
    "title": "Transformed Response Field",
    "required": [
      "name"
    ],
    "properties": {
      "name": {
        "type": "string",
        "title": "Header Name",
        "example": "my-response-header",
        "minLength": 1,
        "description": "The name of the response header."
      },
      "preserve_duplicates": {
        "type": "boolean",
        "title": "Preserve Duplicates",
        "default": false,
        "example": true,
        "description": "Whether to log duplicate values of the same header."
      }
    },
    "description": "The transformed response field to log."
  },
  "title": "Transformed Response Fields",
  "minItems": 1,
  "description": "The transformed response fields to log."
}
object rulesets_LogCustomFieldRule
{
  "allOf": [
    {
      "$ref": "#/components/schemas/rulesets_Rule"
    },
    {
      "title": "Log Custom Field Rule",
      "properties": {
        "action": {
          "enum": [
            "log_custom_field"
          ]
        },
        "description": {
          "example": "Log additional custom fields."
        },
        "action_parameters": {
          "properties": {
            "cookie_fields": {
              "$ref": "#/components/schemas/rulesets_LogCustomFieldCookieFields"
            },
            "request_fields": {
              "$ref": "#/components/schemas/rulesets_LogCustomFieldRequestFields"
            },
            "response_fields": {
              "$ref": "#/components/schemas/rulesets_LogCustomFieldResponseFields"
            },
            "raw_response_fields": {
              "$ref": "#/components/schemas/rulesets_LogCustomFieldRawResponseFields"
            },
            "transformed_request_fields": {
              "$ref": "#/components/schemas/rulesets_LogCustomFieldTransformedRequestFields"
            }
          },
          "minProperties": 1
        }
      }
    }
  ]
}
array rulesets_LogCustomFieldTransformedRequestFields
{
  "type": "array",
  "items": {
    "type": "object",
    "title": "Transformed Request Field",
    "required": [
      "name"
    ],
    "properties": {
      "name": {
        "type": "string",
        "title": "Header Name",
        "example": "my-request-header",
        "minLength": 1,
        "description": "The name of the header."
      }
    },
    "description": "The transformed request field to log."
  },
  "title": "Transformed Request Fields",
  "minItems": 1,
  "description": "The transformed request fields to log."
}
object rulesets_LogRule
{
  "allOf": [
    {
      "$ref": "#/components/schemas/rulesets_Rule"
    },
    {
      "title": "Log Rule",
      "properties": {
        "action": {
          "enum": [
            "log"
          ]
        },
        "description": {
          "example": "Log the request."
        }
      }
    }
  ]
}
object rulesets_ManagedChallengeRule
{
  "allOf": [
    {
      "$ref": "#/components/schemas/rulesets_Rule"
    },
    {
      "title": "Managed Challenge Rule",
      "properties": {
        "action": {
          "enum": [
            "managed_challenge"
          ]
        },
        "description": {
          "example": "Issue a Managed Challenge if the visitor has not solved a Managed Challenge or Interactive Challenge prior to the request."
        }
      }
    }
  ]
}
object rulesets_ManagedTransform
{
  "type": "object",
  "title": "Managed Transform",
  "required": [
    "id",
    "enabled",
    "has_conflict"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/rulesets_ManagedTransformId"
    },
    "enabled": {
      "type": "boolean",
      "title": "Enabled",
      "example": true,
      "description": "Whether the Managed Transform is enabled."
    },
    "has_conflict": {
      "type": "boolean",
      "title": "Has Conflict",
      "example": false,
      "readOnly": true,
      "description": "Whether the Managed Transform conflicts with the currently-enabled Managed Transforms.",
      "x-stainless-skip": [
        "terraform"
      ]
    },
    "conflicts_with": {
      "type": "array",
      "items": {
        "allOf": [
          {
            "$ref": "#/components/schemas/rulesets_ManagedTransformId"
          },
          {
            "example": "add_true_client_ip_headers"
          }
        ]
      },
      "title": "Conflicts With",
      "minItems": 1,
      "readOnly": true,
      "description": "The Managed Transforms that this Managed Transform conflicts with.",
      "uniqueItems": true,
      "x-stainless-skip": [
        "terraform"
      ]
    }
  },
  "description": "A Managed Transform object."
}
string rulesets_ManagedTransformId
{
  "type": "string",
  "title": "Transform ID",
  "minLength": 1,
  "description": "The human-readable identifier of the Managed Transform."
}
object rulesets_ManagedTransforms
{
  "type": "object",
  "title": "Managed Transforms",
  "required": [
    "managed_request_headers",
    "managed_response_headers"
  ],
  "properties": {
    "managed_request_headers": {
      "type": "array",
      "items": {
        "allOf": [
          {
            "$ref": "#/components/schemas/rulesets_ManagedTransform"
          },
          {
            "properties": {
              "id": {
                "example": "add_bot_protection_headers"
              }
            }
          }
        ]
      },
      "title": "Managed Request Transforms",
      "description": "The list of Managed Request Transforms.",
      "uniqueItems": true
    },
    "managed_response_headers": {
      "type": "array",
      "items": {
        "allOf": [
          {
            "$ref": "#/components/schemas/rulesets_ManagedTransform"
          },
          {
            "properties": {
              "id": {
                "example": "add_security_headers"
              }
            }
          }
        ]
      },
      "title": "Managed Response Transforms",
      "description": "The list of Managed Response Transforms.",
      "uniqueItems": true
    }
  },
  "description": "A Managed Transforms object."
}
object rulesets_Message
{
  "type": "object",
  "title": "Message",
  "required": [
    "message"
  ],
  "properties": {
    "code": {
      "type": "integer",
      "title": "Code",
      "example": 10000,
      "description": "A unique code for this message."
    },
    "source": {
      "type": "object",
      "title": "Source",
      "required": [
        "pointer"
      ],
      "properties": {
        "pointer": {
          "type": "string",
          "title": "Pointer",
          "example": "/rules/0/action",
          "minLength": 1,
          "description": "A JSON pointer to the field that is the source of the message."
        }
      },
      "description": "The source of this message."
    },
    "message": {
      "type": "string",
      "title": "Description",
      "example": "something bad happened",
      "minLength": 1,
      "description": "A text description of this message."
    }
  },
  "description": "A message."
}
array rulesets_Messages
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/rulesets_Message"
  },
  "title": "Messages",
  "description": "A list of warning messages.",
  "uniqueItems": true
}
integer rulesets_PerPage
{
  "type": "integer",
  "title": "Per Page",
  "example": 3,
  "maximum": 50,
  "minimum": 1,
  "description": "The number of rulesets to return per page."
}
object rulesets_RedirectFromList
{
  "type": "object",
  "title": "Bulk Redirect",
  "required": [
    "name",
    "key"
  ],
  "properties": {
    "key": {
      "type": "string",
      "title": "Lookup Key",
      "example": "http.request.full_uri",
      "minLength": 1,
      "description": "An expression that evaluates to the list lookup key."
    },
    "name": {
      "type": "string",
      "title": "List Name",
      "example": "my_list",
      "pattern": "^[a-zA-Z0-9_]+$",
      "description": "The name of the list to match against."
    }
  },
  "description": "A redirect based on a bulk list lookup."
}
object rulesets_RedirectFromValue
{
  "type": "object",
  "title": "Single Redirect",
  "required": [
    "target_url"
  ],
  "properties": {
    "target_url": {
      "type": "object",
      "title": "Target URL",
      "properties": {
        "value": {
          "type": "string",
          "title": "Redirect Value",
          "example": "https://example.com",
          "minLength": 1,
          "description": "A URL to redirect the request to."
        },
        "expression": {
          "type": "string",
          "title": "Redirect Expression",
          "example": "concat(\"https://example.com\", http.request.uri.path)",
          "minLength": 1,
          "description": "An expression that evaluates to a URL to redirect the request to."
        }
      },
      "description": "A URL to redirect the request to.",
      "maxProperties": 1,
      "minProperties": 1
    },
    "status_code": {
      "enum": [
        301,
        302,
        303,
        307,
        308
      ],
      "type": "integer",
      "title": "Status Code",
      "example": 302,
      "description": "The status code to use for the redirect."
    },
    "preserve_query_string": {
      "type": "boolean",
      "title": "Preserve Query String",
      "default": false,
      "example": true,
      "description": "Whether to keep the query string of the original request."
    }
  },
  "description": "A redirect based on the request properties."
}
object rulesets_RedirectRule
{
  "allOf": [
    {
      "$ref": "#/components/schemas/rulesets_Rule"
    },
    {
      "title": "Redirect Rule",
      "properties": {
        "action": {
          "enum": [
            "redirect"
          ]
        },
        "description": {
          "example": "Redirect the request."
        },
        "action_parameters": {
          "properties": {
            "from_list": {
              "$ref": "#/components/schemas/rulesets_RedirectFromList"
            },
            "from_value": {
              "$ref": "#/components/schemas/rulesets_RedirectFromValue"
            }
          },
          "maxProperties": 1,
          "minProperties": 1
        }
      }
    }
  ]
}
object rulesets_RequestRule
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/rulesets_BlockRule"
    },
    {
      "$ref": "#/components/schemas/rulesets_ChallengeRule"
    },
    {
      "$ref": "#/components/schemas/rulesets_CompressResponseRule"
    },
    {
      "$ref": "#/components/schemas/rulesets_DDoSDynamicRule"
    },
    {
      "$ref": "#/components/schemas/rulesets_ExecuteRule"
    },
    {
      "$ref": "#/components/schemas/rulesets_ForceConnectionCloseRule"
    },
    {
      "$ref": "#/components/schemas/rulesets_JsChallengeRule"
    },
    {
      "$ref": "#/components/schemas/rulesets_LogRule"
    },
    {
      "$ref": "#/components/schemas/rulesets_LogCustomFieldRule"
    },
    {
      "$ref": "#/components/schemas/rulesets_ManagedChallengeRule"
    },
    {
      "$ref": "#/components/schemas/rulesets_RedirectRule"
    },
    {
      "$ref": "#/components/schemas/rulesets_RewriteRule"
    },
    {
      "$ref": "#/components/schemas/rulesets_RouteRule"
    },
    {
      "$ref": "#/components/schemas/rulesets_ScoreRule"
    },
    {
      "$ref": "#/components/schemas/rulesets_ServeErrorRule"
    },
    {
      "$ref": "#/components/schemas/rulesets_SetCacheControlRule"
    },
    {
      "$ref": "#/components/schemas/rulesets_SetCacheSettingsRule"
    },
    {
      "$ref": "#/components/schemas/rulesets_SetCacheTagsRule"
    },
    {
      "$ref": "#/components/schemas/rulesets_SetConfigRule"
    },
    {
      "$ref": "#/components/schemas/rulesets_SkipRule"
    }
  ],
  "discriminator": {
    "mapping": {
      "log": "#/components/schemas/rulesets_LogRule",
      "skip": "#/components/schemas/rulesets_SkipRule",
      "block": "#/components/schemas/rulesets_BlockRule",
      "route": "#/components/schemas/rulesets_RouteRule",
      "score": "#/components/schemas/rulesets_ScoreRule",
      "execute": "#/components/schemas/rulesets_ExecuteRule",
      "rewrite": "#/components/schemas/rulesets_RewriteRule",
      "redirect": "#/components/schemas/rulesets_RedirectRule",
      "challenge": "#/components/schemas/rulesets_ChallengeRule",
      "set_config": "#/components/schemas/rulesets_SetConfigRule",
      "serve_error": "#/components/schemas/rulesets_ServeErrorRule",
      "ddos_dynamic": "#/components/schemas/rulesets_DDoSDynamicRule",
      "js_challenge": "#/components/schemas/rulesets_JsChallengeRule",
      "set_cache_tags": "#/components/schemas/rulesets_SetCacheTagsRule",
      "log_custom_field": "#/components/schemas/rulesets_LogCustomFieldRule",
      "compress_response": "#/components/schemas/rulesets_CompressResponseRule",
      "managed_challenge": "#/components/schemas/rulesets_ManagedChallengeRule",
      "set_cache_control": "#/components/schemas/rulesets_SetCacheControlRule",
      "set_cache_settings": "#/components/schemas/rulesets_SetCacheSettingsRule",
      "force_connection_close": "#/components/schemas/rulesets_ForceConnectionCloseRule"
    },
    "propertyName": "action"
  }
}
array rulesets_RequestRules
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/rulesets_RequestRule"
  },
  "title": "Rules",
  "default": [],
  "description": "The list of rules in the ruleset."
}
object rulesets_Response
{
  "type": "object",
  "title": "Response",
  "required": [
    "result",
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/rulesets_Errors"
    },
    "result": {
      "title": "Result",
      "description": "A result."
    },
    "success": {
      "type": "boolean",
      "title": "Success",
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/rulesets_Messages"
    }
  },
  "description": "A response object."
}
object rulesets_ResponseRule
{
  "allOf": [
    {
      "$ref": "#/components/schemas/rulesets_RequestRule"
    },
    {
      "required": [
        "id",
        "expression",
        "action",
        "ref",
        "enabled"
      ]
    }
  ]
}
array rulesets_ResponseRules
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/rulesets_ResponseRule"
  },
  "title": "Rules",
  "description": "The list of rules in the ruleset."
}
object rulesets_ResultInfo
{
  "type": "object",
  "title": "Result Info",
  "properties": {
    "cursors": {
      "type": "object",
      "title": "Cursors",
      "required": [
        "after"
      ],
      "properties": {
        "after": {
          "allOf": [
            {
              "$ref": "#/components/schemas/rulesets_Cursor"
            },
            {
              "title": "After Cursor"
            }
          ]
        }
      },
      "description": "The set of cursors."
    }
  },
  "description": "Information to navigate the results."
}
string rulesets_RewriteHeaderExpression
{
  "type": "string",
  "title": "Header Expression",
  "example": "ip.src",
  "minLength": 1,
  "description": "An expression that evaluates to a value for the header."
}
string rulesets_RewriteHeaderOperation
{
  "type": "string",
  "title": "Operation",
  "description": "The operation to perform on the header."
}
string rulesets_RewriteHeaderValue
{
  "type": "string",
  "title": "Header Value",
  "example": "my-header-value",
  "minLength": 1,
  "description": "A static value for the header."
}
object rulesets_RewriteHeaders
{
  "type": "object",
  "title": "Headers",
  "example": {
    "client-http-version": {
      "operation": "set",
      "expression": "http.request.version"
    }
  },
  "description": "A map of headers to rewrite.",
  "minProperties": 1,
  "additionalProperties": {
    "oneOf": [
      {
        "type": "object",
        "title": "Add Static Header",
        "required": [
          "operation",
          "value"
        ],
        "properties": {
          "value": {
            "$ref": "#/components/schemas/rulesets_RewriteHeaderValue"
          },
          "operation": {
            "allOf": [
              {
                "$ref": "#/components/schemas/rulesets_RewriteHeaderOperation"
              },
              {
                "enum": [
                  "add"
                ]
              }
            ]
          }
        },
        "description": "A header with a static value to add."
      },
      {
        "type": "object",
        "title": "Add Dynamic Header",
        "required": [
          "operation",
          "expression"
        ],
        "properties": {
          "operation": {
            "allOf": [
              {
                "$ref": "#/components/schemas/rulesets_RewriteHeaderOperation"
              },
              {
                "enum": [
                  "add"
                ]
              }
            ]
          },
          "expression": {
            "$ref": "#/components/schemas/rulesets_RewriteHeaderExpression"
          }
        },
        "description": "A header with a dynamic value to add."
      },
      {
        "type": "object",
        "title": "Set Static Header",
        "required": [
          "operation",
          "value"
        ],
        "properties": {
          "value": {
            "$ref": "#/components/schemas/rulesets_RewriteHeaderValue"
          },
          "operation": {
            "allOf": [
              {
                "$ref": "#/components/schemas/rulesets_RewriteHeaderOperation"
              },
              {
                "enum": [
                  "set"
                ]
              }
            ]
          }
        },
        "description": "A header with a static value to set."
      },
      {
        "type": "object",
        "title": "Set Dynamic Header",
        "required": [
          "operation",
          "expression"
        ],
        "properties": {
          "operation": {
            "allOf": [
              {
                "$ref": "#/components/schemas/rulesets_RewriteHeaderOperation"
              },
              {
                "enum": [
                  "set"
                ]
              }
            ]
          },
          "expression": {
            "$ref": "#/components/schemas/rulesets_RewriteHeaderExpression"
          }
        },
        "description": "A header with a dynamic value to set."
      },
      {
        "type": "object",
        "title": "Remove Header",
        "required": [
          "operation"
        ],
        "properties": {
          "operation": {
            "allOf": [
              {
                "$ref": "#/components/schemas/rulesets_RewriteHeaderOperation"
              },
              {
                "enum": [
                  "remove"
                ]
              }
            ]
          }
        },
        "description": "A header to remove."
      }
    ]
  }
}
object rulesets_RewriteRule
{
  "allOf": [
    {
      "$ref": "#/components/schemas/rulesets_Rule"
    },
    {
      "title": "Rewrite Rule",
      "properties": {
        "action": {
          "enum": [
            "rewrite"
          ]
        },
        "description": {
          "example": "Rewrite properties of the request or response."
        },
        "action_parameters": {
          "properties": {
            "uri": {
              "$ref": "#/components/schemas/rulesets_RewriteUri"
            },
            "headers": {
              "$ref": "#/components/schemas/rulesets_RewriteHeaders"
            }
          },
          "minProperties": 1
        }
      }
    }
  ]
}
object rulesets_RewriteUri
{
  "allOf": [
    {
      "anyOf": [
        {
          "title": "URI Path",
          "required": [
            "path"
          ],
          "properties": {
            "path": {
              "$ref": "#/components/schemas/rulesets_RewriteUriPath"
            }
          },
          "description": "A URI path rewrite."
        },
        {
          "title": "URI Query",
          "required": [
            "query"
          ],
          "properties": {
            "query": {
              "$ref": "#/components/schemas/rulesets_RewriteUriQuery"
            }
          },
          "description": "A URI query rewrite."
        }
      ]
    },
    {
      "type": "object",
      "properties": {
        "origin": {
          "type": "boolean",
          "title": "Origin",
          "example": false,
          "readOnly": true,
          "description": "Whether to propagate the rewritten URI to origin."
        }
      }
    }
  ]
}
object rulesets_RewriteUriPath
{
  "type": "object",
  "title": "URI Path",
  "properties": {
    "value": {
      "type": "string",
      "title": "Path Value",
      "example": "/foo",
      "minLength": 1,
      "description": "A value to rewrite the URI path to."
    },
    "expression": {
      "type": "string",
      "title": "Path Expression",
      "example": "regex_replace(http.request.uri.path, \"/foo$\", \"/bar\")",
      "minLength": 1,
      "description": "An expression that evaluates to a value to rewrite the URI path to."
    }
  },
  "description": "A URI path rewrite.",
  "maxProperties": 1,
  "minProperties": 1
}
object rulesets_RewriteUriQuery
{
  "type": "object",
  "title": "URI Query",
  "properties": {
    "value": {
      "type": "string",
      "title": "Query Value",
      "example": "foo=bar",
      "description": "A value to rewrite the URI query to."
    },
    "expression": {
      "type": "string",
      "title": "Query Expression",
      "example": "regex_replace(http.request.uri.query, \"foo=bar\", \"\")",
      "minLength": 1,
      "description": "An expression that evaluates to a value to rewrite the URI query to."
    }
  },
  "description": "A URI query rewrite.",
  "maxProperties": 1,
  "minProperties": 1
}
string rulesets_RouteHostHeader
{
  "type": "string",
  "title": "Host Header",
  "example": "static.example.com",
  "minLength": 1,
  "description": "A value to rewrite the HTTP host header to."
}
object rulesets_RouteOrigin
{
  "type": "object",
  "title": "Origin",
  "properties": {
    "host": {
      "type": "string",
      "title": "Host",
      "example": "static.example.com",
      "minLength": 1,
      "description": "A resolved host to route to."
    },
    "port": {
      "type": "integer",
      "title": "Port",
      "example": 80,
      "maximum": 65535,
      "minimum": 1,
      "description": "A destination port to route to."
    }
  },
  "description": "An origin to route to.",
  "minProperties": 1
}
object rulesets_RouteRule
{
  "allOf": [
    {
      "$ref": "#/components/schemas/rulesets_Rule"
    },
    {
      "title": "Route Rule",
      "properties": {
        "action": {
          "enum": [
            "route"
          ]
        },
        "description": {
          "example": "Select an origin server to route the request to."
        },
        "action_parameters": {
          "properties": {
            "sni": {
              "$ref": "#/components/schemas/rulesets_RouteSNI"
            },
            "origin": {
              "$ref": "#/components/schemas/rulesets_RouteOrigin"
            },
            "host_header": {
              "$ref": "#/components/schemas/rulesets_RouteHostHeader"
            }
          },
          "minProperties": 1
        }
      }
    }
  ]
}
object rulesets_RouteSNI
{
  "type": "object",
  "title": "Server Name Indication",
  "required": [
    "value"
  ],
  "properties": {
    "value": {
      "type": "string",
      "title": "Value",
      "example": "static.example.com",
      "minLength": 1,
      "description": "A value to override the SNI to."
    }
  },
  "description": "A Server Name Indication (SNI) override."
}
object rulesets_Rule
{
  "type": "object",
  "title": "Rule",
  "required": [
    "version",
    "last_updated"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/rulesets_RuleId"
    },
    "ref": {
      "type": "string",
      "title": "Ref",
      "example": "my_ref",
      "minLength": 1,
      "description": "The reference of the rule (the rule's ID by default)."
    },
    "action": {
      "$ref": "#/components/schemas/rulesets_RuleAction"
    },
    "enabled": {
      "allOf": [
        {
          "$ref": "#/components/schemas/rulesets_RuleEnabled"
        },
        {
          "default": true
        }
      ]
    },
    "logging": {
      "$ref": "#/components/schemas/rulesets_RuleLogging"
    },
    "version": {
      "type": "string",
      "title": "Version",
      "example": "1",
      "pattern": "^[0-9]+$",
      "readOnly": true,
      "description": "The version of the rule.",
      "x-stainless-skip": [
        "terraform"
      ]
    },
    "ratelimit": {
      "$ref": "#/components/schemas/rulesets_RuleRatelimit"
    },
    "categories": {
      "$ref": "#/components/schemas/rulesets_RuleCategories"
    },
    "expression": {
      "type": "string",
      "title": "Expression",
      "example": "ip.src eq 1.1.1.1",
      "minLength": 1,
      "description": "The expression defining which traffic will match the rule."
    },
    "description": {
      "type": "string",
      "title": "Description",
      "default": "",
      "description": "An informative description of the rule."
    },
    "last_updated": {
      "type": "string",
      "title": "Last Updated",
      "format": "date-time",
      "example": "2000-01-01T00:00:00.000000Z",
      "readOnly": true,
      "description": "The timestamp of when the rule was last modified.",
      "x-stainless-skip": [
        "terraform"
      ]
    },
    "action_parameters": {
      "type": "object",
      "title": "Action Parameters",
      "default": {},
      "description": "The parameters configuring the rule's action."
    },
    "exposed_credential_check": {
      "$ref": "#/components/schemas/rulesets_RuleExposedCredentialCheck"
    }
  }
}
string rulesets_RuleAction
{
  "type": "string",
  "title": "Action",
  "pattern": "^[a-z_]+$",
  "description": "The action to perform when the rule matches."
}
array rulesets_RuleCategories
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/rulesets_RuleCategory"
  },
  "title": "Categories",
  "minItems": 1,
  "readOnly": true,
  "description": "The categories of the rule.",
  "uniqueItems": true
}
string rulesets_RuleCategory
{
  "type": "string",
  "title": "Category",
  "example": "directory-traversal",
  "minLength": 1,
  "description": "The category of a rule."
}
boolean rulesets_RuleEnabled
{
  "type": "boolean",
  "title": "Enabled",
  "example": true,
  "description": "Whether the rule should be executed."
}
object rulesets_RuleExposedCredentialCheck
{
  "type": "object",
  "title": "Exposed Credential Check",
  "required": [
    "username_expression",
    "password_expression"
  ],
  "properties": {
    "password_expression": {
      "type": "string",
      "title": "Password Expression",
      "example": "url_decode(http.request.body.form[\\\"password\\\"][0])",
      "minLength": 1,
      "description": "An expression that selects the password used in the credentials check."
    },
    "username_expression": {
      "type": "string",
      "title": "Username Expression",
      "example": "url_decode(http.request.body.form[\\\"username\\\"][0])",
      "minLength": 1,
      "description": "An expression that selects the user ID used in the credentials check."
    }
  },
  "description": "Configuration for exposed credential checking."
}
string rulesets_RuleId
{
  "type": "string",
  "title": "Rule ID",
  "example": "3a03d665bac047339bb530ecb439a90d",
  "pattern": "^[0-9a-f]{32}$",
  "description": "The unique ID of the rule."
}
object rulesets_RuleLogging
{
  "type": "object",
  "title": "Logging",
  "required": [
    "enabled"
  ],
  "properties": {
    "enabled": {
      "type": "boolean",
      "title": "Enabled",
      "example": true,
      "description": "Whether to generate a log when the rule matches."
    }
  },
  "description": "An object configuring the rule's logging behavior."
}
object rulesets_RulePosition
{
  "type": "object",
  "title": "Position",
  "description": "An object configuring where the rule will be placed."
}
object rulesets_RuleRatelimit
{
  "type": "object",
  "title": "Rate Limit",
  "required": [
    "characteristics",
    "period"
  ],
  "properties": {
    "period": {
      "type": "integer",
      "title": "Period",
      "example": 60,
      "minimum": 0,
      "description": "Period in seconds over which the counter is being incremented."
    },
    "characteristics": {
      "type": "array",
      "items": {
        "type": "string",
        "title": "Characteristic",
        "example": "cf.colo.id",
        "minLength": 1,
        "description": "The characteristic of the request."
      },
      "title": "Characteristics",
      "minItems": 1,
      "description": "Characteristics of the request on which the rate limit counter will be incremented.",
      "uniqueItems": true
    },
    "score_per_period": {
      "type": "integer",
      "title": "Score per Period",
      "example": 400,
      "description": "The score threshold per period for which the action will be executed the first time."
    },
    "mitigation_timeout": {
      "type": "integer",
      "title": "Mitigation Timeout",
      "example": 600,
      "description": "Period of time in seconds after which the action will be disabled following its first execution."
    },
    "requests_to_origin": {
      "type": "boolean",
      "title": "Requests to Origin",
      "default": false,
      "example": true,
      "description": "Whether counting is only performed when an origin is reached."
    },
    "counting_expression": {
      "type": "string",
      "title": "Counting Expression",
      "example": "http.request.body.raw eq \"abcd\"",
      "minLength": 1,
      "description": "An expression that defines when the rate limit counter should be incremented. It defaults to the same as the rule's expression."
    },
    "requests_per_period": {
      "type": "integer",
      "title": "Requests per Period",
      "example": 1000,
      "minimum": 1,
      "description": "The threshold of requests per period after which the action will be executed for the first time."
    },
    "score_response_header_name": {
      "type": "string",
      "title": "Score Response Header Name",
      "example": "my-score",
      "minLength": 1,
      "description": "A response header name provided by the origin, which contains the score to increment rate limit counter with."
    }
  },
  "description": "An object configuring the rule's rate limit behavior."
}
object rulesets_Ruleset
{
  "type": "object",
  "title": "Ruleset",
  "required": [
    "id",
    "version",
    "last_updated"
  ],
  "properties": {
    "id": {
      "allOf": [
        {
          "$ref": "#/components/schemas/rulesets_RulesetId"
        },
        {
          "readOnly": true
        }
      ]
    },
    "name": {
      "type": "string",
      "title": "Name",
      "example": "My ruleset",
      "minLength": 1,
      "description": "The human-readable name of the ruleset."
    },
    "version": {
      "allOf": [
        {
          "$ref": "#/components/schemas/rulesets_RulesetVersion"
        },
        {
          "readOnly": true
        }
      ]
    },
    "description": {
      "type": "string",
      "title": "Description",
      "default": "",
      "example": "A description for my ruleset.",
      "description": "An informative description of the ruleset."
    },
    "last_updated": {
      "type": "string",
      "title": "Last Updated",
      "format": "date-time",
      "example": "2000-01-01T00:00:00.000000Z",
      "readOnly": true,
      "description": "The timestamp of when the ruleset was last modified."
    }
  },
  "description": "A ruleset object."
}
string rulesets_RulesetId
{
  "type": "string",
  "title": "Ruleset ID",
  "example": "2f2feab2026849078ba485f918791bdc",
  "pattern": "^[0-9a-f]{32}$",
  "description": "The unique ID of the ruleset."
}
string rulesets_RulesetKind
{
  "enum": [
    "managed",
    "custom",
    "root",
    "zone"
  ],
  "type": "string",
  "title": "Kind",
  "example": "root",
  "description": "The kind of the ruleset."
}
string rulesets_RulesetPhase
{
  "enum": [
    "ddos_l4",
    "ddos_l7",
    "http_config_settings",
    "http_custom_errors",
    "http_log_custom_fields",
    "http_ratelimit",
    "http_request_cache_settings",
    "http_request_dynamic_redirect",
    "http_request_firewall_custom",
    "http_request_firewall_managed",
    "http_request_late_transform",
    "http_request_origin",
    "http_request_redirect",
    "http_request_sanitize",
    "http_request_sbfm",
    "http_request_transform",
    "http_response_cache_settings",
    "http_response_compression",
    "http_response_firewall_managed",
    "http_response_headers_transform",
    "magic_transit",
    "magic_transit_ids_managed",
    "magic_transit_managed",
    "magic_transit_ratelimit"
  ],
  "type": "string",
  "title": "Phase",
  "example": "http_request_firewall_custom",
  "description": "The phase of the ruleset."
}
string rulesets_RulesetVersion
{
  "type": "string",
  "title": "Version",
  "example": "1",
  "pattern": "^[0-9]+$",
  "description": "The version of the ruleset."
}
integer rulesets_ScoreIncrement
{
  "type": "integer",
  "title": "Increment",
  "example": 3,
  "description": "A delta to change the score by, which can be either positive or negative."
}
object rulesets_ScoreRule
{
  "allOf": [
    {
      "$ref": "#/components/schemas/rulesets_Rule"
    },
    {
      "title": "Score Rule",
      "properties": {
        "action": {
          "enum": [
            "score"
          ]
        },
        "description": {
          "example": "Increment the cumulative score."
        },
        "action_parameters": {
          "required": [
            "increment"
          ],
          "properties": {
            "increment": {
              "$ref": "#/components/schemas/rulesets_ScoreIncrement"
            }
          }
        }
      }
    }
  ]
}
string rulesets_ServeErrorAssetName
{
  "type": "string",
  "title": "Asset Name",
  "example": "500_errors",
  "minLength": 1,
  "description": "The name of a custom asset to serve as the error response."
}
string rulesets_ServeErrorContent
{
  "type": "string",
  "title": "Content",
  "example": "{\n  \"error\": \"1xxx error occurred\"\n}",
  "minLength": 1,
  "description": "The response content."
}
string rulesets_ServeErrorContentType
{
  "enum": [
    "application/json",
    "text/html",
    "text/plain",
    "text/xml"
  ],
  "type": "string",
  "title": "Content Type",
  "example": "application/json",
  "description": "The content type header to set with the error response."
}
object rulesets_ServeErrorRule
{
  "allOf": [
    {
      "$ref": "#/components/schemas/rulesets_Rule"
    },
    {
      "title": "Serve Error Rule",
      "properties": {
        "action": {
          "enum": [
            "serve_error"
          ]
        },
        "description": {
          "example": "Customize the serving of errors."
        },
        "action_parameters": {
          "allOf": [
            {
              "required": [
                "content_type"
              ],
              "properties": {
                "status_code": {
                  "$ref": "#/components/schemas/rulesets_ServeErrorStatusCode"
                },
                "content_type": {
                  "$ref": "#/components/schemas/rulesets_ServeErrorContentType"
                }
              }
            },
            {
              "oneOf": [
                {
                  "title": "Action Parameters (Content)",
                  "required": [
                    "content"
                  ],
                  "properties": {
                    "content": {
                      "$ref": "#/components/schemas/rulesets_ServeErrorContent"
                    }
                  }
                },
                {
                  "title": "Action Parameters (Asset)",
                  "required": [
                    "asset_name"
                  ],
                  "properties": {
                    "asset_name": {
                      "$ref": "#/components/schemas/rulesets_ServeErrorAssetName"
                    }
                  }
                }
              ]
            }
          ]
        }
      }
    }
  ]
}
integer rulesets_ServeErrorStatusCode
{
  "type": "integer",
  "title": "Status Code",
  "example": 500,
  "maximum": 999,
  "minimum": 400,
  "description": "The status code to use for the error."
}
boolean rulesets_SetCacheControlCloudflareOnly
{
  "type": "boolean",
  "title": "Cloudflare Only",
  "default": false,
  "example": false,
  "description": "Whether the directive should only be applied to the Cloudflare CDN cache."
}
object rulesets_SetCacheControlDirective
{
  "oneOf": [
    {
      "type": "object",
      "title": "Set Directive",
      "required": [
        "operation"
      ],
      "properties": {
        "operation": {
          "allOf": [
            {
              "$ref": "#/components/schemas/rulesets_SetCacheControlOperation"
            },
            {
              "enum": [
                "set"
              ]
            }
          ]
        },
        "cloudflare_only": {
          "$ref": "#/components/schemas/rulesets_SetCacheControlCloudflareOnly"
        }
      },
      "description": "Set the directive."
    },
    {
      "type": "object",
      "title": "Remove Directive",
      "required": [
        "operation"
      ],
      "properties": {
        "operation": {
          "allOf": [
            {
              "$ref": "#/components/schemas/rulesets_SetCacheControlOperation"
            },
            {
              "enum": [
                "remove"
              ]
            }
          ]
        },
        "cloudflare_only": {
          "$ref": "#/components/schemas/rulesets_SetCacheControlCloudflareOnly"
        }
      },
      "description": "Remove the directive."
    }
  ],
  "title": "Cache Control Directive",
  "description": "A cache-control directive configuration."
}
object rulesets_SetCacheControlDirectiveWithQualifiers
{
  "oneOf": [
    {
      "type": "object",
      "title": "Set Directive",
      "required": [
        "operation"
      ],
      "properties": {
        "operation": {
          "allOf": [
            {
              "$ref": "#/components/schemas/rulesets_SetCacheControlOperation"
            },
            {
              "enum": [
                "set"
              ]
            }
          ]
        },
        "qualifiers": {
          "type": "array",
          "items": {
            "type": "string",
            "title": "Qualifier",
            "example": "X-Custom-Header",
            "minLength": 1,
            "description": "A header name to qualify the directive."
          },
          "title": "Qualifiers",
          "description": "Optional list of header names to qualify the directive (e.g., for \"private\" or \"no-cache\" directives).",
          "uniqueItems": true
        },
        "cloudflare_only": {
          "$ref": "#/components/schemas/rulesets_SetCacheControlCloudflareOnly"
        }
      },
      "description": "Set the directive with optional qualifiers."
    },
    {
      "type": "object",
      "title": "Remove Directive",
      "required": [
        "operation"
      ],
      "properties": {
        "operation": {
          "allOf": [
            {
              "$ref": "#/components/schemas/rulesets_SetCacheControlOperation"
            },
            {
              "enum": [
                "remove"
              ]
            }
          ]
        },
        "cloudflare_only": {
          "$ref": "#/components/schemas/rulesets_SetCacheControlCloudflareOnly"
        }
      },
      "description": "Remove the directive."
    }
  ],
  "title": "Cache Control Directive With Optional Qualifiers",
  "description": "A cache-control directive configuration that accepts optional qualifiers (header names)."
}
object rulesets_SetCacheControlDirectiveWithValue
{
  "oneOf": [
    {
      "type": "object",
      "title": "Set Directive",
      "required": [
        "operation",
        "value"
      ],
      "properties": {
        "value": {
          "type": "integer",
          "title": "Value",
          "example": 3600,
          "minimum": 0,
          "description": "The duration value in seconds for the directive."
        },
        "operation": {
          "allOf": [
            {
              "$ref": "#/components/schemas/rulesets_SetCacheControlOperation"
            },
            {
              "enum": [
                "set"
              ]
            }
          ]
        },
        "cloudflare_only": {
          "$ref": "#/components/schemas/rulesets_SetCacheControlCloudflareOnly"
        }
      },
      "description": "Set the directive with a duration value in seconds."
    },
    {
      "type": "object",
      "title": "Remove Directive",
      "required": [
        "operation"
      ],
      "properties": {
        "operation": {
          "allOf": [
            {
              "$ref": "#/components/schemas/rulesets_SetCacheControlOperation"
            },
            {
              "enum": [
                "remove"
              ]
            }
          ]
        },
        "cloudflare_only": {
          "$ref": "#/components/schemas/rulesets_SetCacheControlCloudflareOnly"
        }
      },
      "description": "Remove the directive."
    }
  ],
  "title": "Cache Control Directive With Duration Seconds Value",
  "description": "A cache-control directive configuration that accepts a duration value in seconds."
}
string rulesets_SetCacheControlOperation
{
  "enum": [
    "set",
    "remove"
  ],
  "type": "string",
  "title": "Operation",
  "example": "set",
  "description": "The operation to perform on the cache-control directive."
}
object rulesets_SetCacheControlRule
{
  "allOf": [
    {
      "$ref": "#/components/schemas/rulesets_Rule"
    },
    {
      "title": "Set Cache Control Rule",
      "properties": {
        "action": {
          "enum": [
            "set_cache_control"
          ]
        },
        "description": {
          "example": "Modify the cache-control header directives in an Origin response."
        },
        "action_parameters": {
          "properties": {
            "public": {
              "$ref": "#/components/schemas/rulesets_SetCacheControlDirective"
            },
            "max-age": {
              "$ref": "#/components/schemas/rulesets_SetCacheControlDirectiveWithValue"
            },
            "private": {
              "$ref": "#/components/schemas/rulesets_SetCacheControlDirectiveWithQualifiers"
            },
            "no-cache": {
              "$ref": "#/components/schemas/rulesets_SetCacheControlDirectiveWithQualifiers"
            },
            "no-store": {
              "$ref": "#/components/schemas/rulesets_SetCacheControlDirective"
            },
            "s-maxage": {
              "$ref": "#/components/schemas/rulesets_SetCacheControlDirectiveWithValue"
            },
            "immutable": {
              "$ref": "#/components/schemas/rulesets_SetCacheControlDirective"
            },
            "no-transform": {
              "$ref": "#/components/schemas/rulesets_SetCacheControlDirective"
            },
            "stale-if-error": {
              "$ref": "#/components/schemas/rulesets_SetCacheControlDirectiveWithValue"
            },
            "must-revalidate": {
              "$ref": "#/components/schemas/rulesets_SetCacheControlDirective"
            },
            "must-understand": {
              "$ref": "#/components/schemas/rulesets_SetCacheControlDirective"
            },
            "proxy-revalidate": {
              "$ref": "#/components/schemas/rulesets_SetCacheControlDirective"
            },
            "stale-while-revalidate": {
              "$ref": "#/components/schemas/rulesets_SetCacheControlDirectiveWithValue"
            }
          },
          "minProperties": 1
        }
      }
    }
  ]
}
array rulesets_SetCacheSettingsAdditionalCacheablePorts
{
  "type": "array",
  "items": {
    "type": "integer",
    "title": "Additional Cacheable Port",
    "example": 8080,
    "maximum": 65535,
    "minimum": 1,
    "description": "A port to enable caching on."
  },
  "title": "Additional Cacheable Ports (Enterprise-Only)",
  "minItems": 1,
  "description": "A list of additional ports that caching should be enabled on.",
  "uniqueItems": true
}
object rulesets_SetCacheSettingsBrowserTTL
{
  "type": "object",
  "title": "Browser TTL",
  "required": [
    "mode"
  ],
  "properties": {
    "mode": {
      "enum": [
        "respect_origin",
        "bypass_by_default",
        "override_origin",
        "bypass"
      ],
      "type": "string",
      "title": "TTL Mode",
      "example": "override_origin",
      "description": "The browser TTL mode."
    },
    "default": {
      "type": "integer",
      "title": "Default TTL",
      "example": 60,
      "minimum": 0,
      "description": "The browser TTL (in seconds) if you choose the \"override_origin\" mode."
    }
  },
  "description": "How long client browsers should cache the response. Cloudflare cache purge will not purge content cached on client browsers, so high browser TTLs may lead to stale content."
}
boolean rulesets_SetCacheSettingsCache
{
  "type": "boolean",
  "title": "Cache",
  "example": true,
  "description": "Whether the request's response from the origin is eligible for caching. Caching itself will still depend on the cache control header and your other caching configurations."
}
object rulesets_SetCacheSettingsCacheKey
{
  "type": "object",
  "title": "Cache Key",
  "properties": {
    "custom_key": {
      "$ref": "#/components/schemas/rulesets_SetCacheSettingsCustomCacheKey"
    },
    "cache_by_device_type": {
      "type": "boolean",
      "title": "Cache by Device Type",
      "example": true,
      "description": "Whether to separate cached content based on the visitor's device type."
    },
    "cache_deception_armor": {
      "type": "boolean",
      "title": "Cache Deception Armor",
      "example": true,
      "description": "Whether to protect from web cache deception attacks, while allowing static assets to be cached."
    },
    "ignore_query_strings_order": {
      "type": "boolean",
      "title": "Ignore Query Strings Order",
      "example": true,
      "description": "Whether to treat requests with the same query parameters the same, regardless of the order those query parameters are in."
    }
  },
  "description": "Which components of the request are included in or excluded from the cache key Cloudflare uses to store the response in cache."
}
object rulesets_SetCacheSettingsCacheReserve
{
  "type": "object",
  "title": "Cache Reserve",
  "required": [
    "eligible"
  ],
  "properties": {
    "eligible": {
      "type": "boolean",
      "title": "Eligible",
      "example": true,
      "description": "Whether Cache Reserve is enabled. If this is true and a request meets eligibility criteria, Cloudflare will write the resource to Cache Reserve."
    },
    "minimum_file_size": {
      "type": "integer",
      "title": "Minimum File Size",
      "example": 1024,
      "minimum": 0,
      "description": "The minimum file size eligible for storage in Cache Reserve."
    }
  },
  "description": "Settings to determine whether the request's response from origin is eligible for Cache Reserve (requires a Cache Reserve add-on plan)."
}
object rulesets_SetCacheSettingsCustomCacheKey
{
  "type": "object",
  "title": "Custom Cache Key",
  "properties": {
    "host": {
      "$ref": "#/components/schemas/rulesets_SetCacheSettingsCustomCacheKeyHost"
    },
    "user": {
      "$ref": "#/components/schemas/rulesets_SetCacheSettingsCustomCacheKeyUser"
    },
    "cookie": {
      "$ref": "#/components/schemas/rulesets_SetCacheSettingsCustomCacheKeyCookie"
    },
    "header": {
      "$ref": "#/components/schemas/rulesets_SetCacheSettingsCustomCacheKeyHeader"
    },
    "query_string": {
      "$ref": "#/components/schemas/rulesets_SetCacheSettingsCustomCacheKeyQueryString"
    }
  },
  "description": "Which components of the request are included or excluded from the cache key."
}
object rulesets_SetCacheSettingsCustomCacheKeyCookie
{
  "type": "object",
  "title": "Cookies",
  "properties": {
    "include": {
      "type": "array",
      "items": {
        "type": "string",
        "title": "Cookie Name",
        "example": "myCookie",
        "minLength": 1,
        "description": "The name of the cookie to include."
      },
      "title": "Include",
      "minItems": 1,
      "description": "A list of cookies to include in the cache key.",
      "uniqueItems": true
    },
    "check_presence": {
      "type": "array",
      "items": {
        "type": "string",
        "title": "Cookie Name",
        "example": "myCookie",
        "minLength": 1,
        "description": "The name of the cookie to check for the presence of."
      },
      "title": "Check Presence",
      "minItems": 1,
      "description": "A list of cookies to check for the presence of. The presence of these cookies is included in the cache key.",
      "uniqueItems": true
    }
  },
  "description": "Which cookies to include in the cache key."
}
object rulesets_SetCacheSettingsCustomCacheKeyHeader
{
  "type": "object",
  "title": "Headers",
  "properties": {
    "include": {
      "type": "array",
      "items": {
        "type": "string",
        "title": "Header",
        "example": "my-header",
        "minLength": 1,
        "description": "The name of the header to include."
      },
      "title": "Include",
      "minItems": 1,
      "description": "A list of headers to include in the cache key.",
      "uniqueItems": true
    },
    "contains": {
      "type": "object",
      "title": "Contains",
      "example": {
        "my-header": [
          "my-header-value-1",
          "my-header-value-2"
        ]
      },
      "description": "A mapping of header names to a list of values. If a header is present in the request and contains any of the values provided, its value is included in the cache key.",
      "minProperties": 1,
      "additionalProperties": {
        "type": "array",
        "items": {
          "type": "string",
          "title": "Header Value",
          "example": "my-header-value",
          "minLength": 1,
          "description": "The header value to match against."
        },
        "title": "Header Values",
        "minItems": 1,
        "description": "A list of values to match the header against.",
        "uniqueItems": true
      }
    },
    "check_presence": {
      "type": "array",
      "items": {
        "type": "string",
        "title": "Header",
        "example": "my-header",
        "minLength": 1,
        "description": "The name of the header to check for the presence of."
      },
      "title": "Check Presence",
      "minItems": 1,
      "description": "A list of headers to check for the presence of. The presence of these headers is included in the cache key.",
      "uniqueItems": true
    },
    "exclude_origin": {
      "type": "boolean",
      "title": "Exclude Origin",
      "example": true,
      "description": "Whether to exclude the origin header in the cache key."
    }
  },
  "description": "Which headers to include in the cache key."
}
object rulesets_SetCacheSettingsCustomCacheKeyHost
{
  "type": "object",
  "title": "Host",
  "properties": {
    "resolved": {
      "type": "boolean",
      "title": "Use Resolved Host",
      "example": true,
      "description": "Whether to use the resolved host in the cache key."
    }
  },
  "description": "How to use the host in the cache key."
}
object rulesets_SetCacheSettingsCustomCacheKeyQueryString
{
  "type": "object",
  "title": "Query String Parameters",
  "properties": {
    "exclude": {
      "type": "object",
      "title": "Exclude",
      "properties": {
        "all": {
          "enum": [
            true
          ],
          "type": "boolean",
          "title": "Exclude All",
          "description": "Whether to exclude all query string parameters from the cache key."
        },
        "list": {
          "type": "array",
          "items": {
            "type": "string",
            "title": "Parameter Name",
            "example": "foo",
            "minLength": 1,
            "description": "The name of the query string parameter to exclude."
          },
          "title": "Exclude List",
          "minItems": 1,
          "description": "A list of query string parameters to exclude from the cache key.",
          "uniqueItems": true
        }
      },
      "description": "Which query string parameters to exclude from the cache key.",
      "maxProperties": 1,
      "minProperties": 1
    },
    "include": {
      "type": "object",
      "title": "Include",
      "properties": {
        "all": {
          "enum": [
            true
          ],
          "type": "boolean",
          "title": "Include All",
          "description": "Whether to include all query string parameters in the cache key."
        },
        "list": {
          "type": "array",
          "items": {
            "type": "string",
            "title": "Parameter Name",
            "example": "foo",
            "minLength": 1,
            "description": "The name of the query string parameter to include."
          },
          "title": "Include List",
          "minItems": 1,
          "description": "A list of query string parameters to include in the cache key.",
          "uniqueItems": true
        }
      },
      "description": "Which query string parameters to include in the cache key.",
      "maxProperties": 1,
      "minProperties": 1
    }
  },
  "description": "Which query string parameters to include in or exclude from the cache key.",
  "maxProperties": 1
}
object rulesets_SetCacheSettingsCustomCacheKeyUser
{
  "type": "object",
  "title": "User",
  "properties": {
    "geo": {
      "type": "boolean",
      "title": "Country",
      "example": true,
      "description": "Whether to use the user agents's country in the cache key."
    },
    "lang": {
      "type": "boolean",
      "title": "Language",
      "example": true,
      "description": "Whether to use the user agent's language in the cache key."
    },
    "device_type": {
      "type": "boolean",
      "title": "Device Type",
      "example": true,
      "description": "Whether to use the user agent's device type in the cache key."
    }
  },
  "description": "How to use characteristics of the request user agent in the cache key."
}
object rulesets_SetCacheSettingsEdgeTTL
{
  "type": "object",
  "title": "Edge TTL",
  "required": [
    "mode"
  ],
  "properties": {
    "mode": {
      "enum": [
        "respect_origin",
        "bypass_by_default",
        "override_origin"
      ],
      "type": "string",
      "title": "TTL Mode",
      "example": "override_origin",
      "description": "The edge TTL mode."
    },
    "default": {
      "type": "integer",
      "title": "Default TTL",
      "example": 60,
      "minimum": 0,
      "description": "The edge TTL (in seconds) if you choose the \"override_origin\" mode."
    },
    "status_code_ttl": {
      "$ref": "#/components/schemas/rulesets_SetCacheSettingsStatusCodeTTL"
    }
  },
  "description": "How long the Cloudflare edge network should cache the response."
}
boolean rulesets_SetCacheSettingsOriginCacheControl
{
  "type": "boolean",
  "title": "Origin Cache Control (Enterprise-Only)",
  "example": true,
  "description": "Whether Cloudflare will aim to strictly adhere to RFC 7234."
}
boolean rulesets_SetCacheSettingsOriginErrorPagePassthru
{
  "type": "boolean",
  "title": "Origin Error Page Passthrough",
  "example": true,
  "description": "Whether to generate Cloudflare error pages for issues from the origin server."
}
integer rulesets_SetCacheSettingsReadTimeout
{
  "type": "integer",
  "title": "Read Timeout (Enterprise-Only)",
  "example": 900,
  "maximum": 6000,
  "minimum": 100,
  "description": "A timeout value between two successive read operations to use for your origin server. Historically, the timeout value between two read options from Cloudflare to an origin server is 100 seconds. If you are attempting to reduce HTTP 524 errors because of timeouts from an origin server, try increasing this timeout value."
}
boolean rulesets_SetCacheSettingsRespectStrongEtags
{
  "type": "boolean",
  "title": "Respect Strong ETags",
  "example": true,
  "description": "Whether Cloudflare should respect strong ETag (entity tag) headers. If false, Cloudflare converts strong ETag headers to weak ETag headers."
}
object rulesets_SetCacheSettingsRule
{
  "allOf": [
    {
      "$ref": "#/components/schemas/rulesets_Rule"
    },
    {
      "title": "Set Cache Settings Rule",
      "properties": {
        "action": {
          "enum": [
            "set_cache_settings"
          ]
        },
        "description": {
          "example": "Configure settings for how the response is cached."
        },
        "action_parameters": {
          "properties": {
            "cache": {
              "$ref": "#/components/schemas/rulesets_SetCacheSettingsCache"
            },
            "edge_ttl": {
              "$ref": "#/components/schemas/rulesets_SetCacheSettingsEdgeTTL"
            },
            "cache_key": {
              "$ref": "#/components/schemas/rulesets_SetCacheSettingsCacheKey"
            },
            "browser_ttl": {
              "$ref": "#/components/schemas/rulesets_SetCacheSettingsBrowserTTL"
            },
            "serve_stale": {
              "$ref": "#/components/schemas/rulesets_SetCacheSettingsServeStale"
            },
            "strip_etags": {
              "$ref": "#/components/schemas/rulesets_SetCacheSettingsStripETags"
            },
            "read_timeout": {
              "$ref": "#/components/schemas/rulesets_SetCacheSettingsReadTimeout"
            },
            "cache_reserve": {
              "$ref": "#/components/schemas/rulesets_SetCacheSettingsCacheReserve"
            },
            "strip_set_cookie": {
              "$ref": "#/components/schemas/rulesets_SetCacheSettingsStripSetCookie"
            },
            "shared_dictionary": {
              "$ref": "#/components/schemas/rulesets_SetCacheSettingsSharedDictionary"
            },
            "strip_last_modified": {
              "$ref": "#/components/schemas/rulesets_SetCacheSettingsStripLastModified"
            },
            "origin_cache_control": {
              "$ref": "#/components/schemas/rulesets_SetCacheSettingsOriginCacheControl"
            },
            "respect_strong_etags": {
              "$ref": "#/components/schemas/rulesets_SetCacheSettingsRespectStrongEtags"
            },
            "additional_cacheable_ports": {
              "$ref": "#/components/schemas/rulesets_SetCacheSettingsAdditionalCacheablePorts"
            },
            "origin_error_page_passthru": {
              "$ref": "#/components/schemas/rulesets_SetCacheSettingsOriginErrorPagePassthru"
            }
          },
          "minProperties": 1
        }
      }
    }
  ]
}
object rulesets_SetCacheSettingsServeStale
{
  "type": "object",
  "title": "Serve Stale",
  "properties": {
    "disable_stale_while_updating": {
      "type": "boolean",
      "title": "Disable Stale While Updating",
      "example": true,
      "description": "Whether Cloudflare should disable serving stale content while getting the latest content from the origin."
    }
  },
  "description": "When to serve stale content from cache."
}
object rulesets_SetCacheSettingsSharedDictionary
{
  "type": "object",
  "title": "Shared Dictionary",
  "required": [
    "match_pattern"
  ],
  "properties": {
    "match_pattern": {
      "type": "string",
      "title": "Match Pattern",
      "example": "/static/js/*.js",
      "maxLength": 1024,
      "minLength": 1,
      "description": "URL pattern for the Use-As-Dictionary match field. This pattern specifies which URLs can use this response as a dictionary."
    }
  },
  "description": "Configuration for shared dictionary compression. When set, Cloudflare injects Use-As-Dictionary headers on matching cacheable responses."
}
array rulesets_SetCacheSettingsStatusCodeTTL
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "value"
    ],
    "properties": {
      "value": {
        "type": "integer",
        "title": "TTL Value",
        "example": 0,
        "description": "The time to cache the response for (in seconds). A value of 0 is equivalent to setting the cache control header with the value \"no-cache\". A value of -1 is equivalent to setting the cache control header with the value of \"no-store\"."
      },
      "status_code": {
        "type": "integer",
        "title": "Status Code",
        "example": 200,
        "maximum": 999,
        "minimum": 100,
        "description": "A single status code to apply the TTL to."
      },
      "status_code_range": {
        "type": "object",
        "title": "Status Code Range",
        "properties": {
          "to": {
            "type": "integer",
            "title": "To",
            "example": 299,
            "maximum": 999,
            "minimum": 100,
            "description": "The upper bound of the range."
          },
          "from": {
            "type": "integer",
            "title": "From",
            "example": 200,
            "maximum": 999,
            "minimum": 100,
            "description": "The lower bound of the range."
          }
        },
        "description": "A range of status codes to apply the TTL to.",
        "minProperties": 1
      }
    },
    "maxProperties": 2,
    "minProperties": 2
  },
  "title": "Status Code TTLs",
  "minItems": 1,
  "description": "A list of TTLs to apply to specific status codes or status code ranges.",
  "uniqueItems": true
}
boolean rulesets_SetCacheSettingsStripETags
{
  "type": "boolean",
  "title": "Strip ETags",
  "example": true,
  "description": "Whether to strip ETag headers from the origin response before caching."
}
boolean rulesets_SetCacheSettingsStripLastModified
{
  "type": "boolean",
  "title": "Strip Last-Modified",
  "example": true,
  "description": "Whether to strip Last-Modified headers from the origin response before caching."
}
boolean rulesets_SetCacheSettingsStripSetCookie
{
  "type": "boolean",
  "title": "Strip Set-Cookie",
  "example": true,
  "description": "Whether to strip Set-Cookie headers from the origin response before caching."
}
string rulesets_SetCacheTagsExpression
{
  "type": "string",
  "title": "Expression",
  "example": "http.request.uri.path.extension",
  "minLength": 1,
  "description": "An expression that evaluates to an array of cache tag values."
}
string rulesets_SetCacheTagsOperation
{
  "enum": [
    "add",
    "remove",
    "set"
  ],
  "type": "string",
  "title": "Operation",
  "example": "add",
  "description": "The operation to perform on the cache tags."
}
object rulesets_SetCacheTagsRule
{
  "allOf": [
    {
      "$ref": "#/components/schemas/rulesets_Rule"
    },
    {
      "title": "Set Cache Tags Rule",
      "properties": {
        "action": {
          "enum": [
            "set_cache_tags"
          ]
        },
        "description": {
          "example": "Modify the cache tags associated with the response."
        },
        "action_parameters": {
          "oneOf": [
            {
              "type": "object",
              "title": "Add Cache Tags (Values)",
              "required": [
                "operation",
                "values"
              ],
              "properties": {
                "values": {
                  "$ref": "#/components/schemas/rulesets_SetCacheTagsValues"
                },
                "operation": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/rulesets_SetCacheTagsOperation"
                    },
                    {
                      "enum": [
                        "add"
                      ]
                    }
                  ]
                }
              },
              "description": "Add cache tags using a list of values."
            },
            {
              "type": "object",
              "title": "Add Cache Tags (Expression)",
              "required": [
                "operation",
                "expression"
              ],
              "properties": {
                "operation": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/rulesets_SetCacheTagsOperation"
                    },
                    {
                      "enum": [
                        "add"
                      ]
                    }
                  ]
                },
                "expression": {
                  "$ref": "#/components/schemas/rulesets_SetCacheTagsExpression"
                }
              },
              "description": "Add cache tags using an expression."
            },
            {
              "type": "object",
              "title": "Remove Cache Tags (Values)",
              "required": [
                "operation",
                "values"
              ],
              "properties": {
                "values": {
                  "$ref": "#/components/schemas/rulesets_SetCacheTagsValues"
                },
                "operation": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/rulesets_SetCacheTagsOperation"
                    },
                    {
                      "enum": [
                        "remove"
                      ]
                    }
                  ]
                }
              },
              "description": "Remove cache tags using a list of values."
            },
            {
              "type": "object",
              "title": "Remove Cache Tags (Expression)",
              "required": [
                "operation",
                "expression"
              ],
              "properties": {
                "operation": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/rulesets_SetCacheTagsOperation"
                    },
                    {
                      "enum": [
                        "remove"
                      ]
                    }
                  ]
                },
                "expression": {
                  "$ref": "#/components/schemas/rulesets_SetCacheTagsExpression"
                }
              },
              "description": "Remove cache tags using an expression."
            },
            {
              "type": "object",
              "title": "Set Cache Tags (Values)",
              "required": [
                "operation",
                "values"
              ],
              "properties": {
                "values": {
                  "$ref": "#/components/schemas/rulesets_SetCacheTagsValues"
                },
                "operation": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/rulesets_SetCacheTagsOperation"
                    },
                    {
                      "enum": [
                        "set"
                      ]
                    }
                  ]
                }
              },
              "description": "Set cache tags using a list of values."
            },
            {
              "type": "object",
              "title": "Set Cache Tags (Expression)",
              "required": [
                "operation",
                "expression"
              ],
              "properties": {
                "operation": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/rulesets_SetCacheTagsOperation"
                    },
                    {
                      "enum": [
                        "set"
                      ]
                    }
                  ]
                },
                "expression": {
                  "$ref": "#/components/schemas/rulesets_SetCacheTagsExpression"
                }
              },
              "description": "Set cache tags using an expression."
            }
          ]
        }
      }
    }
  ]
}
array rulesets_SetCacheTagsValues
{
  "type": "array",
  "items": {
    "type": "string",
    "title": "Cache Tag",
    "example": "my-cache-tag",
    "minLength": 1,
    "description": "A cache tag value."
  },
  "title": "Values",
  "maxItems": 100,
  "minItems": 1,
  "description": "A list of cache tag values."
}
object rulesets_SetConfigAutominify
{
  "type": "object",
  "title": "Auto-Minify",
  "properties": {
    "js": {
      "type": "boolean",
      "title": "JavaScript",
      "default": false,
      "example": true,
      "description": "Whether to minify JavaScript files."
    },
    "css": {
      "type": "boolean",
      "title": "CSS",
      "default": false,
      "example": true,
      "description": "Whether to minify CSS files."
    },
    "html": {
      "type": "boolean",
      "title": "HTML",
      "default": false,
      "example": true,
      "description": "Whether to minify HTML files."
    }
  },
  "description": "Which file extensions to minify automatically."
}
object rulesets_SetConfigRule
{
  "allOf": [
    {
      "$ref": "#/components/schemas/rulesets_Rule"
    },
    {
      "title": "Set Configuration Rule",
      "properties": {
        "action": {
          "enum": [
            "set_config"
          ]
        },
        "description": {
          "example": "Configure settings for the request and response."
        },
        "action_parameters": {
          "properties": {
            "bic": {
              "type": "boolean",
              "title": "Browser Integrity Check",
              "example": true,
              "description": "Whether to enable Browser Integrity Check (BIC)."
            },
            "ssl": {
              "enum": [
                "off",
                "flexible",
                "full",
                "strict",
                "origin_pull"
              ],
              "type": "string",
              "title": "SSL",
              "example": "off",
              "description": "The SSL level to configure."
            },
            "sxg": {
              "type": "boolean",
              "title": "Signed Exchanges",
              "example": true,
              "description": "Whether to enable Signed Exchanges (SXG)."
            },
            "fonts": {
              "type": "boolean",
              "title": "Cloudflare Fonts",
              "example": true,
              "description": "Whether to enable Cloudflare Fonts."
            },
            "mirage": {
              "type": "boolean",
              "title": "Mirage",
              "example": true,
              "deprecated": true,
              "description": "Whether to enable Mirage.",
              "x-stainless-deprecation-message": "Mirage is deprecated. More information at https://developers.cloudflare.com/speed/optimization/images/mirage/."
            },
            "polish": {
              "enum": [
                "off",
                "lossless",
                "lossy",
                "webp"
              ],
              "type": "string",
              "title": "Polish",
              "example": "off",
              "description": "The Polish level to configure."
            },
            "autominify": {
              "$ref": "#/components/schemas/rulesets_SetConfigAutominify"
            },
            "disable_rum": {
              "enum": [
                true
              ],
              "type": "boolean",
              "title": "Disable RUM",
              "description": "Whether to disable Real User Monitoring (RUM)."
            },
            "disable_apps": {
              "enum": [
                true
              ],
              "type": "boolean",
              "title": "Disable Apps",
              "deprecated": true,
              "description": "Whether to disable Cloudflare Apps.",
              "x-stainless-deprecation-message": "Cloudflare Apps are deprected."
            },
            "disable_zaraz": {
              "enum": [
                true
              ],
              "type": "boolean",
              "title": "Disable Zaraz",
              "description": "Whether to disable Zaraz."
            },
            "rocket_loader": {
              "type": "boolean",
              "title": "Rocket Loader",
              "example": true,
              "description": "Whether to enable Rocket Loader."
            },
            "security_level": {
              "enum": [
                "off",
                "essentially_off",
                "low",
                "medium",
                "high",
                "under_attack"
              ],
              "type": "string",
              "title": "Security Level",
              "example": "off",
              "description": "The Security Level to configure."
            },
            "content_converter": {
              "type": "boolean",
              "title": "Content Converter",
              "example": true,
              "description": "Whether to enable content conversion (e.g., HTML to Markdown)."
            },
            "email_obfuscation": {
              "type": "boolean",
              "title": "Email Obfuscation",
              "example": true,
              "description": "Whether to enable Email Obfuscation."
            },
            "hotlink_protection": {
              "type": "boolean",
              "title": "Hotlink Protection",
              "example": true,
              "description": "Whether to enable Hotlink Protection."
            },
            "server_side_excludes": {
              "type": "boolean",
              "title": "Server-Side Excludes",
              "example": true,
              "description": "Whether to enable Server-Side Excludes."
            },
            "disable_pay_per_crawl": {
              "enum": [
                true
              ],
              "type": "boolean",
              "title": "Disable Pay Per Crawl",
              "description": "Whether to disable Pay Per Crawl."
            },
            "request_body_buffering": {
              "enum": [
                "none",
                "standard",
                "full"
              ],
              "type": "string",
              "title": "Request body buffering",
              "example": "standard",
              "description": "The request body buffering mode."
            },
            "response_body_buffering": {
              "enum": [
                "none",
                "standard"
              ],
              "type": "string",
              "title": "Response body buffering",
              "example": "standard",
              "description": "The response body buffering mode."
            },
            "automatic_https_rewrites": {
              "type": "boolean",
              "title": "Automatic HTTPS Rewrites",
              "example": true,
              "description": "Whether to enable Automatic HTTPS Rewrites."
            },
            "opportunistic_encryption": {
              "type": "boolean",
              "title": "Opportunistic Encryption",
              "example": true,
              "description": "Whether to enable Opportunistic Encryption."
            },
            "redirects_for_ai_training": {
              "type": "boolean",
              "title": "Redirects for AI Training",
              "example": true,
              "description": "Whether to redirect verified AI training crawlers to canonical URLs found in the HTML response."
            }
          },
          "minProperties": 1
        }
      }
    }
  ]
}
string rulesets_SkipPhase
{
  "enum": [
    "current"
  ],
  "type": "string",
  "title": "Phase",
  "description": "A phase to skip the execution of. This option is only compatible with the products option."
}
array rulesets_SkipPhases
{
  "type": "array",
  "items": {
    "allOf": [
      {
        "$ref": "#/components/schemas/rulesets_RulesetPhase"
      },
      {
        "description": "The phase to skip the execution of."
      }
    ]
  },
  "title": "Phases",
  "minItems": 1,
  "description": "A list of phases to skip the execution of. This option is incompatible with the rulesets option.",
  "uniqueItems": true
}
array rulesets_SkipProducts
{
  "type": "array",
  "items": {
    "enum": [
      "bic",
      "hot",
      "rateLimit",
      "securityLevel",
      "uaBlock",
      "waf",
      "zoneLockdown"
    ],
    "type": "string",
    "title": "Product",
    "example": "bic",
    "description": "The name of a legacy security product to skip the execution of."
  },
  "title": "Products",
  "minItems": 1,
  "description": "A list of legacy security products to skip the execution of.",
  "uniqueItems": true
}
object rulesets_SkipRule
{
  "allOf": [
    {
      "$ref": "#/components/schemas/rulesets_Rule"
    },
    {
      "title": "Skip Rule",
      "properties": {
        "action": {
          "enum": [
            "skip"
          ]
        },
        "description": {
          "example": "Skip executing rulesets, rules, phases, and other products."
        },
        "action_parameters": {
          "properties": {
            "phase": {
              "$ref": "#/components/schemas/rulesets_SkipPhase"
            },
            "rules": {
              "$ref": "#/components/schemas/rulesets_SkipRules"
            },
            "phases": {
              "$ref": "#/components/schemas/rulesets_SkipPhases"
            },
            "ruleset": {
              "$ref": "#/components/schemas/rulesets_SkipRuleset"
            },
            "products": {
              "$ref": "#/components/schemas/rulesets_SkipProducts"
            },
            "rulesets": {
              "$ref": "#/components/schemas/rulesets_SkipRulesets"
            }
          },
          "minProperties": 1
        }
      }
    }
  ]
}
object rulesets_SkipRules
{
  "type": "object",
  "title": "Rules",
  "example": {
    "4814384a9e5d4991b9815dcfc25d2f1f": [
      "8ac8bc2a661e475d940980f9317f28e1"
    ]
  },
  "description": "A mapping of ruleset IDs to a list of rule IDs in that ruleset to skip the execution of. This option is incompatible with the ruleset option.",
  "minProperties": 1,
  "additionalProperties": {
    "type": "array",
    "items": {
      "allOf": [
        {
          "$ref": "#/components/schemas/rulesets_RuleId"
        },
        {
          "title": "Rule",
          "example": "8ac8bc2a661e475d940980f9317f28e1",
          "description": "The ID of a rule in the ruleset to skip the execution of."
        }
      ]
    },
    "title": "Rules",
    "minItems": 1,
    "description": "A list of rule IDs in the ruleset to skip the execution of.",
    "uniqueItems": true
  }
}
string rulesets_SkipRuleset
{
  "enum": [
    "current"
  ],
  "type": "string",
  "title": "Ruleset",
  "description": "A ruleset to skip the execution of. This option is incompatible with the rulesets option."
}
array rulesets_SkipRulesets
{
  "type": "array",
  "items": {
    "allOf": [
      {
        "$ref": "#/components/schemas/rulesets_RulesetId"
      },
      {
        "title": "Ruleset",
        "example": "4814384a9e5d4991b9815dcfc25d2f1f",
        "description": "The ID of a ruleset to skip the execution of."
      }
    ]
  },
  "title": "Rulesets",
  "minItems": 1,
  "description": "A list of ruleset IDs to skip the execution of. This option is incompatible with the ruleset and phases options.",
  "uniqueItems": true
}
object rulesets_UrlNormalization
{
  "type": "object",
  "title": "URL Normalization",
  "required": [
    "type",
    "scope"
  ],
  "properties": {
    "type": {
      "enum": [
        "cloudflare",
        "rfc3986"
      ],
      "type": "string",
      "title": "Type",
      "example": "cloudflare",
      "description": "The type of URL normalization performed by Cloudflare."
    },
    "scope": {
      "enum": [
        "incoming",
        "both",
        "none"
      ],
      "type": "string",
      "title": "Scope",
      "example": "incoming",
      "description": "The scope of the URL normalization."
    }
  },
  "description": "A URL Normalization object."
}
string rulesets_ZoneId
{
  "type": "string",
  "title": "Zone ID",
  "example": "9f1839b6152d298aca64c4e906b6d074",
  "pattern": "^[0-9a-f]{32}$",
  "description": "The unique ID of the zone."
}
object rum_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/rum_messages"
    },
    "success": {
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/rum_messages"
    }
  }
}
object rum_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/rum_schemas-messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/rum_schemas-messages"
        }
      ],
      "example": []
    }
  }
}
boolean rum_auto_install
{
  "type": "boolean",
  "example": true,
  "description": "If enabled, the JavaScript snippet is automatically injected for orange-clouded sites.",
  "x-auditable": true
}
object rum_create-rule-request
{
  "type": "object",
  "properties": {
    "host": {
      "type": "string",
      "example": "example.com"
    },
    "paths": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "*"
      ]
    },
    "inclusive": {
      "type": "boolean",
      "example": true,
      "description": "Whether the rule includes or excludes traffic from being measured."
    },
    "is_paused": {
      "type": "boolean",
      "example": false,
      "description": "Whether the rule is paused or not."
    }
  }
}
object rum_create-site-request
{
  "type": "object",
  "properties": {
    "host": {
      "$ref": "#/components/schemas/rum_host"
    },
    "zone_tag": {
      "$ref": "#/components/schemas/rum_zone_tag"
    },
    "auto_install": {
      "$ref": "#/components/schemas/rum_auto_install"
    }
  }
}
object rum_created
{
  "$ref": "#/components/schemas/rum_timestamp"
}
boolean rum_editable
{
  "type": "boolean",
  "example": true
}
boolean rum_enabled
{
  "type": "boolean",
  "example": true,
  "description": "Enables or disables RUM. This option can be used only when auto_install is set to true.",
  "x-auditable": true
}
string rum_host
{
  "type": "string",
  "example": "example.com",
  "description": "The hostname to use for gray-clouded sites.",
  "x-auditable": true
}
string rum_id
{
  "type": "string",
  "example": "rum",
  "x-auditable": true
}
string rum_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Identifier.",
  "x-auditable": true
}
boolean rum_is_host_regex
{
  "type": "boolean",
  "example": false,
  "description": "Whether to match the hostname using a regular expression.",
  "x-auditable": true
}
boolean rum_lite
{
  "type": "boolean",
  "description": "If enabled, the JavaScript snippet will not be injected for visitors from the EU.",
  "x-auditable": true
}
array rum_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "message": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
object rum_modify-rules-request
{
  "type": "object",
  "properties": {
    "rules": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/rum_rule_identifier"
          },
          "host": {
            "type": "string",
            "example": "example.com"
          },
          "paths": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "example": [
              "*"
            ]
          },
          "inclusive": {
            "type": "boolean",
            "example": true
          },
          "is_paused": {
            "type": "boolean",
            "example": false
          }
        }
      },
      "description": "A list of rules to create or update."
    },
    "delete_rules": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/rum_rule_identifier"
      },
      "description": "A list of rule identifiers to delete."
    }
  }
}
string rum_order_by
{
  "enum": [
    "host",
    "created"
  ],
  "type": "string",
  "example": "host",
  "description": "The property used to sort the list of results."
}
number rum_page
{
  "type": "number",
  "example": 1,
  "description": "Current page within the paginated list of results."
}
number rum_per_page
{
  "type": "number",
  "example": 10,
  "description": "Number of items to return per page of results."
}
object rum_result_info
{
  "type": "object",
  "properties": {
    "page": {
      "type": "integer",
      "example": 1,
      "description": "Current page within the paginated list of results."
    },
    "count": {
      "type": "integer",
      "example": 10,
      "description": "The total number of items on the current page."
    },
    "per_page": {
      "type": "integer",
      "example": 10,
      "description": "The maximum number of items to return per page of results."
    },
    "total_count": {
      "type": "integer",
      "example": 25,
      "description": "The total number of items."
    },
    "total_pages": {
      "type": "integer",
      "example": 3,
      "nullable": true,
      "description": "The total number of pages."
    }
  }
}
object rum_rule
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/rum_rule_identifier"
    },
    "host": {
      "type": "string",
      "example": "example.com",
      "description": "The hostname the rule will be applied to.",
      "x-auditable": true
    },
    "paths": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "example": [
        "*"
      ],
      "description": "The paths the rule will be applied to."
    },
    "created": {
      "$ref": "#/components/schemas/rum_timestamp"
    },
    "priority": {
      "type": "number",
      "example": 1000,
      "x-auditable": true
    },
    "inclusive": {
      "type": "boolean",
      "example": true,
      "description": "Whether the rule includes or excludes traffic from being measured.",
      "x-auditable": true
    },
    "is_paused": {
      "type": "boolean",
      "example": false,
      "description": "Whether the rule is paused or not.",
      "x-auditable": true
    }
  }
}
object rum_rule-id-response-single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/rum_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "id": {
              "$ref": "#/components/schemas/rum_rule_identifier"
            }
          }
        }
      }
    }
  ]
}
object rum_rule-response-single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/rum_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/rum_rule"
        }
      }
    }
  ]
}
string rum_rule_identifier
{
  "type": "string",
  "example": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
  "description": "The Web Analytics rule identifier.",
  "x-auditable": true
}
array rum_rules
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/rum_rule"
  },
  "description": "A list of rules."
}
object rum_rules-response-collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/rum_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "rules": {
              "$ref": "#/components/schemas/rum_rules"
            },
            "ruleset": {
              "$ref": "#/components/schemas/rum_ruleset"
            }
          }
        }
      }
    }
  ]
}
object rum_ruleset
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/rum_ruleset_identifier"
    },
    "enabled": {
      "type": "boolean",
      "example": true,
      "description": "Whether the ruleset is enabled."
    },
    "zone_tag": {
      "$ref": "#/components/schemas/rum_zone_tag"
    },
    "zone_name": {
      "type": "string",
      "example": "example.com"
    }
  }
}
string rum_ruleset_identifier
{
  "type": "string",
  "example": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
  "description": "The Web Analytics ruleset identifier.",
  "x-auditable": true
}
object rum_rum-site-response-single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/rum_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/rum_rum_site"
        }
      }
    }
  ]
}
object rum_rum_site
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/rum_id"
    },
    "value": {
      "$ref": "#/components/schemas/rum_value"
    },
    "editable": {
      "$ref": "#/components/schemas/rum_editable"
    }
  }
}
array rum_schemas-messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
object rum_site
{
  "type": "object",
  "properties": {
    "rules": {
      "$ref": "#/components/schemas/rum_rules"
    },
    "created": {
      "$ref": "#/components/schemas/rum_timestamp"
    },
    "ruleset": {
      "$ref": "#/components/schemas/rum_ruleset"
    },
    "snippet": {
      "$ref": "#/components/schemas/rum_snippet"
    },
    "site_tag": {
      "$ref": "#/components/schemas/rum_site_tag"
    },
    "site_token": {
      "$ref": "#/components/schemas/rum_site_token"
    },
    "auto_install": {
      "$ref": "#/components/schemas/rum_auto_install"
    }
  }
}
object rum_site-response-single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/rum_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/rum_site"
        }
      }
    }
  ]
}
object rum_site-tag-response-single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/rum_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "site_tag": {
              "$ref": "#/components/schemas/rum_site_tag"
            }
          }
        }
      }
    }
  ]
}
string rum_site_tag
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "description": "The Web Analytics site identifier.",
  "x-auditable": true
}
string rum_site_token
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "description": "The Web Analytics site token.",
  "x-auditable": true
}
object rum_sites-response-collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/rum_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/rum_site"
          }
        },
        "result_info": {
          "$ref": "#/components/schemas/rum_result_info"
        }
      }
    }
  ]
}
string rum_snippet
{
  "type": "string",
  "example": "<!-- Cloudflare Web Analytics --><script defer src='https://static.cloudflareinsights.com/beacon.min.js' data-cf-beacon='{\"token\": \"bc40a2d1b5834453aba85c1b9a3054da\"}'></script><!-- End Cloudflare Web Analytics -->",
  "description": "Encoded JavaScript snippet.",
  "x-auditable": true
}
string rum_timestamp
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-01T05:20:00.12345Z",
  "readOnly": true,
  "x-auditable": true
}
object rum_toggle-rum-request
{
  "type": "object",
  "properties": {
    "value": {
      "type": "string",
      "example": "on",
      "description": "Value can either be On or Off."
    }
  }
}
object rum_update-site-request
{
  "type": "object",
  "properties": {
    "host": {
      "$ref": "#/components/schemas/rum_host"
    },
    "lite": {
      "$ref": "#/components/schemas/rum_lite"
    },
    "enabled": {
      "$ref": "#/components/schemas/rum_enabled"
    },
    "zone_tag": {
      "$ref": "#/components/schemas/rum_zone_tag"
    },
    "auto_install": {
      "$ref": "#/components/schemas/rum_auto_install"
    }
  }
}
string rum_value
{
  "type": "string",
  "example": "on",
  "description": "Current state of RUM. Returns On, Off, or Manual.",
  "x-auditable": true
}
string rum_zone_tag
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "description": "The zone identifier.",
  "x-auditable": true
}
string secondary-dns_account_identifier
{
  "type": "string",
  "example": "01a7362d577a6c3019a474fd6f485823",
  "readOnly": true,
  "x-auditable": true
}
object secondary-dns_acl
{
  "type": "object",
  "required": [
    "id",
    "name",
    "ip_range"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/secondary-dns_components-schemas-identifier"
    },
    "name": {
      "$ref": "#/components/schemas/secondary-dns_acl_components-schemas-name"
    },
    "ip_range": {
      "$ref": "#/components/schemas/secondary-dns_ip_range"
    }
  }
}
string secondary-dns_acl_components-schemas-name
{
  "type": "string",
  "example": "my-acl-1",
  "description": "The name of the acl.",
  "x-auditable": true
}
string secondary-dns_algo
{
  "type": "string",
  "example": "hmac-sha512.",
  "description": "TSIG algorithm.",
  "x-auditable": true
}
object secondary-dns_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/secondary-dns_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result_info": {
          "type": "object",
          "properties": {
            "page": {
              "type": "number",
              "example": 1,
              "description": "Current page within paginated list of results."
            },
            "count": {
              "type": "number",
              "example": 1,
              "description": "Total number of results for the requested service."
            },
            "per_page": {
              "type": "number",
              "example": 20,
              "description": "Number of results per page of results."
            },
            "total_count": {
              "type": "number",
              "example": 2000,
              "description": "Total results available without any search parameters."
            },
            "total_pages": {
              "type": "number",
              "example": 100,
              "description": "The number of total pages in the entire result set."
            }
          }
        }
      }
    }
  ]
}
object secondary-dns_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/secondary-dns_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/secondary-dns_messages"
    }
  }
}
object secondary-dns_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/secondary-dns_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/secondary-dns_messages"
        }
      ],
      "example": []
    }
  }
}
object secondary-dns_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/secondary-dns_api-response-common"
    }
  ]
}
number secondary-dns_auto_refresh_seconds
{
  "type": "number",
  "default": 86400,
  "example": 86400,
  "minimum": 300,
  "description": "How often should a secondary zone auto refresh regardless of DNS NOTIFY.\nNot applicable for primary zones.",
  "x-auditable": true
}
object secondary-dns_components-schemas-id_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/secondary-dns_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "id": {
              "$ref": "#/components/schemas/secondary-dns_components-schemas-identifier"
            }
          }
        }
      }
    }
  ]
}
string secondary-dns_components-schemas-identifier
{
  "type": "string",
  "example": "23ff594956f20c2a721606e94745a8aa",
  "readOnly": true,
  "x-auditable": true
}
string secondary-dns_components-schemas-name
{
  "type": "string",
  "example": "my-peer-1",
  "description": "The name of the peer.",
  "x-auditable": true
}
object secondary-dns_components-schemas-response_collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/secondary-dns_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/secondary-dns_acl"
          }
        }
      }
    }
  ]
}
object secondary-dns_components-schemas-single_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/secondary-dns_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/secondary-dns_acl"
        }
      }
    }
  ]
}
object secondary-dns_disable_transfer_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/secondary-dns_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/secondary-dns_disable_transfer_result"
        }
      }
    }
  ]
}
string secondary-dns_disable_transfer_result
{
  "type": "string",
  "example": "Disabled",
  "description": "The zone transfer status of a primary zone.",
  "x-auditable": true
}
object secondary-dns_dns-secondary-secondary-zone
{
  "type": "object",
  "required": [
    "id",
    "name",
    "peers",
    "auto_refresh_seconds"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/secondary-dns_identifier"
    },
    "name": {
      "$ref": "#/components/schemas/secondary-dns_name"
    },
    "peers": {
      "$ref": "#/components/schemas/secondary-dns_peers"
    },
    "auto_refresh_seconds": {
      "$ref": "#/components/schemas/secondary-dns_auto_refresh_seconds"
    }
  }
}
object secondary-dns_enable_transfer_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/secondary-dns_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/secondary-dns_enable_transfer_result"
        }
      }
    }
  ]
}
string secondary-dns_enable_transfer_result
{
  "type": "string",
  "example": "Enabled",
  "description": "The zone transfer status of a primary zone.",
  "x-auditable": true
}
object secondary-dns_force_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/secondary-dns_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/secondary-dns_force_result"
        }
      }
    }
  ]
}
string secondary-dns_force_result
{
  "type": "string",
  "example": "OK",
  "description": "When force_axfr query parameter is set to true, the response is a simple string.",
  "x-auditable": true
}
object secondary-dns_id_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/secondary-dns_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "id": {
              "$ref": "#/components/schemas/secondary-dns_identifier"
            }
          }
        }
      }
    }
  ]
}
string secondary-dns_identifier
{
  "type": "string",
  "example": "269d8f4853475ca241c4e730be286b20",
  "readOnly": true,
  "x-auditable": true
}
string secondary-dns_ip
{
  "type": "string",
  "example": "192.0.2.53",
  "description": "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.",
  "x-auditable": true
}
string secondary-dns_ip_range
{
  "type": "string",
  "example": "192.0.2.53/28",
  "description": "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.",
  "x-auditable": true
}
boolean secondary-dns_ixfr_enable
{
  "type": "boolean",
  "example": false,
  "description": "Enable IXFR transfer protocol, default is AXFR. Only applicable to secondary zones.",
  "x-auditable": true
}
array secondary-dns_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string secondary-dns_name
{
  "type": "string",
  "example": "www.example.com.",
  "description": "Zone name.",
  "x-auditable": true
}
object secondary-dns_peer
{
  "type": "object",
  "required": [
    "id",
    "name"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/secondary-dns_components-schemas-identifier"
    },
    "ip": {
      "$ref": "#/components/schemas/secondary-dns_ip"
    },
    "name": {
      "$ref": "#/components/schemas/secondary-dns_components-schemas-name"
    },
    "port": {
      "$ref": "#/components/schemas/secondary-dns_port"
    },
    "tsig_id": {
      "$ref": "#/components/schemas/secondary-dns_tsig_id"
    },
    "ixfr_enable": {
      "$ref": "#/components/schemas/secondary-dns_ixfr_enable"
    }
  }
}
array secondary-dns_peers
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/secondary-dns_identifier"
  },
  "example": [
    "23ff594956f20c2a721606e94745a8aa",
    "00920f38ce07c2e2f4df50b1f61d4194"
  ],
  "description": "A list of peer tags.",
  "x-stainless-collection-type": "set"
}
number secondary-dns_port
{
  "type": "number",
  "example": 53,
  "description": "DNS port of primary or secondary nameserver, depending on what zone this peer is linked to.",
  "x-auditable": true
}
object secondary-dns_response_collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/secondary-dns_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/secondary-dns_tsig"
          }
        }
      }
    }
  ]
}
object secondary-dns_schemas-force_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/secondary-dns_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/secondary-dns_schemas-force_result"
        }
      }
    }
  ]
}
string secondary-dns_schemas-force_result
{
  "type": "string",
  "example": "OK",
  "description": "When force_notify query parameter is set to true, the response is a simple string.",
  "x-auditable": true
}
object secondary-dns_schemas-id_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/secondary-dns_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "id": {
              "$ref": "#/components/schemas/secondary-dns_schemas-identifier"
            }
          }
        }
      }
    }
  ]
}
string secondary-dns_schemas-identifier
{
  "type": "string",
  "example": "69cd1e104af3e6ed3cb344f263fd0d5a",
  "readOnly": true,
  "x-auditable": true
}
string secondary-dns_schemas-name
{
  "type": "string",
  "example": "tsig.customer.cf.",
  "description": "TSIG key name.",
  "x-auditable": true
}
object secondary-dns_schemas-response_collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/secondary-dns_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/secondary-dns_peer"
          }
        }
      }
    }
  ]
}
object secondary-dns_schemas-single_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/secondary-dns_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/secondary-dns_peer"
        }
      }
    }
  ]
}
string secondary-dns_secret
{
  "type": "string",
  "example": "caf79a7804b04337c9c66ccd7bef9190a1e1679b5dd03d8aa10f7ad45e1a9dab92b417896c15d4d007c7c14194538d2a5d0feffdecc5a7f0e1c570cfa700837c",
  "description": "TSIG secret.",
  "x-sensitive": true
}
object secondary-dns_single_request_outgoing
{
  "required": [
    "id",
    "name",
    "peers"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/secondary-dns_identifier"
    },
    "name": {
      "$ref": "#/components/schemas/secondary-dns_name"
    },
    "peers": {
      "$ref": "#/components/schemas/secondary-dns_peers"
    }
  }
}
object secondary-dns_single_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/secondary-dns_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/secondary-dns_tsig"
        }
      }
    }
  ]
}
object secondary-dns_single_response_incoming
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/secondary-dns_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "id": {
              "$ref": "#/components/schemas/secondary-dns_identifier"
            },
            "name": {
              "$ref": "#/components/schemas/secondary-dns_name"
            },
            "peers": {
              "$ref": "#/components/schemas/secondary-dns_peers"
            },
            "soa_serial": {
              "$ref": "#/components/schemas/secondary-dns_soa_serial"
            },
            "checked_time": {
              "$ref": "#/components/schemas/secondary-dns_time"
            },
            "created_time": {
              "$ref": "#/components/schemas/secondary-dns_time"
            },
            "modified_time": {
              "$ref": "#/components/schemas/secondary-dns_time"
            },
            "auto_refresh_seconds": {
              "$ref": "#/components/schemas/secondary-dns_auto_refresh_seconds"
            }
          }
        }
      }
    }
  ]
}
object secondary-dns_single_response_outgoing
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/secondary-dns_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "id": {
              "$ref": "#/components/schemas/secondary-dns_identifier"
            },
            "name": {
              "$ref": "#/components/schemas/secondary-dns_name"
            },
            "peers": {
              "$ref": "#/components/schemas/secondary-dns_peers"
            },
            "soa_serial": {
              "$ref": "#/components/schemas/secondary-dns_soa_serial"
            },
            "checked_time": {
              "$ref": "#/components/schemas/secondary-dns_time"
            },
            "created_time": {
              "$ref": "#/components/schemas/secondary-dns_time"
            },
            "last_transferred_time": {
              "$ref": "#/components/schemas/secondary-dns_time"
            }
          }
        }
      }
    }
  ]
}
number secondary-dns_soa_serial
{
  "type": "number",
  "example": 2019102400,
  "description": "The serial number of the SOA for the given zone.",
  "x-auditable": true
}
string secondary-dns_time
{
  "type": "string",
  "example": "2019-10-24T17:09:42.883908+01:00",
  "description": "The time for a specific event.",
  "x-auditable": true
}
object secondary-dns_tsig
{
  "type": "object",
  "required": [
    "id",
    "name",
    "secret",
    "algo"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/secondary-dns_schemas-identifier"
    },
    "algo": {
      "$ref": "#/components/schemas/secondary-dns_algo"
    },
    "name": {
      "$ref": "#/components/schemas/secondary-dns_schemas-name"
    },
    "secret": {
      "$ref": "#/components/schemas/secondary-dns_secret"
    }
  }
}
string secondary-dns_tsig_id
{
  "type": "string",
  "example": "69cd1e104af3e6ed3cb344f263fd0d5a",
  "description": "TSIG authentication will be used for zone transfer if configured.",
  "x-auditable": true
}
string secrets-store_SecretStatus
{
  "enum": [
    "pending",
    "active",
    "deleted"
  ],
  "type": "string",
  "x-auditable": true
}
string secrets-store_account_identifier
{
  "type": "string",
  "example": "985e105f4ecef8ad9ca31a8372d0c353",
  "readOnly": true,
  "maxLength": 32,
  "description": "Account Identifier"
}
string secrets-store_account_tag
{
  "type": "string",
  "example": "12a6ed19f349896cfbd6694ba3de8d31",
  "description": "Account tag identifier"
}
object secrets-store_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/secrets-store_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result_info": {
          "type": "object",
          "properties": {
            "page": {
              "type": "number",
              "example": 1,
              "description": "Current page within paginated list of results."
            },
            "count": {
              "type": "number",
              "example": 1,
              "description": "Total number of results for the requested service."
            },
            "per_page": {
              "type": "number",
              "example": 20,
              "description": "Number of results per page of results."
            },
            "total_count": {
              "type": "number",
              "example": 2000,
              "description": "Total results available without any search parameters."
            },
            "total_pages": {
              "type": "number",
              "example": 100,
              "description": "The number of total pages in the entire result set."
            }
          }
        }
      }
    }
  ]
}
object secrets-store_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/secrets-store_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/secrets-store_messages"
    }
  }
}
object secrets-store_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/secrets-store_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/secrets-store_messages"
        }
      ],
      "example": []
    }
  }
}
object secrets-store_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/secrets-store_api-response-common"
    }
  ]
}
string secrets-store_comment
{
  "type": "string",
  "example": "info about my secret",
  "description": "Freeform text describing the secret",
  "x-auditable": true
}
object secrets-store_createSecretObject
{
  "required": [
    "name",
    "value",
    "scopes"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/secrets-store_secret_name"
    },
    "value": {
      "$ref": "#/components/schemas/secrets-store_value"
    },
    "scopes": {
      "$ref": "#/components/schemas/secrets-store_scopes"
    },
    "comment": {
      "$ref": "#/components/schemas/secrets-store_comment"
    }
  }
}
object secrets-store_createStoreObject
{
  "required": [
    "name"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/secrets-store_store_name"
    }
  }
}
object secrets-store_createStoreObjectSystem
{
  "required": [
    "name",
    "account_id"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/secrets-store_store_name"
    },
    "account_id": {
      "type": "integer",
      "format": "int64",
      "example": 12345,
      "description": "Account internal ID (numeric). Required for system API routes.\nThis value must remain consistent for all stores within an account\nmanaged by the same service.\n"
    }
  },
  "description": "Request body for creating a store via system API routes"
}
string secrets-store_created
{
  "type": "string",
  "format": "date-time",
  "example": "2023-09-21T18:56:32.624632Z",
  "readOnly": true,
  "description": "Whenthe secret was created.",
  "x-auditable": true
}
object secrets-store_deleteSecretsRequest
{
  "required": [
    "ids"
  ],
  "properties": {
    "ids": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/secrets-store_identifier"
      },
      "example": [
        "3fd85f74b32742f1bff64a85009dda07"
      ],
      "description": "List of secret identifier tags to delete."
    }
  },
  "description": "Request body for bulk deleting secrets"
}
object secrets-store_delete_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/secrets-store_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "nullable": true,
          "description": "Result is null for delete operations."
        }
      }
    }
  ]
}
object secrets-store_duplicateSecretObject
{
  "required": [
    "name",
    "scopes"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/secrets-store_secret_name"
    },
    "scopes": {
      "$ref": "#/components/schemas/secrets-store_scopes"
    },
    "comment": {
      "$ref": "#/components/schemas/secrets-store_comment"
    }
  }
}
string secrets-store_identifier
{
  "type": "string",
  "example": "3fd85f74b32742f1bff64a85009dda07",
  "readOnly": true,
  "maxLength": 32,
  "description": "Secret identifier tag.",
  "x-auditable": true
}
array secrets-store_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string secrets-store_modified
{
  "type": "string",
  "format": "date-time",
  "example": "2023-09-21T18:56:32.624632Z",
  "readOnly": true,
  "description": "When the secret was modified.",
  "x-auditable": true
}
object secrets-store_patchSecretObject
{
  "properties": {
    "value": {
      "$ref": "#/components/schemas/secrets-store_value"
    },
    "scopes": {
      "$ref": "#/components/schemas/secrets-store_scopes"
    },
    "comment": {
      "$ref": "#/components/schemas/secrets-store_comment"
    }
  }
}
number secrets-store_quota
{
  "type": "number",
  "example": 10,
  "description": "The number of secrets the account is entitlted to use",
  "x-auditable": true
}
object secrets-store_quota_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/secrets-store_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/secrets-store_secretsUsageObject"
        }
      }
    }
  ]
}
array secrets-store_scopes
{
  "type": "array",
  "items": {
    "type": "string"
  },
  "example": [
    "workers",
    "ai_gateway",
    "dex",
    "access"
  ],
  "description": "The list of services that can use this secret."
}
object secrets-store_secretObject
{
  "required": [
    "id",
    "name",
    "store_id",
    "created",
    "modified",
    "status"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/secrets-store_identifier"
    },
    "name": {
      "$ref": "#/components/schemas/secrets-store_secret_name"
    },
    "scopes": {
      "$ref": "#/components/schemas/secrets-store_scopes"
    },
    "status": {
      "$ref": "#/components/schemas/secrets-store_SecretStatus"
    },
    "comment": {
      "$ref": "#/components/schemas/secrets-store_comment"
    },
    "created": {
      "$ref": "#/components/schemas/secrets-store_created"
    },
    "modified": {
      "$ref": "#/components/schemas/secrets-store_modified"
    },
    "store_id": {
      "$ref": "#/components/schemas/secrets-store_store_identifier"
    }
  }
}
string secrets-store_secret_name
{
  "type": "string",
  "example": "MY_API_KEY",
  "description": "The name of the secret"
}
object secrets-store_secret_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/secrets-store_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/secrets-store_secretObject"
        }
      }
    }
  ]
}
object secrets-store_secretsUsageObject
{
  "required": [
    "secrets"
  ],
  "properties": {
    "secrets": {
      "$ref": "#/components/schemas/secrets-store_usageQuotaObject"
    }
  }
}
object secrets-store_secrets_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/secrets-store_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/secrets-store_secretObject"
          }
        }
      }
    }
  ]
}
object secrets-store_storeObject
{
  "required": [
    "id",
    "name",
    "created",
    "modified"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/secrets-store_store_identifier"
    },
    "name": {
      "$ref": "#/components/schemas/secrets-store_store_name"
    },
    "created": {
      "$ref": "#/components/schemas/secrets-store_created"
    },
    "modified": {
      "$ref": "#/components/schemas/secrets-store_modified"
    },
    "account_id": {
      "$ref": "#/components/schemas/secrets-store_account_identifier"
    }
  }
}
string secrets-store_store_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "readOnly": true,
  "maxLength": 32,
  "description": "Store Identifier",
  "x-auditable": true
}
string secrets-store_store_name
{
  "type": "string",
  "example": "service_x_keys",
  "description": "The name of the store"
}
object secrets-store_store_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/secrets-store_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/secrets-store_storeObject"
        }
      }
    }
  ]
}
object secrets-store_stores_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/secrets-store_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/secrets-store_storeObject"
          }
        }
      }
    }
  ]
}
number secrets-store_usage
{
  "type": "number",
  "example": 10,
  "description": "The number of secrets the account is currently using",
  "x-auditable": true
}
object secrets-store_usageQuotaObject
{
  "required": [
    "usage",
    "quota"
  ],
  "properties": {
    "quota": {
      "$ref": "#/components/schemas/secrets-store_quota"
    },
    "usage": {
      "$ref": "#/components/schemas/secrets-store_usage"
    }
  }
}
string secrets-store_value
{
  "type": "string",
  "example": "api-token-secret-123",
  "writeOnly": true,
  "description": "The value of the secret. Note that this is 'write only' - no API reponse will provide this value, it is only used to create/modify secrets.",
  "x-sensitive": true
}
object security-center_ExternalApiResponseCommon
{
  "$ref": "#/components/schemas/security-center_api-response-common"
}
object security-center_ExternalApiResponseCommonFailure
{
  "$ref": "#/components/schemas/security-center_api-response-common-failure"
}
object security-center_ExternalApiResponseSingle
{
  "$ref": "#/components/schemas/security-center_api-response-single"
}
object security-center_accountId
{
  "$ref": "#/components/schemas/security-center_identifier"
}
object security-center_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/security-center_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/security-center_messages"
    }
  }
}
object security-center_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/security-center_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/security-center_messages"
        }
      ],
      "example": []
    }
  }
}
object security-center_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/security-center_api-response-common"
    }
  ]
}
integer security-center_count
{
  "type": "integer",
  "example": 1,
  "description": "Indicates the total number of results.",
  "x-auditable": true
}
boolean security-center_dismissed
{
  "type": "boolean",
  "example": false,
  "x-auditable": true
}
string security-center_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Identifier.",
  "x-auditable": true
}
object security-center_issue
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "x-auditable": true
    },
    "since": {
      "type": "string",
      "format": "date-time",
      "x-auditable": true
    },
    "status": {
      "enum": [
        "active",
        "resolved"
      ],
      "type": "string",
      "example": "active",
      "description": "The current status of the insight.",
      "x-auditable": true
    },
    "payload": {
      "type": "object",
      "properties": {
        "zone_tag": {
          "type": "string",
          "x-auditable": true
        },
        "detection_method": {
          "type": "string",
          "example": "We detected security rules referencing multiple IP addresses directly in the rules.",
          "description": "Describes the method used to detect insight.",
          "x-auditable": true
        }
      }
    },
    "subject": {
      "$ref": "#/components/schemas/security-center_subject"
    },
    "severity": {
      "enum": [
        "Low",
        "Moderate",
        "Critical"
      ],
      "type": "string",
      "x-auditable": true
    },
    "dismissed": {
      "type": "boolean",
      "example": false,
      "x-auditable": true
    },
    "timestamp": {
      "type": "string",
      "format": "date-time",
      "x-auditable": true
    },
    "issue_type": {
      "$ref": "#/components/schemas/security-center_issueType"
    },
    "issue_class": {
      "$ref": "#/components/schemas/security-center_issueClass"
    },
    "resolve_link": {
      "type": "string",
      "x-auditable": true
    },
    "resolve_text": {
      "type": "string",
      "x-auditable": true
    },
    "user_classification": {
      "$ref": "#/components/schemas/security-center_userClassification"
    },
    "has_extended_context": {
      "type": "boolean",
      "example": false,
      "description": "Indicates whether the insight has a large payload that requires fetching via the context endpoint.",
      "x-auditable": true
    }
  }
}
string security-center_issueClass
{
  "type": "string",
  "example": "always_use_https_not_enabled",
  "x-auditable": true
}
array security-center_issueClasses
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/security-center_issueClass"
  },
  "example": [
    "a_record_dangling",
    "always_use_https_not_enabled"
  ]
}
string security-center_issueType
{
  "enum": [
    "compliance_violation",
    "email_security",
    "exposed_infrastructure",
    "insecure_configuration",
    "weak_authentication",
    "configuration_suggestion"
  ],
  "type": "string",
  "x-auditable": true
}
array security-center_issueTypes
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/security-center_issueType"
  },
  "example": [
    "compliance_violation",
    "email_security"
  ]
}
array security-center_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
integer security-center_page
{
  "type": "integer",
  "example": 1,
  "description": "Specifies the current page within paginated list of results."
}
integer security-center_perPage
{
  "type": "integer",
  "example": 25,
  "maximum": 1000,
  "minimum": 1,
  "description": "Sets the number of results per page of results."
}
array security-center_products
{
  "type": "array",
  "items": {
    "type": "string",
    "x-auditable": true
  },
  "example": [
    "access",
    "dns"
  ]
}
object security-center_securityTxt
{
  "type": "object",
  "properties": {
    "hiring": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "uri",
        "x-auditable": true
      },
      "example": [
        "https://example.com/jobs.html"
      ]
    },
    "policy": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "uri",
        "x-auditable": true
      },
      "example": [
        "https://example.com/disclosure-policy.html"
      ]
    },
    "contact": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "uri",
        "x-auditable": true
      },
      "example": [
        "mailto:security@example.com",
        "tel:+1-201-555-0123",
        "https://example.com/security-contact.html"
      ]
    },
    "enabled": {
      "type": "boolean",
      "example": true,
      "x-auditable": true
    },
    "expires": {
      "type": "string",
      "format": "date-time",
      "x-auditable": true
    },
    "canonical": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "uri",
        "x-auditable": true
      },
      "example": [
        "https://www.example.com/.well-known/security.txt"
      ]
    },
    "encryption": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "uri"
      },
      "example": [
        "https://example.com/pgp-key.txt",
        "dns:5d2d37ab76d47d36._openpgpkey.example.com?type=OPENPGPKEY",
        "openpgp4fpr:5f2de5521c63a801ab59ccb603d49de44b29100f"
      ]
    },
    "acknowledgments": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "uri",
        "x-auditable": true
      },
      "example": [
        "https://example.com/hall-of-fame.html"
      ]
    },
    "preferred_languages": {
      "type": "string",
      "example": "en, es, fr",
      "x-auditable": true
    }
  }
}
array security-center_severityQueryParam
{
  "type": "array",
  "items": {
    "enum": [
      "low",
      "moderate",
      "critical"
    ],
    "type": "string",
    "x-auditable": true
  },
  "example": [
    "low",
    "moderate"
  ]
}
string security-center_subject
{
  "type": "string",
  "example": "example.com",
  "x-auditable": true
}
array security-center_subjects
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/security-center_subject"
  }
}
string security-center_userClassification
{
  "enum": [
    "false_positive",
    "accept_risk",
    "other",
    null
  ],
  "type": "string",
  "example": "false_positive",
  "nullable": true,
  "description": "User-defined classification for the insight. Can be 'false_positive', 'accept_risk', 'other', or null.",
  "x-auditable": true
}
object security-center_userClassificationUpdate
{
  "type": "object",
  "properties": {
    "rationale": {
      "type": "string",
      "description": "Rationale for the classification change. Required when classification is 'accept_risk' or 'other'.",
      "x-auditable": true
    },
    "classification": {
      "$ref": "#/components/schemas/security-center_userClassification"
    }
  }
}
object security-center_valueCountsResponse
{
  "allOf": [
    {
      "$ref": "#/components/schemas/security-center_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "anyOf": [
            {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "count": {
                    "type": "integer",
                    "example": 1,
                    "x-auditable": true
                  },
                  "value": {
                    "type": "string",
                    "x-auditable": true
                  }
                }
              }
            }
          ]
        }
      }
    }
  ]
}
object security-center_zoneId
{
  "$ref": "#/components/schemas/security-center_identifier"
}
string smartshield_address
{
  "type": "string",
  "example": "www.example.com",
  "description": "The hostname or IP address of the origin server to run health checks on.",
  "x-auditable": true
}
object smartshield_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/smartshield_api-response-common"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {},
          "nullable": true
        },
        "result_info": {
          "$ref": "#/components/schemas/smartshield_result_info"
        }
      }
    }
  ]
}
object smartshield_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/smartshield_messages"
    },
    "result": {
      "anyOf": [
        {
          "type": "object"
        },
        {
          "type": "array",
          "items": {}
        },
        {
          "type": "string"
        }
      ]
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/smartshield_messages"
    }
  }
}
object smartshield_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/smartshield_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/smartshield_messages"
        }
      ],
      "example": []
    }
  }
}
object smartshield_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/smartshield_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "oneOf": [
            {
              "type": "object"
            },
            {
              "type": "string"
            }
          ]
        }
      }
    }
  ]
}
object smartshield_base
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "string",
      "description": "Identifier of the zone setting.",
      "x-auditable": true
    },
    "modified_on": {
      "type": "string",
      "format": "date-time",
      "example": "2014-01-01T05:20:00.12345Z",
      "nullable": true,
      "readOnly": true,
      "description": "Last time this setting was modified.",
      "x-auditable": true
    }
  }
}
object smartshield_cache_reserve_clear
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/smartshield_base"
    },
    {
      "type": "object",
      "properties": {
        "id": {
          "enum": [
            "cache_reserve_clear"
          ],
          "type": "string",
          "example": "cache_reserve_clear",
          "description": "ID of the zone setting.",
          "x-auditable": true
        }
      }
    }
  ],
  "title": "Cache Reserve Clear",
  "description": "You can use Cache Reserve Clear to clear your Cache Reserve, but you must first disable Cache Reserve. In most cases, this will be accomplished within 24 hours. You cannot re-enable Cache Reserve while this process is ongoing. Keep in mind that you cannot undo or cancel this operation."
}
string smartshield_cache_reserve_clear_end_ts
{
  "type": "string",
  "format": "date-time",
  "example": "2023-10-02T12:00:00.12345Z",
  "description": "The time that the latest Cache Reserve Clear operation completed.",
  "x-auditable": true
}
object smartshield_cache_reserve_clear_response_value
{
  "type": "object",
  "properties": {
    "result": {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/smartshield_cache_reserve_clear"
        },
        {
          "type": "object",
          "required": [
            "state",
            "start_ts"
          ],
          "properties": {
            "state": {
              "$ref": "#/components/schemas/smartshield_cache_reserve_clear_state"
            },
            "end_ts": {
              "$ref": "#/components/schemas/smartshield_cache_reserve_clear_end_ts"
            },
            "start_ts": {
              "$ref": "#/components/schemas/smartshield_cache_reserve_clear_start_ts"
            }
          }
        }
      ]
    }
  }
}
string smartshield_cache_reserve_clear_start_ts
{
  "type": "string",
  "format": "date-time",
  "example": "2023-10-02T10:00:00.12345Z",
  "description": "The time that the latest Cache Reserve Clear operation started.",
  "x-auditable": true
}
string smartshield_cache_reserve_clear_state
{
  "enum": [
    "In-progress",
    "Completed"
  ],
  "type": "string",
  "example": "In-progress",
  "description": "The current state of the Cache Reserve Clear operation.",
  "x-auditable": true
}
array smartshield_check_regions
{
  "type": "array",
  "items": {
    "enum": [
      "WNAM",
      "ENAM",
      "WEU",
      "EEU",
      "NSAM",
      "SSAM",
      "OC",
      "ME",
      "NAF",
      "SAF",
      "IN",
      "SEAS",
      "NEAS",
      "ALL_REGIONS"
    ],
    "type": "string",
    "description": "WNAM: Western North America, ENAM: Eastern North America, WEU: Western Europe, EEU: Eastern Europe, NSAM: Northern South America, SSAM: Southern South America, OC: Oceania, ME: Middle East, NAF: North Africa, SAF: South Africa, IN: India, SEAS: South East Asia, NEAS: North East Asia, ALL_REGIONS: all regions (BUSINESS and ENTERPRISE customers only)."
  },
  "example": [
    "WEU",
    "ENAM"
  ],
  "nullable": true,
  "description": "A list of regions from which to run health checks. Null means Cloudflare will pick a default region.",
  "x-auditable": true
}
integer smartshield_consecutive_fails
{
  "type": "integer",
  "default": 1,
  "description": "The number of consecutive fails required from a health check before changing the health to unhealthy.",
  "x-auditable": true
}
integer smartshield_consecutive_successes
{
  "type": "integer",
  "default": 1,
  "description": "The number of consecutive successes required from a health check before changing the health to healthy.",
  "x-auditable": true
}
string smartshield_description
{
  "type": "string",
  "example": "Health check for www.example.com",
  "description": "A human-readable description of the health check.",
  "x-auditable": true
}
string smartshield_failure_reason
{
  "type": "string",
  "example": "",
  "readOnly": true,
  "description": "The current failure reason if status is unhealthy.",
  "x-auditable": true
}
object smartshield_healthchecks
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/smartshield_identifier"
    },
    "name": {
      "$ref": "#/components/schemas/smartshield_name"
    },
    "type": {
      "$ref": "#/components/schemas/smartshield_type"
    },
    "status": {
      "$ref": "#/components/schemas/smartshield_status"
    },
    "address": {
      "$ref": "#/components/schemas/smartshield_address"
    },
    "retries": {
      "$ref": "#/components/schemas/smartshield_retries"
    },
    "timeout": {
      "$ref": "#/components/schemas/smartshield_timeout"
    },
    "interval": {
      "$ref": "#/components/schemas/smartshield_interval"
    },
    "suspended": {
      "$ref": "#/components/schemas/smartshield_suspended"
    },
    "created_on": {
      "$ref": "#/components/schemas/smartshield_timestamp"
    },
    "tcp_config": {
      "$ref": "#/components/schemas/smartshield_tcp_config"
    },
    "description": {
      "$ref": "#/components/schemas/smartshield_description"
    },
    "http_config": {
      "$ref": "#/components/schemas/smartshield_http_config"
    },
    "modified_on": {
      "$ref": "#/components/schemas/smartshield_timestamp"
    },
    "check_regions": {
      "$ref": "#/components/schemas/smartshield_check_regions"
    },
    "failure_reason": {
      "$ref": "#/components/schemas/smartshield_failure_reason"
    },
    "consecutive_fails": {
      "$ref": "#/components/schemas/smartshield_consecutive_fails"
    },
    "consecutive_successes": {
      "$ref": "#/components/schemas/smartshield_consecutive_successes"
    }
  }
}
object smartshield_http_config
{
  "type": "object",
  "nullable": true,
  "properties": {
    "path": {
      "type": "string",
      "default": "/",
      "example": "/health",
      "description": "The endpoint path to health check against.",
      "x-auditable": true
    },
    "port": {
      "type": "integer",
      "default": 80,
      "description": "Port number to connect to for the health check. Defaults to 80 if type is HTTP or 443 if type is HTTPS.",
      "x-auditable": true
    },
    "header": {
      "type": "object",
      "example": {
        "Host": [
          "example.com"
        ],
        "X-App-ID": [
          "abc123"
        ]
      },
      "nullable": true,
      "description": "The HTTP request headers to send in the health check. It is recommended you set a Host header by default. The User-Agent header cannot be overridden.",
      "additionalProperties": {
        "type": "array",
        "items": {
          "type": "string",
          "x-auditable": true
        }
      }
    },
    "method": {
      "enum": [
        "GET",
        "HEAD"
      ],
      "type": "string",
      "default": "GET",
      "description": "The HTTP method to use for the health check.",
      "x-auditable": true
    },
    "expected_body": {
      "type": "string",
      "example": "success",
      "description": "A case-insensitive sub-string to look for in the response body. If this string is not found, the origin will be marked as unhealthy.",
      "x-auditable": true
    },
    "allow_insecure": {
      "type": "boolean",
      "default": false,
      "description": "Do not validate the certificate when the health check uses HTTPS.",
      "x-auditable": true
    },
    "expected_codes": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "default": "200",
      "example": [
        "2xx",
        "302"
      ],
      "nullable": true,
      "description": "The expected HTTP response codes (e.g. \"200\") or code ranges (e.g. \"2xx\" for all codes starting with 2) of the health check.",
      "x-auditable": true
    },
    "follow_redirects": {
      "type": "boolean",
      "default": false,
      "description": "Follow redirects if the origin returns a 3xx status code.",
      "x-auditable": true
    }
  },
  "description": "Parameters specific to an HTTP or HTTPS health check."
}
string smartshield_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "readOnly": true,
  "maxLength": 32,
  "description": "Identifier.",
  "x-auditable": true
}
integer smartshield_interval
{
  "type": "integer",
  "default": 60,
  "description": "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.",
  "x-auditable": true
}
array smartshield_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "message": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string smartshield_name
{
  "type": "string",
  "example": "server-1",
  "description": "A short name to identify the health check. Only alphanumeric characters, hyphens and underscores are allowed.",
  "x-auditable": true
}
object smartshield_query_healthcheck
{
  "type": "object",
  "required": [
    "name",
    "address"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/smartshield_name"
    },
    "type": {
      "$ref": "#/components/schemas/smartshield_type"
    },
    "address": {
      "$ref": "#/components/schemas/smartshield_address"
    },
    "retries": {
      "$ref": "#/components/schemas/smartshield_retries"
    },
    "timeout": {
      "$ref": "#/components/schemas/smartshield_timeout"
    },
    "interval": {
      "$ref": "#/components/schemas/smartshield_interval"
    },
    "suspended": {
      "$ref": "#/components/schemas/smartshield_suspended"
    },
    "tcp_config": {
      "$ref": "#/components/schemas/smartshield_tcp_config"
    },
    "description": {
      "$ref": "#/components/schemas/smartshield_description"
    },
    "http_config": {
      "$ref": "#/components/schemas/smartshield_http_config"
    },
    "check_regions": {
      "$ref": "#/components/schemas/smartshield_check_regions"
    },
    "consecutive_fails": {
      "$ref": "#/components/schemas/smartshield_consecutive_fails"
    },
    "consecutive_successes": {
      "$ref": "#/components/schemas/smartshield_consecutive_successes"
    }
  }
}
object smartshield_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/smartshield_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/smartshield_healthchecks"
          }
        }
      }
    }
  ]
}
object smartshield_result_info
{
  "type": "object",
  "properties": {
    "page": {
      "type": "number",
      "example": 1,
      "description": "Current page within paginated list of results"
    },
    "count": {
      "type": "number",
      "example": 1,
      "description": "Total number of results for the requested service"
    },
    "per_page": {
      "type": "number",
      "example": 20,
      "description": "Number of results per page of results"
    },
    "total_count": {
      "type": "number",
      "example": 2000,
      "description": "Total results available without any search parameters"
    }
  }
}
integer smartshield_retries
{
  "type": "integer",
  "default": 2,
  "description": "The number of retries to attempt in case of a timeout before marking the origin as unhealthy. Retries are attempted immediately.",
  "x-auditable": true
}
object smartshield_single_hc_id_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/smartshield_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "id": {
              "$ref": "#/components/schemas/smartshield_identifier"
            }
          }
        }
      }
    }
  ]
}
object smartshield_single_hc_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/smartshield_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/smartshield_healthchecks"
        }
      }
    }
  ]
}
object smartshield_single_smart_shield_get_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/smartshield_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/smartshield_smart_shield_settings_get_response"
        }
      }
    }
  ]
}
object smartshield_single_smart_shield_patch_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/smartshield_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/smartshield_smart_shield_settings_patch_response"
        }
      }
    }
  ]
}
object smartshield_smart_shield_settings
{
  "type": "object",
  "properties": {
    "cache_reserve": {
      "properties": {
        "id": {
          "type": "string",
          "example": "cache_reserve",
          "description": "The id of the Cache Reserve setting."
        },
        "value": {
          "enum": [
            "on",
            "off"
          ],
          "type": "string",
          "example": "off",
          "description": "Specifies the enablement value of Cache Reserve."
        },
        "editable": {
          "type": "boolean",
          "example": true,
          "description": "Whether the setting is editable."
        }
      }
    },
    "smart_routing": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "example": "smart_routing",
          "description": "The id of the Smart Routing setting."
        },
        "value": {
          "enum": [
            "on",
            "off"
          ],
          "type": "string",
          "example": "off",
          "description": "Specifies the enablement value of Argo Smart Routing."
        },
        "editable": {
          "type": "boolean",
          "example": true,
          "description": "Whether the setting is editable."
        }
      }
    },
    "smart_tiered_cache": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "example": "smart_tiered_cache",
          "description": "The id of the Smart Tiered Cache setting."
        },
        "value": {
          "enum": [
            "on",
            "off"
          ],
          "type": "string",
          "example": "on",
          "description": "Specifies the enablement value of Tiered Cache."
        },
        "editable": {
          "type": "boolean",
          "example": true,
          "description": "Whether the setting is editable."
        },
        "modified_on": {
          "type": "string",
          "example": "2025-09-10T22:53:22.946098Z",
          "description": "The last time the setting was modified."
        }
      }
    },
    "regional_tiered_cache": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "example": "regional_tiered_cache",
          "description": "The id of the Regional Tiered Cache setting."
        },
        "value": {
          "enum": [
            "on",
            "off"
          ],
          "type": "string",
          "example": "off",
          "description": "Specifies the enablement value of Cache Reserve."
        },
        "editable": {
          "type": "boolean",
          "example": true,
          "description": "Whether the setting is editable."
        }
      }
    }
  },
  "description": "A consolidated object containing settings from multiple APIs for partial updates."
}
object smartshield_smart_shield_settings_get_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/smartshield_smart_shield_settings"
    },
    {
      "type": "object",
      "properties": {
        "healthchecks_count": {
          "type": "integer",
          "example": 5,
          "description": "The total number of health checks associated with the zone."
        }
      }
    }
  ],
  "required": [
    "smart_tiered_cache",
    "smart_routing",
    "regional_tiered_cache",
    "cache_reserve",
    "healthchecks_count"
  ],
  "description": "The full Smart Shield response from the GET and PATCH operations."
}
object smartshield_smart_shield_settings_patch_body
{
  "type": "object",
  "example": {
    "smart_tiered_cache": {
      "value": "on"
    }
  },
  "properties": {
    "cache_reserve": {
      "type": "object",
      "properties": {
        "value": {
          "enum": [
            "on",
            "off"
          ],
          "type": "string",
          "example": "on",
          "description": "Specifies the enablement value of Cache Reserve."
        }
      }
    },
    "smart_routing": {
      "type": "object",
      "properties": {
        "value": {
          "enum": [
            "on",
            "off"
          ],
          "type": "string",
          "example": "on",
          "description": "Specifies the enablement value of Smart Routing."
        }
      }
    },
    "smart_tiered_cache": {
      "type": "object",
      "properties": {
        "value": {
          "enum": [
            "on",
            "off"
          ],
          "type": "string",
          "example": "on",
          "description": "Specifies the enablement value of Smart Tiered Cache."
        }
      }
    },
    "regional_tiered_cache": {
      "type": "object",
      "properties": {
        "value": {
          "enum": [
            "on",
            "off"
          ],
          "type": "string",
          "example": "on",
          "description": "Specifies the enablement value of Regional Tiered Cache."
        }
      }
    }
  },
  "description": "The patch body for Smart Shield."
}
object smartshield_smart_shield_settings_patch_response
{
  "type": "object",
  "required": [
    "smart_tiered_cache",
    "smart_routing",
    "regional_tiered_cache",
    "cache_reserve"
  ],
  "properties": {
    "smart_tiered_cache": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "example": "smart_tiered_cache",
          "description": "The id of the Smart Tiered Cache setting."
        },
        "value": {
          "enum": [
            "on",
            "off"
          ],
          "type": "string",
          "example": "on",
          "description": "Specifies the enablement value of Tiered Cache."
        },
        "editable": {
          "type": "boolean",
          "example": true,
          "description": "Whether the setting is editable."
        },
        "modified_on": {
          "type": "string",
          "example": "2025-09-10T22:53:22.946098Z",
          "description": "The last time the setting was modified."
        }
      }
    }
  },
  "description": "A consolidated object containing settings from multiple APIs for partial updates."
}
string smartshield_status
{
  "enum": [
    "unknown",
    "healthy",
    "unhealthy",
    "suspended"
  ],
  "type": "string",
  "example": "healthy",
  "readOnly": true,
  "description": "The current status of the origin server according to the health check.",
  "x-auditable": true
}
boolean smartshield_suspended
{
  "type": "boolean",
  "default": false,
  "description": "If suspended, no health checks are sent to the origin.",
  "x-auditable": true
}
object smartshield_tcp_config
{
  "type": "object",
  "nullable": true,
  "properties": {
    "port": {
      "type": "integer",
      "default": 80,
      "description": "Port number to connect to for the health check. Defaults to 80.",
      "x-auditable": true
    },
    "method": {
      "enum": [
        "connection_established"
      ],
      "type": "string",
      "default": "connection_established",
      "description": "The TCP connection method to use for the health check.",
      "x-auditable": true
    }
  },
  "description": "Parameters specific to TCP health check."
}
integer smartshield_timeout
{
  "type": "integer",
  "default": 5,
  "description": "The timeout (in seconds) before marking the health check as failed.",
  "x-auditable": true
}
string smartshield_timestamp
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-01T05:20:00.12345Z",
  "readOnly": true,
  "x-auditable": true
}
string smartshield_type
{
  "type": "string",
  "default": "HTTP",
  "example": "HTTPS",
  "description": "The protocol to use for the health check. Currently supported protocols are 'HTTP', 'HTTPS' and 'TCP'.",
  "x-auditable": true
}
array snippets_Errors
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/snippets_Message"
  },
  "title": "Errors",
  "description": "Lists error messages."
}
object snippets_Message
{
  "type": "object",
  "title": "Message",
  "required": [
    "message"
  ],
  "properties": {
    "code": {
      "type": "integer",
      "title": "Code",
      "example": 10000,
      "description": "Identify the message code.",
      "x-auditable": true
    },
    "message": {
      "type": "string",
      "title": "Description",
      "example": "something bad happened",
      "minLength": 1,
      "description": "Describes the message text.",
      "x-auditable": true
    }
  },
  "description": "Describes an API message."
}
array snippets_Messages
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/snippets_Message"
  },
  "title": "Messages",
  "description": "Contain warning messages."
}
integer snippets_Page
{
  "type": "integer",
  "title": "Page",
  "default": 1,
  "example": 1,
  "minimum": 1,
  "description": "Specifies the current page number.",
  "x-auditable": true
}
integer snippets_PerPage
{
  "type": "integer",
  "title": "Per Page",
  "default": 25,
  "example": 25,
  "minimum": 1,
  "description": "Specifies how many results to return per page.",
  "x-auditable": true
}
object snippets_Response
{
  "type": "object",
  "title": "Response",
  "required": [
    "result",
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/snippets_Errors"
    },
    "result": {
      "type": "object",
      "title": "Result",
      "description": "Contain the response result."
    },
    "success": {
      "type": "boolean",
      "title": "Success",
      "description": "Indicate whether the API call was successful.",
      "x-auditable": true
    },
    "messages": {
      "$ref": "#/components/schemas/snippets_Messages"
    }
  },
  "description": "Return all API responses using this object."
}
object snippets_ResultInfo
{
  "type": "object",
  "title": "Result Info",
  "required": [
    "page",
    "per_page",
    "total_pages",
    "count",
    "total_count"
  ],
  "properties": {
    "page": {
      "$ref": "#/components/schemas/snippets_Page"
    },
    "count": {
      "type": "integer",
      "title": "Count",
      "example": 25,
      "minimum": 0,
      "description": "Specify the number of results in the current page.",
      "x-auditable": true
    },
    "per_page": {
      "$ref": "#/components/schemas/snippets_PerPage"
    },
    "total_count": {
      "type": "integer",
      "title": "Total Count",
      "example": 100,
      "minimum": 0,
      "description": "Specify the total number of results.",
      "x-auditable": true
    },
    "total_pages": {
      "type": "integer",
      "title": "Total Pages",
      "example": 10,
      "minimum": 1,
      "description": "Specify the total number of pages.",
      "x-auditable": true
    }
  },
  "description": "Additional information to navigate the results."
}
object snippets_Snippet
{
  "type": "object",
  "title": "Snippet",
  "required": [
    "created_on",
    "modified_one",
    "snippet_name"
  ],
  "properties": {
    "created_on": {
      "type": "string",
      "title": "Created On",
      "format": "date-time",
      "example": "2000-01-01T00:00:00.000000Z",
      "description": "Indicates when the snippet was created.",
      "x-auditable": true
    },
    "modified_on": {
      "type": "string",
      "title": "Modified On",
      "format": "date-time",
      "example": "2000-01-01T00:00:00.000000Z",
      "description": "Indicates when the snippet was last modified.",
      "x-auditable": true
    },
    "snippet_name": {
      "$ref": "#/components/schemas/snippets_SnippetName"
    }
  },
  "description": "Define a snippet."
}
array snippets_SnippetFiles
{
  "type": "array",
  "items": {
    "type": "string",
    "title": "File",
    "format": "binary",
    "description": "Specify a file belonging to the snippet.",
    "x-auditable": true
  },
  "title": "Files",
  "minItems": 1,
  "description": "Contain files belonging to the snippet."
}
string snippets_SnippetMainModule
{
  "type": "string",
  "title": "Main Module",
  "example": "main.js",
  "minLength": 1,
  "description": "Specify the name of the file that contains the main module of the snippet.",
  "x-auditable": true
}
string snippets_SnippetName
{
  "type": "string",
  "title": "Snippet Name",
  "example": "my_snippet",
  "pattern": "^[A-Za-z0-9_]+$",
  "description": "Identify the snippet.",
  "x-auditable": true
}
array snippets_SnippetRules
{
  "type": "array",
  "items": {
    "type": "object",
    "title": "Snippet Rule",
    "required": [
      "id",
      "expression",
      "snippet_name",
      "last_updated"
    ],
    "properties": {
      "id": {
        "type": "string",
        "title": "ID",
        "example": "3a03d665bac047339bb530ecb439a90d",
        "pattern": "^[0-9a-f]{32}$",
        "readOnly": true,
        "description": "Specify the unique ID of the rule.",
        "x-auditable": true
      },
      "enabled": {
        "type": "boolean",
        "title": "Enabled",
        "default": false,
        "example": true,
        "description": "Indicate whether to execute the rule.",
        "x-auditable": true
      },
      "expression": {
        "type": "string",
        "title": "Expression",
        "example": "ip.src eq 1.1.1.1",
        "minLength": 1,
        "description": "Define the expression that determines which traffic matches the rule.",
        "x-auditable": true
      },
      "description": {
        "type": "string",
        "title": "Description",
        "default": "",
        "example": "Execute my_snippet when IP address is 1.1.1.1.",
        "description": "Provide an informative description of the rule.",
        "x-auditable": true
      },
      "last_updated": {
        "type": "string",
        "title": "Last Updated",
        "format": "date-time",
        "example": "2000-01-01T00:00:00.000000Z",
        "readOnly": true,
        "description": "Specify the timestamp of when the rule was last modified.",
        "x-auditable": true
      },
      "snippet_name": {
        "$ref": "#/components/schemas/snippets_SnippetName"
      }
    },
    "description": "Define a snippet rule."
  },
  "title": "Snippet Rules",
  "description": "Lists snippet rules."
}
string snippets_ZoneId
{
  "type": "string",
  "title": "Zone ID",
  "example": "9f1839b6152d298aca64c4e906b6d074",
  "pattern": "^[0-9a-f]{32}$",
  "description": "Use this field to specify the unique ID of the zone.",
  "x-auditable": true
}
object spectrum-analytics_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/spectrum-analytics_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/spectrum-analytics_messages"
    }
  }
}
object spectrum-analytics_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/spectrum-analytics_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/spectrum-analytics_messages"
        }
      ],
      "example": []
    }
  }
}
object spectrum-analytics_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/spectrum-analytics_api-response-common"
    }
  ]
}
string spectrum-analytics_app_id_param
{
  "type": "string",
  "example": "ea95132c15732412d22c1476fa83f27a,d122c5f4bb71e25cc9e86ab43b142e2f",
  "description": "Comma-delimited list of Spectrum Application Id(s). If provided, the response will be limited to Spectrum Application Id(s) that match."
}
object spectrum-analytics_column
{
  "type": "object",
  "properties": {
    "metrics": {
      "oneOf": [
        {
          "type": "array",
          "items": {
            "type": "number"
          }
        },
        {
          "type": "array",
          "items": {
            "type": "array",
            "items": {
              "type": "number"
            }
          }
        }
      ]
    },
    "dimensions": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  }
}
array spectrum-analytics_dimensions
{
  "type": "array",
  "items": {
    "enum": [
      "event",
      "appID",
      "coloName",
      "ipVersion"
    ],
    "type": "string"
  },
  "example": [
    "event",
    "appID"
  ],
  "description": "Can be used to break down the data by given attributes. Options are: \n\nDimension                 | Name                            | Example\n--------------------------|---------------------------------|--------------------------\nevent                     | Connection Event                | connect, progress, disconnect, originError, clientFiltered\nappID                     | Application ID                  | 40d67c87c6cd4b889a4fd57805225e85\ncoloName                  | Colo Name                       | SFO\nipVersion                 | IP version used by the client   | 4, 6."
}
string spectrum-analytics_filters
{
  "type": "string",
  "example": "event==disconnect%20AND%20coloName!=SFO",
  "description": "Used to filter rows by one or more dimensions. Filters can be combined using OR and AND boolean logic. AND takes precedence over OR in all the expressions. The OR operator is defined using a comma (,) or OR keyword surrounded by whitespace. The AND operator is defined using a semicolon (;) or AND keyword surrounded by whitespace. Note that the semicolon is a reserved character in URLs (rfc1738) and needs to be percent-encoded as %3B. Comparison options are:\n\nOperator                  | Name                            | URL Encoded\n--------------------------|---------------------------------|--------------------------\n==                        | Equals                          | %3D%3D\n!=                        | Does not equals                 | !%3D\n\\>                        | Greater Than                    | %3E\n\\<                        | Less Than                       | %3C\n\\>=                       | Greater than or equal to        | %3E%3D\n\\<=                       | Less than or equal to           | %3C%3D"
}
string spectrum-analytics_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Identifier.",
  "x-auditable": true
}
array spectrum-analytics_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
array spectrum-analytics_metrics
{
  "type": "array",
  "items": {
    "enum": [
      "count",
      "bytesIngress",
      "bytesEgress",
      "durationAvg",
      "durationMedian",
      "duration90th",
      "duration99th"
    ],
    "type": "string"
  },
  "example": [
    "count",
    "bytesIngress"
  ],
  "description": "One or more metrics to compute. Options are: \n\nMetric                    | Name                                | Example                  | Unit\n--------------------------|-------------------------------------|--------------------------|--------------------------\ncount                     | Count of total events               | 1000                     | Count\nbytesIngress              | Sum of ingress bytes                | 1000                     | Sum\nbytesEgress               | Sum of egress bytes                 | 1000                     | Sum\ndurationAvg               | Average connection duration         | 1.0                      | Time in milliseconds\ndurationMedian            | Median connection duration          | 1.0                      | Time in milliseconds\nduration90th              | 90th percentile connection duration | 1.0                      | Time in milliseconds\nduration99th              | 99th percentile connection duration | 1.0                      | Time in milliseconds."
}
object spectrum-analytics_query
{
  "type": "object",
  "properties": {
    "sort": {
      "$ref": "#/components/schemas/spectrum-analytics_sort"
    },
    "limit": {
      "type": "number",
      "description": "Limit number of returned metrics."
    },
    "since": {
      "$ref": "#/components/schemas/spectrum-analytics_since"
    },
    "until": {
      "$ref": "#/components/schemas/spectrum-analytics_until"
    },
    "filters": {
      "$ref": "#/components/schemas/spectrum-analytics_filters"
    },
    "metrics": {
      "$ref": "#/components/schemas/spectrum-analytics_metrics"
    },
    "dimensions": {
      "$ref": "#/components/schemas/spectrum-analytics_dimensions"
    }
  }
}
object spectrum-analytics_query-response-aggregate
{
  "allOf": [
    {
      "$ref": "#/components/schemas/spectrum-analytics_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "type": "object",
            "required": [
              "appID",
              "bytesIngress",
              "bytesEgress",
              "connections",
              "durationAvg"
            ],
            "properties": {
              "appID": {
                "allOf": [
                  {
                    "description": "Application identifier."
                  },
                  {
                    "$ref": "#/components/schemas/spectrum-analytics_identifier"
                  }
                ]
              },
              "bytesEgress": {
                "type": "number",
                "description": "Number of bytes sent"
              },
              "connections": {
                "type": "number",
                "description": "Number of connections"
              },
              "durationAvg": {
                "type": "number",
                "description": "Average duration of connections"
              },
              "bytesIngress": {
                "type": "number",
                "description": "Number of bytes received"
              }
            }
          }
        }
      }
    }
  ]
}
object spectrum-analytics_query-response-single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/spectrum-analytics_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "required": [
            "rows",
            "data",
            "data_lag",
            "min",
            "max",
            "totals",
            "query"
          ],
          "properties": {
            "max": {
              "allOf": [
                {
                  "description": "Maximum result for each selected metrics across all data."
                },
                {
                  "$ref": "#/components/schemas/spectrum-analytics_stat"
                }
              ]
            },
            "min": {
              "allOf": [
                {
                  "description": "Minimum result for each selected metrics across all data."
                },
                {
                  "$ref": "#/components/schemas/spectrum-analytics_stat"
                }
              ]
            },
            "data": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/spectrum-analytics_column"
              },
              "description": "List of columns returned by the analytics query."
            },
            "rows": {
              "type": "number",
              "example": 5,
              "minimum": 0,
              "description": "Total number of rows in the result."
            },
            "query": {
              "$ref": "#/components/schemas/spectrum-analytics_query"
            },
            "totals": {
              "allOf": [
                {
                  "description": "Total result for each selected metrics across all data."
                },
                {
                  "$ref": "#/components/schemas/spectrum-analytics_stat"
                }
              ]
            },
            "data_lag": {
              "type": "number",
              "example": 3,
              "minimum": 0,
              "description": "Number of seconds between current time and last processed event, i.e. how many seconds of data could be missing."
            },
            "time_intervals": {
              "type": "array",
              "items": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/spectrum-analytics_timestamp"
                }
              },
              "description": "List of time interval buckets: [start, end]"
            }
          }
        }
      }
    }
  ]
}
object spectrum-analytics_since
{
  "allOf": [
    {
      "description": "Start of time interval to query, defaults to `until` - 6 hours. Timestamp must be in RFC3339 format and uses UTC unless otherwise specified."
    },
    {
      "$ref": "#/components/schemas/spectrum-analytics_timestamp"
    }
  ]
}
array spectrum-analytics_sort
{
  "type": "array",
  "items": {
    "type": "string"
  },
  "example": [
    "+count",
    "-bytesIngress"
  ],
  "description": "The sort order for the result set; sort fields must be included in `metrics` or `dimensions`."
}
object spectrum-analytics_stat
{
  "type": "object",
  "example": {
    "bytesEgress": 100,
    "bytesIngress": 50
  },
  "additionalProperties": {
    "type": "number"
  }
}
string spectrum-analytics_timestamp
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-01T05:20:00.12345Z",
  "x-auditable": true
}
object spectrum-analytics_until
{
  "allOf": [
    {
      "description": "End of time interval to query, defaults to current time. Timestamp must be in RFC3339 format and uses UTC unless otherwise specified."
    },
    {
      "$ref": "#/components/schemas/spectrum-analytics_timestamp"
    }
  ]
}
object spectrum-config_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/spectrum-config_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result_info": {
          "type": "object",
          "properties": {
            "page": {
              "type": "number",
              "example": 1,
              "description": "Current page within paginated list of results."
            },
            "count": {
              "type": "number",
              "example": 1,
              "description": "Total number of results for the requested service."
            },
            "per_page": {
              "type": "number",
              "example": 20,
              "description": "Number of results per page of results."
            },
            "total_count": {
              "type": "number",
              "example": 2000,
              "description": "Total results available without any search parameters."
            }
          }
        }
      }
    }
  ]
}
object spectrum-config_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/spectrum-config_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/spectrum-config_messages"
    }
  }
}
object spectrum-config_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/spectrum-config_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/spectrum-config_messages"
        }
      ],
      "example": []
    }
  }
}
object spectrum-config_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/spectrum-config_api-response-common"
    }
  ]
}
object spectrum-config_api-response-single-id
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/spectrum-config_api-response-common"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "nullable": true,
          "required": [
            "id"
          ],
          "properties": {
            "id": {
              "$ref": "#/components/schemas/spectrum-config_identifier"
            }
          }
        }
      }
    }
  ]
}
object spectrum-config_app_config
{
  "allOf": [
    {
      "$ref": "#/components/schemas/spectrum-config_base_app_config"
    },
    {
      "type": "object",
      "required": [
        "protocol",
        "dns",
        "traffic_type"
      ],
      "properties": {
        "dns": {
          "$ref": "#/components/schemas/spectrum-config_dns"
        },
        "tls": {
          "$ref": "#/components/schemas/spectrum-config_tls"
        },
        "edge_ips": {
          "$ref": "#/components/schemas/spectrum-config_edge_ips"
        },
        "protocol": {
          "$ref": "#/components/schemas/spectrum-config_protocol"
        },
        "origin_dns": {
          "$ref": "#/components/schemas/spectrum-config_origin_dns"
        },
        "ip_firewall": {
          "$ref": "#/components/schemas/spectrum-config_ip_firewall"
        },
        "origin_port": {
          "$ref": "#/components/schemas/spectrum-config_origin_port"
        },
        "traffic_type": {
          "$ref": "#/components/schemas/spectrum-config_traffic_type"
        },
        "origin_direct": {
          "$ref": "#/components/schemas/spectrum-config_origin_direct"
        },
        "proxy_protocol": {
          "$ref": "#/components/schemas/spectrum-config_proxy_protocol"
        },
        "argo_smart_routing": {
          "$ref": "#/components/schemas/spectrum-config_argo_smart_routing"
        }
      }
    }
  ]
}
object spectrum-config_app_config_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/spectrum-config_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "oneOf": [
            {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/spectrum-config_app_config"
              }
            },
            {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/spectrum-config_paygo_app_config"
              }
            }
          ]
        }
      }
    }
  ]
}
object spectrum-config_app_config_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/spectrum-config_api-response-single"
    },
    {
      "properties": {
        "result": {
          "oneOf": [
            {
              "$ref": "#/components/schemas/spectrum-config_app_config"
            },
            {
              "$ref": "#/components/schemas/spectrum-config_paygo_app_config"
            }
          ]
        }
      }
    }
  ]
}
object spectrum-config_app_identifier
{
  "allOf": [
    {
      "description": "App identifier."
    },
    {
      "readOnly": true
    },
    {
      "$ref": "#/components/schemas/spectrum-config_identifier"
    }
  ]
}
boolean spectrum-config_argo_smart_routing
{
  "type": "boolean",
  "default": false,
  "example": true,
  "description": "Enables Argo Smart Routing for this application.\nNotes: Only available for TCP applications with traffic_type set to \"direct\"."
}
object spectrum-config_base_app_config
{
  "type": "object",
  "required": [
    "id",
    "created_on",
    "modified_on"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/spectrum-config_app_identifier"
    },
    "created_on": {
      "$ref": "#/components/schemas/spectrum-config_created"
    },
    "modified_on": {
      "$ref": "#/components/schemas/spectrum-config_modified"
    }
  }
}
object spectrum-config_created
{
  "allOf": [
    {
      "description": "When the Application was created."
    },
    {
      "readOnly": true
    },
    {
      "$ref": "#/components/schemas/spectrum-config_timestamp"
    }
  ]
}
object spectrum-config_dns
{
  "type": "object",
  "properties": {
    "name": {
      "$ref": "#/components/schemas/spectrum-config_dns_name"
    },
    "type": {
      "$ref": "#/components/schemas/spectrum-config_dns_type"
    }
  },
  "description": "The name and type of DNS record for the Spectrum application."
}
string spectrum-config_dns_name
{
  "type": "string",
  "format": "hostname",
  "example": "ssh.example.com",
  "description": "The name of the DNS record associated with the application."
}
integer spectrum-config_dns_ttl
{
  "type": "integer",
  "minimum": 600,
  "description": "The TTL of our resolution of your DNS record in seconds."
}
string spectrum-config_dns_type
{
  "enum": [
    "CNAME",
    "ADDRESS"
  ],
  "type": "string",
  "example": "CNAME",
  "description": "The type of DNS record associated with the application."
}
object spectrum-config_edge_ips
{
  "oneOf": [
    {
      "type": "object",
      "properties": {
        "type": {
          "enum": [
            "dynamic"
          ],
          "type": "string",
          "example": "dynamic",
          "description": "The type of edge IP configuration specified. Dynamically allocated edge IPs use Spectrum anycast IPs in accordance with the connectivity you specify. Only valid with CNAME DNS names."
        },
        "connectivity": {
          "enum": [
            "all",
            "ipv4",
            "ipv6"
          ],
          "type": "string",
          "example": "all",
          "description": "The IP versions supported for inbound connections on Spectrum anycast IPs."
        }
      }
    },
    {
      "type": "object",
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "type": "string",
            "example": "192.0.2.1",
            "description": "Edge anycast IPs."
          },
          "example": [
            "192.0.2.1"
          ],
          "description": "The array of customer owned IPs we broadcast via anycast for this hostname and application."
        },
        "type": {
          "enum": [
            "static"
          ],
          "type": "string",
          "example": "static",
          "description": "The type of edge IP configuration specified. Statically allocated edge IPs use customer IPs in accordance with the ips array you specify. Only valid with ADDRESS DNS names."
        }
      }
    }
  ],
  "default": {
    "type": "dynamic",
    "connectivity": "all"
  },
  "description": "The anycast edge IP configuration for the hostname of this application."
}
string spectrum-config_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Identifier.",
  "x-auditable": true
}
boolean spectrum-config_ip_firewall
{
  "type": "boolean",
  "default": false,
  "example": false,
  "description": "Enables IP Access Rules for this application.\nNotes: Only available for TCP applications."
}
array spectrum-config_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
object spectrum-config_modified
{
  "allOf": [
    {
      "description": "When the Application was last modified."
    },
    {
      "readOnly": true
    },
    {
      "$ref": "#/components/schemas/spectrum-config_timestamp"
    }
  ]
}
array spectrum-config_origin_direct
{
  "type": "array",
  "items": {
    "type": "string",
    "format": "URI",
    "example": "tcp://127.0.0.1:8080"
  },
  "description": "List of origin IP addresses. Array may contain multiple IP addresses for load balancing."
}
object spectrum-config_origin_dns
{
  "type": "object",
  "properties": {
    "ttl": {
      "$ref": "#/components/schemas/spectrum-config_dns_ttl"
    },
    "name": {
      "$ref": "#/components/schemas/spectrum-config_origin_dns_name"
    },
    "type": {
      "$ref": "#/components/schemas/spectrum-config_origin_dns_type"
    }
  },
  "description": "The name and type of DNS record for the Spectrum application."
}
string spectrum-config_origin_dns_name
{
  "type": "string",
  "format": "hostname",
  "example": "origin.example.com",
  "description": "The name of the DNS record associated with the origin."
}
string spectrum-config_origin_dns_type
{
  "enum": [
    "",
    "A",
    "AAAA",
    "SRV"
  ],
  "type": "string",
  "example": "",
  "description": "The type of DNS record associated with the origin. \"\" is used to specify a combination of A/AAAA records."
}
object spectrum-config_origin_port
{
  "anyOf": [
    {
      "type": "integer"
    },
    {
      "type": "string"
    }
  ],
  "example": 22,
  "maximum": 65535,
  "minimum": 1,
  "description": "The destination port at the origin. Only specified in conjunction with origin_dns. May use an integer to specify a single origin port, for example `1000`, or a string to specify a range of origin ports, for example `\"1000-2000\"`.\nNotes: If specifying a port range, the number of ports in the range must match the number of ports specified in the \"protocol\" field."
}
object spectrum-config_paygo_app_config
{
  "allOf": [
    {
      "$ref": "#/components/schemas/spectrum-config_base_app_config"
    },
    {
      "type": "object",
      "required": [
        "protocol",
        "dns"
      ],
      "properties": {
        "dns": {
          "$ref": "#/components/schemas/spectrum-config_dns"
        },
        "protocol": {
          "$ref": "#/components/schemas/spectrum-config_protocol"
        },
        "origin_direct": {
          "$ref": "#/components/schemas/spectrum-config_origin_direct"
        }
      }
    }
  ]
}
string spectrum-config_protocol
{
  "type": "string",
  "example": "tcp/22",
  "description": "The port configuration at Cloudflare's edge. May specify a single port, for example `\"tcp/1000\"`, or a range of ports, for example `\"tcp/1000-2000\"`."
}
string spectrum-config_proxy_protocol
{
  "enum": [
    "off",
    "v1",
    "v2",
    "simple"
  ],
  "type": "string",
  "default": "off",
  "example": "off",
  "description": "Enables Proxy Protocol to the origin. Refer to [Enable Proxy protocol](https://developers.cloudflare.com/spectrum/getting-started/proxy-protocol/) for implementation details on PROXY Protocol V1, PROXY Protocol V2, and Simple Proxy Protocol."
}
string spectrum-config_timestamp
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-01T05:20:00.12345Z",
  "x-auditable": true
}
string spectrum-config_tls
{
  "enum": [
    "off",
    "flexible",
    "full",
    "strict"
  ],
  "type": "string",
  "default": "off",
  "example": "off",
  "description": "The type of TLS termination associated with the application."
}
string spectrum-config_traffic_type
{
  "enum": [
    "direct",
    "http",
    "https"
  ],
  "type": "string",
  "default": "direct",
  "example": "direct",
  "description": "Determines how data travels from the edge to your origin. When set to \"direct\", Spectrum will send traffic directly to your origin, and the application's type is derived from the `protocol`. When set to \"http\" or \"https\", Spectrum will apply Cloudflare's HTTP/HTTPS features as it sends traffic to your origin, and the application type matches this property exactly."
}
object spectrum-config_update_app_config
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/spectrum-config_app_config"
    },
    {
      "$ref": "#/components/schemas/spectrum-config_paygo_app_config"
    }
  ]
}
object spectrum-config_zone_identifier
{
  "allOf": [
    {
      "description": "Zone identifier."
    },
    {
      "readOnly": true
    },
    {
      "$ref": "#/components/schemas/spectrum-config_identifier"
    }
  ]
}
object speed_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/speed_messages"
    },
    "success": {
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful.",
      "x-auditable": true
    },
    "messages": {
      "$ref": "#/components/schemas/speed_messages"
    }
  }
}
object speed_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/speed_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "type": "object",
      "nullable": true
    },
    "success": {
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful.",
      "x-auditable": true
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/speed_messages"
        }
      ],
      "example": []
    }
  }
}
object speed_api-response-single-id
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/speed_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "nullable": true,
          "required": [
            "id"
          ],
          "properties": {
            "id": {
              "$ref": "#/components/schemas/speed_identifier"
            }
          }
        }
      }
    }
  ]
}
object speed_base
{
  "properties": {
    "id": {
      "type": "string",
      "example": "development_mode",
      "description": "Identifier of the zone setting.",
      "x-auditable": true
    },
    "value": {
      "enum": [
        "on",
        "off"
      ],
      "type": "string",
      "example": "on",
      "description": "Current value of the zone setting.",
      "x-auditable": true
    },
    "editable": {
      "enum": [
        true,
        false
      ],
      "type": "boolean",
      "default": true,
      "readOnly": true,
      "description": "Whether or not this setting can be modified for this zone (based on your Cloudflare plan level).",
      "x-auditable": true
    },
    "modified_on": {
      "type": "string",
      "format": "date-time",
      "example": "2014-01-01T05:20:00.12345Z",
      "nullable": true,
      "readOnly": true,
      "description": "last time this setting was modified.",
      "x-auditable": true
    }
  }
}
object speed_cloudflare_fonts
{
  "allOf": [
    {
      "$ref": "#/components/schemas/speed_base"
    },
    {
      "type": "object",
      "properties": {
        "id": {
          "enum": [
            "fonts"
          ],
          "type": "string",
          "example": "fonts",
          "description": "ID of the zone setting.",
          "x-auditable": true
        },
        "value": {
          "$ref": "#/components/schemas/speed_cloudflare_fonts_value"
        }
      }
    }
  ],
  "title": "Cloudflare Fonts",
  "description": "Enhance your website's font delivery with Cloudflare Fonts. Deliver Google Hosted fonts from your own domain,\nboost performance, and enhance user privacy. Refer to the Cloudflare Fonts documentation for more information.\n"
}
string speed_cloudflare_fonts_value
{
  "enum": [
    "on",
    "off"
  ],
  "type": "string",
  "default": "off",
  "description": "Whether the feature is enabled or disabled.",
  "x-auditable": true
}
object speed_cloudflare_speed_brain_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/speed_base"
    },
    {
      "type": "object",
      "properties": {
        "value": {
          "type": "string",
          "description": "Whether the feature is enabled or disabled.\nDefaults to \"on\" for Free plans, otherwise defaults to \"off\".\n"
        }
      }
    }
  ],
  "title": "Cloudflare Speed Brain response"
}
string speed_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Identifier.",
  "x-auditable": true
}
array speed_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000,
        "x-auditable": true
      },
      "message": {
        "type": "string",
        "x-auditable": true
      }
    },
    "uniqueItems": true
  },
  "example": []
}
object stream_accessRules
{
  "type": "object",
  "properties": {
    "ip": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "description": "An array of IPv4 or IPV6 addresses or CIDRs used to match requests."
    },
    "type": {
      "enum": [
        "any",
        "ip.src",
        "ip.geoip.country"
      ],
      "type": "string",
      "example": "ip.src",
      "description": "Lists available rule types to match for requests. An `any` type matches all requests and can be used as a wildcard to apply default actions after other rules.",
      "x-auditable": true
    },
    "action": {
      "enum": [
        "allow",
        "block"
      ],
      "type": "string",
      "example": "allow",
      "description": "The action to take when a request matches a rule. If the action is `block`, the signed token blocks views for viewers matching the rule.",
      "x-auditable": true
    },
    "country": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "description": "An array of 2-letter country codes in ISO 3166-1 Alpha-2 format used to match requests."
    }
  },
  "description": "Defines rules for fine-grained control over content than signed URL tokens alone. Access rules primarily make tokens conditionally valid based on user information. Access Rules are specified on token payloads as the `accessRules` property containing an array of Rule objects."
}
string stream_account_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "The account identifier tag.",
  "x-auditable": true
}
object stream_addAudioTrackResponse
{
  "allOf": [
    {
      "$ref": "#/components/schemas/stream_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/stream_additionalAudio"
        }
      }
    }
  ]
}
object stream_additionalAudio
{
  "type": "object",
  "properties": {
    "uid": {
      "$ref": "#/components/schemas/stream_identifier"
    },
    "label": {
      "$ref": "#/components/schemas/stream_audio_label"
    },
    "status": {
      "$ref": "#/components/schemas/stream_audio_state"
    },
    "default": {
      "$ref": "#/components/schemas/stream_audio_default"
    }
  }
}
array stream_allowedOrigins
{
  "type": "array",
  "items": {
    "type": "string",
    "x-auditable": true
  },
  "example": [
    "example.com"
  ],
  "description": "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."
}
object stream_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/stream_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/stream_messages"
    }
  }
}
object stream_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/stream_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/stream_messages"
        }
      ],
      "example": []
    }
  }
}
object stream_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/stream_api-response-common"
    }
  ]
}
boolean stream_asc
{
  "type": "boolean",
  "default": false,
  "example": true,
  "description": "Lists videos in ascending order of creation."
}
boolean stream_audio_default
{
  "type": "boolean",
  "default": false,
  "description": "Denotes whether the audio track will be played by default in a player.",
  "x-auditable": true
}
string stream_audio_identifier
{
  "type": "string",
  "example": "ea95132c15732412d22c1476fa83f27a",
  "maxLength": 32,
  "description": "The unique identifier for an additional audio track.",
  "x-auditable": true
}
string stream_audio_label
{
  "type": "string",
  "example": "director commentary",
  "description": "A string to uniquely identify the track amongst other audio track labels for the specified video.",
  "x-auditable": true
}
string stream_audio_state
{
  "enum": [
    "queued",
    "ready",
    "error"
  ],
  "type": "string",
  "description": "Specifies the processing status of the video.",
  "x-auditable": true
}
object stream_caption_basic_upload
{
  "type": "object",
  "required": [
    "file"
  ],
  "properties": {
    "file": {
      "type": "string",
      "example": "@/Users/kyle/Desktop/tr.vtt",
      "description": "The WebVTT file containing the caption or subtitle content.",
      "x-auditable": true
    }
  }
}
string stream_caption_status
{
  "enum": [
    "ready",
    "inprogress",
    "error"
  ],
  "type": "string",
  "description": "The status of a generated caption.",
  "x-auditable": true
}
object stream_captions
{
  "type": "object",
  "properties": {
    "label": {
      "$ref": "#/components/schemas/stream_label"
    },
    "status": {
      "$ref": "#/components/schemas/stream_caption_status"
    },
    "language": {
      "$ref": "#/components/schemas/stream_language"
    },
    "generated": {
      "$ref": "#/components/schemas/stream_generated_caption"
    }
  }
}
object stream_clipResponseSingle
{
  "allOf": [
    {
      "$ref": "#/components/schemas/stream_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/stream_videos"
        }
      }
    }
  ]
}
string stream_clipped_from_video_uid
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "The unique video identifier (UID).",
  "x-auditable": true
}
object stream_clipping
{
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/stream_media_metadata"
    },
    "status": {
      "$ref": "#/components/schemas/stream_media_state"
    },
    "created": {
      "$ref": "#/components/schemas/stream_clipping_created"
    },
    "creator": {
      "$ref": "#/components/schemas/stream_creator"
    },
    "preview": {
      "$ref": "#/components/schemas/stream_preview"
    },
    "modified": {
      "$ref": "#/components/schemas/stream_live_input_modified"
    },
    "playback": {
      "$ref": "#/components/schemas/stream_playback"
    },
    "watermark": {
      "$ref": "#/components/schemas/stream_watermarkAtUpload"
    },
    "allowedOrigins": {
      "$ref": "#/components/schemas/stream_allowedOrigins"
    },
    "endTimeSeconds": {
      "$ref": "#/components/schemas/stream_end_time_seconds"
    },
    "startTimeSeconds": {
      "$ref": "#/components/schemas/stream_start_time_seconds"
    },
    "requireSignedURLs": {
      "$ref": "#/components/schemas/stream_requireSignedURLs"
    },
    "maxDurationSeconds": {
      "$ref": "#/components/schemas/stream_maxDurationSeconds"
    },
    "clippedFromVideoUID": {
      "$ref": "#/components/schemas/stream_clipped_from_video_uid"
    },
    "thumbnailTimestampPct": {
      "$ref": "#/components/schemas/stream_thumbnailTimestampPct"
    }
  }
}
string stream_clipping_created
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-02T02:20:00Z",
  "description": "The date and time the clip was created."
}
object stream_copyAudioTrack
{
  "type": "object",
  "required": [
    "label"
  ],
  "properties": {
    "url": {
      "type": "string",
      "format": "uri",
      "example": "https://www.examplestorage.com/audio_file.mp3",
      "description": "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.",
      "x-auditable": true
    },
    "label": {
      "$ref": "#/components/schemas/stream_audio_label"
    }
  }
}
object stream_create_input_request
{
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/stream_live_input_metadata"
    },
    "enabled": {
      "$ref": "#/components/schemas/stream_live_input_enabled"
    },
    "recording": {
      "$ref": "#/components/schemas/stream_live_input_recording_settings"
    },
    "defaultCreator": {
      "$ref": "#/components/schemas/stream_live_input_default_creator"
    },
    "deleteRecordingAfterDays": {
      "$ref": "#/components/schemas/stream_live_input_recording_deletion"
    }
  }
}
object stream_create_output_request
{
  "required": [
    "url",
    "streamKey"
  ],
  "properties": {
    "url": {
      "$ref": "#/components/schemas/stream_output_url"
    },
    "enabled": {
      "$ref": "#/components/schemas/stream_output_enabled"
    },
    "streamKey": {
      "$ref": "#/components/schemas/stream_output_streamKey"
    }
  }
}
string stream_created
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-02T02:20:00Z",
  "description": "The date and time the media item was created.",
  "x-auditable": true
}
string stream_creator
{
  "type": "string",
  "example": "creator-id_abcde12345",
  "maxLength": 64,
  "description": "A user-defined identifier for the media creator.",
  "x-auditable": true
}
object stream_deleted_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/stream_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "string",
          "example": "ok"
        }
      }
    }
  ]
}
object stream_direct_upload_request
{
  "type": "object",
  "required": [
    "maxDurationSeconds"
  ],
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/stream_media_metadata"
    },
    "expiry": {
      "type": "string",
      "format": "date-time",
      "default": "Now + 30 minutes",
      "example": "2021-01-02T02:20:00Z",
      "description": "The date and time after upload when videos will not be accepted.",
      "x-auditable": true
    },
    "creator": {
      "$ref": "#/components/schemas/stream_creator"
    },
    "watermark": {
      "$ref": "#/components/schemas/stream_watermark_at_upload"
    },
    "allowedOrigins": {
      "$ref": "#/components/schemas/stream_allowedOrigins"
    },
    "requireSignedURLs": {
      "$ref": "#/components/schemas/stream_requireSignedURLs"
    },
    "scheduledDeletion": {
      "$ref": "#/components/schemas/stream_scheduledDeletion"
    },
    "maxDurationSeconds": {
      "$ref": "#/components/schemas/stream_maxDurationSeconds"
    },
    "thumbnailTimestampPct": {
      "$ref": "#/components/schemas/stream_thumbnailTimestampPct"
    }
  }
}
object stream_direct_upload_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/stream_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "uid": {
              "$ref": "#/components/schemas/stream_identifier"
            },
            "uploadURL": {
              "type": "string",
              "example": "www.example.com/samplepath",
              "description": "The URL an unauthenticated upload can use for a single `HTTP POST multipart/form-data` request."
            },
            "watermark": {
              "$ref": "#/components/schemas/stream_watermarks"
            },
            "scheduledDeletion": {
              "$ref": "#/components/schemas/stream_scheduledDeletion"
            }
          }
        }
      }
    }
  ]
}
boolean stream_direct_user
{
  "type": "boolean",
  "default": false,
  "example": true,
  "description": "Provisions a URL to let your end users upload videos directly to Cloudflare Stream without exposing your API token to clients.",
  "x-auditable": true
}
number stream_download_percent_complete
{
  "type": "number",
  "maximum": 100,
  "minimum": 0,
  "description": "Indicates the progress as a percentage between 0 and 100.",
  "x-auditable": true
}
string stream_download_status
{
  "enum": [
    "ready",
    "inprogress",
    "error"
  ],
  "type": "string",
  "description": "The status of a generated download.",
  "x-auditable": true
}
string stream_download_type
{
  "enum": [
    "default",
    "audio"
  ],
  "type": "string",
  "default": "default",
  "example": "audio",
  "description": "The type of downloads available are: `default`, `audio`.",
  "x-auditable": true
}
string stream_download_url
{
  "type": "string",
  "format": "uri",
  "example": "https://customer-m033z5x00ks6nunl.cloudflarestream.com/ea95132c15732412d22c1476fa83f27a/downloads/default.mp4",
  "description": "The URL to access the generated download.",
  "x-auditable": true
}
string stream_downloadedFrom
{
  "type": "string",
  "example": "https://company.com/logo.png",
  "description": "The source URL for a downloaded image. If the watermark profile was created via direct upload, this field is null.",
  "x-auditable": true
}
object stream_downloads
{
  "type": "object",
  "required": [
    "status",
    "percentComplete"
  ],
  "properties": {
    "url": {
      "$ref": "#/components/schemas/stream_download_url"
    },
    "status": {
      "$ref": "#/components/schemas/stream_download_status"
    },
    "percentComplete": {
      "$ref": "#/components/schemas/stream_download_percent_complete"
    }
  }
}
object stream_downloads_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/stream_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "audio": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/stream_downloads"
                }
              ],
              "description": "The audio-only download. Only present if this download type has been created."
            },
            "default": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/stream_downloads"
                }
              ],
              "description": "The default video download. Only present if this download type has been created."
            }
          },
          "description": "An object with download type keys. Each key is optional and only present if that download type has been created."
        }
      }
    }
  ]
}
number stream_duration
{
  "type": "number",
  "description": "The duration of the video in seconds. A value of `-1` means the duration is unknown. The duration becomes available after the upload and before the video is ready.",
  "x-auditable": true
}
object stream_editAudioTrack
{
  "type": "object",
  "properties": {
    "label": {
      "$ref": "#/components/schemas/stream_audio_label"
    },
    "default": {
      "$ref": "#/components/schemas/stream_audio_default"
    }
  }
}
string stream_end
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-02T02:20:00Z",
  "description": "Lists videos created before the specified date."
}
integer stream_end_time_seconds
{
  "type": "integer",
  "description": "Specifies the end time for the video clip in seconds.",
  "x-auditable": true
}
string stream_errorReasonCode
{
  "type": "string",
  "example": "ERR_NON_VIDEO",
  "description": "Specifies why the video failed to encode. This field is empty if the video is not in an `error` state. Preferred for programmatic use.",
  "x-auditable": true
}
string stream_errorReasonText
{
  "type": "string",
  "example": "The file was not recognized as a valid video file.",
  "description": "Specifies why the video failed to encode using a human readable error message in English. This field is empty if the video is not in an `error` state.",
  "x-auditable": true
}
boolean stream_generated_caption
{
  "type": "boolean",
  "example": true,
  "description": "Whether the caption was generated via AI.",
  "x-auditable": true
}
integer stream_height
{
  "type": "integer",
  "description": "The height of the image in pixels.",
  "x-auditable": true
}
string stream_identifier
{
  "type": "string",
  "example": "ea95132c15732412d22c1476fa83f27a",
  "maxLength": 32,
  "description": "A Cloudflare-generated unique identifier for a media item.",
  "x-auditable": true
}
boolean stream_include_counts
{
  "type": "boolean",
  "default": false,
  "example": true,
  "description": "Includes the total number of videos associated with the submitted query parameters."
}
object stream_input
{
  "type": "object",
  "properties": {
    "width": {
      "type": "integer",
      "description": "The video width in pixels. A value of `-1` means the width is unknown. The value becomes available after the upload and before the video is ready.",
      "x-auditable": true
    },
    "height": {
      "type": "integer",
      "description": "The video height in pixels. A value of `-1` means the height is unknown. The value becomes available after the upload and before the video is ready.",
      "x-auditable": true
    }
  }
}
object stream_input_rtmps
{
  "type": "object",
  "properties": {
    "url": {
      "$ref": "#/components/schemas/stream_input_rtmps_url"
    },
    "streamKey": {
      "$ref": "#/components/schemas/stream_input_rtmps_stream_key"
    }
  },
  "description": "Details for streaming to an live input using RTMPS."
}
string stream_input_rtmps_stream_key
{
  "type": "string",
  "example": "2fb3cb9f17e68a2568d6ebed8d5505eak3ceaf8c9b1f395e1b76b79332497cada",
  "description": "The secret key to use when streaming via RTMPS to a live input.",
  "x-sensitive": true
}
string stream_input_rtmps_url
{
  "type": "string",
  "example": "rtmps://live.cloudflare.com:443/live/",
  "description": "The RTMPS URL you provide to the broadcaster, which they stream live video to.",
  "x-sensitive": true
}
object stream_input_srt
{
  "type": "object",
  "properties": {
    "url": {
      "$ref": "#/components/schemas/stream_input_srt_url"
    },
    "streamId": {
      "$ref": "#/components/schemas/stream_input_srt_stream_id"
    },
    "passphrase": {
      "$ref": "#/components/schemas/stream_input_srt_stream_passphrase"
    }
  },
  "description": "Details for streaming to a live input using SRT."
}
string stream_input_srt_stream_id
{
  "type": "string",
  "example": "f256e6ea9341d51eea64c9454659e576",
  "description": "The identifier of the live input to use when streaming via SRT.",
  "x-auditable": true
}
string stream_input_srt_stream_passphrase
{
  "type": "string",
  "example": "2fb3cb9f17e68a2568d6ebed8d5505eak3ceaf8c9b1f395e1b76b79332497cada",
  "description": "The secret key to use when streaming via SRT to a live input.",
  "x-sensitive": true
}
string stream_input_srt_url
{
  "type": "string",
  "example": "srt://live.cloudflare.com:778",
  "description": "The SRT URL you provide to the broadcaster, which they stream live video to.",
  "x-sensitive": true
}
object stream_input_webrtc
{
  "type": "object",
  "properties": {
    "url": {
      "$ref": "#/components/schemas/stream_input_webrtc_url"
    }
  },
  "description": "Details for streaming to a live input using WebRTC."
}
string stream_input_webrtc_url
{
  "type": "string",
  "example": "https://customer-m033z5x00ks6nunl.cloudflarestream.com/b236bde30eb07b9d01318940e5fc3edake34a3efb3896e18f2dc277ce6cc993ad/webRTC/publish",
  "description": "The WebRTC URL you provide to the broadcaster, which they stream live video to.",
  "x-sensitive": true
}
string stream_jwk
{
  "type": "string",
  "example": "eyJ1c2UiOiJzaWciLCJrdHkiOiJSU0EiLCJraWQiOiI1MjEzY2ZhMTIxZjcwYjhjMTM4MDY4NmZmYzM3MWJhMyIsImFsZyI6IlJTMjU2IiwibiI6IjBUandqT2laV21KNDN2ZjNUbzREb1htWFd0SkdOR3lYZmh5dHRMYUJnRjEtRVFXUURLaG9LYm9hS21xakNBc21za3V0YkxVN1BVOGRrUU5ER1p3S3VWczA4elNaNGt4aTR0RWdQUFp5dDdkWEMtbFlSWW95ckFHRjRBWGh5MzI5YkhDUDFJbHJCQl9Ba0dnbmRMQWd1bnhZMHJSZ2N2T3ppYXc2S0p4Rm5jMlVLMFdVOGIwcDRLS0hHcDFLTDlkazBXVDhkVllxYmVSaUpqQ2xVRW1oOHl2OUNsT1ZhUzRLeGlYNnhUUTREWnc2RGFKZklWM1F0Tmd2cG1ieWxOSmFQSG5zc3JodDJHS1A5NjJlS2poUVJsaWd2SFhKTE9uSm9KZkxlSUVIWi1peFdmY1RETUg5MnNHdm93MURPanhMaUNOMXpISy1oN2JMb1hUaUxnYzRrdyIsImUiOiJBUUFCIiwiZCI6IndpQWEwaU5mWnNYSGNOcVMxSWhnUmdzVHJHay1TcFlYV2lReDZHTU9kWlJKekhGazN0bkRERFJvNHNKZTBxX0dEOWkzNlEyZkVadS15elpEcEJkc3U5OHNtaHhNU19Ta0s5X3VFYUo1Zm96V2IyN3JRRnFoLVliUU9MUThkUnNPRHZmQl9Hb2txWWJzblJDR3kzWkFaOGZJZ25ocXBUNEpiOHdsaWxpMUgxeFpzM3RnTWtkTEluTm1yMFAtcTYxZEtNd3JYZVRoSWNEc0kyb2Z1LTFtRm1MWndQb2ZGbmxaTW9QN1pfRU5pUGNfWGtWNzFhaHBOZE9pcW5ablZtMHBCNE5QS1UweDRWTjQyYlAzWEhMUmpkV2hJOGt3SC1BdXhqb3BLaHJ0R2tvcG1jZFRkM1ZRdElaOGRpZHByMXpBaEpvQi16ZVlIaTFUel9ZSFFld0FRUSIsInAiOiIyVTZFVUJka3U3TndDYXoyNzZuWGMxRXgwVHpNZjU4U0UtU2M2eUNaYWk2TkwzVURpWi1mNHlIdkRLYnFGUXdLWDNwZ0l2aVE3Y05QYUpkbE9NeS1mU21GTXU3V3hlbVZYamFlTjJCMkRDazhQY0NEOVgxU2hhR3E1ZUdSSHNObVUtSDNxTG1FRGpjLWliazRHZ0RNb2lVYjQ2OGxFZHAwU2pIOXdsOUdsYTgiLCJxIjoiOW5ucXg5ZnNNY2dIZ29DemhfVjJmaDhoRUxUSUM5aFlIOVBCTG9aQjZIaE1TWG1ja1BSazVnUlpPWlFEN002TzlMaWZjNmFDVXdEbjBlQzU2YkFDNUNrcWxjODJsVDhzTWlMeWJyTjh3bWotcjNjSTBGQTlfSGQySEY1ZkgycnJmenVqd0NWM3czb09Ud3p4d1g3c2xKbklRanphel91SzEyWEtucVZZcUYwIiwiZHAiOiJxQklTUTlfVUNWaV9Ucng0UU9VYnZoVU9jc2FUWkNHajJiNzNudU9YeElnOHFuZldSSnN4RG5zd2FKaXdjNWJjYnZ3M1h0VGhRd1BNWnhpeE1UMHFGNlFGWVY5WXZibnJ6UEp4YkdNdTZqajZYc2lIUjFlbWU3U09lVDM4Xzg0aFZyOXV6UkN2RWstb0R0MHlodW9YVzFGWVFNRTE2cGtMV0ZkUjdRUERsQUUiLCJkcSI6Im5zQUp3eXZFbW8tdW5wU01qYjVBMHB6MExCRjBZNFMxeGRJYXNfLVBSYzd0dThsVFdWMl8teExEOFR6dmhqX0lmY0RJR3JJZGNKNjlzVVZnR1M3ZnZkcng3Y21uNjFyai1XcmU0UVJFRC1lV1dxZDlpc2FVRmg5UGVKZ2tCbFZVVnYtdnladVlWdFF2a1NUU05ZR3RtVXl2V2xKZDBPWEFHRm9jdGlfak9aVSIsInFpIjoib0dYaWxLQ2NKRXNFdEE1eG54WUdGQW5UUjNwdkZLUXR5S0F0UGhHaHkybm5ya2VzN1RRaEFxMGhLRWZtU1RzaE1hNFhfd05aMEstX1F0dkdoNDhpeHdTTDVLTEwxZnFsY0k2TF9XUnF0cFQxS21LRERlUHR2bDVCUzFGbjgwSGFwR215cmZRWUU4S09QR2UwUl82S1BOZE1vc3dYQ3Nfd0RYMF92ZzNoNUxRIn0=",
  "description": "The signing key in JWK format.",
  "x-sensitive": true
}
object stream_key_generation_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/stream_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/stream_keys"
        }
      }
    }
  ]
}
object stream_key_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/stream_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "id": {
                "$ref": "#/components/schemas/stream_schemas-identifier"
              },
              "key_id": {
                "type": "string",
                "example": "e9db990a82666dd571c77f944a5c5c8d",
                "description": "The unique identifier for the signing key."
              },
              "created": {
                "$ref": "#/components/schemas/stream_signing_key_created"
              }
            }
          }
        }
      }
    }
  ]
}
object stream_keys
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/stream_schemas-identifier"
    },
    "jwk": {
      "$ref": "#/components/schemas/stream_jwk"
    },
    "pem": {
      "$ref": "#/components/schemas/stream_pem"
    },
    "created": {
      "$ref": "#/components/schemas/stream_signing_key_created"
    }
  }
}
string stream_label
{
  "type": "string",
  "example": "Türkçe",
  "description": "The language label displayed in the native language to users.",
  "x-auditable": true
}
string stream_language
{
  "type": "string",
  "example": "tr",
  "description": "The language tag in BCP 47 format.",
  "x-auditable": true
}
object stream_language_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/stream_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/stream_captions"
          }
        }
      }
    }
  ]
}
object stream_language_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/stream_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/stream_captions"
        }
      }
    }
  ]
}
object stream_listAudioTrackResponse
{
  "allOf": [
    {
      "$ref": "#/components/schemas/stream_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "audio": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/stream_additionalAudio"
              },
              "description": "Array of audio tracks for the video."
            }
          }
        }
      }
    }
  ]
}
string stream_liveInput
{
  "type": "string",
  "example": "fc0a8dc887b16759bfd9ad922230a014",
  "maxLength": 32,
  "description": "The live input ID used to upload a video with Stream Live.",
  "x-auditable": true
}
object stream_live_input
{
  "type": "object",
  "properties": {
    "srt": {
      "$ref": "#/components/schemas/stream_input_srt"
    },
    "uid": {
      "$ref": "#/components/schemas/stream_live_input_identifier"
    },
    "meta": {
      "$ref": "#/components/schemas/stream_live_input_metadata"
    },
    "rtmps": {
      "$ref": "#/components/schemas/stream_input_rtmps"
    },
    "status": {
      "$ref": "#/components/schemas/stream_live_input_status"
    },
    "webRTC": {
      "$ref": "#/components/schemas/stream_input_webrtc"
    },
    "created": {
      "$ref": "#/components/schemas/stream_live_input_created"
    },
    "enabled": {
      "$ref": "#/components/schemas/stream_live_input_enabled"
    },
    "modified": {
      "$ref": "#/components/schemas/stream_live_input_modified"
    },
    "recording": {
      "$ref": "#/components/schemas/stream_live_input_recording_settings"
    },
    "srtPlayback": {
      "$ref": "#/components/schemas/stream_playback_srt"
    },
    "rtmpsPlayback": {
      "$ref": "#/components/schemas/stream_playback_rtmps"
    },
    "webRTCPlayback": {
      "$ref": "#/components/schemas/stream_playback_webrtc"
    },
    "deleteRecordingAfterDays": {
      "$ref": "#/components/schemas/stream_live_input_recording_deletion"
    }
  },
  "description": "Details about a live input."
}
string stream_live_input_created
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-02T02:20:00Z",
  "description": "The date and time the live input was created.",
  "x-auditable": true
}
string stream_live_input_default_creator
{
  "type": "string",
  "description": "Sets the creator ID asssociated with this live input.",
  "x-auditable": true
}
boolean stream_live_input_enabled
{
  "type": "boolean",
  "default": true,
  "example": true,
  "description": "Indicates whether the live input is enabled and can accept streams.",
  "x-auditable": true
}
string stream_live_input_identifier
{
  "type": "string",
  "example": "66be4bf738797e01e1fca35a7bdecdcd",
  "maxLength": 32,
  "description": "A unique identifier for a live input.",
  "x-auditable": true
}
object stream_live_input_metadata
{
  "type": "object",
  "example": {
    "name": "test stream 1"
  },
  "description": "A user modifiable key-value store used to reference other systems of record for managing live inputs."
}
string stream_live_input_modified
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-02T02:20:00Z",
  "description": "The date and time the live input was last modified.",
  "x-auditable": true
}
object stream_live_input_object_without_url
{
  "properties": {
    "uid": {
      "$ref": "#/components/schemas/stream_live_input_identifier"
    },
    "meta": {
      "$ref": "#/components/schemas/stream_live_input_metadata"
    },
    "created": {
      "$ref": "#/components/schemas/stream_live_input_created"
    },
    "enabled": {
      "$ref": "#/components/schemas/stream_live_input_enabled"
    },
    "modified": {
      "$ref": "#/components/schemas/stream_live_input_modified"
    },
    "deleteRecordingAfterDays": {
      "$ref": "#/components/schemas/stream_live_input_recording_deletion"
    }
  }
}
array stream_live_input_recording_allowedOrigins
{
  "type": "array",
  "items": {
    "type": "string",
    "x-auditable": true
  },
  "example": [
    "example.com"
  ],
  "description": "Lists the origins allowed to display videos created with this input. Enter allowed origin domains in an array and use `*` for wildcard subdomains. An empty array allows videos to be viewed on any origin."
}
number stream_live_input_recording_deletion
{
  "type": "number",
  "example": 45,
  "minimum": 30,
  "description": "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.",
  "x-auditable": true
}
boolean stream_live_input_recording_hideLiveViewerCount
{
  "type": "boolean",
  "default": false,
  "example": true,
  "description": "Disables reporting the number of live viewers when this property is set to `true`.",
  "x-auditable": true
}
string stream_live_input_recording_mode
{
  "enum": [
    "off",
    "automatic"
  ],
  "type": "string",
  "default": "off",
  "example": "automatic",
  "description": "Specifies the recording behavior for the live input. Set this value to `off` to prevent a recording. Set the value to `automatic` to begin a recording and transition to on-demand after Stream Live stops receiving input.",
  "x-auditable": true
}
boolean stream_live_input_recording_requireSignedURLs
{
  "type": "boolean",
  "default": false,
  "example": true,
  "description": "Indicates if a video using the live input has the `requireSignedURLs` property set. Also enforces access controls on any video recording of the livestream with the live input.",
  "x-auditable": true
}
object stream_live_input_recording_settings
{
  "type": "object",
  "example": {
    "mode": "off",
    "timeoutSeconds": 0,
    "requireSignedURLs": false,
    "hideLiveViewerCount": false
  },
  "properties": {
    "mode": {
      "$ref": "#/components/schemas/stream_live_input_recording_mode"
    },
    "allowedOrigins": {
      "$ref": "#/components/schemas/stream_live_input_recording_allowedOrigins"
    },
    "timeoutSeconds": {
      "$ref": "#/components/schemas/stream_live_input_recording_timeoutSeconds"
    },
    "requireSignedURLs": {
      "$ref": "#/components/schemas/stream_live_input_recording_requireSignedURLs"
    },
    "hideLiveViewerCount": {
      "$ref": "#/components/schemas/stream_live_input_recording_hideLiveViewerCount"
    }
  },
  "description": "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."
}
integer stream_live_input_recording_timeoutSeconds
{
  "type": "integer",
  "default": 0,
  "description": "Determines the amount of time a live input configured in `automatic` mode should wait before a recording transitions from live to on-demand. `0` is recommended for most use cases and indicates the platform default should be used.",
  "x-auditable": true
}
object stream_live_input_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/stream_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "range": {
              "type": "integer",
              "example": 1000,
              "description": "The total number of remaining live inputs based on cursor position."
            },
            "total": {
              "type": "integer",
              "example": 35586,
              "description": "The total number of live inputs that match the provided filters."
            },
            "liveInputs": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/stream_live_input_object_without_url"
              }
            }
          }
        }
      }
    }
  ]
}
object stream_live_input_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/stream_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/stream_live_input"
        }
      }
    }
  ]
}
string stream_live_input_status
{
  "enum": [
    null,
    "connected",
    "reconnected",
    "reconnecting",
    "client_disconnect",
    "ttl_exceeded",
    "failed_to_connect",
    "failed_to_reconnect",
    "new_configuration_accepted"
  ],
  "type": "string",
  "nullable": true,
  "description": "The connection status of a live input.",
  "x-auditable": true
}
integer stream_maxDurationSeconds
{
  "type": "integer",
  "maximum": 36000,
  "minimum": 1,
  "description": "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.",
  "x-auditable": true
}
object stream_media_metadata
{
  "type": "object",
  "example": {
    "name": "video12345.mp4"
  },
  "description": "A user modifiable key-value store used to reference other systems of record for managing videos."
}
string stream_media_state
{
  "enum": [
    "pendingupload",
    "downloading",
    "queued",
    "inprogress",
    "ready",
    "error",
    "live-inprogress"
  ],
  "type": "string",
  "example": "inprogress",
  "description": "Specifies the processing status for all quality levels for a video.",
  "x-auditable": true
}
object stream_media_status
{
  "properties": {
    "state": {
      "$ref": "#/components/schemas/stream_media_state"
    },
    "pctComplete": {
      "$ref": "#/components/schemas/stream_pctComplete"
    },
    "errorReasonCode": {
      "$ref": "#/components/schemas/stream_errorReasonCode"
    },
    "errorReasonText": {
      "$ref": "#/components/schemas/stream_errorReasonText"
    }
  },
  "description": "Specifies a detailed status for a video. If the `state` is `inprogress` or `error`, the `step` field returns `encoding` or `manifest`. If the `state` is `inprogress`, `pctComplete` returns a number between 0 and 100 to indicate the approximate percent of completion. If the `state` is `error`, `errorReasonCode` and `errorReasonText` provide additional details."
}
array stream_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string stream_modified
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-02T02:20:00Z",
  "description": "The date and time the media item was last modified.",
  "x-auditable": true
}
string stream_name
{
  "type": "string",
  "default": "",
  "example": "Marketing Videos",
  "description": "A short description of the watermark profile.",
  "x-auditable": true
}
string stream_notificationUrl
{
  "type": "string",
  "format": "uri",
  "example": "https://example.com",
  "description": "The URL where webhooks will be sent.",
  "x-auditable": true
}
string stream_oneTimeUploadExpiry
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-02T02:20:00Z",
  "description": "The date and time when the video upload URL is no longer valid for direct user uploads.",
  "x-auditable": true
}
number stream_opacity
{
  "type": "number",
  "default": 1,
  "example": 0.75,
  "maximum": 1,
  "minimum": 0,
  "description": "The translucency of the image. A value of `0.0` makes the image completely transparent, and `1.0` makes the image completely opaque. Note that if the image is already semi-transparent, setting this to `1.0` will not make the image completely opaque.",
  "x-auditable": true
}
object stream_output
{
  "properties": {
    "uid": {
      "$ref": "#/components/schemas/stream_output_identifier"
    },
    "url": {
      "$ref": "#/components/schemas/stream_output_url"
    },
    "enabled": {
      "$ref": "#/components/schemas/stream_output_enabled"
    },
    "streamKey": {
      "$ref": "#/components/schemas/stream_output_streamKey"
    }
  }
}
boolean stream_output_enabled
{
  "type": "boolean",
  "default": true,
  "example": true,
  "description": "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.",
  "x-auditable": true
}
string stream_output_identifier
{
  "type": "string",
  "example": "baea4d9c515887b80289d5c33cf01145",
  "maxLength": 32,
  "description": "A unique identifier for the output.",
  "x-auditable": true
}
object stream_output_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/stream_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/stream_output"
          }
        }
      }
    }
  ]
}
object stream_output_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/stream_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/stream_output"
        }
      }
    }
  ]
}
string stream_output_streamKey
{
  "type": "string",
  "example": "uzya-f19y-g2g9-a2ee-51j2",
  "description": "The streamKey used to authenticate against an output's target.",
  "x-sensitive": true
}
string stream_output_url
{
  "type": "string",
  "example": "rtmp://a.rtmp.youtube.com/live2",
  "description": "The URL an output uses to restream.",
  "x-sensitive": true
}
number stream_padding
{
  "type": "number",
  "default": 0.05,
  "example": 0.1,
  "maximum": 1,
  "minimum": 0,
  "description": "The whitespace between the adjacent edges (determined by position) of the video and the image. `0.0` indicates no padding, and `1.0` indicates a fully padded video width or length, as determined by the algorithm.",
  "x-auditable": true
}
string stream_pctComplete
{
  "type": "string",
  "example": "45",
  "description": "Indicates the progress as a percentage between 0 and 100.",
  "x-auditable": true
}
string stream_pem
{
  "type": "string",
  "example": "LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcGdJQkFBS0NBUUVBMFRqd2pPaVpXbUo0M3ZmM1RvNERvWG1YV3RKR05HeVhmaHl0dExhQmdGMStFUVdRCkRLaG9LYm9hS21xakNBc21za3V0YkxVN1BVOGRrUU5ER1p3S3VWczA4elNaNGt4aTR0RWdQUFp5dDdkWEMrbFkKUllveXJBR0Y0QVhoeTMyOWJIQ1AxSWxyQkIvQWtHZ25kTEFndW54WTByUmdjdk96aWF3NktKeEZuYzJVSzBXVQo4YjBwNEtLSEdwMUtMOWRrMFdUOGRWWXFiZVJpSmpDbFVFbWg4eXY5Q2xPVmFTNEt4aVg2eFRRNERadzZEYUpmCklWM1F0Tmd2cG1ieWxOSmFQSG5zc3JodDJHS1A5NjJlS2poUVJsaWd2SFhKTE9uSm9KZkxlSUVIWitpeFdmY1QKRE1IOTJzR3ZvdzFET2p4TGlDTjF6SEsraDdiTG9YVGlMZ2M0a3dJREFRQUJBb0lCQVFEQ0lCclNJMTlteGNkdwoycExVaUdCR0N4T3NhVDVLbGhkYUpESG9ZdzUxbEVuTWNXVGUyY01NTkdqaXdsN1NyOFlQMkxmcERaOFJtNzdMCk5rT2tGMnk3M3l5YUhFeEw5S1FyMys0Um9ubCtqTlp2YnV0QVdxSDVodEE0dER4MUd3NE85OEg4YWlTcGh1eWQKRUliTGRrQm54OGlDZUdxbFBnbHZ6Q1dLV0xVZlhGbXplMkF5UjBzaWMyYXZRLzZyclYwb3pDdGQ1T0Vod093agphaCs3N1dZV1l0bkEraDhXZVZreWcvdG44UTJJOXo5ZVJYdlZxR2sxMDZLcWRtZFdiU2tIZzA4cFRUSGhVM2paCnMvZGNjdEdOMWFFanlUQWY0QzdHT2lrcUd1MGFTaW1aeDFOM2RWQzBobngySjJtdlhNQ0VtZ0g3TjVnZUxWUFAKOWdkQjdBQkJBb0dCQU5sT2hGQVhaTHV6Y0Ftczl1K3AxM05STWRFOHpIK2ZFaFBrbk9zZ21Xb3VqUzkxQTRtZgpuK01oN3d5bTZoVU1DbDk2WUNMNGtPM0RUMmlYWlRqTXZuMHBoVEx1MXNYcGxWNDJuamRnZGd3cFBEM0FnL1Y5ClVvV2hxdVhoa1I3RFpsUGg5Nmk1aEE0M1BvbTVPQm9BektJbEcrT3ZKUkhhZEVveC9jSmZScFd2QW9HQkFQWjUKNnNmWDdESElCNEtBczRmMWRuNGZJUkMweUF2WVdCL1R3UzZHUWVoNFRFbDVuSkQwWk9ZRVdUbVVBK3pPanZTNApuM09tZ2xNQTU5SGd1ZW13QXVRcEtwWFBOcFUvTERJaThtNnpmTUpvL3E5M0NOQlFQZngzZGh4ZVh4OXE2Mzg3Cm84QWxkOE42RGs4TThjRis3SlNaeUVJODJzLzdpdGRseXA2bFdLaGRBb0dCQUtnU0VrUGYxQWxZdjA2OGVFRGwKRzc0VkRuTEdrMlFobzltKzk1N2psOFNJUEtwMzFrU2JNUTU3TUdpWXNIT1czRzc4TjE3VTRVTUR6R2NZc1RFOQpLaGVrQldGZldMMjU2OHp5Y1d4akx1bzQrbDdJaDBkWHBudTBqbms5L1AvT0lWYS9iczBRcnhKUHFBN2RNb2JxCkYxdFJXRURCTmVxWkMxaFhVZTBEdzVRQkFvR0JBSjdBQ2NNcnhKcVBycDZVakkyK1FOS2M5Q3dSZEdPRXRjWFMKR3JQL2owWE83YnZKVTFsZHYvc1N3L0U4NzRZL3lIM0F5QnF5SFhDZXZiRkZZQmt1MzczYThlM0pwK3RhNC9scQozdUVFUkEvbmxscW5mWXJHbEJZZlQzaVlKQVpWVkZiL3I4bWJtRmJVTDVFazBqV0JyWmxNcjFwU1hkRGx3QmhhCkhMWXY0em1WQW9HQkFLQmw0cFNnbkNSTEJMUU9jWjhXQmhRSjAwZDZieFNrTGNpZ0xUNFJvY3RwNTY1SHJPMDAKSVFLdElTaEg1a2s3SVRHdUYvOERXZEN2djBMYnhvZVBJc2NFaStTaXk5WDZwWENPaS8xa2FyYVU5U3BpZ3czago3YjVlUVV0UlovTkIycVJwc3EzMEdCUENqanhudEVmK2lqelhUS0xNRndyUDhBMTlQNzRONGVTMAotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQo=",
  "description": "The signing key in PEM format.",
  "x-sensitive": true
}
object stream_playback
{
  "type": "object",
  "properties": {
    "hls": {
      "type": "string",
      "example": "https://customer-m033z5x00ks6nunl.cloudflarestream.com/ea95132c15732412d22c1476fa83f27a/manifest/video.m3u8",
      "description": "The HLS manifest for the video.",
      "x-auditable": true
    },
    "dash": {
      "type": "string",
      "example": "https://customer-m033z5x00ks6nunl.cloudflarestream.com/ea95132c15732412d22c1476fa83f27a/manifest/video.mpd",
      "description": "DASH Media Presentation Description for the video.",
      "x-auditable": true
    }
  }
}
object stream_playback_rtmps
{
  "type": "object",
  "properties": {
    "url": {
      "$ref": "#/components/schemas/stream_playback_rtmps_url"
    },
    "streamKey": {
      "$ref": "#/components/schemas/stream_playback_rtmps_stream_key"
    }
  },
  "description": "Details for playback from an live input using RTMPS."
}
string stream_playback_rtmps_stream_key
{
  "type": "string",
  "example": "2fb3cb9f17e68a2568d6ebed8d5505eak3ceaf8c9b1f395e1b76b79332497cada",
  "description": "The secret key to use for playback via RTMPS.",
  "x-sensitive": true
}
string stream_playback_rtmps_url
{
  "type": "string",
  "example": "rtmps://live.cloudflare.com:443/live/",
  "description": "The URL used to play live video over RTMPS.",
  "x-sensitive": true
}
object stream_playback_srt
{
  "type": "object",
  "properties": {
    "url": {
      "$ref": "#/components/schemas/stream_playback_srt_url"
    },
    "streamId": {
      "$ref": "#/components/schemas/stream_playback_srt_stream_id"
    },
    "passphrase": {
      "$ref": "#/components/schemas/stream_playback_srt_stream_passphrase"
    }
  },
  "description": "Details for playback from an live input using SRT."
}
string stream_playback_srt_stream_id
{
  "type": "string",
  "example": "f256e6ea9341d51eea64c9454659e576",
  "description": "The identifier of the live input to use for playback via SRT.",
  "x-auditable": true
}
string stream_playback_srt_stream_passphrase
{
  "type": "string",
  "example": "2fb3cb9f17e68a2568d6ebed8d5505eak3ceaf8c9b1f395e1b76b79332497cada",
  "description": "The secret key to use for playback via SRT.",
  "x-sensitive": true
}
string stream_playback_srt_url
{
  "type": "string",
  "example": "rtmps://live.cloudflare.com:443/live/",
  "description": "The URL used to play live video over SRT.",
  "x-sensitive": true
}
object stream_playback_webrtc
{
  "type": "object",
  "properties": {
    "url": {
      "$ref": "#/components/schemas/stream_playback_webrtc_url"
    }
  },
  "description": "Details for playback from a live input using WebRTC."
}
string stream_playback_webrtc_url
{
  "type": "string",
  "example": "https://customer-m033z5x00ks6nunl.cloudflarestream.com/b236bde30eb07b9d01318940e5fc3edake34a3efb3896e18f2dc277ce6cc993ad/webRTC/play",
  "description": "The URL used to play live video over WebRTC.",
  "x-sensitive": true
}
string stream_position
{
  "type": "string",
  "default": "upperRight",
  "example": "center",
  "description": "The location of the image. Valid positions are: `upperRight`, `upperLeft`, `lowerLeft`, `lowerRight`, and `center`. Note that `center` ignores the `padding` parameter.",
  "x-auditable": true
}
string stream_preview
{
  "type": "string",
  "format": "uri",
  "example": "https://customer-m033z5x00ks6nunl.cloudflarestream.com/ea95132c15732412d22c1476fa83f27a/watch",
  "description": "The video's preview page URI. This field is omitted until encoding is complete.",
  "x-auditable": true
}
boolean stream_readyToStream
{
  "type": "boolean",
  "example": true,
  "description": "Indicates whether the video is playable. The field is empty if the video is not ready for viewing or the live stream is still in progress.",
  "x-auditable": true
}
string stream_readyToStreamAt
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-02T02:20:00Z",
  "description": "Indicates the time at which the video became playable. The field is empty if the video is not ready for viewing or the live stream is still in progress.",
  "x-auditable": true
}
boolean stream_requireSignedURLs
{
  "type": "boolean",
  "default": false,
  "example": true,
  "description": "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.",
  "x-auditable": true
}
number stream_scale
{
  "type": "number",
  "default": 0.15,
  "example": 0.1,
  "maximum": 1,
  "minimum": 0,
  "description": "The size of the image relative to the overall size of the video. This parameter will adapt to horizontal and vertical videos automatically. `0.0` indicates no scaling (use the size of the image as-is), and `1.0 `fills the entire video.",
  "x-auditable": true
}
string stream_scheduledDeletion
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-02T02:20:00Z",
  "description": "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.",
  "x-auditable": true
}
string stream_schemas-identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Identifier.",
  "x-auditable": true
}
string stream_search
{
  "type": "string",
  "example": "puppy.mp4",
  "description": "Provides a partial word match of the `name` key in the `meta` field. Slow for medium to large video libraries. May be unavailable for very large libraries.",
  "x-auditable": true
}
object stream_signed_token_request
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "example": "ab0d4ef71g4425f8dcba9041231813000",
      "description": "The optional ID of a Stream signing key. If present, the `pem` field is also required.",
      "x-auditable": true
    },
    "exp": {
      "type": "integer",
      "description": "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."
    },
    "nbf": {
      "type": "integer",
      "description": "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.",
      "x-auditable": true
    },
    "pem": {
      "type": "string",
      "example": "LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBc284dnBvOFpEWXRkOUgzbWlPaW1qYXAzVXlVM0oyZ3kwTUYvN1R4blJuRnkwRHpDCkxqUk9naFZsQ0hPQmxsd3NVaE9GU0lyYnN4K05tUTdBeS90TFpXSGxuVGF3UWJ5WGZGOStJeDhVSnNlSHBGV1oKNVF5Z1JYd2liSjh1MVVsZ2xlcmZHMkpueldjVXpZTzEySktZN3doSkw1ajROMWgxZFJNUXQ5Q1pkZFlCQWRzOQpCdk02cjRFMDcxQkhQekhWeDMrUTI1VWtubGdUNXIwS3FiM1E1Y0dlTlBXY1JreW1ybkJEWWR0OXR4eFFMb1dPCllzNXdsMnVYWFVYL0VGcDMwajU0Nmp6czllWExLYlNDbjJjTDZFVE96Y2x3aG9DRGx2a2VQT05rUE9LMDVKNUMKTm1TdFdhMG9hV1VGRzM0MFl3cVVrWGt4OU9tNndXd1JldU1uU1FJREFRQUJBb0lCQUFJOHo1ck5kOEdtOGJBMgo1S3pxQjI1R2lOVENwbUNJeW53NXRJWHZTQmNHcEdydUcvdlN2WG9kVlFVSVY0TWdHQkVXUEFrVzdsNWVBcHI4CnA1ZFd5SkRXYTNkdklFSE9vSEpYU3dBYksxZzZEMTNVa2NkZ1EyRGpoNVhuWDhHZCtBY2c2SmRTQWgxOWtYSHEKMk54RUtBVDB6Ri83a1g2MkRkREFBcWxmQkpGSXJodVIvZUdEVWh4L2piTTRhQ2JCcFdiM0pnRE9OYm5tS1ZoMwpxS2ZwZmRZZENZU1lzWUxrNTlxRDF2VFNwUVFUQ0VadW9VKzNzRVNhdkJzaUs1bU0vTzY5ZkRMRXNURG1MeTVQCmhEK3BMQXI0SlhNNjFwRGVBS0l3cUVqWWJybXlDRHRXTUdJNnZzZ0E1eXQzUUJaME9vV2w5QUkwdWxoZ3p4dXQKZ2ZFNTRRRUNnWUVBN0F3a0lhVEEzYmQ4Nk9jSVZnNFlrWGk1cm5aNDdsM1k4V24zcjIzUmVISXhLdkllRUtSbgp5bUlFNDFtRVBBSmlGWFpLK1VPTXdkeS9EcnFJUithT1JiT2NiV01jWUg2QzgvbG1wdVJFaXE3SW1Ub3VWcnA4CnlnUkprMWprVDA4cTIvNmg4eTBEdjJqMitsaHFXNzRNOUt0cmwxcTRlWmZRUFREL01tR1NnTWtDZ1lFQXdhY04KaSttN1p6dnJtL3NuekF2VlZ5SEtwZHVUUjNERk1naC9maC9tZ0ZHZ1RwZWtUOVV5b3FleGNYQXdwMVlhL01iQQoyNTVJVDZRbXZZTm5yNXp6Wmxic2tMV0hsYllvbWhmWnVXTHhXR3hRaEFORWdaMFVVdUVTRGMvbWx2UXZHbEtSCkZoaGhBUWlVSmdDamhPaHk1SlBiNGFldGRKd0UxK09lVWRFaE1vRUNnWUVBNG8yZ25CM1o4ck5xa3NzemlBek4KYmNuMlJVbDJOaW9pejBwS3JMaDFaT29NNE5BekpQdjJsaHRQMzdtS0htS1hLMHczRjFqTEgwSTBxZmxFVmVZbQpSU1huakdHazJjUnpBYUVzOGgrQzNheDE0Z01pZUtGU3BqNUpNOEFNbVVZOXQ1cUVhN2FYc3o0V1ZoOUlMYmVTCkRiNzlhKzVwd21LQVBrcnBsTHhyZFdrQ2dZQlNNSHVBWVdBbmJYZ1BDS2FZWklGVWJNUWNacmY0ZnpWQ2lmYksKYWZHampvRlNPZXdEOGdGK3BWdWJRTGwxbkFieU44ek1xVDRaaHhybUhpcFlqMjJDaHV2NmN3RXJtbGRiSnpwQwpBMnRaVXdkTk1ESFlMUG5lUHlZeGRJWnlsUXFVeW14SGkydElUQUxNcWtLOGV3ZWdXZHpkeGhQSlJScU5JazhrCmZIVHhnUUtCZ1FEUFc2UXIxY3F3QjNUdnVWdWR4WGRqUTdIcDFodXhrNEVWaEFJZllKNFhSTW1NUE5YS28wdHUKdUt6LzE0QW14R0dvSWJxYVc1bDMzeFNteUxhem84clNUN0tSTjVKME9JSHcrZkR5SFgxdHpVSjZCTldDcEFTcwpjbWdNK0htSzVON0w2bkNaZFJQY2IwU1hGaVRQUGhCUG1PVWFDUnpER0ZMK2JYM1VwajJKbWc9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQo=",
      "description": "The optional base64 encoded private key in PEM format associated with a Stream signing key. If present, the `id` field is also required.",
      "x-sensitive": true
    },
    "flags": {
      "type": "object",
      "properties": {
        "original": {
          "type": "boolean",
          "default": false,
          "description": "Whether to return the original video without transformations."
        }
      },
      "description": "Optional flags for the signed token."
    },
    "accessRules": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/stream_accessRules"
      },
      "example": [
        {
          "type": "ip.geoip.country",
          "action": "block",
          "country": [
            "US",
            "MX"
          ]
        },
        {
          "ip": [
            "93.184.216.0/24",
            "2400:cb00::/32"
          ],
          "type": "ip.src",
          "action": "allow"
        },
        {
          "type": "any",
          "action": "block"
        }
      ],
      "description": "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": {
      "type": "boolean",
      "default": false,
      "description": "The optional boolean value that enables using signed tokens to access MP4 download links for a video.",
      "x-auditable": true
    }
  }
}
object stream_signed_token_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/stream_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "token": {
              "type": "string",
              "example": "eyJhbGciOiJSUzI1NiIsImtpZCI6ImU5ZGI5OTBhODI2NjZkZDU3MWM3N2Y5NDRhNWM1YzhkIn0.eyJzdWIiOiJlYTk1MTMyYzE1NzMyNDEyZDIyYzE0NzZmYTgzZjI3YSIsImtpZCI6ImU5ZGI5OTBhODI2NjZkZDU3MWM3N2Y5NDRhNWM1YzhkIiwiZXhwIjoiMTUzNzQ2MDM2NSIsIm5iZiI6IjE1Mzc0NTMxNjUifQ.OZhqOARADn1iubK6GKcn25hN3nU-hCFF5q9w2C4yup0C4diG7aMIowiRpP-eDod8dbAJubsiFuTKrqPcmyCKWYsiv0TQueukqbQlF7HCO1TV-oF6El5-7ldJ46eD-ZQ0XgcIYEKrQOYFF8iDQbqPm3REWd6BnjKZdeVrLzuRaiSnZ9qqFpGu5dfxIY9-nZKDubJHqCr3Imtb211VIG_b9MdtO92JjvkDS-rxT_pkEfTZSafl1OU-98A7KBGtPSJHz2dHORIrUiTA6on4eIXTj9aFhGiir4rSn-rn0OjPRTtJMWIDMoQyE_fwrSYzB7MPuzL2t82BWaEbHZTfixBm5A",
              "description": "The signed token used with the signed URLs feature.",
              "x-sensitive": true
            }
          }
        }
      }
    }
  ]
}
string stream_signing_key_created
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-02T02:20:00Z",
  "description": "The date and time a signing key was created.",
  "x-auditable": true
}
number stream_size
{
  "type": "number",
  "example": 4190963,
  "description": "The size of the media item in bytes.",
  "x-auditable": true
}
string stream_start
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-02T02:20:00Z",
  "description": "Lists videos created after the specified date."
}
integer stream_start_time_seconds
{
  "type": "integer",
  "description": "Specifies the start time for the video clip in seconds.",
  "x-auditable": true
}
object stream_storage_use_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/stream_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "creator": {
              "$ref": "#/components/schemas/stream_creator"
            },
            "videoCount": {
              "type": "integer",
              "description": "The total count of videos associated with the account."
            },
            "totalStorageMinutes": {
              "type": "number",
              "format": "float",
              "description": "The total minutes of video content stored in the account. May contain decimal values."
            },
            "totalStorageMinutesLimit": {
              "type": "integer",
              "description": "The storage capacity alloted for the account."
            }
          }
        }
      }
    }
  ]
}
number stream_thumbnailTimestampPct
{
  "type": "number",
  "default": 0,
  "example": 0.529241,
  "maximum": 1,
  "minimum": 0,
  "description": "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.",
  "x-auditable": true
}
string stream_thumbnail_url
{
  "type": "string",
  "format": "uri",
  "example": "https://customer-m033z5x00ks6nunl.cloudflarestream.com/ea95132c15732412d22c1476fa83f27a/thumbnails/thumbnail.jpg",
  "description": "The media item's thumbnail URI. This field is omitted until encoding is complete.",
  "x-auditable": true
}
string stream_tus_resumable
{
  "enum": [
    "1.0.0"
  ],
  "type": "string",
  "example": "1.0.0",
  "description": "Specifies the TUS protocol version. This value must be included in every upload request.\nNotes: The only supported version of TUS protocol is 1.0.0.",
  "x-auditable": true
}
string stream_type
{
  "type": "string",
  "example": "live",
  "description": "Specifies whether the video is `vod` or `live`.",
  "x-auditable": true
}
object stream_update_input_request
{
  "properties": {
    "meta": {
      "$ref": "#/components/schemas/stream_live_input_metadata"
    },
    "enabled": {
      "$ref": "#/components/schemas/stream_live_input_enabled"
    },
    "recording": {
      "$ref": "#/components/schemas/stream_live_input_recording_settings"
    },
    "defaultCreator": {
      "$ref": "#/components/schemas/stream_live_input_default_creator"
    },
    "deleteRecordingAfterDays": {
      "$ref": "#/components/schemas/stream_live_input_recording_deletion"
    }
  }
}
object stream_update_output_request
{
  "required": [
    "enabled"
  ],
  "properties": {
    "enabled": {
      "$ref": "#/components/schemas/stream_output_enabled"
    }
  }
}
integer stream_upload_length
{
  "type": "integer",
  "minimum": 0,
  "description": "Indicates the size of the entire upload in bytes. The value must be a non-negative integer.",
  "x-auditable": true
}
string stream_upload_metadata
{
  "type": "string",
  "example": "name aGVsbG8gd29ybGQ=, requiresignedurls, allowedorigins ZXhhbXBsZS5jb20sdGVzdC5jb20=",
  "description": "Comma-separated key-value pairs following the TUS protocol specification. Values are Base-64 encoded.\nSupported keys: `name`, `requiresignedurls`, `allowedorigins`, `thumbnailtimestamppct`, `watermark`, `scheduleddeletion`, `maxdurationseconds`.",
  "x-auditable": true
}
string stream_uploaded
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-02T02:20:00Z",
  "description": "The date and time the media item was uploaded.",
  "x-auditable": true
}
object stream_videoClipStandard
{
  "type": "object",
  "required": [
    "clippedFromVideoUID",
    "startTimeSeconds",
    "endTimeSeconds"
  ],
  "properties": {
    "url": {
      "type": "string",
      "format": "uri",
      "example": "https://example.com/myvideo.mp4",
      "description": "A video's URL (legacy field, use 'input' instead)."
    },
    "meta": {
      "$ref": "#/components/schemas/stream_media_metadata"
    },
    "name": {
      "type": "string",
      "example": "myvideo.mp4",
      "description": "A name for the video."
    },
    "input": {
      "type": "string",
      "format": "uri",
      "example": "https://example.com/myvideo.mp4",
      "description": "A video's URL. Preferred over 'url'."
    },
    "creator": {
      "$ref": "#/components/schemas/stream_creator"
    },
    "watermark": {
      "$ref": "#/components/schemas/stream_watermarkAtUpload"
    },
    "allowedOrigins": {
      "$ref": "#/components/schemas/stream_allowedOrigins"
    },
    "endTimeSeconds": {
      "$ref": "#/components/schemas/stream_end_time_seconds"
    },
    "startTimeSeconds": {
      "$ref": "#/components/schemas/stream_start_time_seconds"
    },
    "requireSignedURLs": {
      "$ref": "#/components/schemas/stream_requireSignedURLs"
    },
    "scheduledDeletion": {
      "$ref": "#/components/schemas/stream_scheduledDeletion"
    },
    "clippedFromVideoUID": {
      "$ref": "#/components/schemas/stream_clipped_from_video_uid"
    },
    "thumbnailTimestampPct": {
      "$ref": "#/components/schemas/stream_thumbnailTimestampPct"
    }
  }
}
object stream_video_copy_request
{
  "type": "object",
  "anyOf": [
    {
      "required": [
        "input"
      ]
    },
    {
      "required": [
        "url"
      ]
    }
  ],
  "properties": {
    "url": {
      "type": "string",
      "format": "uri",
      "example": "https://example.com/myvideo.mp4",
      "description": "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. This field is deprecated in favor of `input`."
    },
    "meta": {
      "$ref": "#/components/schemas/stream_media_metadata"
    },
    "name": {
      "type": "string",
      "example": "myvideo.mp4",
      "description": "A video's name. Used for legacy compatibility."
    },
    "input": {
      "type": "string",
      "format": "uri",
      "example": "https://example.com/myvideo.mp4",
      "description": "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. This is the preferred field over `url`."
    },
    "creator": {
      "$ref": "#/components/schemas/stream_creator"
    },
    "watermark": {
      "$ref": "#/components/schemas/stream_watermark_at_upload"
    },
    "allowedOrigins": {
      "$ref": "#/components/schemas/stream_allowedOrigins"
    },
    "requireSignedURLs": {
      "$ref": "#/components/schemas/stream_requireSignedURLs"
    },
    "scheduledDeletion": {
      "$ref": "#/components/schemas/stream_scheduledDeletion"
    },
    "thumbnailTimestampPct": {
      "$ref": "#/components/schemas/stream_thumbnailTimestampPct"
    }
  },
  "description": "Copy upload request. Provide `input` (preferred) or `url` (deprecated)."
}
string stream_video_name
{
  "type": "string",
  "example": "puppy.mp4",
  "description": "Provides a fast, exact string match on the `name` key in the `meta` field.",
  "x-auditable": true
}
object stream_video_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/stream_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/stream_videos"
          }
        }
      }
    },
    {
      "type": "object",
      "properties": {
        "range": {
          "type": "integer",
          "example": 1000,
          "description": "The total number of remaining videos based on cursor position."
        },
        "total": {
          "type": "integer",
          "example": 35586,
          "description": "The total number of videos that match the provided filters."
        }
      }
    }
  ]
}
object stream_video_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/stream_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/stream_videos"
        }
      }
    }
  ]
}
object stream_video_update
{
  "type": "object",
  "properties": {
    "uid": {
      "type": "string",
      "example": "ea95132c15732412d22c1476fa83f27a",
      "description": "The unique identifier for the video. Can be used to verify the video being updated."
    },
    "meta": {
      "$ref": "#/components/schemas/stream_media_metadata"
    },
    "creator": {
      "$ref": "#/components/schemas/stream_creator"
    },
    "uploadExpiry": {
      "$ref": "#/components/schemas/stream_oneTimeUploadExpiry"
    },
    "publicDetails": {
      "type": "object",
      "properties": {
        "logo": {
          "type": "string",
          "nullable": true
        },
        "title": {
          "type": "string",
          "nullable": true
        },
        "share_link": {
          "type": "string",
          "nullable": true
        },
        "channel_link": {
          "type": "string",
          "nullable": true
        }
      },
      "description": "Public details for the video including title, share link, channel link, and logo."
    },
    "allowedOrigins": {
      "$ref": "#/components/schemas/stream_allowedOrigins"
    },
    "requireSignedURLs": {
      "$ref": "#/components/schemas/stream_requireSignedURLs"
    },
    "scheduledDeletion": {
      "$ref": "#/components/schemas/stream_scheduledDeletion"
    },
    "maxDurationSeconds": {
      "$ref": "#/components/schemas/stream_maxDurationSeconds"
    },
    "thumbnailTimestampPct": {
      "$ref": "#/components/schemas/stream_thumbnailTimestampPct"
    }
  }
}
object stream_videos
{
  "type": "object",
  "properties": {
    "uid": {
      "$ref": "#/components/schemas/stream_identifier"
    },
    "meta": {
      "$ref": "#/components/schemas/stream_media_metadata"
    },
    "size": {
      "$ref": "#/components/schemas/stream_size"
    },
    "input": {
      "$ref": "#/components/schemas/stream_input"
    },
    "status": {
      "$ref": "#/components/schemas/stream_media_status"
    },
    "created": {
      "$ref": "#/components/schemas/stream_created"
    },
    "creator": {
      "$ref": "#/components/schemas/stream_creator"
    },
    "preview": {
      "$ref": "#/components/schemas/stream_preview"
    },
    "duration": {
      "$ref": "#/components/schemas/stream_duration"
    },
    "modified": {
      "$ref": "#/components/schemas/stream_modified"
    },
    "playback": {
      "$ref": "#/components/schemas/stream_playback"
    },
    "uploaded": {
      "$ref": "#/components/schemas/stream_uploaded"
    },
    "liveInput": {
      "$ref": "#/components/schemas/stream_liveInput"
    },
    "thumbnail": {
      "$ref": "#/components/schemas/stream_thumbnail_url"
    },
    "watermark": {
      "$ref": "#/components/schemas/stream_watermarks"
    },
    "clippedFrom": {
      "type": "string",
      "example": "ea95132c15732412d22c1476fa83f27a",
      "description": "The unique identifier of the source video this video was clipped from."
    },
    "maxSizeBytes": {
      "type": "integer",
      "format": "int64",
      "description": "The maximum size in bytes for the video upload."
    },
    "uploadExpiry": {
      "$ref": "#/components/schemas/stream_oneTimeUploadExpiry"
    },
    "publicDetails": {
      "type": "object",
      "properties": {
        "logo": {
          "type": "string",
          "nullable": true
        },
        "title": {
          "type": "string",
          "nullable": true
        },
        "media_id": {
          "type": "integer"
        },
        "share_link": {
          "type": "string",
          "nullable": true
        },
        "channel_link": {
          "type": "string",
          "nullable": true
        }
      },
      "description": "Public details for the video including title, share link, channel link, and logo."
    },
    "readyToStream": {
      "$ref": "#/components/schemas/stream_readyToStream"
    },
    "allowedOrigins": {
      "$ref": "#/components/schemas/stream_allowedOrigins"
    },
    "readyToStreamAt": {
      "$ref": "#/components/schemas/stream_readyToStreamAt"
    },
    "requireSignedURLs": {
      "$ref": "#/components/schemas/stream_requireSignedURLs"
    },
    "scheduledDeletion": {
      "$ref": "#/components/schemas/stream_scheduledDeletion"
    },
    "maxDurationSeconds": {
      "$ref": "#/components/schemas/stream_maxDurationSeconds"
    },
    "thumbnailTimestampPct": {
      "$ref": "#/components/schemas/stream_thumbnailTimestampPct"
    }
  }
}
object stream_watermarkAtUpload
{
  "type": "object",
  "properties": {
    "uid": {
      "type": "string",
      "example": "ea95132c15732412d22c1476fa83f27a",
      "maxLength": 32,
      "description": "The unique identifier for the watermark profile.",
      "x-auditable": true
    }
  }
}
object stream_watermark_at_upload
{
  "type": "object",
  "properties": {
    "uid": {
      "type": "string",
      "example": "ea95132c15732412d22c1476fa83f27a",
      "maxLength": 32,
      "description": "The unique identifier for the watermark profile.",
      "x-auditable": true
    }
  }
}
object stream_watermark_basic_upload
{
  "type": "object",
  "required": [
    "file"
  ],
  "properties": {
    "file": {
      "type": "string",
      "example": "@/Users/rchen/Downloads/watermark.png",
      "description": "The image file to upload.",
      "x-auditable": true
    },
    "name": {
      "$ref": "#/components/schemas/stream_name"
    },
    "scale": {
      "$ref": "#/components/schemas/stream_scale"
    },
    "opacity": {
      "$ref": "#/components/schemas/stream_opacity"
    },
    "padding": {
      "$ref": "#/components/schemas/stream_padding"
    },
    "position": {
      "$ref": "#/components/schemas/stream_position"
    }
  }
}
string stream_watermark_created
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-02T02:20:00Z",
  "description": "The date and a time a watermark profile was created.",
  "x-auditable": true
}
string stream_watermark_identifier
{
  "type": "string",
  "example": "ea95132c15732412d22c1476fa83f27a",
  "maxLength": 32,
  "description": "The unique identifier for a watermark profile.",
  "x-auditable": true
}
object stream_watermark_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/stream_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/stream_watermarks"
          }
        }
      }
    }
  ]
}
object stream_watermark_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/stream_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/stream_watermarks"
        }
      }
    }
  ]
}
number stream_watermark_size
{
  "type": "number",
  "example": 29472,
  "description": "The size of the image in bytes.",
  "x-auditable": true
}
object stream_watermarks
{
  "type": "object",
  "properties": {
    "uid": {
      "$ref": "#/components/schemas/stream_watermark_identifier"
    },
    "name": {
      "$ref": "#/components/schemas/stream_name"
    },
    "size": {
      "$ref": "#/components/schemas/stream_watermark_size"
    },
    "scale": {
      "$ref": "#/components/schemas/stream_scale"
    },
    "width": {
      "$ref": "#/components/schemas/stream_width"
    },
    "height": {
      "$ref": "#/components/schemas/stream_height"
    },
    "created": {
      "$ref": "#/components/schemas/stream_watermark_created"
    },
    "opacity": {
      "$ref": "#/components/schemas/stream_opacity"
    },
    "padding": {
      "$ref": "#/components/schemas/stream_padding"
    },
    "position": {
      "$ref": "#/components/schemas/stream_position"
    },
    "downloadedFrom": {
      "$ref": "#/components/schemas/stream_downloadedFrom"
    }
  }
}
object stream_webhook_request
{
  "type": "object",
  "anyOf": [
    {
      "required": [
        "notificationUrl"
      ]
    },
    {
      "required": [
        "notification_url"
      ]
    }
  ],
  "properties": {
    "notificationUrl": {
      "$ref": "#/components/schemas/stream_notificationUrl"
    },
    "notification_url": {
      "type": "string",
      "format": "uri",
      "example": "https://example.com",
      "description": "The URL where webhooks will be sent.",
      "x-auditable": true
    }
  }
}
object stream_webhook_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/stream_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "secret": {
              "type": "string",
              "description": "The secret used to verify webhook signatures.",
              "x-sensitive": true
            },
            "modified": {
              "type": "string",
              "format": "date-time",
              "example": "2014-01-02T02:20:00Z",
              "description": "The date and time the webhook was last modified."
            },
            "notificationUrl": {
              "type": "string",
              "format": "uri",
              "example": "https://example.com",
              "description": "The URL where webhooks will be sent."
            },
            "notification_url": {
              "type": "string",
              "format": "uri",
              "example": "https://example.com",
              "description": "The URL where webhooks will be sent."
            }
          }
        }
      }
    }
  ]
}
integer stream_width
{
  "type": "integer",
  "description": "The width of the image in pixels.",
  "x-auditable": true
}
object teams-devices_access_serial_number_list_input_request
{
  "type": "object",
  "title": "Serial Number",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "string",
      "example": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
      "maxLength": 36,
      "description": "UUID of Access List.",
      "x-auditable": true
    }
  }
}
object teams-devices_account
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "deprecated": true
    },
    "name": {
      "type": "string",
      "example": "Company",
      "description": "The name of the enrolled account.",
      "x-auditable": true
    },
    "account_type": {
      "type": "string",
      "deprecated": true
    }
  }
}
boolean teams-devices_allow_mode_switch
{
  "type": "boolean",
  "default": false,
  "example": true,
  "description": "Whether to allow the user to switch WARP between modes."
}
boolean teams-devices_allow_updates
{
  "type": "boolean",
  "default": false,
  "example": true,
  "description": "Whether to receive update notifications when a new version of the client is available."
}
boolean teams-devices_allowed_to_leave
{
  "type": "boolean",
  "default": true,
  "example": true,
  "description": "Whether to allow devices to leave the organization."
}
object teams-devices_antivirus_input_request
{
  "type": "object",
  "title": "Antivirus",
  "properties": {
    "update_window_days": {
      "type": "number",
      "example": 7,
      "description": "Number of days that the antivirus should be updated within."
    }
  }
}
object teams-devices_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/teams-devices_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "type": "object"
          },
          "nullable": true
        },
        "result_info": {
          "$ref": "#/components/schemas/teams-devices_result_info"
        }
      }
    }
  ]
}
object teams-devices_api-response-collection-common
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/teams-devices_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "type": "object"
          },
          "nullable": true
        }
      }
    }
  ]
}
object teams-devices_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/teams-devices_messages"
    },
    "result": {
      "anyOf": [
        {
          "type": "object"
        },
        {
          "type": "array",
          "items": {
            "type": "object"
          }
        },
        {
          "type": "string"
        }
      ]
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/teams-devices_messages"
    }
  }
}
object teams-devices_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/teams-devices_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/teams-devices_messages"
        }
      ],
      "example": []
    }
  }
}
object teams-devices_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/teams-devices_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "anyOf": [
            {
              "type": "object"
            },
            {
              "type": "string"
            }
          ],
          "nullable": true
        }
      }
    }
  ]
}
object teams-devices_application_input_request
{
  "type": "object",
  "title": "Application",
  "required": [
    "path",
    "operating_system"
  ],
  "properties": {
    "path": {
      "type": "string",
      "example": "/bin/cat",
      "description": "Path for the application.",
      "x-auditable": true
    },
    "sha256": {
      "type": "string",
      "example": "b5bb9d8014a0f9b1d61e21e796d78dccdf1352f23cd32812f4850b878ae4944c",
      "description": "SHA-256.",
      "x-auditable": true
    },
    "thumbprint": {
      "type": "string",
      "example": "0aabab210bdb998e9cf45da2c9ce352977ab531c681b74cf1e487be1bbe9fe6e",
      "description": "Signing certificate thumbprint.",
      "x-auditable": true
    },
    "operating_system": {
      "enum": [
        "windows",
        "linux",
        "mac"
      ],
      "type": "string",
      "example": "mac",
      "description": "Operating system.",
      "x-auditable": true
    }
  }
}
number teams-devices_auto_connect
{
  "type": "number",
  "default": 0,
  "example": 0,
  "description": "The amount of time in seconds to reconnect after having been disabled."
}
number teams-devices_captive_portal
{
  "type": "number",
  "default": 180,
  "example": 180,
  "description": "Turn on the captive portal after the specified amount of time."
}
object teams-devices_carbonblack_input_request
{
  "type": "object",
  "title": "Carbonblack",
  "required": [
    "path",
    "operating_system"
  ],
  "properties": {
    "path": {
      "type": "string",
      "example": "/bin/cat",
      "description": "File path.",
      "x-auditable": true
    },
    "sha256": {
      "type": "string",
      "example": "b5bb9d8014a0f9b1d61e21e796d78dccdf1352f23cd32812f4850b878ae4944c",
      "description": "SHA-256.",
      "x-auditable": true
    },
    "thumbprint": {
      "type": "string",
      "example": "0aabab210bdb998e9cf45da2c9ce352977ab531c681b74cf1e487be1bbe9fe6e",
      "description": "Signing certificate thumbprint.",
      "x-auditable": true
    },
    "operating_system": {
      "enum": [
        "windows",
        "linux",
        "mac"
      ],
      "type": "string",
      "example": "mac",
      "description": "Operating system.",
      "x-auditable": true
    }
  }
}
array teams-devices_checkDisks
{
  "type": "array",
  "items": {
    "type": "string"
  },
  "example": [
    "C",
    "D",
    "G"
  ],
  "description": "List of volume names to be checked for encryption."
}
object teams-devices_client_certificate_input_request
{
  "type": "object",
  "title": "Client Certificate",
  "required": [
    "certificate_id",
    "cn"
  ],
  "properties": {
    "cn": {
      "type": "string",
      "example": "example.com",
      "description": "Common Name that is protected by the certificate."
    },
    "certificate_id": {
      "type": "string",
      "example": "b14ddcc4-bcd2-4df4-bd4f-eb27d5a50c30",
      "maxLength": 36,
      "description": "UUID of Cloudflare managed certificate."
    }
  }
}
object teams-devices_client_certificate_v2_input_request
{
  "type": "object",
  "title": "Client Certificate V2",
  "required": [
    "certificate_id",
    "check_private_key",
    "operating_system"
  ],
  "properties": {
    "cn": {
      "type": "string",
      "example": "${hostname}.com.${serial_number}",
      "description": "Certificate Common Name. This may include one or more variables in the ${ } notation. Only ${serial_number} and ${hostname} are valid variables."
    },
    "locations": {
      "type": "object",
      "properties": {
        "paths": {
          "$ref": "#/components/schemas/teams-devices_paths"
        },
        "trust_stores": {
          "$ref": "#/components/schemas/teams-devices_trust_stores"
        }
      }
    },
    "certificate_id": {
      "type": "string",
      "example": "b14ddcc4-bcd2-4df4-bd4f-eb27d5a50c30",
      "maxLength": 36,
      "description": "UUID of Cloudflare managed certificate."
    },
    "operating_system": {
      "enum": [
        "windows",
        "mac",
        "linux"
      ],
      "type": "string",
      "example": "windows",
      "description": "Operating System."
    },
    "check_private_key": {
      "type": "boolean",
      "example": true,
      "description": "Confirm the certificate was not imported from another device. We recommend keeping this enabled unless the certificate was deployed without a private key."
    },
    "extended_key_usage": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/teams-devices_extended_key_usage_enum"
      },
      "example": [
        "clientAuth",
        "emailProtection"
      ],
      "description": "List of values indicating purposes for which the certificate public key can be used."
    },
    "subject_alternative_names": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "example.com",
        "sample.com"
      ],
      "description": "List of certificate Subject Alternative Names."
    }
  }
}
object teams-devices_client_version
{
  "type": "object",
  "required": [
    "version",
    "release_date"
  ],
  "properties": {
    "version": {
      "type": "string",
      "example": "2024.11.309.0",
      "description": "The client version string."
    },
    "package_url": {
      "type": "string",
      "example": "https://downloads.cloudflareclient.com/v1/download/windows/version/2024.11.309.0",
      "description": "URL to download the package."
    },
    "package_size": {
      "type": "integer",
      "format": "int64",
      "example": 123125760,
      "description": "Size of the package in bytes."
    },
    "release_date": {
      "type": "string",
      "example": "2024-11-18T21:57:58.478Z",
      "description": "The release date timestamp."
    },
    "release_notes": {
      "type": "string",
      "example": "This release contains minor fixes and improvements.",
      "description": "Release notes for this version."
    }
  }
}
string teams-devices_components-schemas-name
{
  "type": "string",
  "example": "My Workspace One Integration",
  "description": "The name of the device posture integration.",
  "x-auditable": true
}
object teams-devices_components-schemas-response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/teams-devices_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/teams-devices_device-managed-networks"
          }
        }
      }
    }
  ]
}
object teams-devices_components-schemas-single_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/teams-devices_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/teams-devices_device-managed-networks"
        }
      }
    }
  ]
}
string teams-devices_components-schemas-type
{
  "enum": [
    "tls"
  ],
  "type": "string",
  "example": "tls",
  "description": "The type of device managed network.",
  "x-auditable": true
}
string teams-devices_components-schemas-uuid
{
  "type": "string",
  "example": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
  "readOnly": true,
  "maxLength": 36,
  "description": "UUID.",
  "x-auditable": true
}
object teams-devices_config_request
{
  "type": "object",
  "oneOf": [
    {
      "$ref": "#/components/schemas/teams-devices_workspace_one_config_request"
    },
    {
      "$ref": "#/components/schemas/teams-devices_crowdstrike_config_request"
    },
    {
      "$ref": "#/components/schemas/teams-devices_uptycs_config_request"
    },
    {
      "$ref": "#/components/schemas/teams-devices_intune_config_request"
    },
    {
      "$ref": "#/components/schemas/teams-devices_kolide_config_request"
    },
    {
      "$ref": "#/components/schemas/teams-devices_tanium_config_request"
    },
    {
      "$ref": "#/components/schemas/teams-devices_sentinelone_s2s_config_request"
    },
    {
      "$ref": "#/components/schemas/teams-devices_custom_s2s_config_request"
    }
  ],
  "example": {
    "api_url": "https://as123.awmdm.com/API",
    "auth_url": "https://na.uemauth.workspaceone.com/connect/token",
    "client_id": "example client id",
    "client_secret": "example client secret"
  },
  "description": "The configuration object containing third-party integration information."
}
object teams-devices_config_response
{
  "type": "object",
  "oneOf": [
    {
      "$ref": "#/components/schemas/teams-devices_workspace_one_config_response"
    }
  ],
  "example": {
    "api_url": "https://as123.awmdm.com/API",
    "auth_url": "https://na.uemauth.workspaceone.com/connect/token",
    "client_id": "example client id"
  },
  "description": "The configuration object containing third-party integration information."
}
string teams-devices_created
{
  "type": "string",
  "format": "date-time",
  "example": "2017-06-14T00:00:00Z",
  "description": "When the device was created.",
  "x-auditable": true
}
object teams-devices_crowdstrike_config_request
{
  "type": "object",
  "title": "Crowdstrike Config",
  "required": [
    "api_url",
    "customer_id",
    "client_id",
    "client_secret"
  ],
  "properties": {
    "api_url": {
      "type": "string",
      "example": "https://api.us-2.crowdstrike.com",
      "description": "The Crowdstrike API URL.",
      "x-auditable": true
    },
    "client_id": {
      "type": "string",
      "example": "example client id",
      "description": "The Crowdstrike client ID."
    },
    "customer_id": {
      "type": "string",
      "example": "example customer id",
      "description": "The Crowdstrike customer ID.",
      "x-auditable": true
    },
    "client_secret": {
      "type": "string",
      "example": "example client secret",
      "description": "The Crowdstrike client secret.",
      "x-sensitive": true
    }
  }
}
object teams-devices_crowdstrike_input_request
{
  "type": "object",
  "title": "Crowdstrike S2S Input",
  "required": [
    "connection_id"
  ],
  "properties": {
    "os": {
      "type": "string",
      "example": "13.3.0",
      "description": "Os Version.",
      "x-auditable": true
    },
    "state": {
      "enum": [
        "online",
        "offline",
        "unknown"
      ],
      "type": "string",
      "example": "online",
      "description": "For more details on state, please refer to the Crowdstrike documentation.",
      "x-auditable": true
    },
    "overall": {
      "type": "string",
      "example": 90,
      "description": "Overall.",
      "x-auditable": true
    },
    "version": {
      "type": "string",
      "example": "13.3.0",
      "description": "Version.",
      "x-auditable": true
    },
    "operator": {
      "enum": [
        "<",
        "<=",
        ">",
        ">=",
        "=="
      ],
      "type": "string",
      "example": ">",
      "description": "Operator.",
      "x-auditable": true
    },
    "last_seen": {
      "type": "string",
      "example": "15d3h20m4s",
      "description": "For more details on last seen, please refer to the Crowdstrike documentation.",
      "x-auditable": true
    },
    "connection_id": {
      "type": "string",
      "example": "bc7cbfbb-600a-42e4-8a23-45b5e85f804f",
      "description": "Posture Integration ID.",
      "x-auditable": true
    },
    "sensor_config": {
      "type": "string",
      "example": 90,
      "description": "SensorConfig.",
      "x-auditable": true
    },
    "versionOperator": {
      "enum": [
        "<",
        "<=",
        ">",
        ">=",
        "=="
      ],
      "type": "string",
      "example": ">",
      "description": "Version Operator.",
      "x-auditable": true
    }
  }
}
object teams-devices_cursor_result_info
{
  "type": "object",
  "example": {
    "count": 1,
    "cursor": "ais86dftf.asdf7ba8",
    "per_page": 10,
    "total_count": null
  },
  "required": [
    "per_page",
    "count",
    "cursor"
  ],
  "properties": {
    "count": {
      "type": "integer",
      "description": "Number of records in the response."
    },
    "cursor": {
      "type": "string",
      "description": "Opaque token to request the next set of records."
    },
    "per_page": {
      "type": "integer",
      "description": "The limit for the number of records in the response."
    },
    "total_count": {
      "type": "integer",
      "nullable": true,
      "description": "Total number of records available."
    }
  },
  "description": "V4 public API Pagination/Cursor info."
}
object teams-devices_custom_s2s_config_request
{
  "type": "object",
  "title": "Custom Device Posture Integration Config",
  "required": [
    "api_url",
    "access_client_id",
    "access_client_secret"
  ],
  "properties": {
    "api_url": {
      "type": "string",
      "example": "https://example.custom-s2s.com",
      "description": "The Custom Device Posture Integration  API URL.",
      "x-auditable": true
    },
    "access_client_id": {
      "type": "string",
      "example": "88bf3b6d86161464f6509f7219099e57.access",
      "description": "This id will be passed in the `CF-Access-Client-ID` header when hitting the `api_url`."
    },
    "access_client_secret": {
      "type": "string",
      "example": "bdd31cbc4dec990953e39163fbbb194c93313ca9f0a6e420346af9d326b1d2a5",
      "description": "This secret will be passed in the `CF-Access-Client-Secret` header when hitting the `api_url`.",
      "x-sensitive": true
    }
  }
}
object teams-devices_custom_s2s_input_request
{
  "type": "object",
  "title": "Custom Device Posture Integration Input",
  "required": [
    "connection_id",
    "score",
    "operator"
  ],
  "properties": {
    "score": {
      "type": "number",
      "example": 100,
      "description": "A value between 0-100 assigned to devices set by the 3rd party posture provider."
    },
    "operator": {
      "enum": [
        "<",
        "<=",
        ">",
        ">=",
        "=="
      ],
      "type": "string",
      "example": ">",
      "description": "Operator."
    },
    "connection_id": {
      "type": "string",
      "example": "bc7cbfbb-600a-42e4-8a23-45b5e85f804f",
      "description": "Posture Integration ID."
    }
  }
}
boolean teams-devices_default
{
  "type": "boolean",
  "example": false,
  "description": "Whether the policy is the default policy for an account."
}
object teams-devices_default_device_settings_policy
{
  "type": "object",
  "properties": {
    "default": {
      "type": "boolean",
      "example": true,
      "description": "Whether the policy will be applied to matching devices."
    },
    "enabled": {
      "type": "boolean",
      "default": true,
      "example": true,
      "description": "Whether the policy will be applied to matching devices."
    },
    "exclude": {
      "$ref": "#/components/schemas/teams-devices_exclude"
    },
    "include": {
      "$ref": "#/components/schemas/teams-devices_include"
    },
    "policy_id": {
      "$ref": "#/components/schemas/teams-devices_schemas-uuid"
    },
    "support_url": {
      "$ref": "#/components/schemas/teams-devices_support_url"
    },
    "auto_connect": {
      "$ref": "#/components/schemas/teams-devices_auto_connect"
    },
    "allow_updates": {
      "$ref": "#/components/schemas/teams-devices_allow_updates"
    },
    "switch_locked": {
      "$ref": "#/components/schemas/teams-devices_switch_locked"
    },
    "captive_portal": {
      "$ref": "#/components/schemas/teams-devices_captive_portal"
    },
    "service_mode_v2": {
      "$ref": "#/components/schemas/teams-devices_service_mode_v2"
    },
    "tunnel_protocol": {
      "$ref": "#/components/schemas/teams-devices_tunnel_protocol"
    },
    "allowed_to_leave": {
      "$ref": "#/components/schemas/teams-devices_allowed_to_leave"
    },
    "fallback_domains": {
      "$ref": "#/components/schemas/teams-devices_fallback_domains"
    },
    "allow_mode_switch": {
      "$ref": "#/components/schemas/teams-devices_allow_mode_switch"
    },
    "gateway_unique_id": {
      "$ref": "#/components/schemas/teams-devices_gateway_unique_id"
    },
    "exclude_office_ips": {
      "$ref": "#/components/schemas/teams-devices_exclude_office_ips"
    },
    "disable_auto_fallback": {
      "$ref": "#/components/schemas/teams-devices_disable_auto_fallback"
    },
    "sccm_vpn_boundary_support": {
      "$ref": "#/components/schemas/teams-devices_sccm_vpn_boundary_support"
    },
    "register_interface_ip_with_dns": {
      "$ref": "#/components/schemas/teams-devices_register_interface_ip_with_dns"
    }
  }
}
object teams-devices_default_device_settings_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/teams-devices_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/teams-devices_default_device_settings_policy"
        }
      }
    }
  ]
}
boolean teams-devices_deleted
{
  "type": "boolean",
  "example": true,
  "description": "True if the device was deleted."
}
object teams-devices_deployment_group
{
  "type": "object",
  "required": [
    "id",
    "name",
    "version_config",
    "created_at",
    "updated_at"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/teams-devices_deployment_group_id"
    },
    "name": {
      "$ref": "#/components/schemas/teams-devices_deployment_group_name"
    },
    "created_at": {
      "$ref": "#/components/schemas/teams-devices_deployment_group_created_at"
    },
    "policy_ids": {
      "$ref": "#/components/schemas/teams-devices_deployment_group_policy_ids"
    },
    "updated_at": {
      "$ref": "#/components/schemas/teams-devices_deployment_group_updated_at"
    },
    "version_config": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/teams-devices_version_config"
      },
      "description": "Contains version configurations for different target environments."
    }
  }
}
object teams-devices_deployment_group_create_request
{
  "type": "object",
  "required": [
    "name",
    "version_config"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/teams-devices_deployment_group_name"
    },
    "policy_ids": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Contains an optional list of policy IDs assigned to a group."
    },
    "version_config": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/teams-devices_version_config"
      },
      "minItems": 1,
      "description": "Contains at least one version configuration."
    }
  }
}
string teams-devices_deployment_group_created_at
{
  "type": "string",
  "example": "2026-02-14T13:17:00.123456789Z",
  "description": "The RFC3339Nano timestamp when the deployment group was created."
}
string teams-devices_deployment_group_id
{
  "type": "string",
  "example": "550e8400-e29b-41d4-a716-446655440000",
  "description": "The ID of the deployment group.",
  "x-auditable": true
}
string teams-devices_deployment_group_name
{
  "type": "string",
  "example": "Engineering Ring 0",
  "maxLength": 255,
  "minLength": 1,
  "description": "A user-friendly name for the deployment group.",
  "x-auditable": true
}
array teams-devices_deployment_group_policy_ids
{
  "type": "array",
  "items": {
    "type": "string"
  },
  "example": [
    "policy-uuid-1",
    "policy-uuid-2"
  ],
  "description": "Contains a list of policy IDs assigned to this deployment group.",
  "x-auditable": true
}
object teams-devices_deployment_group_update_request
{
  "type": "object",
  "properties": {
    "name": {
      "$ref": "#/components/schemas/teams-devices_deployment_group_name"
    },
    "policy_ids": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Replaces the entire list of policy IDs."
    },
    "version_config": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/teams-devices_version_config"
      },
      "description": "Replaces the entire version_config array."
    }
  }
}
string teams-devices_deployment_group_updated_at
{
  "type": "string",
  "example": "2026-02-14T13:17:00.123456789Z",
  "description": "The RFC3339Nano timestamp when the deployment group was last updated."
}
string teams-devices_description
{
  "type": "string",
  "example": "The rule for admin serial numbers",
  "description": "The description of the device posture rule.",
  "x-auditable": true
}
object teams-devices_device
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/teams-devices_registration_id"
    },
    "ip": {
      "$ref": "#/components/schemas/teams-devices_ip"
    },
    "key": {
      "$ref": "#/components/schemas/teams-devices_key"
    },
    "name": {
      "$ref": "#/components/schemas/teams-devices_schemas-name"
    },
    "user": {
      "$ref": "#/components/schemas/teams-devices_user"
    },
    "model": {
      "$ref": "#/components/schemas/teams-devices_model"
    },
    "account": {
      "$ref": "#/components/schemas/teams-devices_account"
    },
    "created": {
      "$ref": "#/components/schemas/teams-devices_created"
    },
    "deleted": {
      "$ref": "#/components/schemas/teams-devices_deleted"
    },
    "updated": {
      "$ref": "#/components/schemas/teams-devices_updated"
    },
    "version": {
      "$ref": "#/components/schemas/teams-devices_version"
    },
    "key_type": {
      "$ref": "#/components/schemas/teams-devices_key_type"
    },
    "last_seen": {
      "$ref": "#/components/schemas/teams-devices_last_seen"
    },
    "os_version": {
      "$ref": "#/components/schemas/teams-devices_os_version"
    },
    "device_type": {
      "$ref": "#/components/schemas/teams-devices_device_type"
    },
    "mac_address": {
      "$ref": "#/components/schemas/teams-devices_mac_address"
    },
    "tunnel_type": {
      "$ref": "#/components/schemas/teams-devices_tunnel_type"
    },
    "serial_number": {
      "$ref": "#/components/schemas/teams-devices_serial_number"
    },
    "gateway_device_id": {
      "$ref": "#/components/schemas/teams-devices_gateway_device_id"
    }
  }
}
object teams-devices_device-dex-test-schemas-data
{
  "type": "object",
  "example": {
    "host": "https://dash.cloudflare.com",
    "kind": "http",
    "method": "GET"
  },
  "properties": {
    "host": {
      "type": "string",
      "example": "https://dash.cloudflare.com",
      "description": "The desired endpoint to test."
    },
    "kind": {
      "type": "string",
      "example": "http",
      "description": "The type of test."
    },
    "method": {
      "type": "string",
      "example": "GET",
      "description": "The HTTP request method type."
    }
  },
  "description": "The configuration object which contains the details for the WARP client to conduct the test."
}
string teams-devices_device-dex-test-schemas-description
{
  "type": "string",
  "example": "Checks the dash endpoint every 30 minutes",
  "description": "Additional details about the test."
}
boolean teams-devices_device-dex-test-schemas-enabled
{
  "type": "boolean",
  "example": true,
  "description": "Determines whether or not the test is active."
}
object teams-devices_device-dex-test-schemas-http
{
  "type": "object",
  "required": [
    "name",
    "interval",
    "enabled",
    "data"
  ],
  "properties": {
    "data": {
      "$ref": "#/components/schemas/teams-devices_device-dex-test-schemas-data"
    },
    "name": {
      "$ref": "#/components/schemas/teams-devices_device-dex-test-schemas-name"
    },
    "enabled": {
      "$ref": "#/components/schemas/teams-devices_device-dex-test-schemas-enabled"
    },
    "test_id": {
      "$ref": "#/components/schemas/teams-devices_schemas-test-id"
    },
    "interval": {
      "$ref": "#/components/schemas/teams-devices_device-dex-test-schemas-interval"
    },
    "targeted": {
      "type": "boolean"
    },
    "description": {
      "$ref": "#/components/schemas/teams-devices_device-dex-test-schemas-description"
    },
    "target_policies": {
      "$ref": "#/components/schemas/teams-devices_device-dex-test-target-policies"
    }
  }
}
string teams-devices_device-dex-test-schemas-interval
{
  "type": "string",
  "example": "30m",
  "description": "How often the test will run."
}
string teams-devices_device-dex-test-schemas-name
{
  "type": "string",
  "example": "HTTP dash health check",
  "description": "The name of the DEX test. Must be unique."
}
array teams-devices_device-dex-test-target-policies
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/teams-devices_dex_target_policy"
  },
  "description": "Device settings profiles targeted by this test."
}
object teams-devices_device-managed-networks
{
  "type": "object",
  "properties": {
    "name": {
      "$ref": "#/components/schemas/teams-devices_device-managed-networks_components-schemas-name"
    },
    "type": {
      "$ref": "#/components/schemas/teams-devices_components-schemas-type"
    },
    "config": {
      "$ref": "#/components/schemas/teams-devices_schemas-config_response"
    },
    "network_id": {
      "$ref": "#/components/schemas/teams-devices_uuid"
    }
  }
}
string teams-devices_device-managed-networks_components-schemas-name
{
  "type": "string",
  "example": "managed-network-1",
  "description": "The name of the device managed network. This name must be unique.",
  "x-auditable": true
}
object teams-devices_device-posture-integrations
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/teams-devices_uuid"
    },
    "name": {
      "$ref": "#/components/schemas/teams-devices_components-schemas-name"
    },
    "type": {
      "$ref": "#/components/schemas/teams-devices_schemas-type"
    },
    "config": {
      "$ref": "#/components/schemas/teams-devices_config_response"
    },
    "interval": {
      "$ref": "#/components/schemas/teams-devices_interval"
    }
  }
}
object teams-devices_device-posture-rules
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/teams-devices_uuid"
    },
    "name": {
      "$ref": "#/components/schemas/teams-devices_name"
    },
    "type": {
      "$ref": "#/components/schemas/teams-devices_type"
    },
    "input": {
      "$ref": "#/components/schemas/teams-devices_input"
    },
    "match": {
      "$ref": "#/components/schemas/teams-devices_match"
    },
    "schedule": {
      "$ref": "#/components/schemas/teams-devices_schedule"
    },
    "expiration": {
      "$ref": "#/components/schemas/teams-devices_expiration"
    },
    "description": {
      "$ref": "#/components/schemas/teams-devices_description"
    }
  }
}
object teams-devices_device_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/teams-devices_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/teams-devices_device"
        }
      }
    }
  ]
}
object teams-devices_device_settings_policy
{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "example": "Allow Developers",
      "maxLength": 100,
      "description": "The name of the device settings profile."
    },
    "match": {
      "$ref": "#/components/schemas/teams-devices_schemas-match"
    },
    "default": {
      "$ref": "#/components/schemas/teams-devices_default"
    },
    "enabled": {
      "type": "boolean",
      "default": true,
      "example": true,
      "description": "Whether the policy will be applied to matching devices."
    },
    "exclude": {
      "$ref": "#/components/schemas/teams-devices_exclude"
    },
    "include": {
      "$ref": "#/components/schemas/teams-devices_include"
    },
    "policy_id": {
      "$ref": "#/components/schemas/teams-devices_schemas-uuid"
    },
    "precedence": {
      "$ref": "#/components/schemas/teams-devices_precedence"
    },
    "description": {
      "$ref": "#/components/schemas/teams-devices_schemas-description"
    },
    "support_url": {
      "$ref": "#/components/schemas/teams-devices_support_url"
    },
    "auto_connect": {
      "$ref": "#/components/schemas/teams-devices_auto_connect"
    },
    "target_tests": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/teams-devices_target_dex_test"
      }
    },
    "allow_updates": {
      "$ref": "#/components/schemas/teams-devices_allow_updates"
    },
    "switch_locked": {
      "$ref": "#/components/schemas/teams-devices_switch_locked"
    },
    "captive_portal": {
      "$ref": "#/components/schemas/teams-devices_captive_portal"
    },
    "service_mode_v2": {
      "$ref": "#/components/schemas/teams-devices_service_mode_v2"
    },
    "tunnel_protocol": {
      "$ref": "#/components/schemas/teams-devices_tunnel_protocol"
    },
    "allowed_to_leave": {
      "$ref": "#/components/schemas/teams-devices_allowed_to_leave"
    },
    "fallback_domains": {
      "$ref": "#/components/schemas/teams-devices_fallback_domains"
    },
    "allow_mode_switch": {
      "$ref": "#/components/schemas/teams-devices_allow_mode_switch"
    },
    "gateway_unique_id": {
      "$ref": "#/components/schemas/teams-devices_gateway_unique_id"
    },
    "lan_allow_minutes": {
      "$ref": "#/components/schemas/teams-devices_lan_allow_minutes"
    },
    "exclude_office_ips": {
      "$ref": "#/components/schemas/teams-devices_exclude_office_ips"
    },
    "disable_auto_fallback": {
      "$ref": "#/components/schemas/teams-devices_disable_auto_fallback"
    },
    "lan_allow_subnet_size": {
      "$ref": "#/components/schemas/teams-devices_lan_allow_subnet_size"
    },
    "sccm_vpn_boundary_support": {
      "$ref": "#/components/schemas/teams-devices_sccm_vpn_boundary_support"
    },
    "register_interface_ip_with_dns": {
      "$ref": "#/components/schemas/teams-devices_register_interface_ip_with_dns"
    }
  }
}
object teams-devices_device_settings_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/teams-devices_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/teams-devices_device_settings_policy"
        }
      }
    }
  ]
}
object teams-devices_device_settings_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/teams-devices_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/teams-devices_device_settings_policy"
          }
        }
      }
    }
  ]
}
string teams-devices_device_type
{
  "type": "string",
  "example": "windows",
  "x-auditable": true
}
object teams-devices_devices
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/teams-devices_registration_id"
    },
    "ip": {
      "$ref": "#/components/schemas/teams-devices_ip"
    },
    "key": {
      "$ref": "#/components/schemas/teams-devices_key"
    },
    "name": {
      "$ref": "#/components/schemas/teams-devices_schemas-name"
    },
    "user": {
      "$ref": "#/components/schemas/teams-devices_user"
    },
    "model": {
      "$ref": "#/components/schemas/teams-devices_model"
    },
    "created": {
      "$ref": "#/components/schemas/teams-devices_created"
    },
    "deleted": {
      "$ref": "#/components/schemas/teams-devices_deleted"
    },
    "updated": {
      "$ref": "#/components/schemas/teams-devices_updated"
    },
    "version": {
      "$ref": "#/components/schemas/teams-devices_version"
    },
    "last_seen": {
      "$ref": "#/components/schemas/teams-devices_last_seen"
    },
    "os_version": {
      "$ref": "#/components/schemas/teams-devices_os_version"
    },
    "revoked_at": {
      "$ref": "#/components/schemas/teams-devices_revoked_at"
    },
    "device_type": {
      "$ref": "#/components/schemas/teams-devices_platform"
    },
    "mac_address": {
      "$ref": "#/components/schemas/teams-devices_mac_address"
    },
    "manufacturer": {
      "$ref": "#/components/schemas/teams-devices_manufacturer"
    },
    "serial_number": {
      "$ref": "#/components/schemas/teams-devices_serial_number"
    },
    "os_distro_name": {
      "$ref": "#/components/schemas/teams-devices_os_distro_name"
    },
    "os_version_extra": {
      "$ref": "#/components/schemas/teams-devices_os_version_extra"
    },
    "os_distro_revision": {
      "$ref": "#/components/schemas/teams-devices_os_distro_revision"
    }
  }
}
object teams-devices_devices_policy_certificates
{
  "type": "object",
  "required": [
    "enabled"
  ],
  "properties": {
    "enabled": {
      "type": "boolean",
      "example": true,
      "description": "The current status of the device policy certificate provisioning feature for WARP clients."
    }
  }
}
object teams-devices_devices_policy_certificates_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/teams-devices_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/teams-devices_devices_policy_certificates"
        }
      }
    }
  ]
}
object teams-devices_devices_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/teams-devices_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/teams-devices_devices"
          }
        }
      }
    }
  ]
}
object teams-devices_dex-delete-response-collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/teams-devices_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "dex_tests": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/teams-devices_device-dex-test-schemas-http"
              }
            }
          }
        }
      }
    }
  ]
}
object teams-devices_dex-response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/teams-devices_api-response-collection-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/teams-devices_device-dex-test-schemas-http"
          }
        }
      }
    }
  ]
}
object teams-devices_dex-single_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/teams-devices_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/teams-devices_device-dex-test-schemas-http"
        }
      }
    }
  ]
}
object teams-devices_dex_target_policy
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "The id of the device settings profile."
    },
    "name": {
      "type": "string",
      "description": "The name of the device settings profile."
    },
    "default": {
      "type": "boolean",
      "description": "Whether the profile is the account default."
    }
  }
}
boolean teams-devices_disable_auto_fallback
{
  "type": "boolean",
  "default": false,
  "example": true,
  "description": "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`.",
  "x-auditable": true
}
object teams-devices_disable_for_time
{
  "type": "object",
  "properties": {
    "1": {
      "type": "string",
      "example": "9106681",
      "description": "Override code that is valid for 1 hour."
    },
    "3": {
      "type": "string",
      "example": "5356247",
      "description": "Override code that is valid for 3 hours."
    },
    "6": {
      "type": "string",
      "example": "9478972",
      "description": "Override code that is valid for 6 hours."
    },
    "12": {
      "type": "string",
      "example": "3424359",
      "description": "Override code that is valid for 12 hour2."
    },
    "24": {
      "type": "string",
      "example": "2887634",
      "description": "Override code that is valid for 24 hour.2."
    }
  }
}
boolean teams-devices_disconnect
{
  "type": "boolean",
  "example": false,
  "description": "Disconnects all devices on the account using Global WARP override.",
  "x-auditable": true
}
object teams-devices_disk_encryption_input_request
{
  "type": "object",
  "title": "Disk Encryption",
  "properties": {
    "checkDisks": {
      "$ref": "#/components/schemas/teams-devices_checkDisks"
    },
    "requireAll": {
      "$ref": "#/components/schemas/teams-devices_requireAll"
    }
  }
}
object teams-devices_domain_joined_input_request
{
  "type": "object",
  "title": "Domain Joined",
  "required": [
    "operating_system"
  ],
  "properties": {
    "domain": {
      "type": "string",
      "example": "example.com",
      "description": "Domain.",
      "x-auditable": true
    },
    "operating_system": {
      "enum": [
        "windows"
      ],
      "type": "string",
      "example": "windows",
      "description": "Operating System.",
      "x-auditable": true
    }
  }
}
string teams-devices_email
{
  "type": "string",
  "example": "user@example.com",
  "maxLength": 90,
  "description": "The contact email address of the user.",
  "x-auditable": true
}
object teams-devices_empty_body
{
  "type": "object",
  "nullable": true
}
array teams-devices_exclude
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/teams-devices_split_tunnel"
  },
  "default": [
    {
      "address": "10.0.0.0/8"
    },
    {
      "address": "100.64.0.0/10"
    },
    {
      "address": "169.254.0.0/16",
      "description": "DHCP Unspecified"
    },
    {
      "address": "172.16.0.0/12"
    },
    {
      "address": "192.0.0.0/24"
    },
    {
      "address": "192.168.0.0/16"
    },
    {
      "address": "224.0.0.0/24"
    },
    {
      "address": "240.0.0.0/4"
    },
    {
      "address": "255.255.255.255/32",
      "description": "DHCP Broadcast"
    },
    {
      "address": "fe80::/10",
      "description": "IPv6 Link Local"
    },
    {
      "address": "fd00::/8"
    },
    {
      "address": "ff01::/16"
    },
    {
      "address": "ff02::/16"
    },
    {
      "address": "ff03::/16"
    },
    {
      "address": "ff04::/16"
    },
    {
      "address": "ff05::/16"
    }
  ],
  "description": "List of routes excluded in the WARP client's tunnel."
}
boolean teams-devices_exclude_office_ips
{
  "type": "boolean",
  "default": false,
  "example": true,
  "description": "Whether to add Microsoft IPs to Split Tunnel exclusions."
}
array teams-devices_exclude_request
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/teams-devices_split_tunnel"
  },
  "description": "List of routes excluded in the WARP client's tunnel. Both 'exclude' and 'include' cannot be set in the same request.",
  "x-stainless-terraform-configurability": "computed_optional"
}
object teams-devices_exclude_split_tunnel_with_address
{
  "type": "object",
  "required": [
    "address"
  ],
  "properties": {
    "address": {
      "$ref": "#/components/schemas/teams-devices_split_tunnel_address"
    },
    "description": {
      "$ref": "#/components/schemas/teams-devices_split_tunnel_description"
    }
  }
}
object teams-devices_exclude_split_tunnel_with_host
{
  "type": "object",
  "required": [
    "host"
  ],
  "properties": {
    "host": {
      "$ref": "#/components/schemas/teams-devices_split_tunnel_host"
    },
    "description": {
      "$ref": "#/components/schemas/teams-devices_split_tunnel_description"
    }
  }
}
string teams-devices_expiration
{
  "type": "string",
  "example": "1h",
  "description": "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."
}
string teams-devices_extended_key_usage_enum
{
  "enum": [
    "clientAuth",
    "emailProtection"
  ],
  "type": "string",
  "x-auditable": true
}
object teams-devices_fallback_domain
{
  "type": "object",
  "required": [
    "suffix"
  ],
  "properties": {
    "suffix": {
      "type": "string",
      "example": "example.com",
      "description": "The domain suffix to match when resolving locally.",
      "x-auditable": true
    },
    "dns_server": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/teams-devices_ip"
      },
      "description": "A list of IP addresses to handle domain resolution."
    },
    "description": {
      "type": "string",
      "example": "Domain bypass for local development",
      "maxLength": 100,
      "description": "A description of the fallback domain, displayed in the client UI.",
      "x-auditable": true
    }
  }
}
object teams-devices_fallback_domain_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/teams-devices_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/teams-devices_fallback_domain"
          }
        }
      }
    }
  ]
}
array teams-devices_fallback_domains
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/teams-devices_fallback_domain"
  },
  "default": [
    {
      "suffix": "intranet"
    },
    {
      "suffix": "internal"
    },
    {
      "suffix": "private"
    },
    {
      "suffix": "localdomain"
    },
    {
      "suffix": "domain"
    },
    {
      "suffix": "lan"
    },
    {
      "suffix": "home"
    },
    {
      "suffix": "host"
    },
    {
      "suffix": "corp"
    },
    {
      "suffix": "local"
    },
    {
      "suffix": "localhost"
    },
    {
      "suffix": "home.arpa"
    },
    {
      "suffix": "invalid"
    },
    {
      "suffix": "test"
    }
  ]
}
object teams-devices_file_input_request
{
  "type": "object",
  "title": "File Check",
  "required": [
    "path",
    "operating_system"
  ],
  "properties": {
    "path": {
      "type": "string",
      "example": "/bin/cat",
      "description": "File path.",
      "x-auditable": true
    },
    "exists": {
      "type": "boolean",
      "example": true,
      "description": "Whether or not file exists.",
      "x-auditable": true
    },
    "sha256": {
      "type": "string",
      "example": "https://api.us-2.crowdstrike.com",
      "description": "SHA-256."
    },
    "thumbprint": {
      "type": "string",
      "example": "0aabab210bdb998e9cf45da2c9ce352977ab531c681b74cf1e487be1bbe9fe6e",
      "description": "Signing certificate thumbprint."
    },
    "operating_system": {
      "enum": [
        "windows",
        "linux",
        "mac"
      ],
      "type": "string",
      "example": "mac",
      "description": "Operating system.",
      "x-auditable": true
    }
  }
}
object teams-devices_firewall_input_request
{
  "type": "object",
  "title": "Firewall",
  "required": [
    "operating_system",
    "enabled"
  ],
  "properties": {
    "enabled": {
      "type": "boolean",
      "example": true,
      "description": "Enabled.",
      "x-auditable": true
    },
    "operating_system": {
      "enum": [
        "windows",
        "mac"
      ],
      "type": "string",
      "example": "windows",
      "description": "Operating System.",
      "x-auditable": true
    }
  }
}
string teams-devices_gateway_device_id
{
  "type": "string",
  "example": "PD33E90AXfafe14643cbbbc-4a0ed4fc8415Q",
  "deprecated": true
}
string teams-devices_gateway_unique_id
{
  "type": "string",
  "example": "699d98642c564d2e855e9661899b7252"
}
object teams-devices_global_warp_override
{
  "type": "object",
  "properties": {
    "timestamp": {
      "$ref": "#/components/schemas/teams-devices_timestamp"
    },
    "disconnect": {
      "$ref": "#/components/schemas/teams-devices_disconnect"
    }
  }
}
object teams-devices_global_warp_override_request
{
  "type": "object",
  "title": "Global WARP override request",
  "required": [
    "disconnect"
  ],
  "properties": {
    "disconnect": {
      "$ref": "#/components/schemas/teams-devices_disconnect"
    },
    "justification": {
      "$ref": "#/components/schemas/teams-devices_justification"
    }
  }
}
object teams-devices_global_warp_override_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/teams-devices_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/teams-devices_global_warp_override"
        }
      }
    }
  ]
}
object teams-devices_id_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/teams-devices_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "id": {
              "$ref": "#/components/schemas/teams-devices_uuid"
            }
          }
        }
      }
    }
  ]
}
object teams-devices_identifier
{
  "example": "699d98642c564d2e855e9661899b7252"
}
array teams-devices_include
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/teams-devices_split_tunnel_include"
  },
  "description": "List of routes included in the WARP client's tunnel."
}
array teams-devices_include_request
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/teams-devices_split_tunnel_include"
  },
  "description": "List of routes included in the WARP client's tunnel. Both 'exclude' and 'include' cannot be set in the same request.",
  "x-stainless-terraform-configurability": "computed_optional"
}
string teams-devices_include_split_tunnel_address
{
  "type": "string",
  "example": "192.0.2.0/24",
  "description": "The address in CIDR format to include in the tunnel. If `address` is present, `host` must not be present.",
  "x-stainless-terraform-configurability": "computed_optional"
}
string teams-devices_include_split_tunnel_description
{
  "type": "string",
  "example": "Include testing domains in the tunnel",
  "maxLength": 100,
  "description": "A description of the Split Tunnel item, displayed in the client UI.",
  "x-stainless-terraform-configurability": "computed_optional"
}
string teams-devices_include_split_tunnel_host
{
  "type": "string",
  "example": "*.example.com",
  "description": "The domain name to include in the tunnel. If `host` is present, `address` must not be present.",
  "x-stainless-terraform-configurability": "computed_optional"
}
object teams-devices_include_split_tunnel_with_address
{
  "type": "object",
  "required": [
    "address"
  ],
  "properties": {
    "address": {
      "$ref": "#/components/schemas/teams-devices_include_split_tunnel_address"
    },
    "description": {
      "$ref": "#/components/schemas/teams-devices_include_split_tunnel_description"
    }
  }
}
object teams-devices_include_split_tunnel_with_host
{
  "type": "object",
  "required": [
    "host"
  ],
  "properties": {
    "host": {
      "$ref": "#/components/schemas/teams-devices_include_split_tunnel_host"
    },
    "description": {
      "$ref": "#/components/schemas/teams-devices_include_split_tunnel_description"
    }
  }
}
object teams-devices_input
{
  "type": "object",
  "oneOf": [
    {
      "$ref": "#/components/schemas/teams-devices_file_input_request"
    },
    {
      "$ref": "#/components/schemas/teams-devices_unique_client_id_input_request"
    },
    {
      "$ref": "#/components/schemas/teams-devices_domain_joined_input_request"
    },
    {
      "$ref": "#/components/schemas/teams-devices_os_version_input_request"
    },
    {
      "$ref": "#/components/schemas/teams-devices_firewall_input_request"
    },
    {
      "$ref": "#/components/schemas/teams-devices_sentinelone_input_request"
    },
    {
      "$ref": "#/components/schemas/teams-devices_carbonblack_input_request"
    },
    {
      "$ref": "#/components/schemas/teams-devices_access_serial_number_list_input_request"
    },
    {
      "$ref": "#/components/schemas/teams-devices_disk_encryption_input_request"
    },
    {
      "$ref": "#/components/schemas/teams-devices_application_input_request"
    },
    {
      "$ref": "#/components/schemas/teams-devices_client_certificate_input_request"
    },
    {
      "$ref": "#/components/schemas/teams-devices_client_certificate_v2_input_request"
    },
    {
      "$ref": "#/components/schemas/teams-devices_antivirus_input_request"
    },
    {
      "$ref": "#/components/schemas/teams-devices_workspace_one_input_request"
    },
    {
      "$ref": "#/components/schemas/teams-devices_crowdstrike_input_request"
    },
    {
      "$ref": "#/components/schemas/teams-devices_intune_input_request"
    },
    {
      "$ref": "#/components/schemas/teams-devices_kolide_input_request"
    },
    {
      "$ref": "#/components/schemas/teams-devices_tanium_input_request"
    },
    {
      "$ref": "#/components/schemas/teams-devices_sentinelone_s2s_input_request"
    },
    {
      "$ref": "#/components/schemas/teams-devices_custom_s2s_input_request"
    }
  ],
  "example": {
    "path": "/bin/cat",
    "thumbprint": "0aabab210bdb998e9cf45da2c9ce352977ab531c681b74cf1e487be1bbe9fe6e",
    "operating_system": "linux"
  },
  "description": "The value to be checked against."
}
string teams-devices_interval
{
  "type": "string",
  "example": "10m",
  "description": "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`).",
  "x-auditable": true
}
object teams-devices_intune_config_request
{
  "type": "object",
  "title": "Intune Config",
  "required": [
    "customer_id",
    "client_id",
    "client_secret"
  ],
  "properties": {
    "client_id": {
      "type": "string",
      "example": "example client id",
      "description": "The Intune client ID."
    },
    "customer_id": {
      "type": "string",
      "example": "example customer id",
      "description": "The Intune customer ID."
    },
    "client_secret": {
      "type": "string",
      "example": "example client secret",
      "description": "The Intune client secret.",
      "x-sensitive": true
    }
  }
}
object teams-devices_intune_input_request
{
  "type": "object",
  "title": "Intune S2S Input",
  "required": [
    "connection_id",
    "compliance_status"
  ],
  "properties": {
    "connection_id": {
      "type": "string",
      "example": "bc7cbfbb-600a-42e4-8a23-45b5e85f804f",
      "description": "Posture Integration ID.",
      "x-auditable": true
    },
    "compliance_status": {
      "enum": [
        "compliant",
        "noncompliant",
        "unknown",
        "notapplicable",
        "ingraceperiod",
        "error"
      ],
      "type": "string",
      "example": "compliant",
      "description": "Compliance Status.",
      "x-auditable": true
    }
  }
}
string teams-devices_ip
{
  "type": "string",
  "example": "1.1.1.1",
  "description": "IPv4 or IPv6 address.",
  "x-auditable": true
}
object teams-devices_ip_profile
{
  "type": "object",
  "required": [
    "id",
    "name",
    "match",
    "description",
    "precedence",
    "subnet_id",
    "created_at",
    "updated_at",
    "enabled"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/teams-devices_ip_profile_id"
    },
    "name": {
      "$ref": "#/components/schemas/teams-devices_ip_profile_name"
    },
    "match": {
      "$ref": "#/components/schemas/teams-devices_ip_profile_match"
    },
    "enabled": {
      "$ref": "#/components/schemas/teams-devices_ip_profile_enabled"
    },
    "subnet_id": {
      "$ref": "#/components/schemas/teams-devices_ip_profile_subnet_id"
    },
    "created_at": {
      "$ref": "#/components/schemas/teams-devices_ip_profile_created_at"
    },
    "precedence": {
      "$ref": "#/components/schemas/teams-devices_ip_profile_precedence"
    },
    "updated_at": {
      "$ref": "#/components/schemas/teams-devices_ip_profile_updated_at"
    },
    "description": {
      "$ref": "#/components/schemas/teams-devices_ip_profile_description"
    }
  }
}
object teams-devices_ip_profile_create_request
{
  "type": "object",
  "required": [
    "name",
    "subnet_id",
    "precedence",
    "match"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/teams-devices_ip_profile_name"
    },
    "match": {
      "$ref": "#/components/schemas/teams-devices_ip_profile_match"
    },
    "enabled": {
      "type": "boolean",
      "default": true,
      "example": true,
      "description": "Whether the Device IP profile will be applied to matching devices.",
      "x-auditable": true
    },
    "subnet_id": {
      "$ref": "#/components/schemas/teams-devices_ip_profile_subnet_id"
    },
    "precedence": {
      "$ref": "#/components/schemas/teams-devices_ip_profile_precedence"
    },
    "description": {
      "type": "string",
      "example": "example comment",
      "nullable": true,
      "description": "An optional description of the Device IP profile.",
      "x-auditable": true
    }
  }
}
string teams-devices_ip_profile_created_at
{
  "type": "string",
  "example": "2025-02-14T13:17:00.123456789Z",
  "description": "The RFC3339Nano timestamp when the Device IP profile was created."
}
string teams-devices_ip_profile_description
{
  "type": "string",
  "example": "example comment",
  "nullable": true,
  "description": "An optional description of the Device IP profile.",
  "x-auditable": true
}
boolean teams-devices_ip_profile_enabled
{
  "type": "boolean",
  "example": true,
  "description": "Whether the Device IP profile is enabled.",
  "x-auditable": true
}
string teams-devices_ip_profile_id
{
  "type": "string",
  "example": "f70ff985-a4ef-4643-bbbc-4a0ed4fc8415",
  "description": "The ID of the Device IP profile.",
  "x-auditable": true
}
string teams-devices_ip_profile_match
{
  "type": "string",
  "example": "identity.email == \"test@cloudflare.com\"",
  "maxLength": 10000,
  "description": "The wirefilter expression to match registrations. Available values: \"identity.name\", \"identity.email\", \"identity.groups.id\", \"identity.groups.name\", \"identity.groups.email\", \"identity.saml_attributes\".",
  "x-auditable": true
}
string teams-devices_ip_profile_name
{
  "type": "string",
  "example": "IPv4 Cloudflare Source IPs",
  "description": "A user-friendly name for the Device IP profile.",
  "x-auditable": true
}
integer teams-devices_ip_profile_precedence
{
  "type": "integer",
  "example": 100,
  "description": "The precedence of the Device IP profile. Lower values indicate higher precedence. Device IP profile will be evaluated in ascending order of this field.",
  "x-auditable": true
}
string teams-devices_ip_profile_subnet_id
{
  "type": "string",
  "example": "b70ff985-a4ef-4643-bbbc-4a0ed4fc8415",
  "description": "The ID of the Subnet.",
  "x-auditable": true
}
object teams-devices_ip_profile_update_request
{
  "type": "object",
  "properties": {
    "name": {
      "$ref": "#/components/schemas/teams-devices_ip_profile_name"
    },
    "match": {
      "$ref": "#/components/schemas/teams-devices_ip_profile_match"
    },
    "enabled": {
      "$ref": "#/components/schemas/teams-devices_ip_profile_enabled"
    },
    "subnet_id": {
      "$ref": "#/components/schemas/teams-devices_ip_profile_subnet_id"
    },
    "precedence": {
      "$ref": "#/components/schemas/teams-devices_ip_profile_precedence"
    },
    "description": {
      "type": "string",
      "example": "example comment",
      "description": "An optional description of the Device IP profile.",
      "x-auditable": true
    }
  }
}
string teams-devices_ip_profile_updated_at
{
  "type": "string",
  "example": "2025-02-14T13:17:00.123456789Z",
  "description": "The RFC3339Nano timestamp when the Device IP profile was last updated."
}
string teams-devices_justification
{
  "type": "string",
  "example": "Turning off WARP for testing purposes.",
  "description": "Reasoning for setting the Global WARP override state. This will be surfaced in the audit log.",
  "x-auditable": true
}
string teams-devices_key
{
  "type": "string",
  "example": "yek0SUYoOQ10vMGsIYAevozXUQpQtNFJFfFGqER/BGc=",
  "description": "The device's public key."
}
string teams-devices_key_type
{
  "type": "string",
  "example": "curve25519",
  "description": "Type of the key.",
  "x-auditable": true
}
object teams-devices_kolide_config_request
{
  "type": "object",
  "title": "Kolide Config",
  "required": [
    "client_id",
    "client_secret"
  ],
  "properties": {
    "client_id": {
      "type": "string",
      "example": "example client id",
      "description": "The Kolide client ID."
    },
    "client_secret": {
      "type": "string",
      "example": "example client secret",
      "description": "The Kolide client secret.",
      "x-sensitive": true
    }
  }
}
object teams-devices_kolide_input_request
{
  "type": "object",
  "title": "Kolide S2S Input",
  "required": [
    "connection_id"
  ],
  "properties": {
    "auth_state": {
      "type": "array",
      "items": {
        "enum": [
          "Good",
          "Notified",
          "Will Block",
          "Blocked"
        ],
        "type": "string"
      },
      "example": [
        "Good",
        "Notified"
      ],
      "minItems": 1,
      "description": "The set of Kolide device authentication states that pass the posture check. Device must match one of the specified states.",
      "uniqueItems": true,
      "x-auditable": true
    },
    "issue_count": {
      "type": "string",
      "example": "1",
      "description": "The Number of Issues.",
      "x-auditable": true
    },
    "connection_id": {
      "type": "string",
      "example": "bc7cbfbb-600a-42e4-8a23-45b5e85f804f",
      "description": "Posture Integration ID.",
      "x-auditable": true
    },
    "countOperator": {
      "enum": [
        "<",
        "<=",
        ">",
        ">=",
        "=="
      ],
      "type": "string",
      "example": ">",
      "description": "Count Operator.",
      "x-auditable": true
    }
  }
}
number teams-devices_lan_allow_minutes
{
  "type": "number",
  "example": 30,
  "description": "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."
}
number teams-devices_lan_allow_subnet_size
{
  "type": "number",
  "example": 24,
  "description": "The size of the subnet for the local access network. Note that this field is omitted from the response if null or unset."
}
string teams-devices_last_seen
{
  "type": "string",
  "format": "date-time",
  "example": "2017-06-14T00:00:00Z",
  "description": "When the device last connected to Cloudflare services.",
  "x-auditable": true
}
string teams-devices_mac_address
{
  "type": "string",
  "example": "00-00-5E-00-53-00",
  "description": "The device mac address.",
  "x-auditable": true
}
string teams-devices_manufacturer
{
  "type": "string",
  "example": "My phone corp",
  "description": "The device manufacturer name."
}
array teams-devices_match
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/teams-devices_match_item"
  },
  "description": "The conditions that the client must match to run the rule."
}
object teams-devices_match_item
{
  "type": "object",
  "properties": {
    "platform": {
      "$ref": "#/components/schemas/teams-devices_platform"
    }
  }
}
array teams-devices_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "message": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string teams-devices_model
{
  "type": "string",
  "example": "MyPhone(pro-X)",
  "description": "The device model name."
}
string teams-devices_name
{
  "type": "string",
  "example": "Admin Serial Numbers",
  "description": "The name of the device posture rule.",
  "x-auditable": true
}
string teams-devices_os_distro_name
{
  "type": "string",
  "example": "ubuntu",
  "description": "The Linux distro name.",
  "x-auditable": true
}
string teams-devices_os_distro_revision
{
  "type": "string",
  "example": "1.0.0",
  "description": "The Linux distro revision.",
  "x-auditable": true
}
string teams-devices_os_version
{
  "type": "string",
  "example": "10.0.0",
  "description": "The operating system version."
}
string teams-devices_os_version_extra
{
  "type": "string",
  "example": "(a) or 6889 or Ubuntu 24.04",
  "description": "Additional operating system version details. For Windows, the UBR (Update Build Revision). For Mac or iOS, the Product Version Extra. For Linux, the distribution name and version."
}
object teams-devices_os_version_input_request
{
  "type": "object",
  "title": "OS Version",
  "required": [
    "operating_system",
    "version",
    "operator"
  ],
  "properties": {
    "version": {
      "type": "string",
      "example": "13.3.0",
      "description": "Version of OS.",
      "x-auditable": true
    },
    "operator": {
      "enum": [
        "<",
        "<=",
        ">",
        ">=",
        "=="
      ],
      "type": "string",
      "example": "13.3.0",
      "description": "Operator.",
      "x-auditable": true
    },
    "os_distro_name": {
      "type": "string",
      "example": "ubuntu",
      "description": "Operating System Distribution Name (linux only).",
      "x-auditable": true
    },
    "operating_system": {
      "enum": [
        "windows"
      ],
      "type": "string",
      "example": "windows",
      "description": "Operating System.",
      "x-auditable": true
    },
    "os_version_extra": {
      "type": "string",
      "example": "(a) or 6889 or Ubuntu 24.04",
      "description": "Additional operating system version details. For Windows, the UBR (Update Build Revision). For Mac or iOS, the Product Version Extra. For Linux, the distribution name and version.",
      "x-auditable": true
    },
    "os_distro_revision": {
      "type": "string",
      "example": "11.3.1",
      "description": "Version of OS Distribution (linux only).",
      "x-auditable": true
    }
  }
}
object teams-devices_override_codes
{
  "properties": {
    "disable_for_time": {
      "type": "object",
      "additionalProperties": {
        "type": "string"
      }
    }
  }
}
object teams-devices_override_codes_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/teams-devices_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "disable_for_time": {
              "$ref": "#/components/schemas/teams-devices_disable_for_time"
            }
          }
        }
      }
    }
  ]
}
object teams-devices_pagination_info
{
  "type": "object",
  "example": {
    "page": 1,
    "count": 1,
    "per_page": 10,
    "total_count": 10,
    "total_pages": 1
  },
  "required": [
    "page",
    "per_page",
    "count",
    "total_count"
  ],
  "properties": {
    "page": {
      "type": "integer",
      "description": "The page size number of the response."
    },
    "count": {
      "type": "integer",
      "description": "Number of records in the response."
    },
    "per_page": {
      "type": "integer",
      "description": "The limit for the number of records in the response."
    },
    "total_count": {
      "type": "integer",
      "description": "Total number of records available."
    },
    "total_pages": {
      "type": "integer",
      "description": "Total number of pages available."
    }
  }
}
array teams-devices_paths
{
  "type": "array",
  "items": {
    "type": "string"
  },
  "example": [
    "/path1",
    "/path2"
  ],
  "description": "List of paths to check for client certificate on linux."
}
object teams-devices_physical_device
{
  "type": "object",
  "required": [
    "id",
    "name",
    "created_at",
    "updated_at",
    "last_seen_at",
    "active_registrations"
  ],
  "properties": {
    "id": {
      "type": "string",
      "example": "fc9ab6ab-3b94-4319-9941-459462b3d73e",
      "description": "The unique ID of the device.",
      "x-auditable": true
    },
    "name": {
      "type": "string",
      "example": "My Device",
      "description": "The name of the device.",
      "x-auditable": true
    },
    "model": {
      "type": "string",
      "example": "Mark VII",
      "nullable": true,
      "description": "The model name of the device.",
      "x-auditable": true
    },
    "public_ip": {
      "type": "string",
      "example": "1.1.1.1",
      "nullable": true,
      "deprecated": true,
      "description": "**Deprecated**: IP information is provided by DEX - see https://developers.cloudflare.com/api/resources/zero_trust/subresources/dex/subresources/fleet_status/subresources/devices/methods/list/\n",
      "x-auditable": true
    },
    "created_at": {
      "type": "string",
      "example": "2025-02-14T13:17:00Z",
      "description": "The RFC3339 timestamp when the device was created.",
      "x-auditable": true
    },
    "deleted_at": {
      "type": "string",
      "example": "2025-02-14T13:17:00Z",
      "nullable": true,
      "description": "The RFC3339 timestamp when the device was deleted.",
      "x-auditable": true
    },
    "os_version": {
      "type": "string",
      "nullable": true,
      "description": "The device operating system version number.",
      "x-auditable": true
    },
    "updated_at": {
      "type": "string",
      "example": "2025-02-14T13:17:00Z",
      "description": "The RFC3339 timestamp when the device was last updated.",
      "x-auditable": true
    },
    "device_type": {
      "type": "string",
      "example": "linux",
      "nullable": true,
      "description": "The device operating system.",
      "x-auditable": true
    },
    "hardware_id": {
      "type": "string",
      "nullable": true,
      "description": "A string that uniquely identifies the hardware or virtual machine (VM).",
      "x-auditable": true
    },
    "mac_address": {
      "type": "string",
      "example": "f5:01:73:cf:12:23",
      "nullable": true,
      "description": "The device MAC address.",
      "x-auditable": true
    },
    "last_seen_at": {
      "type": "string",
      "example": "2025-02-14T13:17:00Z",
      "nullable": true,
      "description": "The RFC3339 timestamp when the device was last seen.",
      "x-auditable": true
    },
    "manufacturer": {
      "type": "string",
      "example": "ACME",
      "nullable": true,
      "description": "The device manufacturer.",
      "x-auditable": true
    },
    "serial_number": {
      "type": "string",
      "example": "ABS765ASD8A",
      "nullable": true,
      "description": "The device serial number.",
      "x-auditable": true
    },
    "client_version": {
      "type": "string",
      "example": "1.0.0",
      "nullable": true,
      "description": "Version of the WARP client.",
      "x-auditable": true
    },
    "last_seen_user": {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/teams-devices_user"
        }
      ],
      "nullable": true,
      "description": "The last user to use the WARP device."
    },
    "os_version_extra": {
      "type": "string",
      "nullable": true,
      "description": "Additional operating system version details. For Windows, the UBR (Update Build Revision). For Mac or iOS, the Product Version Extra. For Linux, the distribution name and version.",
      "x-auditable": true
    },
    "active_registrations": {
      "type": "integer",
      "example": 1,
      "description": "The number of active registrations for the device. Active registrations are those which haven't been revoked or deleted.",
      "x-auditable": true
    },
    "last_seen_registration": {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/teams-devices_registration_details"
        }
      ],
      "nullable": true,
      "description": "The last seen registration for the device."
    }
  },
  "description": "A WARP Device."
}
string teams-devices_platform
{
  "enum": [
    "windows",
    "mac",
    "linux",
    "android",
    "ios",
    "chromeos"
  ],
  "type": "string",
  "example": "windows",
  "x-auditable": true
}
object teams-devices_policy_summary
{
  "type": "object",
  "required": [
    "id",
    "name",
    "updated_at",
    "default",
    "deleted"
  ],
  "properties": {
    "id": {
      "type": "string",
      "example": "11ffb86f-3f0c-4306-b4a2-e62f872b166a",
      "description": "The ID of the device settings profile."
    },
    "name": {
      "type": "string",
      "description": "The name of the device settings profile."
    },
    "default": {
      "type": "boolean",
      "description": "Whether the device settings profile is the default profile for the account."
    },
    "deleted": {
      "type": "boolean",
      "description": "Whether the device settings profile was deleted."
    },
    "updated_at": {
      "type": "string",
      "example": "2025-02-14T13:17:00Z",
      "description": "The RFC3339 timestamp of when the device settings profile last changed for the registration."
    }
  },
  "description": "The device settings profile assigned to this registration."
}
number teams-devices_precedence
{
  "type": "number",
  "example": 100,
  "description": "The precedence of the policy. Lower values indicate higher precedence. Policies will be evaluated in ascending order of this field."
}
boolean teams-devices_register_interface_ip_with_dns
{
  "type": "boolean",
  "default": true,
  "example": true,
  "description": "Determines if the operating system will register WARP's local interface IP with your on-premises DNS server."
}
object teams-devices_registration
{
  "type": "object",
  "required": [
    "id",
    "key",
    "device",
    "created_at",
    "updated_at",
    "last_seen_at"
  ],
  "properties": {
    "id": {
      "type": "string",
      "example": "11ffb86f-3f0c-4306-b4a2-e62f872b166a",
      "description": "The ID of the registration.",
      "x-auditable": true
    },
    "key": {
      "type": "string",
      "example": "U+QTP50RsWfeLGHF4tlGDnmGeuwtsz46KCHr5OyhWq00Rsdfl45mgnQAuEJ6CO0YrkyTl9FUf5iB0bwYR3g4EEFEHhtu6jFaqfMrBMBSz6itv9HQXkaR9OieKQ==",
      "description": "The public key used to connect to the Cloudflare network.",
      "x-auditable": true
    },
    "user": {
      "$ref": "#/components/schemas/teams-devices_user"
    },
    "device": {
      "$ref": "#/components/schemas/teams-devices_registration_device_details"
    },
    "policy": {
      "$ref": "#/components/schemas/teams-devices_policy_summary"
    },
    "key_type": {
      "type": "string",
      "example": "secp256r1",
      "nullable": true,
      "description": "The type of encryption key used by the WARP client for the active key. Currently 'curve25519' for WireGuard and 'secp256r1' for MASQUE.",
      "x-auditable": true
    },
    "created_at": {
      "type": "string",
      "example": "2025-02-14T13:17:00Z",
      "description": "The RFC3339 timestamp when the registration was created.",
      "x-auditable": true
    },
    "deleted_at": {
      "type": "string",
      "example": "2025-02-14T13:17:00Z",
      "nullable": true,
      "description": "The RFC3339 timestamp when the registration was deleted.",
      "x-auditable": true
    },
    "revoked_at": {
      "type": "string",
      "example": "2025-02-14T13:17:00Z",
      "nullable": true,
      "description": "The RFC3339 timestamp when the registration was revoked.",
      "x-auditable": true
    },
    "updated_at": {
      "type": "string",
      "example": "2025-02-14T13:17:00Z",
      "description": "The RFC3339 timestamp when the registration was last updated.",
      "x-auditable": true
    },
    "tunnel_type": {
      "type": "string",
      "example": "masque",
      "nullable": true,
      "description": "Type of the tunnel - wireguard or masque.",
      "x-auditable": true
    },
    "last_seen_at": {
      "type": "string",
      "example": "2025-02-14T13:17:00Z",
      "description": "The RFC3339 timestamp when the registration was last seen.",
      "x-auditable": true
    }
  },
  "description": "A WARP configuration tied to a single user. Multiple registrations can be created from a single WARP device."
}
object teams-devices_registration_details
{
  "type": "object",
  "properties": {
    "policy": {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/teams-devices_policy_summary"
        }
      ],
      "nullable": true,
      "description": "A summary of the device profile evaluated for the registration."
    }
  },
  "description": "The summary of a registration."
}
object teams-devices_registration_device_details
{
  "type": "object",
  "required": [
    "id",
    "name"
  ],
  "properties": {
    "id": {
      "type": "string",
      "example": "32aa0404-78f1-49a4-99e0-97f575081356",
      "description": "The ID of the device.",
      "x-auditable": true
    },
    "name": {
      "type": "string",
      "example": "My Device",
      "description": "The name of the device.",
      "x-auditable": true
    },
    "client_version": {
      "type": "string",
      "example": "1.0.0",
      "description": "Version of the WARP client.",
      "x-auditable": true
    }
  },
  "description": "Device details embedded inside of a registration."
}
string teams-devices_registration_id
{
  "type": "string",
  "example": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
  "maxLength": 36,
  "description": "Registration ID. Equal to Device ID except for accounts which enabled [multi-user mode](https://developers.cloudflare.com/cloudflare-one/connections/connect-devices/warp/deployment/mdm-deployment/windows-multiuser/).",
  "x-auditable": true
}
boolean teams-devices_requireAll
{
  "type": "boolean",
  "example": true,
  "description": "Whether to check all disks for encryption.",
  "x-auditable": true
}
object teams-devices_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/teams-devices_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/teams-devices_device-posture-rules"
          }
        }
      }
    }
  ]
}
object teams-devices_result_info
{
  "type": "object",
  "properties": {
    "page": {
      "type": "number",
      "example": 1,
      "description": "Current page within paginated list of results."
    },
    "count": {
      "type": "number",
      "example": 1,
      "description": "Total number of results for the requested service."
    },
    "per_page": {
      "type": "number",
      "example": 20,
      "description": "Number of results per page of results."
    },
    "total_count": {
      "type": "number",
      "example": 2000,
      "description": "Total results available without any search parameters."
    }
  }
}
array teams-devices_revoke_devices_request
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/teams-devices_registration_id"
  },
  "maxLength": 200,
  "description": "A list of Registration IDs to revoke."
}
string teams-devices_revoked_at
{
  "type": "string",
  "format": "date-time",
  "example": "2017-06-14T00:00:00Z",
  "description": "When the device was revoked.",
  "x-auditable": true
}
boolean teams-devices_sccm_vpn_boundary_support
{
  "type": "boolean",
  "default": false,
  "example": false,
  "description": "Determines whether the WARP client indicates to SCCM that it is inside a VPN boundary. (Windows only)."
}
string teams-devices_schedule
{
  "type": "string",
  "example": "1h",
  "description": "Polling frequency for the WARP client posture check. Default: `5m` (poll every five minutes). Minimum: `1m`.",
  "x-auditable": true
}
object teams-devices_schemas-config_request
{
  "type": "object",
  "oneOf": [
    {
      "$ref": "#/components/schemas/teams-devices_tls_config_request"
    }
  ],
  "example": {
    "sha256": "b5bb9d8014a0f9b1d61e21e796d78dccdf1352f23cd32812f4850b878ae4944c",
    "tls_sockaddr": "foo.bar:1234"
  },
  "description": "The configuration object containing information for the WARP client to detect the managed network."
}
object teams-devices_schemas-config_response
{
  "type": "object",
  "oneOf": [
    {
      "$ref": "#/components/schemas/teams-devices_tls_config_response"
    }
  ],
  "example": {
    "sha256": "b5bb9d8014a0f9b1d61e21e796d78dccdf1352f23cd32812f4850b878ae4944c",
    "tls_sockaddr": "foo.bar:1234"
  },
  "description": "The configuration object containing information for the WARP client to detect the managed network."
}
string teams-devices_schemas-description
{
  "type": "string",
  "example": "Policy for test teams.",
  "maxLength": 500,
  "description": "A description of the policy."
}
object teams-devices_schemas-id_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/teams-devices_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "nullable": true
        }
      }
    }
  ]
}
string teams-devices_schemas-match
{
  "type": "string",
  "example": "identity.email == \"test@cloudflare.com\"",
  "maxLength": 500,
  "description": "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\"."
}
string teams-devices_schemas-name
{
  "type": "string",
  "example": "My mobile device",
  "description": "The device name."
}
object teams-devices_schemas-response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/teams-devices_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/teams-devices_device-posture-integrations"
          }
        }
      }
    }
  ]
}
object teams-devices_schemas-single_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/teams-devices_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/teams-devices_device-posture-integrations"
        }
      }
    }
  ]
}
string teams-devices_schemas-test-id
{
  "type": "string",
  "example": "372e67954025e0ba6aaa6d586b9e0b59",
  "readOnly": true,
  "maxLength": 32,
  "description": "The unique identifier for the test."
}
string teams-devices_schemas-type
{
  "enum": [
    "workspace_one",
    "crowdstrike_s2s",
    "uptycs",
    "intune",
    "kolide",
    "tanium_s2s",
    "sentinelone_s2s",
    "custom_s2s"
  ],
  "type": "string",
  "example": "workspace_one",
  "description": "The type of device posture integration.",
  "x-auditable": true
}
string teams-devices_schemas-uuid
{
  "type": "string",
  "example": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
  "maxLength": 36,
  "x-auditable": true
}
object teams-devices_sentinelone_input_request
{
  "type": "object",
  "title": "Sentinelone",
  "required": [
    "path",
    "operating_system"
  ],
  "properties": {
    "path": {
      "type": "string",
      "example": "/bin/cat",
      "description": "File path.",
      "x-auditable": true
    },
    "sha256": {
      "type": "string",
      "example": "b5bb9d8014a0f9b1d61e21e796d78dccdf1352f23cd32812f4850b878ae4944c",
      "description": "SHA-256.",
      "x-auditable": true
    },
    "thumbprint": {
      "type": "string",
      "example": "0aabab210bdb998e9cf45da2c9ce352977ab531c681b74cf1e487be1bbe9fe6e",
      "description": "Signing certificate thumbprint.",
      "x-auditable": true
    },
    "operating_system": {
      "enum": [
        "windows",
        "linux",
        "mac"
      ],
      "type": "string",
      "example": "mac",
      "description": "Operating system.",
      "x-auditable": true
    }
  }
}
object teams-devices_sentinelone_s2s_config_request
{
  "type": "object",
  "title": "SentinelOne S2S Config",
  "required": [
    "api_url",
    "client_secret"
  ],
  "properties": {
    "api_url": {
      "type": "string",
      "example": "https://example.sentinelone.net",
      "description": "The SentinelOne S2S API URL."
    },
    "client_secret": {
      "type": "string",
      "example": "example client secret",
      "description": "The SentinelOne S2S client secret.",
      "x-sensitive": true
    }
  }
}
object teams-devices_sentinelone_s2s_input_request
{
  "type": "object",
  "title": "SentinelOne S2S Input",
  "required": [
    "connection_id"
  ],
  "properties": {
    "infected": {
      "type": "boolean",
      "example": true,
      "description": "Whether device is infected."
    },
    "operator": {
      "enum": [
        "<",
        "<=",
        ">",
        ">=",
        "=="
      ],
      "type": "string",
      "example": ">",
      "description": "Operator."
    },
    "is_active": {
      "type": "boolean",
      "example": true,
      "description": "Whether device is active."
    },
    "connection_id": {
      "type": "string",
      "example": "bc7cbfbb-600a-42e4-8a23-45b5e85f804f",
      "description": "Posture Integration ID."
    },
    "active_threats": {
      "type": "number",
      "example": 1,
      "description": "The Number of active threats."
    },
    "network_status": {
      "enum": [
        "connected",
        "disconnected",
        "disconnecting",
        "connecting"
      ],
      "type": "string",
      "example": "connected",
      "description": "Network status of device."
    },
    "operational_state": {
      "enum": [
        "na",
        "partially_disabled",
        "auto_fully_disabled",
        "fully_disabled",
        "auto_partially_disabled",
        "disabled_error",
        "db_corruption"
      ],
      "type": "string",
      "description": "Agent operational state."
    }
  }
}
string teams-devices_serial_number
{
  "type": "string",
  "example": "EXAMPLEHMD6R",
  "description": "The device serial number."
}
object teams-devices_service_mode_v2
{
  "type": "object",
  "properties": {
    "mode": {
      "type": "string",
      "example": "proxy",
      "description": "The mode to run the WARP client under.",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    },
    "port": {
      "type": "number",
      "example": 3000,
      "description": "The port number when used with proxy mode.",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    }
  },
  "x-stainless-terraform-configurability": "computed_optional"
}
object teams-devices_single_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/teams-devices_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/teams-devices_device-posture-rules"
        }
      }
    }
  ]
}
object teams-devices_split_tunnel
{
  "type": "object",
  "oneOf": [
    {
      "$ref": "#/components/schemas/teams-devices_exclude_split_tunnel_with_address"
    },
    {
      "$ref": "#/components/schemas/teams-devices_exclude_split_tunnel_with_host"
    }
  ]
}
string teams-devices_split_tunnel_address
{
  "type": "string",
  "example": "192.0.2.0/24",
  "description": "The address in CIDR format to exclude from the tunnel. If `address` is present, `host` must not be present.",
  "x-stainless-terraform-configurability": "computed_optional"
}
string teams-devices_split_tunnel_description
{
  "type": "string",
  "example": "Exclude testing domains from the tunnel",
  "maxLength": 100,
  "description": "A description of the Split Tunnel item, displayed in the client UI.",
  "x-stainless-terraform-configurability": "computed_optional"
}
string teams-devices_split_tunnel_host
{
  "type": "string",
  "example": "*.example.com",
  "description": "The domain name to exclude from the tunnel. If `host` is present, `address` must not be present.",
  "x-stainless-terraform-configurability": "computed_optional"
}
object teams-devices_split_tunnel_include
{
  "type": "object",
  "oneOf": [
    {
      "$ref": "#/components/schemas/teams-devices_include_split_tunnel_with_address"
    },
    {
      "$ref": "#/components/schemas/teams-devices_include_split_tunnel_with_host"
    }
  ]
}
object teams-devices_split_tunnel_include_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/teams-devices_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/teams-devices_split_tunnel_include"
          }
        }
      }
    }
  ]
}
object teams-devices_split_tunnel_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/teams-devices_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/teams-devices_split_tunnel"
          }
        }
      }
    }
  ]
}
string teams-devices_support_url
{
  "type": "string",
  "default": "",
  "example": "https://1.1.1.1/help",
  "description": "The URL to launch when the Send Feedback button is clicked."
}
boolean teams-devices_switch_locked
{
  "type": "boolean",
  "default": false,
  "example": true,
  "description": "Whether to allow the user to turn off the WARP switch and disconnect the client."
}
object teams-devices_tanium_config_request
{
  "type": "object",
  "title": "Tanium Config",
  "required": [
    "api_url",
    "client_secret"
  ],
  "properties": {
    "api_url": {
      "type": "string",
      "example": "https://dummy-tanium-api.cloudflare.com/plugin/products/gateway/graphql",
      "description": "The Tanium API URL.",
      "x-auditable": true
    },
    "client_secret": {
      "type": "string",
      "example": "example client secret",
      "description": "The Tanium client secret.",
      "x-sensitive": true
    },
    "access_client_id": {
      "type": "string",
      "example": "88bf3b6d86161464f6509f7219099e57.access",
      "description": "If present, this id will be passed in the `CF-Access-Client-ID` header when hitting the `api_url`."
    },
    "access_client_secret": {
      "type": "string",
      "example": "bdd31cbc4dec990953e39163fbbb194c93313ca9f0a6e420346af9d326b1d2a5",
      "description": "If present, this secret will be passed in the `CF-Access-Client-Secret` header when hitting the `api_url`.",
      "x-sensitive": true
    }
  }
}
object teams-devices_tanium_input_request
{
  "type": "object",
  "title": "Tanium S2S Input",
  "required": [
    "connection_id"
  ],
  "properties": {
    "operator": {
      "enum": [
        "<",
        "<=",
        ">",
        ">=",
        "=="
      ],
      "type": "string",
      "example": ">",
      "description": "Operator to evaluate risk_level or eid_last_seen.",
      "x-auditable": true
    },
    "risk_level": {
      "enum": [
        "low",
        "medium",
        "high",
        "critical"
      ],
      "type": "string",
      "example": "low",
      "description": "For more details on risk level, refer to the Tanium documentation.",
      "x-auditable": true
    },
    "total_score": {
      "type": "number",
      "example": 1,
      "description": "For more details on total score, refer to the Tanium documentation.",
      "x-auditable": true
    },
    "connection_id": {
      "type": "string",
      "example": "bc7cbfbb-600a-42e4-8a23-45b5e85f804f",
      "description": "Posture Integration ID.",
      "x-auditable": true
    },
    "eid_last_seen": {
      "type": "string",
      "example": "2023-07-20T23:16:32Z",
      "description": "For more details on eid last seen, refer to the Tanium documentation.",
      "x-auditable": true
    },
    "scoreOperator": {
      "enum": [
        "<",
        "<=",
        ">",
        ">=",
        "=="
      ],
      "type": "string",
      "example": ">",
      "description": "Score Operator.",
      "x-auditable": true
    }
  }
}
object teams-devices_target_dex_test
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "The id of the DEX test targeting this policy."
    },
    "name": {
      "type": "string",
      "description": "The name of the DEX test targeting this policy."
    }
  }
}
object teams-devices_target_environment_info
{
  "type": "object",
  "required": [
    "target_environment",
    "display_name"
  ],
  "properties": {
    "display_name": {
      "type": "string",
      "example": "Windows",
      "description": "A human-readable name for the target environment."
    },
    "target_environment": {
      "type": "string",
      "example": "windows",
      "description": "The target environment identifier."
    }
  }
}
string teams-devices_timestamp
{
  "type": "string",
  "format": "date-time",
  "example": "1970-01-01T00:00:00.000Z",
  "description": "When the Global WARP override state was updated.",
  "x-auditable": true
}
object teams-devices_tls_config_request
{
  "type": "object",
  "required": [
    "tls_sockaddr"
  ],
  "properties": {
    "sha256": {
      "type": "string",
      "example": "b5bb9d8014a0f9b1d61e21e796d78dccdf1352f23cd32812f4850b878ae4944c",
      "description": "The SHA-256 hash of the TLS certificate presented by the host found at tls_sockaddr. If absent, regular certificate verification (trusted roots, valid timestamp, etc) will be used to validate the certificate."
    },
    "tls_sockaddr": {
      "type": "string",
      "example": "foobar:1234",
      "description": "A network address of the form \"host:port\" that the WARP client will use to detect the presence of a TLS host."
    }
  }
}
object teams-devices_tls_config_response
{
  "type": "object",
  "required": [
    "tls_sockaddr"
  ],
  "properties": {
    "sha256": {
      "type": "string",
      "example": "b5bb9d8014a0f9b1d61e21e796d78dccdf1352f23cd32812f4850b878ae4944c",
      "description": "The SHA-256 hash of the TLS certificate presented by the host found at tls_sockaddr. If absent, regular certificate verification (trusted roots, valid timestamp, etc) will be used to validate the certificate."
    },
    "tls_sockaddr": {
      "type": "string",
      "example": "foobar:1234",
      "description": "A network address of the form \"host:port\" that the WARP client will use to detect the presence of a TLS host.",
      "x-auditable": true
    }
  },
  "description": "The Managed Network TLS Config Response."
}
array teams-devices_trust_stores
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/teams-devices_trust_stores_enum"
  },
  "example": [
    "system",
    "user"
  ],
  "description": "List of trust stores to check for client certificate."
}
string teams-devices_trust_stores_enum
{
  "enum": [
    "system",
    "user"
  ],
  "type": "string",
  "x-auditable": true
}
string teams-devices_tunnel_protocol
{
  "type": "string",
  "default": "",
  "example": "wireguard",
  "description": "Determines which tunnel protocol to use."
}
string teams-devices_tunnel_type
{
  "type": "string",
  "example": "masque",
  "description": "Type of the tunnel connection used.",
  "x-auditable": true
}
string teams-devices_type
{
  "enum": [
    "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"
  ],
  "type": "string",
  "example": "file",
  "description": "The type of device posture rule.",
  "x-auditable": true
}
object teams-devices_unique_client_id_input_request
{
  "type": "object",
  "title": "Unique Client ID",
  "required": [
    "operating_system",
    "id"
  ],
  "properties": {
    "id": {
      "type": "string",
      "example": "da3de859-8f6e-47ea-a2b5-b2433858471f",
      "description": "List ID.",
      "x-auditable": true
    },
    "operating_system": {
      "enum": [
        "android",
        "ios",
        "chromeos"
      ],
      "type": "string",
      "example": "android",
      "description": "Operating System.",
      "x-auditable": true
    }
  }
}
array teams-devices_unrevoke_devices_request
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/teams-devices_registration_id"
  },
  "maxLength": 200,
  "description": "A list of Registration IDs to unrevoke."
}
string teams-devices_updated
{
  "type": "string",
  "format": "date-time",
  "example": "2017-06-14T00:00:00Z",
  "description": "When the device was updated.",
  "x-auditable": true
}
object teams-devices_uptycs_config_request
{
  "type": "object",
  "title": "Uptycs Config",
  "required": [
    "api_url",
    "client_key",
    "customer_id",
    "client_secret"
  ],
  "properties": {
    "api_url": {
      "type": "string",
      "example": "rnd.uptycs.io",
      "description": "The Uptycs API URL.",
      "x-auditable": true
    },
    "client_key": {
      "type": "string",
      "example": "example client key",
      "description": "The Uptycs client secret.",
      "x-sensitive": true
    },
    "customer_id": {
      "type": "string",
      "example": "example customer id",
      "description": "The Uptycs customer ID."
    },
    "client_secret": {
      "type": "string",
      "example": "example client secret",
      "description": "The Uptycs client secret.",
      "x-sensitive": true
    }
  }
}
object teams-devices_user
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/teams-devices_components-schemas-uuid"
    },
    "name": {
      "type": "string",
      "example": "John Appleseed",
      "description": "The enrolled device user's name."
    },
    "email": {
      "$ref": "#/components/schemas/teams-devices_email"
    }
  }
}
string teams-devices_uuid
{
  "type": "string",
  "example": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
  "maxLength": 36,
  "description": "API UUID.",
  "x-auditable": true
}
object teams-devices_v4_response_message
{
  "type": "object",
  "required": [
    "code",
    "message"
  ],
  "properties": {
    "code": {
      "type": "integer"
    },
    "message": {
      "type": "string"
    }
  },
  "description": "A message which can be returned in either the 'errors' or 'messages' fields in a v4 API response."
}
string teams-devices_version
{
  "type": "string",
  "example": "1.0.0",
  "description": "The WARP client version."
}
object teams-devices_version_config
{
  "type": "object",
  "required": [
    "version",
    "target_environment"
  ],
  "properties": {
    "version": {
      "type": "string",
      "example": "2026.5.234.0",
      "description": "The specific client version to deploy.",
      "x-auditable": true
    },
    "target_environment": {
      "type": "string",
      "example": "windows",
      "nullable": true,
      "description": "The target environment for the client version (e.g., windows, macos).",
      "x-auditable": true
    }
  }
}
object teams-devices_workspace_one_config_request
{
  "type": "object",
  "title": "Workspace One Config",
  "required": [
    "api_url",
    "auth_url",
    "client_id",
    "client_secret"
  ],
  "properties": {
    "api_url": {
      "type": "string",
      "example": "https://as123.awmdm.com/API",
      "description": "The Workspace One API URL provided in the Workspace One Admin Dashboard."
    },
    "auth_url": {
      "type": "string",
      "example": "https://na.uemauth.workspaceone.com/connect/token",
      "description": "The Workspace One Authorization URL depending on your region."
    },
    "client_id": {
      "type": "string",
      "example": "example client id",
      "description": "The Workspace One client ID provided in the Workspace One Admin Dashboard."
    },
    "client_secret": {
      "type": "string",
      "example": "example client secret",
      "description": "The Workspace One client secret provided in the Workspace One Admin Dashboard.",
      "x-sensitive": true
    }
  }
}
object teams-devices_workspace_one_config_response
{
  "type": "object",
  "required": [
    "api_url",
    "auth_url",
    "client_id"
  ],
  "properties": {
    "api_url": {
      "type": "string",
      "example": "https://as123.awmdm.com/API",
      "description": "The Workspace One API URL provided in the Workspace One Admin Dashboard."
    },
    "auth_url": {
      "type": "string",
      "example": "https://na.uemauth.workspaceone.com/connect/token",
      "description": "The Workspace One Authorization URL depending on your region."
    },
    "client_id": {
      "type": "string",
      "example": "example client id",
      "description": "The Workspace One client ID provided in the Workspace One Admin Dashboard."
    }
  },
  "description": "The Workspace One Config Response."
}
object teams-devices_workspace_one_input_request
{
  "type": "object",
  "title": "Workspace One S2S Input",
  "required": [
    "connection_id",
    "compliance_status"
  ],
  "properties": {
    "connection_id": {
      "type": "string",
      "example": "bc7cbfbb-600a-42e4-8a23-45b5e85f804f",
      "description": "Posture Integration ID.",
      "x-auditable": true
    },
    "compliance_status": {
      "enum": [
        "compliant",
        "noncompliant",
        "unknown"
      ],
      "type": "string",
      "example": "compliant",
      "description": "Compliance Status.",
      "x-auditable": true
    }
  }
}
object teams-devices_zero-trust-account-device-settings
{
  "type": "object",
  "properties": {
    "disable_for_time": {
      "type": "number",
      "description": "Sets the time limit, in seconds, that a user can use an override code to bypass WARP."
    },
    "use_zt_virtual_ip": {
      "type": "boolean",
      "example": true,
      "description": "Enable using CGNAT virtual IPv4."
    },
    "gateway_proxy_enabled": {
      "type": "boolean",
      "example": true,
      "description": "Enable gateway proxy filtering on TCP."
    },
    "gateway_udp_proxy_enabled": {
      "type": "boolean",
      "example": true,
      "description": "Enable gateway proxy filtering on UDP."
    },
    "external_emergency_signal_url": {
      "type": "string",
      "example": "https://192.0.2.1/signal",
      "description": "The HTTPS URL from which to fetch the emergency disconnect signal. Must use HTTPS and have an IPv4 or IPv6 address as the host."
    },
    "external_emergency_signal_enabled": {
      "type": "boolean",
      "example": true,
      "description": "Controls whether the external emergency disconnect feature is enabled."
    },
    "external_emergency_signal_interval": {
      "type": "string",
      "example": "5m",
      "description": "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_fingerprint": {
      "type": "string",
      "example": "abcd1234567890abcd1234567890abcd1234567890abcd1234567890abcd1234",
      "description": "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."
    },
    "root_certificate_installation_enabled": {
      "type": "boolean",
      "example": true,
      "description": "Enable installation of cloudflare managed root certificate."
    }
  }
}
object teams-devices_zero-trust-account-device-settings-response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/teams-devices_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/teams-devices_zero-trust-account-device-settings"
        }
      }
    }
  ]
}
object tls-certificates-and-hostnames_advanced_certificate_pack_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/tls-certificates-and-hostnames_certificate_pack"
        }
      }
    }
  ]
}
string tls-certificates-and-hostnames_advanced_type
{
  "enum": [
    "advanced"
  ],
  "type": "string",
  "example": "advanced",
  "description": "Type of certificate pack.",
  "x-auditable": true
}
object tls-certificates-and-hostnames_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result_info": {
          "type": "object",
          "properties": {
            "page": {
              "type": "number",
              "example": 1,
              "description": "Current page within paginated list of results."
            },
            "count": {
              "type": "number",
              "example": 1,
              "description": "Total number of results for the requested service."
            },
            "per_page": {
              "type": "number",
              "example": 20,
              "description": "Number of results per page of results."
            },
            "total_count": {
              "type": "number",
              "example": 2000,
              "description": "Total results available without any search parameters."
            },
            "total_pages": {
              "type": "number",
              "example": 100,
              "description": "The number of total pages in the entire result set."
            }
          }
        }
      }
    }
  ]
}
object tls-certificates-and-hostnames_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_messages"
    }
  }
}
object tls-certificates-and-hostnames_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/tls-certificates-and-hostnames_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/tls-certificates-and-hostnames_messages"
        }
      ],
      "example": []
    }
  }
}
object tls-certificates-and-hostnames_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-common"
    }
  ]
}
object tls-certificates-and-hostnames_associationObject
{
  "properties": {
    "status": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_mtls-management_components-schemas-status"
    },
    "service": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_service"
    }
  }
}
object tls-certificates-and-hostnames_association_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/tls-certificates-and-hostnames_associationObject"
          }
        }
      }
    }
  ]
}
object tls-certificates-and-hostnames_base
{
  "type": "object",
  "required": [
    "id",
    "name",
    "host",
    "port",
    "status",
    "enabled",
    "permissions",
    "created_on",
    "modified_on"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_schemas-identifier"
    },
    "host": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_host"
    },
    "name": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_name"
    },
    "port": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_port"
    },
    "status": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_schemas-status"
    },
    "tunnel": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_keyless_tunnel"
    },
    "enabled": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_enabled"
    },
    "created_on": {
      "type": "string",
      "format": "date-time",
      "example": "2014-01-01T05:20:00Z",
      "readOnly": true,
      "description": "When the Keyless SSL was created.",
      "x-auditable": true
    },
    "modified_on": {
      "type": "string",
      "format": "date-time",
      "example": "2014-01-01T05:20:00Z",
      "readOnly": true,
      "description": "When the Keyless SSL was last modified.",
      "x-auditable": true
    },
    "permissions": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "example": [
        "#ssl:read",
        "#ssl:edit"
      ],
      "readOnly": true,
      "description": "Available permissions for the Keyless SSL for the current user requesting the item."
    }
  }
}
boolean tls-certificates-and-hostnames_brand_check
{
  "type": "boolean",
  "example": false,
  "description": "Certificate Authority is manually reviewing the order.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_bundle_method
{
  "enum": [
    "ubiquitous",
    "optimal",
    "force"
  ],
  "type": "string",
  "default": "ubiquitous",
  "example": "ubiquitous",
  "description": "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.",
  "x-auditable": true
}
boolean tls-certificates-and-hostnames_ca
{
  "type": "boolean",
  "example": true,
  "description": "Indicates whether the certificate is a CA or leaf certificate.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_cert_id
{
  "type": "string",
  "example": "2458ce5a-0c35-4c7f-82c7-8e9487d3ff60",
  "maxLength": 36,
  "description": "Certificate identifier tag.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_cert_pack_uuid
{
  "type": "string",
  "example": "a77f8bd7-3b47-46b4-a6f1-75cf98109948",
  "description": "Certificate Pack UUID.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_certificate
{
  "type": "string",
  "example": "-----BEGIN CERTIFICATE-----\nMIIDtTCCAp2gAwIBAgIJAMHAwfXZ5/PWMA0GCSqGSIb3DQEBCwUAMEUxCzAJBgNV\nBAYTAkFVMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBX\naWRnaXRzIFB0eSBMdGQwHhcNMTYwODI0MTY0MzAxWhcNMTYxMTIyMTY0MzAxWjBF\nMQswCQYDVQQGEwJBVTETMBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50\nZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB\nCgKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmGdtcGbg/1\nCGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKnabIRuGvB\nKwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpidtnKX/a+5\n0GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+pyFxIXjbEI\ndZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pEewooaeO2\nizNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABo4GnMIGkMB0GA1UdDgQWBBT/LbE4\n9rWf288N6sJA5BRb6FJIGDB1BgNVHSMEbjBsgBT/LbE49rWf288N6sJA5BRb6FJI\nGKFJpEcwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgTClNvbWUtU3RhdGUxITAfBgNV\nBAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZIIJAMHAwfXZ5/PWMAwGA1UdEwQF\nMAMBAf8wDQYJKoZIhvcNAQELBQADggEBAHHFwl0tH0quUYZYO0dZYt4R7SJ0pCm2\n2satiyzHl4OnXcHDpekAo7/a09c6Lz6AU83cKy/+x3/djYHXWba7HpEu0dR3ugQP\nMlr4zrhd9xKZ0KZKiYmtJH+ak4OM4L3FbT0owUZPyjLSlhMtJVcoRp5CJsjAMBUG\nSvD8RX+T01wzox/Qb+lnnNnOlaWpqu8eoOenybxKp1a9ULzIVvN/LAcc+14vioFq\n2swRWtmocBAs8QR9n4uvbpiYvS8eYueDCWMM4fvFfBhaDZ3N9IbtySh3SpFdQDhw\nYbjM2rxXiyLGxB4Bol7QTv4zHif7Zt89FReT/NBy4rzaskDJY5L6xmY=\n-----END CERTIFICATE-----\n",
  "description": "The zone's SSL certificate or certificate and the intermediate(s)."
}
string tls-certificates-and-hostnames_certificate-packs_components-schemas-status
{
  "enum": [
    "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"
  ],
  "type": "string",
  "example": "initializing",
  "description": "Status of certificate pack.",
  "x-auditable": true
}
object tls-certificates-and-hostnames_certificateObject
{
  "properties": {
    "id": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_identifier"
    },
    "issuer": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_issuer"
    },
    "status": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_zone-authenticated-origin-pull_components-schemas-status"
    },
    "signature": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_signature"
    },
    "expires_on": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_zone-authenticated-origin-pull_components-schemas-expires_on"
    },
    "certificate": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_zone-authenticated-origin-pull_components-schemas-certificate"
    },
    "uploaded_on": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_schemas-uploaded_on"
    }
  }
}
object tls-certificates-and-hostnames_certificateObjectPost
{
  "properties": {
    "ca": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_ca"
    },
    "id": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_identifier"
    },
    "name": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_schemas-name"
    },
    "type": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_components-schemas-type"
    },
    "issuer": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_schemas-issuer"
    },
    "signature": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_signature"
    },
    "expires_on": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_schemas-expires_on"
    },
    "updated_at": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_mtls-management_components-schemas-updated_at"
    },
    "uploaded_on": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_mtls-management_components-schemas-uploaded_on"
    },
    "certificates": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_schemas-certificates"
    },
    "serial_number": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_schemas-serial_number"
    }
  }
}
object tls-certificates-and-hostnames_certificate_analyze_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object"
        }
      }
    }
  ]
}
string tls-certificates-and-hostnames_certificate_authority
{
  "enum": [
    "digicert",
    "google",
    "lets_encrypt",
    "ssl_com"
  ],
  "type": "string",
  "example": "google",
  "description": "The Certificate Authority that will issue the certificate",
  "x-auditable": true
}
object tls-certificates-and-hostnames_certificate_pack
{
  "type": "object",
  "required": [
    "id",
    "type",
    "hosts",
    "certificates",
    "status"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_identifier"
    },
    "type": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_schemas-type"
    },
    "hosts": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_schemas-hosts"
    },
    "status": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_certificate-packs_components-schemas-status"
    },
    "certificates": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/tls-certificates-and-hostnames_certificate_pack_certificate"
      },
      "description": "Array of certificates in this pack."
    },
    "validity_days": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_validity_days"
    },
    "validation_errors": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "message": {
            "type": "string",
            "example": "SERVFAIL looking up CAA for app.example.com",
            "description": "A domain validation error.",
            "x-auditable": true
          }
        }
      },
      "description": "Domain validation errors that have been received by the certificate authority (CA)."
    },
    "validation_method": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_validation_method"
    },
    "validation_records": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/tls-certificates-and-hostnames_validation_record"
      },
      "description": "Certificates' validation records."
    },
    "cloudflare_branding": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_cloudflare_branding"
    },
    "primary_certificate": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_primary"
    },
    "certificate_authority": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_schemas-certificate_authority"
    },
    "dcv_delegation_records": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/tls-certificates-and-hostnames_validation_record"
      },
      "readOnly": true,
      "description": "DCV Delegation records for domain validation."
    }
  },
  "description": "A certificate pack with all its properties."
}
object tls-certificates-and-hostnames_certificate_pack_certificate
{
  "type": "object",
  "required": [
    "id",
    "hosts",
    "status"
  ],
  "properties": {
    "id": {
      "type": "string",
      "example": "7e7b8deba8538af625850b7b2530034c",
      "description": "Certificate identifier.",
      "x-auditable": true
    },
    "hosts": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "example.com",
        "*.example.com"
      ],
      "description": "Hostnames covered by this certificate.",
      "x-auditable": true
    },
    "issuer": {
      "type": "string",
      "example": "Let's Encrypt",
      "description": "The certificate authority that issued the certificate.",
      "x-auditable": true
    },
    "status": {
      "type": "string",
      "example": "active",
      "description": "Certificate status.",
      "x-auditable": true
    },
    "zone_id": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_identifier"
    },
    "priority": {
      "type": "number",
      "description": "The order/priority in which the certificate will be used.",
      "x-auditable": true
    },
    "signature": {
      "type": "string",
      "example": "ECDSAWithSHA256",
      "description": "The type of hash used for the certificate.",
      "x-auditable": true
    },
    "expires_on": {
      "type": "string",
      "format": "date-time",
      "example": "2024-01-01T00:00:00Z",
      "description": "When the certificate from the authority expires.",
      "x-auditable": true
    },
    "modified_on": {
      "type": "string",
      "format": "date-time",
      "example": "2014-01-01T05:20:00Z",
      "description": "When the certificate was last modified.",
      "x-auditable": true
    },
    "uploaded_on": {
      "type": "string",
      "format": "date-time",
      "example": "2014-01-01T05:20:00Z",
      "description": "When the certificate was uploaded to Cloudflare.",
      "x-auditable": true
    },
    "bundle_method": {
      "type": "string",
      "example": "ubiquitous",
      "description": "Certificate bundle method.",
      "x-auditable": true
    },
    "geo_restrictions": {
      "type": "object",
      "properties": {
        "label": {
          "enum": [
            "us",
            "eu",
            "highest_security"
          ],
          "type": "string",
          "example": "us",
          "x-auditable": true
        }
      },
      "description": "Specify the region where your private key can be held locally."
    }
  },
  "description": "An individual certificate within a certificate pack."
}
object tls-certificates-and-hostnames_certificate_pack_quota_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "advanced": {
              "$ref": "#/components/schemas/tls-certificates-and-hostnames_quota"
            }
          }
        }
      }
    }
  ]
}
object tls-certificates-and-hostnames_certificate_pack_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/tls-certificates-and-hostnames_certificate_pack"
          }
        }
      }
    }
  ]
}
object tls-certificates-and-hostnames_certificate_pack_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/tls-certificates-and-hostnames_certificate_pack"
        }
      }
    }
  ]
}
object tls-certificates-and-hostnames_certificate_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/tls-certificates-and-hostnames_custom-certificate"
          }
        }
      }
    }
  ]
}
object tls-certificates-and-hostnames_certificate_response_id_only
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "id": {
              "$ref": "#/components/schemas/tls-certificates-and-hostnames_identifier"
            }
          }
        }
      }
    }
  ]
}
object tls-certificates-and-hostnames_certificate_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/tls-certificates-and-hostnames_custom-certificate"
        }
      }
    }
  ]
}
object tls-certificates-and-hostnames_certificate_response_single_post
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "allOf": [
            {
              "$ref": "#/components/schemas/tls-certificates-and-hostnames_certificateObjectPost"
            }
          ]
        }
      }
    }
  ]
}
object tls-certificates-and-hostnames_certificate_revoke_response
{
  "allOf": [
    {
      "type": "object",
      "properties": {
        "result": {
          "properties": {
            "id": {
              "$ref": "#/components/schemas/tls-certificates-and-hostnames_identifier"
            },
            "revoked_at": {
              "$ref": "#/components/schemas/tls-certificates-and-hostnames_revoked_at"
            }
          }
        }
      }
    }
  ]
}
string tls-certificates-and-hostnames_certificate_status
{
  "enum": [
    "initializing",
    "authorizing",
    "active",
    "expired",
    "issuing",
    "timing_out",
    "pending_deployment"
  ],
  "type": "string",
  "example": "active",
  "description": "Current status of certificate.",
  "x-auditable": true
}
object tls-certificates-and-hostnames_certificates
{
  "type": "object",
  "required": [
    "hostnames",
    "csr",
    "requested_validity",
    "request_type"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_identifier"
    },
    "csr": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_csr"
    },
    "hostnames": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_hostnames"
    },
    "expires_on": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_components-schemas-expires_on"
    },
    "certificate": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_certificates_components-schemas-certificate"
    },
    "request_type": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_request_type"
    },
    "requested_validity": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_requested_validity"
    }
  }
}
string tls-certificates-and-hostnames_certificates_components-schemas-certificate
{
  "type": "string",
  "example": "-----BEGIN CERTIFICATE-----\nMIICvDCCAaQCAQAwdzELMAkGA1UEBhMCVVMxDTALBgNVBAgMBFV0YWgxDzANBgNV\nBAcMBkxpbmRvbjEWMBQGA1UECgwNRGlnaUNlcnQgSW5jLjERMA8GA1UECwwIRGln\naUNlcnQxHTAbBgNVBAMMFGV4YW1wbGUuZGlnaWNlcnQuY29tMIIBIjANBgkqhkiG\n9w0BAQEFAAOCAQ8AMIIBCgKCAQEA8+To7d+2kPWeBv/orU3LVbJwDrSQbeKamCmo\nwp5bqDxIwV20zqRb7APUOKYoVEFFOEQs6T6gImnIolhbiH6m4zgZ/CPvWBOkZc+c\n1Po2EmvBz+AD5sBdT5kzGQA6NbWyZGldxRthNLOs1efOhdnWFuhI162qmcflgpiI\nWDuwq4C9f+YkeJhNn9dF5+owm8cOQmDrV8NNdiTqin8q3qYAHHJRW28glJUCZkTZ\nwIaSR6crBQ8TbYNE0dc+Caa3DOIkz1EOsHWzTx+n0zKfqcbgXi4DJx+C1bjptYPR\nBPZL8DAeWuA8ebudVT44yEp82G96/Ggcf7F33xMxe0yc+Xa6owIDAQABoAAwDQYJ\nKoZIhvcNAQEFBQADggEBAB0kcrFccSmFDmxox0Ne01UIqSsDqHgL+XmHTXJwre6D\nhJSZwbvEtOK0G3+dr4Fs11WuUNt5qcLsx5a8uk4G6AKHMzuhLsJ7XZjgmQXGECpY\nQ4mC3yT3ZoCGpIXbw+iP3lmEEXgaQL0Tx5LFl/okKbKYwIqNiyKWOMj7ZR/wxWg/\nZDGRs55xuoeLDJ/ZRFf9bI+IaCUd1YrfYcHIl3G87Av+r49YVwqRDT0VDV7uLgqn\n29XI1PpVUNCPQGn9p/eX6Qo7vpDaPybRtA2R7XLKjQaF9oXWeCUqy1hvJac9QFO2\n97Ob1alpHPoZ7mWiEuJwjBPii6a9M9G30nUo39lBi1w=\n-----END CERTIFICATE-----",
  "readOnly": true,
  "description": "The Origin CA certificate. Will be newline-encoded."
}
string tls-certificates-and-hostnames_client-certificates_components-schemas-certificate
{
  "type": "string",
  "example": "-----BEGIN CERTIFICATE-----\nMIIDmDCCAoC...dhDDE\n-----END CERTIFICATE-----",
  "readOnly": true,
  "description": "The Client Certificate PEM"
}
object tls-certificates-and-hostnames_client-certificates_components-schemas-certificate_authority
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "example": "568b6b74-7b0c-4755-8840-4e3b8c24adeb",
      "x-auditable": true
    },
    "name": {
      "type": "string",
      "example": "Cloudflare Managed CA for account",
      "x-auditable": true
    }
  },
  "description": "Certificate Authority used to issue the Client Certificate"
}
string tls-certificates-and-hostnames_client-certificates_components-schemas-status
{
  "enum": [
    "active",
    "pending_reactivation",
    "pending_revocation",
    "revoked"
  ],
  "type": "string",
  "example": "active",
  "description": "Client Certificates may be active or revoked, and the pending_reactivation or pending_revocation represent in-progress asynchronous transitions",
  "x-auditable": true
}
object tls-certificates-and-hostnames_client_certificate
{
  "properties": {
    "id": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_identifier"
    },
    "csr": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_schemas-csr"
    },
    "ski": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_ski"
    },
    "state": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_state"
    },
    "status": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_client-certificates_components-schemas-status"
    },
    "country": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_country"
    },
    "location": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_location"
    },
    "issued_on": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_issued_on"
    },
    "signature": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_components-schemas-signature"
    },
    "expires_on": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_expired_on"
    },
    "certificate": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_client-certificates_components-schemas-certificate"
    },
    "common_name": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_common_name"
    },
    "organization": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_organization"
    },
    "serial_number": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_components-schemas-serial_number"
    },
    "validity_days": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_schemas-validity_days"
    },
    "fingerprint_sha256": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_fingerprint_sha256"
    },
    "organizational_unit": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_organizational_unit"
    },
    "certificate_authority": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_client-certificates_components-schemas-certificate_authority"
    }
  }
}
object tls-certificates-and-hostnames_client_certificate_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/tls-certificates-and-hostnames_client_certificate"
          }
        }
      }
    }
  ]
}
object tls-certificates-and-hostnames_client_certificate_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/tls-certificates-and-hostnames_client_certificate"
        }
      }
    }
  ]
}
boolean tls-certificates-and-hostnames_cloudflare_branding
{
  "type": "boolean",
  "example": false,
  "description": "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.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_common_name
{
  "type": "string",
  "example": "Cloudflare",
  "readOnly": true,
  "description": "Common Name of the Client Certificate",
  "x-auditable": true
}
string tls-certificates-and-hostnames_components-schemas-certificate
{
  "type": "string",
  "example": "-----BEGIN CERTIFICATE-----\nMIIDdjCCAl6gAwIBAgIJAPnMg0Fs+/B0MA0GCSqGSIb3DQEBCwUAMFsx...\n-----END CERTIFICATE-----\n",
  "description": "The zone's SSL certificate or certificate and the intermediate(s)."
}
object tls-certificates-and-hostnames_components-schemas-certificateObject
{
  "properties": {
    "ca": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_ca"
    },
    "id": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_identifier"
    },
    "name": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_schemas-name"
    },
    "type": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_components-schemas-type"
    },
    "issuer": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_schemas-issuer"
    },
    "signature": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_signature"
    },
    "expires_on": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_schemas-expires_on"
    },
    "uploaded_on": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_mtls-management_components-schemas-uploaded_on"
    },
    "certificates": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_schemas-certificates"
    },
    "serial_number": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_schemas-serial_number"
    }
  }
}
string tls-certificates-and-hostnames_components-schemas-certificate_authority
{
  "enum": [
    "google",
    "lets_encrypt",
    "ssl_com"
  ],
  "type": "string",
  "example": "google",
  "description": "The Certificate Authority that Total TLS certificates will be issued through.",
  "x-auditable": true
}
object tls-certificates-and-hostnames_components-schemas-certificate_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/tls-certificates-and-hostnames_zone-authenticated-origin-pull"
          }
        }
      }
    }
  ]
}
object tls-certificates-and-hostnames_components-schemas-certificate_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/tls-certificates-and-hostnames_zone-authenticated-origin-pull"
        }
      }
    }
  ]
}
string tls-certificates-and-hostnames_components-schemas-created_at
{
  "type": "string",
  "format": "date-time",
  "example": "2100-01-01T05:20:00Z",
  "readOnly": true,
  "description": "The time when the certificate was created.",
  "x-auditable": true
}
boolean tls-certificates-and-hostnames_components-schemas-enabled
{
  "type": "boolean",
  "example": true,
  "description": "If enabled, Total TLS will order a hostname specific TLS certificate for any proxied A, AAAA, or CNAME record in your zone.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_components-schemas-expires_on
{
  "type": "string",
  "example": "2014-01-01 05:20:00 +0000 UTC",
  "readOnly": true,
  "description": "When the certificate will expire.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_components-schemas-hostname
{
  "type": "string",
  "example": "app.example.com",
  "description": "The hostname for which the tls settings are set.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_components-schemas-private_key
{
  "type": "string",
  "example": "-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDEXDkcICRU3XBv\n9hiiPnBWIjgTQyowmVFxDr11mONgZB/cMYjE/OvQjvnpwNcOaSK16MOpAjNbELKR\nx2lZiVJaLRDCccqCxXwP/CrdRChcqGzo7mbNksMlcidrErb0LlEBKLFC2QjRmRKq\nB+YOs4TD8WsZu2S667A2fZmjRlaqOxFi1h62ee0P+TLU628UC/nl41JifSt5Evt7\nhMDHakemdwZblNYr2p6T3NQjdhjYXTtP4UmOGJBhJ7i7Kicg3d3CIgdTMbggSeGW\nqjndr4ldVnD96FN3cVT5uDFsn2CJXTFgdeBWoUnMS4VnUZzPWGf4vSBXC8qV7Ls+\nw46yT7T1AgMBAAECggEAQZnp/oqCeNPOR6l5S2L+1tfx0gWjZ78hJVteUpZ0iHSK\n7F6kKeOxyOird7vUXV0kmo+cJq+0hp0Ke4eam640FCpwKfYoSQ4/R3vgujGWJnai\nhCN5tv5sMet0XeJPuz5qE7ALoKCvwI6aXLHs20aAeZIDTQJ9QbGSGnJVzOWn+JDT\nidIgZpN57RpXfSAwnJPTQK/PN8i5z108hsaDOdEgGmxYZ7kYqMqzX20KXmth58LD\nfPixs5JGtS60iiKC/wOcGzkB2/AdTSojR76oEU77cANP/3zO25NG//whUdYlW0t0\nd7PgXxIeJe+xgYnamDQJx3qonVyt4H77ha0ObRAj9QKBgQDicZr+VTwFMnELP3a+\nFXGnjehRiuS1i7MXGKxNweCD+dFlML0FplSQS8Ro2n+d8lu8BBXGx0qm6VXu8Rhn\n7TAUL6q+PCgfarzxfIhacb/TZCqfieIHsMlVBfhV5HCXnk+kis0tuC/PRArcWTwD\nHJUJXkBhvkUsNswvQzavDPI7KwKBgQDd/WgLkj7A3X5fgIHZH/GbDSBiXwzKb+rF\n4ZCT2XFgG/OAW7vapfcX/w+v+5lBLyrocmOAS3PGGAhM5T3HLnUCQfnK4qgps1Lq\nibkc9Tmnsn60LanUjuUMsYv/zSw70tozbzhJ0pioEpWfRxRZBztO2Rr8Ntm7h6Fk\n701EXGNAXwKBgQCD1xsjy2J3sCerIdcz0u5qXLAPkeuZW+34m4/ucdwTWwc0gEz9\nlhsULFj9p4G351zLuiEnq+7mAWLcDJlmIO3mQt6JhiLiL9Y0T4pgBmxmWqKKYtAs\nJB0EmMY+1BNN44mBRqMxZFTJu1cLdhT/xstrOeoIPqytknYNanfTMZlzIwKBgHrL\nXe5oq0XMP8dcMneEcAUwsaU4pr6kQd3L9EmUkl5zl7J9C+DaxWAEuwzBw/iGutlx\nzRB+rD/7szu14wJ29EqXbDGKRzMp+se5/yfBjm7xEZ1hVPw7PwBShfqt57X/4Ktq\n7lwHnmH6RcGhc+P7WBc5iO/S94YAdIp8xOT3pf9JAoGAE0QkqJUY+5Mgr+fBO0VN\nV72ZoPveGpW+De59uhKAOnu1zljQCUtk59m6+DXfm0tNYKtawa5n8iN71Zh+s62x\nXSt3pYi1Y5CCCmv8Y4BhwIcPwXKk3zEvLgSHVTpC0bayA9aSO4bbZgVXa5w+Z0w/\nvvfp9DWo1IS3EnQRrz6WMYA=\n-----END PRIVATE KEY-----",
  "description": "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.",
  "x-sensitive": true
}
string tls-certificates-and-hostnames_components-schemas-serial_number
{
  "type": "string",
  "example": "3bb94ff144ac567b9f75ad664b6c55f8d5e48182",
  "readOnly": true,
  "description": "The serial number on the created Client Certificate.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_components-schemas-signature
{
  "type": "string",
  "example": "SHA256WithRSA",
  "readOnly": true,
  "description": "The type of hash used for the Client Certificate..",
  "x-auditable": true
}
string tls-certificates-and-hostnames_components-schemas-status
{
  "enum": [
    "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"
  ],
  "type": "string",
  "example": "pending",
  "description": "Status of the hostname's activation.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_components-schemas-type
{
  "enum": [
    "custom",
    "gateway_managed",
    "access_managed"
  ],
  "type": "string",
  "example": "custom",
  "readOnly": true,
  "description": "The type of the certificate, indicating how it was created and who manages it.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_components-schemas-updated_at
{
  "type": "string",
  "format": "date-time",
  "example": "2100-01-01T05:20:00Z",
  "readOnly": true,
  "description": "The time when the certificate was updated.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_components-schemas-uploaded_on
{
  "type": "string",
  "format": "date-time",
  "example": "2019-10-28T18:11:23.37411Z",
  "description": "The time when the certificate was uploaded.",
  "x-auditable": true
}
object tls-certificates-and-hostnames_components-schemas-validation_method
{
  "type": "object",
  "required": [
    "validation_method"
  ],
  "properties": {
    "validation_method": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_validation_method_definition"
    }
  }
}
array tls-certificates-and-hostnames_config
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/tls-certificates-and-hostnames_hostname_certid_input"
  }
}
string tls-certificates-and-hostnames_country
{
  "type": "string",
  "example": "US",
  "readOnly": true,
  "description": "Country, provided by the CSR",
  "x-auditable": true
}
string tls-certificates-and-hostnames_created_at
{
  "type": "string",
  "format": "date-time",
  "example": "2020-02-06T18:11:23.531995Z",
  "description": "This is the time the hostname was created.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_csr
{
  "type": "string",
  "example": "-----BEGIN CERTIFICATE REQUEST-----\nMIICxzCCAa8CAQAwSDELMAkGA1UEBhMCVVMxFjAUBgNVBAgTDVNhbiBGcmFuY2lz\nY28xCzAJBgNVBAcTAkNBMRQwEgYDVQQDEwtleGFtcGxlLm5ldDCCASIwDQYJKoZI\nhvcNAQEBBQADggEPADCCAQoCggEBALxejtu4b+jPdFeFi6OUsye8TYJQBm3WfCvL\nHu5EvijMO/4Z2TImwASbwUF7Ir8OLgH+mGlQZeqyNvGoSOMEaZVXcYfpR1hlVak8\n4GGVr+04IGfOCqaBokaBFIwzclGZbzKmLGwIQioNxGfqFm6RGYGA3be2Je2iseBc\nN8GV1wYmvYE0RR+yWweJCTJ157exyRzu7sVxaEW9F87zBQLyOnwXc64rflXslRqi\ng7F7w5IaQYOl8yvmk/jEPCAha7fkiUfEpj4N12+oPRiMvleJF98chxjD4MH39c5I\nuOslULhrWunfh7GB1jwWNA9y44H0snrf+xvoy2TcHmxvma9Eln8CAwEAAaA6MDgG\nCSqGSIb3DQEJDjErMCkwJwYDVR0RBCAwHoILZXhhbXBsZS5uZXSCD3d3dy5leGFt\ncGxlLm5ldDANBgkqhkiG9w0BAQsFAAOCAQEAcBaX6dOnI8ncARrI9ZSF2AJX+8mx\npTHY2+Y2C0VvrVDGMtbBRH8R9yMbqWtlxeeNGf//LeMkSKSFa4kbpdx226lfui8/\nauRDBTJGx2R1ccUxmLZXx4my0W5iIMxunu+kez+BDlu7bTT2io0uXMRHue4i6quH\nyc5ibxvbJMjR7dqbcanVE10/34oprzXQsJ/VmSuZNXtjbtSKDlmcpw6To/eeAJ+J\nhXykcUihvHyG4A1m2R6qpANBjnA0pHexfwM/SgfzvpbvUg0T1ubmer8BgTwCKIWs\ndcWYTthM51JIqRBfNqy4QcBnX+GY05yltEEswQI55wdiS3CjTTA67sdbcQ==\n-----END CERTIFICATE REQUEST-----",
  "description": "The Certificate Signing Request (CSR). Must be newline-encoded."
}
object tls-certificates-and-hostnames_custom-certificate
{
  "type": "object",
  "required": [
    "id",
    "zone_id"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_identifier"
    },
    "hosts": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_hosts"
    },
    "issuer": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_issuer"
    },
    "status": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_status"
    },
    "zone_id": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_identifier"
    },
    "priority": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_priority"
    },
    "signature": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_signature"
    },
    "expires_on": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_expires_on"
    },
    "modified_on": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_modified_on"
    },
    "uploaded_on": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_uploaded_on"
    },
    "bundle_method": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_bundle_method"
    },
    "custom_csr_id": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_custom_csr_id"
    },
    "keyless_server": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_keyless-certificate"
    },
    "geo_restrictions": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_geo_restrictions"
    },
    "policy_restrictions": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_policy_restrictions"
    }
  }
}
object tls-certificates-and-hostnames_custom-hostname
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_customhostname"
    }
  ],
  "required": [
    "id",
    "hostname"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_identifier"
    },
    "ssl": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_ssl"
    },
    "hostname": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_hostname"
    }
  }
}
string tls-certificates-and-hostnames_custom-hostname-fallback-origin_components-schemas-status
{
  "enum": [
    "initializing",
    "pending_deployment",
    "pending_deletion",
    "active",
    "deployment_timed_out",
    "deletion_timed_out"
  ],
  "type": "string",
  "example": "pending_deployment",
  "description": "Status of the fallback origin's activation.",
  "x-auditable": true
}
object tls-certificates-and-hostnames_custom-trust-store
{
  "type": "object",
  "required": [
    "id",
    "status",
    "issuer",
    "signature",
    "certificate",
    "expires_on",
    "uploaded_on",
    "updated_at"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_identifier"
    },
    "issuer": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_issuer"
    },
    "status": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_custom-trust-store_components-schemas-status"
    },
    "signature": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_signature"
    },
    "expires_on": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_schemas-expires_on"
    },
    "updated_at": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_schemas-updated_at"
    },
    "certificate": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_components-schemas-certificate"
    },
    "uploaded_on": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_uploaded_on"
    }
  }
}
string tls-certificates-and-hostnames_custom-trust-store_components-schemas-status
{
  "enum": [
    "initializing",
    "pending_deployment",
    "active",
    "pending_deletion",
    "deleted",
    "expired"
  ],
  "type": "string",
  "example": "active",
  "readOnly": true,
  "description": "Status of the zone's custom SSL.",
  "x-auditable": true
}
object tls-certificates-and-hostnames_custom_cert_and_key
{
  "type": "object",
  "required": [
    "custom_certificate",
    "custom_key"
  ],
  "properties": {
    "custom_key": {
      "type": "string",
      "example": "-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQC/SCB5...\n-----END PRIVATE KEY-----\n",
      "description": "The key for a custom uploaded certificate.",
      "x-sensitive": true
    },
    "custom_certificate": {
      "type": "string",
      "example": "-----BEGIN CERTIFICATE-----\nMIIDdjCCAl6gAwIBAgIJAPnMg0Fs+/B0MA0GCSqGSIb3DQEBCwUAMFsx...\n-----END CERTIFICATE-----\n",
      "description": "If a custom uploaded certificate is used."
    }
  }
}
array tls-certificates-and-hostnames_custom_cert_bundle
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/tls-certificates-and-hostnames_custom_cert_and_key"
  },
  "maxItems": 2,
  "minItems": 1,
  "description": "Array of custom certificate and key pairs (1 or 2 pairs allowed)"
}
string tls-certificates-and-hostnames_custom_csr_id
{
  "type": "string",
  "example": "7b163417-1d2b-4c84-a38a-2fb7a0cd7752",
  "description": "The identifier for the Custom CSR that was used.",
  "x-auditable": true
}
object tls-certificates-and-hostnames_custom_hostname_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/tls-certificates-and-hostnames_custom-hostname"
          }
        }
      }
    }
  ]
}
object tls-certificates-and-hostnames_custom_hostname_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "allOf": [
            {
              "$ref": "#/components/schemas/tls-certificates-and-hostnames_custom-hostname"
            }
          ]
        }
      }
    }
  ]
}
object tls-certificates-and-hostnames_custom_metadata
{
  "type": "object",
  "description": "Unique key/value metadata for this hostname. These are per-hostname (customer) settings.",
  "additionalProperties": {
    "type": "string",
    "x-auditable": true
  }
}
string tls-certificates-and-hostnames_custom_origin_server
{
  "type": "string",
  "example": "origin2.example.com",
  "description": "a valid hostname that’s been added to your DNS zone as an A, AAAA, or CNAME record.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_custom_origin_sni
{
  "type": "string",
  "example": "sni.example.com",
  "description": "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.",
  "x-auditable": true
}
object tls-certificates-and-hostnames_custom_trust_store_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/tls-certificates-and-hostnames_custom-trust-store"
          }
        }
      }
    }
  ]
}
object tls-certificates-and-hostnames_custom_trust_store_response_id_only
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "id": {
              "$ref": "#/components/schemas/tls-certificates-and-hostnames_identifier"
            }
          }
        }
      }
    }
  ]
}
object tls-certificates-and-hostnames_custom_trust_store_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/tls-certificates-and-hostnames_custom-trust-store"
        }
      }
    }
  ]
}
object tls-certificates-and-hostnames_customhostname
{
  "properties": {
    "id": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_identifier"
    },
    "ssl": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_ssl"
    },
    "status": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_components-schemas-status"
    },
    "hostname": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_hostname"
    },
    "created_at": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_created_at"
    },
    "custom_metadata": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_custom_metadata"
    },
    "custom_origin_sni": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_custom_origin_sni"
    },
    "verification_errors": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_verification_errors"
    },
    "custom_origin_server": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_custom_origin_server"
    },
    "ownership_verification": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_ownership_verification"
    },
    "ownership_verification_http": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_ownership_verification_http"
    }
  }
}
object tls-certificates-and-hostnames_dcv_delegation_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "allOf": [
            {
              "$ref": "#/components/schemas/tls-certificates-and-hostnames_uuidObject"
            }
          ]
        }
      }
    }
  ]
}
object tls-certificates-and-hostnames_delete_advanced_certificate_pack_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "id": {
              "$ref": "#/components/schemas/tls-certificates-and-hostnames_identifier"
            }
          }
        }
      }
    }
  ]
}
string tls-certificates-and-hostnames_deploy
{
  "enum": [
    "staging",
    "production"
  ],
  "type": "string",
  "default": "production",
  "example": "staging",
  "description": "The environment to deploy the certificate to, defaults to production",
  "x-auditable": true
}
boolean tls-certificates-and-hostnames_enabled
{
  "type": "boolean",
  "example": false,
  "readOnly": true,
  "description": "Whether or not the Keyless SSL is on or off.",
  "x-auditable": true
}
object tls-certificates-and-hostnames_enabled_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-single"
    },
    {
      "properties": {
        "result": {
          "properties": {
            "enabled": {
              "$ref": "#/components/schemas/tls-certificates-and-hostnames_zone-authenticated-origin-pull_components-schemas-enabled"
            }
          }
        }
      }
    }
  ]
}
boolean tls-certificates-and-hostnames_enabled_write
{
  "type": "boolean",
  "example": false,
  "deprecated": true,
  "description": "Whether or not the Keyless SSL is on or off.",
  "x-auditable": true
}
array tls-certificates-and-hostnames_errors
{
  "type": "array",
  "items": {
    "type": "string",
    "x-auditable": true
  },
  "example": [
    "DNS records are not setup correctly. Origin should be a proxied A/AAAA/CNAME dns record"
  ],
  "description": "These are errors that were encountered while trying to activate a fallback origin."
}
string tls-certificates-and-hostnames_expired_on
{
  "type": "string",
  "example": "2033-02-20T23:18:00Z",
  "readOnly": true,
  "description": "Date that the Client Certificate expires",
  "x-auditable": true
}
string tls-certificates-and-hostnames_expires_on
{
  "type": "string",
  "format": "date-time",
  "example": "2016-01-01T05:20:00Z",
  "readOnly": true,
  "description": "When the certificate from the authority expires.",
  "x-auditable": true
}
object tls-certificates-and-hostnames_fallback_origin_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/tls-certificates-and-hostnames_fallbackorigin"
        }
      }
    }
  ]
}
object tls-certificates-and-hostnames_fallbackorigin
{
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_errors"
    },
    "origin": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_origin"
    },
    "status": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_custom-hostname-fallback-origin_components-schemas-status"
    },
    "created_at": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_schemas-created_at"
    },
    "updated_at": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_updated_at"
    }
  }
}
string tls-certificates-and-hostnames_fingerprint_sha256
{
  "type": "string",
  "example": "256c24690243359fb8cf139a125bd05ebf1d968b71e4caf330718e9f5c8a89ea",
  "readOnly": true,
  "description": "Unique identifier of the Client Certificate",
  "x-auditable": true
}
object tls-certificates-and-hostnames_geo_restrictions
{
  "type": "object",
  "properties": {
    "label": {
      "enum": [
        "us",
        "eu",
        "highest_security"
      ],
      "type": "string",
      "example": "us",
      "x-auditable": true
    }
  },
  "description": "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."
}
string tls-certificates-and-hostnames_host
{
  "type": "string",
  "format": "hostname",
  "example": "example.com",
  "maxLength": 253,
  "description": "The keyless SSL name.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_hostname
{
  "type": "string",
  "example": "app.example.com",
  "readOnly": true,
  "maxLength": 255,
  "description": "The custom hostname that will point to your hostname via CNAME.",
  "x-auditable": true
}
object tls-certificates-and-hostnames_hostname-authenticated-origin-pull
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_hostname_certid_object"
    }
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_identifier"
    },
    "cert_id": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_identifier"
    },
    "enabled": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_hostname-authenticated-origin-pull_components-schemas-enabled"
    },
    "hostname": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_schemas-hostname"
    },
    "certificate": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_hostname-authenticated-origin-pull_components-schemas-certificate"
    },
    "private_key": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_schemas-private_key"
    }
  }
}
string tls-certificates-and-hostnames_hostname-authenticated-origin-pull_components-schemas-certificate
{
  "type": "string",
  "example": "-----BEGIN CERTIFICATE-----\nMIIDtTCCAp2gAwIBAgIJAMHAwfXZ5/PWMA0GCSqGSIb3DQEBCwUAMEUxCzAJBgNV\nBAYTAkFVMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBX\naWRnaXRzIFB0eSBMdGQwHhcNMTYwODI0MTY0MzAxWhcNMTYxMTIyMTY0MzAxWjBF\nMQswCQYDVQQGEwJBVTETMBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50\nZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB\nCgKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmGdtcGbg/1\nCGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKnabIRuGvB\nKwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpidtnKX/a+5\n0GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+pyFxIXjbEI\ndZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pEewooaeO2\nizNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABo4GnMIGkMB0GA1UdDgQWBBT/LbE4\n9rWf288N6sJA5BRb6FJIGDB1BgNVHSMEbjBsgBT/LbE49rWf288N6sJA5BRb6FJI\nGKFJpEcwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgTClNvbWUtU3RhdGUxITAfBgNV\nBAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZIIJAMHAwfXZ5/PWMAwGA1UdEwQF\nMAMBAf8wDQYJKoZIhvcNAQELBQADggEBAHHFwl0tH0quUYZYO0dZYt4R7SJ0pCm2\n2satiyzHl4OnXcHDpekAo7/a09c6Lz6AU83cKy/+x3/djYHXWba7HpEu0dR3ugQP\nMlr4zrhd9xKZ0KZKiYmtJH+ak4OM4L3FbT0owUZPyjLSlhMtJVcoRp5CJsjAMBUG\nSvD8RX+T01wzox/Qb+lnnNnOlaWpqu8eoOenybxKp1a9ULzIVvN/LAcc+14vioFq\n2swRWtmocBAs8QR9n4uvbpiYvS8eYueDCWMM4fvFfBhaDZ3N9IbtySh3SpFdQDhw\nYbjM2rxXiyLGxB4Bol7QTv4zHif7Zt89FReT/NBy4rzaskDJY5L6xmY=\n-----END CERTIFICATE-----\n",
  "description": "The hostname certificate.",
  "x-stainless-terraform": {
    "normalize_newlines": true
  }
}
object tls-certificates-and-hostnames_hostname-authenticated-origin-pull_components-schemas-certificate_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/tls-certificates-and-hostnames_schemas-certificateObject"
          }
        }
      }
    }
  ]
}
object tls-certificates-and-hostnames_hostname-authenticated-origin-pull_components-schemas-certificate_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/tls-certificates-and-hostnames_schemas-certificateObject"
        }
      }
    }
  ]
}
boolean tls-certificates-and-hostnames_hostname-authenticated-origin-pull_components-schemas-enabled
{
  "type": "boolean",
  "example": true,
  "nullable": true,
  "description": "Indicates whether hostname-level authenticated origin pulls is enabled. A null value voids the association.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_hostname-authenticated-origin-pull_components-schemas-expires_on
{
  "type": "string",
  "format": "date-time",
  "example": "2100-01-01T05:20:00Z",
  "readOnly": true,
  "description": "The date when the certificate expires.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_hostname-authenticated-origin-pull_components-schemas-status
{
  "enum": [
    "initializing",
    "pending_deployment",
    "pending_deletion",
    "active",
    "deleted",
    "deployment_timed_out",
    "deletion_timed_out"
  ],
  "type": "string",
  "example": "active",
  "readOnly": true,
  "description": "Status of the certificate or the association.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_hostname-tls-settings_components-schemas-created_at
{
  "type": "string",
  "format": "date-time",
  "example": "2023-07-10T20:01:50.219171Z",
  "description": "This is the time the tls setting was originally created for this hostname.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_hostname-tls-settings_components-schemas-status
{
  "type": "string",
  "example": "pending_deployment",
  "description": "Deployment status for the given tls setting.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_hostname-tls-settings_components-schemas-updated_at
{
  "type": "string",
  "format": "date-time",
  "example": "2023-07-10T20:01:50.219171Z",
  "description": "This is the time the tls setting was updated.",
  "x-auditable": true
}
object tls-certificates-and-hostnames_hostname_aop_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/tls-certificates-and-hostnames_hostname-authenticated-origin-pull"
          }
        }
      }
    }
  ]
}
object tls-certificates-and-hostnames_hostname_aop_single_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/tls-certificates-and-hostnames_hostname_certid_object"
        }
      }
    }
  ]
}
object tls-certificates-and-hostnames_hostname_assoc_object
{
  "type": "object",
  "properties": {
    "status": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_hostname-authenticated-origin-pull_components-schemas-status"
    },
    "cert_id": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_cert_id"
    },
    "enabled": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_hostname-authenticated-origin-pull_components-schemas-enabled"
    },
    "hostname": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_schemas-hostname"
    },
    "created_at": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_components-schemas-created_at"
    },
    "updated_at": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_components-schemas-updated_at"
    }
  }
}
object tls-certificates-and-hostnames_hostname_assoc_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/tls-certificates-and-hostnames_hostname_assoc_object"
          }
        },
        "result_info": {
          "type": "object",
          "properties": {
            "page": {
              "type": "number",
              "example": 1,
              "description": "Current page within paginated list of results."
            },
            "count": {
              "type": "number",
              "example": 1,
              "description": "Total results returned based on your search parameters."
            },
            "per_page": {
              "type": "number",
              "example": 50,
              "description": "Number of results per page of results."
            },
            "total_count": {
              "type": "number",
              "example": 1,
              "description": "Total results available without any search parameters."
            },
            "total_pages": {
              "type": "number",
              "example": 1,
              "description": "Total pages available of results."
            }
          }
        }
      }
    }
  ]
}
object tls-certificates-and-hostnames_hostname_association
{
  "type": "object",
  "properties": {
    "hostnames": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_schemas-hostnames"
    },
    "mtls_certificate_id": {
      "type": "string",
      "maxLength": 36,
      "minLength": 36,
      "description": "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.",
      "x-auditable": true
    }
  }
}
object tls-certificates-and-hostnames_hostname_associations_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "hostnames": {
              "$ref": "#/components/schemas/tls-certificates-and-hostnames_schemas-hostnames"
            }
          }
        }
      }
    }
  ]
}
object tls-certificates-and-hostnames_hostname_certid_input
{
  "type": "object",
  "properties": {
    "cert_id": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_cert_id"
    },
    "enabled": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_hostname-authenticated-origin-pull_components-schemas-enabled"
    },
    "hostname": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_schemas-hostname"
    }
  }
}
object tls-certificates-and-hostnames_hostname_certid_object
{
  "properties": {
    "issuer": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_issuer"
    },
    "status": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_hostname-authenticated-origin-pull_components-schemas-status"
    },
    "cert_id": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_identifier"
    },
    "enabled": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_hostname-authenticated-origin-pull_components-schemas-enabled"
    },
    "hostname": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_schemas-hostname"
    },
    "signature": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_signature"
    },
    "created_at": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_components-schemas-created_at"
    },
    "expires_on": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_hostname-authenticated-origin-pull_components-schemas-expires_on"
    },
    "updated_at": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_components-schemas-updated_at"
    },
    "cert_status": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_hostname-authenticated-origin-pull_components-schemas-status"
    },
    "certificate": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_hostname-authenticated-origin-pull_components-schemas-certificate"
    },
    "serial_number": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_serial_number"
    },
    "cert_updated_at": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_components-schemas-updated_at"
    },
    "cert_uploaded_on": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_components-schemas-uploaded_on"
    }
  }
}
string tls-certificates-and-hostnames_hostname_post
{
  "type": "string",
  "example": "app.example.com",
  "maxLength": 255,
  "description": "The custom hostname that will point to your hostname via CNAME.",
  "x-auditable": true
}
array tls-certificates-and-hostnames_hostnames
{
  "type": "array",
  "items": {
    "type": "string",
    "minLength": 1,
    "x-auditable": true
  },
  "example": [
    "example.com",
    "*.example.com",
    "sub.example.com"
  ],
  "maxItems": 100,
  "minItems": 1,
  "description": "Array of hostnames or wildcard names bound to the certificate.\nHostnames 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."
}
array tls-certificates-and-hostnames_hosts
{
  "type": "array",
  "items": {
    "type": "string",
    "example": "example.com",
    "readOnly": true,
    "maxLength": 253,
    "description": "The valid hosts for the certificates.",
    "x-auditable": true
  }
}
string tls-certificates-and-hostnames_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Identifier.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_issued_on
{
  "type": "string",
  "example": "2023-02-23T23:18:00Z",
  "readOnly": true,
  "description": "Date that the Client Certificate was issued by the Certificate Authority",
  "x-auditable": true
}
string tls-certificates-and-hostnames_issuer
{
  "type": "string",
  "example": "GlobalSign",
  "readOnly": true,
  "description": "The certificate authority that issued the certificate.",
  "x-auditable": true
}
object tls-certificates-and-hostnames_keyless-certificate
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_base"
    }
  ]
}
string tls-certificates-and-hostnames_keyless_private_ip
{
  "type": "string",
  "example": "10.0.0.1",
  "description": "Private IP of the Key Server Host",
  "x-auditable": true
}
object tls-certificates-and-hostnames_keyless_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/tls-certificates-and-hostnames_keyless-certificate"
          }
        }
      }
    }
  ]
}
object tls-certificates-and-hostnames_keyless_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "allOf": [
            {
              "$ref": "#/components/schemas/tls-certificates-and-hostnames_base"
            }
          ]
        }
      }
    }
  ]
}
object tls-certificates-and-hostnames_keyless_response_single_id
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "id": {
              "$ref": "#/components/schemas/tls-certificates-and-hostnames_identifier"
            }
          }
        }
      }
    }
  ]
}
object tls-certificates-and-hostnames_keyless_tunnel
{
  "type": "object",
  "required": [
    "private_ip",
    "vnet_id"
  ],
  "properties": {
    "vnet_id": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_keyless_vnet_id"
    },
    "private_ip": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_keyless_private_ip"
    }
  },
  "description": "Configuration for using Keyless SSL through a Cloudflare Tunnel"
}
string tls-certificates-and-hostnames_keyless_vnet_id
{
  "type": "string",
  "example": "7365377a-85a4-4390-9480-531ef7dc7a3c",
  "description": "Cloudflare Tunnel Virtual Network ID",
  "x-auditable": true
}
string tls-certificates-and-hostnames_location
{
  "type": "string",
  "example": "Somewhere",
  "readOnly": true,
  "description": "Location, provided by the CSR",
  "x-auditable": true
}
array tls-certificates-and-hostnames_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string tls-certificates-and-hostnames_modified_on
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-01T05:20:00Z",
  "readOnly": true,
  "description": "When the certificate was last modified.",
  "x-auditable": true
}
object tls-certificates-and-hostnames_mtls-management_components-schemas-certificate_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/tls-certificates-and-hostnames_components-schemas-certificateObject"
          }
        }
      }
    },
    {
      "properties": {
        "result_info": {
          "type": "object",
          "properties": {
            "page": {
              "example": 1
            },
            "count": {
              "example": 1
            },
            "per_page": {
              "example": 50
            },
            "total_count": {
              "example": 1
            },
            "total_pages": {
              "type": "number",
              "example": 1,
              "description": "Total pages available of results"
            }
          }
        }
      }
    }
  ]
}
object tls-certificates-and-hostnames_mtls-management_components-schemas-certificate_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "allOf": [
            {
              "$ref": "#/components/schemas/tls-certificates-and-hostnames_components-schemas-certificateObject"
            }
          ]
        }
      }
    }
  ]
}
string tls-certificates-and-hostnames_mtls-management_components-schemas-status
{
  "type": "string",
  "example": "pending_deployment",
  "description": "Certificate deployment status for the given service.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_mtls-management_components-schemas-updated_at
{
  "type": "string",
  "format": "date-time",
  "example": "2022-11-22T17:32:30.467938Z",
  "description": "This is the time the certificate was updated.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_mtls-management_components-schemas-uploaded_on
{
  "type": "string",
  "format": "date-time",
  "example": "2022-11-22T17:32:30.467938Z",
  "description": "This is the time the certificate was uploaded.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_name
{
  "type": "string",
  "example": "example.com Keyless SSL",
  "readOnly": true,
  "maxLength": 180,
  "description": "The keyless SSL name.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_name_write
{
  "type": "string",
  "example": "example.com Keyless SSL",
  "maxLength": 180,
  "description": "The keyless SSL name.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_organization
{
  "type": "string",
  "example": "Organization",
  "readOnly": true,
  "description": "Organization, provided by the CSR",
  "x-auditable": true
}
string tls-certificates-and-hostnames_organizational_unit
{
  "type": "string",
  "example": "Organizational Unit",
  "readOnly": true,
  "description": "Organizational Unit, provided by the CSR",
  "x-auditable": true
}
string tls-certificates-and-hostnames_origin
{
  "type": "string",
  "example": "fallback.example.com",
  "maxLength": 255,
  "description": "Your origin hostname that requests to your custom hostnames will be sent to.",
  "x-auditable": true
}
object tls-certificates-and-hostnames_ownership_verification
{
  "type": "object",
  "oneOf": [
    {
      "type": "object",
      "properties": {
        "name": {
          "type": "string",
          "example": "_cf-custom-hostname.app.example.com",
          "description": "DNS Name for record.",
          "x-auditable": true
        },
        "type": {
          "enum": [
            "txt"
          ],
          "type": "string",
          "example": "txt",
          "description": "DNS Record type.",
          "x-auditable": true
        },
        "value": {
          "type": "string",
          "example": "5cc07c04-ea62-4a5a-95f0-419334a875a4",
          "description": "Content for the record."
        }
      }
    }
  ],
  "description": "This is a record which can be placed to activate a hostname."
}
object tls-certificates-and-hostnames_ownership_verification_http
{
  "type": "object",
  "oneOf": [
    {
      "type": "object",
      "properties": {
        "http_url": {
          "type": "string",
          "example": "http://custom.test.com/.well-known/cf-custom-hostname-challenge/0d89c70d-ad9f-4843-b99f-6cc0252067e9",
          "description": "The HTTP URL that will be checked during custom hostname verification and where the customer should host the token."
        },
        "http_body": {
          "type": "string",
          "example": "5cc07c04-ea62-4a5a-95f0-419334a875a4",
          "description": "Token to be served."
        }
      }
    }
  ],
  "description": "This presents the token to be served by the given http url to activate a hostname."
}
object tls-certificates-and-hostnames_per_hostname_settings_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "allOf": [
            {
              "$ref": "#/components/schemas/tls-certificates-and-hostnames_settingObject"
            }
          ]
        }
      }
    }
  ]
}
object tls-certificates-and-hostnames_per_hostname_settings_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "properties": {
              "value": {
                "$ref": "#/components/schemas/tls-certificates-and-hostnames_value"
              },
              "status": {
                "$ref": "#/components/schemas/tls-certificates-and-hostnames_hostname-tls-settings_components-schemas-status"
              },
              "hostname": {
                "$ref": "#/components/schemas/tls-certificates-and-hostnames_components-schemas-hostname"
              },
              "created_at": {
                "$ref": "#/components/schemas/tls-certificates-and-hostnames_hostname-tls-settings_components-schemas-created_at"
              },
              "updated_at": {
                "$ref": "#/components/schemas/tls-certificates-and-hostnames_hostname-tls-settings_components-schemas-updated_at"
              }
            }
          }
        }
      }
    },
    {
      "properties": {
        "result_info": {
          "type": "object",
          "properties": {
            "page": {
              "example": 1
            },
            "count": {
              "example": 1
            },
            "per_page": {
              "example": 50
            },
            "total_count": {
              "example": 1
            },
            "total_pages": {
              "type": "number",
              "example": 1,
              "description": "Total pages available of results"
            }
          }
        }
      }
    }
  ]
}
object tls-certificates-and-hostnames_per_hostname_settings_response_delete
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-single"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "allOf": [
            {
              "$ref": "#/components/schemas/tls-certificates-and-hostnames_settingObjectDelete"
            }
          ]
        }
      }
    }
  ]
}
string tls-certificates-and-hostnames_policy
{
  "type": "string",
  "example": "(country: US) or (region: EU)",
  "description": "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.\nNote: The API accepts this field as either \"policy\" or \"policy_restrictions\" in requests. Responses return this field as \"policy_restrictions\".",
  "x-auditable": true
}
string tls-certificates-and-hostnames_policy_restrictions
{
  "type": "string",
  "example": "(country: US) or (region: EU)",
  "readOnly": true,
  "description": "The policy restrictions returned by the API. This field is returned in responses\nwhen a policy has been set. The API accepts the \"policy\" field in requests but\nreturns this field as \"policy_restrictions\" in responses.\n\nSpecifies the region(s) where your private key can be held locally for optimal\nTLS performance. Format is a boolean expression, for example:\n\"(country: US) or (region: EU)\"\n"
}
number tls-certificates-and-hostnames_port
{
  "type": "number",
  "default": 24008,
  "example": 24008,
  "maxLength": 65535,
  "description": "The keyless SSL port used to communicate between Cloudflare and the client's Keyless SSL server.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_primary
{
  "type": "string",
  "example": "7e7b8deba8538af625850b7b2530034c",
  "description": "Identifier of the primary certificate in a pack.",
  "x-auditable": true
}
number tls-certificates-and-hostnames_priority
{
  "type": "number",
  "default": 0,
  "example": 1,
  "description": "The order/priority in which the certificate will be used in a request. The higher priority will break ties across overlapping 'legacy_custom' certificates, but 'legacy_custom' certificates will always supercede 'sni_custom' certificates.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_private_key
{
  "type": "string",
  "example": "-----BEGIN RSA PRIVATE KEY-----\nMIIEowIBAAKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmG\ndtcGbg/1CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKn\nabIRuGvBKwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpid\ntnKX/a+50GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+py\nFxIXjbEIdZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pE\newooaeO2izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABAoIBACbhTYXBZYKmYPCb\nHBR1IBlCQA2nLGf0qRuJNJZg5iEzXows/6tc8YymZkQE7nolapWsQ+upk2y5Xdp/\naxiuprIs9JzkYK8Ox0r+dlwCG1kSW+UAbX0bQ/qUqlsTvU6muVuMP8vZYHxJ3wmb\n+ufRBKztPTQ/rYWaYQcgC0RWI20HTFBMxlTAyNxYNWzX7RKFkGVVyB9RsAtmcc8g\n+j4OdosbfNoJPS0HeIfNpAznDfHKdxDk2Yc1tV6RHBrC1ynyLE9+TaflIAdo2MVv\nKLMLq51GqYKtgJFIlBRPQqKoyXdz3fGvXrTkf/WY9QNq0J1Vk5ERePZ54mN8iZB7\n9lwy/AkCgYEA6FXzosxswaJ2wQLeoYc7ceaweX/SwTvxHgXzRyJIIT0eJWgx13Wo\n/WA3Iziimsjf6qE+SI/8laxPp2A86VMaIt3Z3mJN/CqSVGw8LK2AQst+OwdPyDMu\niacE8lj/IFGC8mwNUAb9CzGU3JpU4PxxGFjS/eMtGeRXCWkK4NE+G08CgYEA1Kp9\nN2JrVlqUz+gAX+LPmE9OEMAS9WQSQsfCHGogIFDGGcNf7+uwBM7GAaSJIP01zcoe\nVAgWdzXCv3FLhsaZoJ6RyLOLay5phbu1iaTr4UNYm5WtYTzMzqh8l1+MFFDl9xDB\nvULuCIIrglM5MeS/qnSg1uMoH2oVPj9TVst/ir8CgYEAxrI7Ws9Zc4Bt70N1As+U\nlySjaEVZCMkqvHJ6TCuVZFfQoE0r0whdLdRLU2PsLFP+q7qaeZQqgBaNSKeVcDYR\n9B+nY/jOmQoPewPVsp/vQTCnE/R81spu0mp0YI6cIheT1Z9zAy322svcc43JaWB7\nmEbeqyLOP4Z4qSOcmghZBSECgYACvR9Xs0DGn+wCsW4vze/2ei77MD4OQvepPIFX\ndFZtlBy5ADcgE9z0cuVB6CiL8DbdK5kwY9pGNr8HUCI03iHkW6Zs+0L0YmihfEVe\nPG19PSzK9CaDdhD9KFZSbLyVFmWfxOt50H7YRTTiPMgjyFpfi5j2q348yVT0tEQS\nfhRqaQKBgAcWPokmJ7EbYQGeMbS7HC8eWO/RyamlnSffdCdSc7ue3zdVJxpAkQ8W\nqu80pEIF6raIQfAf8MXiiZ7auFOSnHQTXUbhCpvDLKi0Mwq3G8Pl07l+2s6dQG6T\nlv6XTQaMyf6n1yjzL+fzDrH3qXMxHMO/b13EePXpDMpY7HQpoLDi\n-----END RSA PRIVATE KEY-----\n",
  "description": "The zone's private key.",
  "x-sensitive": true
}
object tls-certificates-and-hostnames_quota
{
  "type": "object",
  "properties": {
    "used": {
      "type": "integer",
      "description": "Quantity Used.",
      "x-auditable": true
    },
    "allocated": {
      "type": "integer",
      "description": "Quantity Allocated.",
      "x-auditable": true
    }
  }
}
string tls-certificates-and-hostnames_request_type
{
  "enum": [
    "origin-rsa",
    "origin-ecc",
    "keyless-certificate"
  ],
  "type": "string",
  "example": "origin-rsa",
  "description": "Signature type desired on certificate (\"origin-rsa\" (rsa), \"origin-ecc\" (ecdsa), or \"keyless-certificate\" (for Keyless SSL servers).",
  "x-auditable": true
}
number tls-certificates-and-hostnames_requested_validity
{
  "enum": [
    7,
    30,
    90,
    365,
    730,
    1095,
    5475
  ],
  "type": "number",
  "default": 5475,
  "example": 5475,
  "description": "The number of days for which the certificate should be valid.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_revoked_at
{
  "type": "string",
  "format": "date-time",
  "example": "2024-09-06T18:43:47.928893Z",
  "readOnly": true,
  "description": "When the certificate was revoked.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_schemas-certificate
{
  "type": "string",
  "example": "-----BEGIN CERTIFICATE-----\nMIIDtTCCAp2gAwIBAgIJAM15n7fdxhRtMA0GCSqGSIb3DQEBBQUAMEUxCzAJBgNV\nBAYTAlVTMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBX\naWRnaXRzIFB0eSBMdGQwHhcNMTQwMzExMTkyMTU5WhcNMTQwNDEwMTkyMTU5WjBF\nMQswCQYDVQQGEwJVUzETMBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50\nZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB\nCgKCAQEAvq3sKsHpeduJHimOK+fvQdKsI8z8A05MZyyLp2/R/GE8FjNv+hkVY1WQ\nLIyTNNQH7CJecE1nbTfo8Y56S7x/rhxC6/DJ8MIulapFPnorq46KU6yRxiM0MQ3N\nnTJHlHA2ozZta6YBBfVfhHWl1F0IfNbXCLKvGwWWMbCx43OfW6KTkbRnE6gFWKuO\nfSO5h2u5TaWVuSIzBvYs7Vza6m+gtYAvKAJV2nSZ+eSEFPDo29corOy8+huEOUL8\n5FAw4BFPsr1TlrlGPFitduQUHGrSL7skk1ESGza0to3bOtrodKei2s9bk5MXm7lZ\nqI+WZJX4Zu9+mzZhc9pCVi8r/qlXuQIDAQABo4GnMIGkMB0GA1UdDgQWBBRvavf+\nsWM4IwKiH9X9w1vl6nUVRDB1BgNVHSMEbjBsgBRvavf+sWM4IwKiH9X9w1vl6nUV\nRKFJpEcwRTELMAkGA1UEBhMCVVMxEzARBgNVBAgTClNvbWUtU3RhdGUxITAfBgNV\nBAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZIIJAM15n7fdxhRtMAwGA1UdEwQF\nMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBABY2ZzBaW0dMsAAT7tPJzrVWVzQx6KU4\nUEBLudIlWPlkAwTnINCWR/8eNjCCmGA4heUdHmazdpPa8RzwOmc0NT1NQqzSyktt\nvTqb4iHD7+8f9MqJ9/FssCfTtqr/Qst/hGH4Wmdf1EJ/6FqYAAb5iRlPgshFZxU8\nuXtA8hWn6fK6eISD9HBdcAFToUvKNZ1BIDPvh9f95Ine8ar6yGd56TUNrHR8eHBs\nESxz5ddVR/oWRysNJ+aGAyYqHS8S/ttmC7r4XCAHqXptkHPCGRqkAhsterYhd4I8\n/cBzejUobNCjjHFbtkAL/SjxZOLW+pNkZwfeYdM8iPkD54Uua1v2tdw=\n-----END CERTIFICATE-----",
  "description": "The zone's SSL certificate or SSL certificate and intermediate(s)."
}
object tls-certificates-and-hostnames_schemas-certificateObject
{
  "properties": {
    "id": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_identifier"
    },
    "issuer": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_issuer"
    },
    "status": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_hostname-authenticated-origin-pull_components-schemas-status"
    },
    "signature": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_signature"
    },
    "expires_on": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_hostname-authenticated-origin-pull_components-schemas-expires_on"
    },
    "certificate": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_hostname-authenticated-origin-pull_components-schemas-certificate"
    },
    "uploaded_on": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_components-schemas-uploaded_on"
    },
    "serial_number": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_serial_number"
    }
  }
}
string tls-certificates-and-hostnames_schemas-certificate_authority
{
  "enum": [
    "google",
    "lets_encrypt",
    "ssl_com"
  ],
  "type": "string",
  "example": "lets_encrypt",
  "description": "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)",
  "x-auditable": true
}
object tls-certificates-and-hostnames_schemas-certificate_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/tls-certificates-and-hostnames_certificates"
          }
        }
      }
    }
  ]
}
object tls-certificates-and-hostnames_schemas-certificate_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/tls-certificates-and-hostnames_certificates"
        }
      }
    }
  ]
}
string tls-certificates-and-hostnames_schemas-certificates
{
  "type": "string",
  "example": "-----BEGIN CERTIFICATE-----\nMIIDmDCCAoCgAwIBAgIUKTOAZNjcXVZRj4oQt0SHsl1c1vMwDQYJKoZIhvcNAQEL\nBQAwUTELMAkGA1UEBhMCVVMxFjAUBgNVBAgMDVNhbiBGcmFuY2lzY28xEzARBgNV\nBAcMCkNhbGlmb3JuaWExFTATBgNVBAoMDEV4YW1wbGUgSW5jLjAgFw0yMjExMjIx\nNjU5NDdaGA8yMTIyMTAyOTE2NTk0N1owUTELMAkGA1UEBhMCVVMxFjAUBgNVBAgM\nDVNhbiBGcmFuY2lzY28xEzARBgNVBAcMCkNhbGlmb3JuaWExFTATBgNVBAoMDEV4\nYW1wbGUgSW5jLjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMRcORwg\nJFTdcG/2GKI+cFYiOBNDKjCZUXEOvXWY42BkH9wxiMT869CO+enA1w5pIrXow6kC\nM1sQspHHaVmJUlotEMJxyoLFfA/8Kt1EKFyobOjuZs2SwyVyJ2sStvQuUQEosULZ\nCNGZEqoH5g6zhMPxaxm7ZLrrsDZ9maNGVqo7EWLWHrZ57Q/5MtTrbxQL+eXjUmJ9\nK3kS+3uEwMdqR6Z3BluU1ivanpPc1CN2GNhdO0/hSY4YkGEnuLsqJyDd3cIiB1Mx\nuCBJ4ZaqOd2viV1WcP3oU3dxVPm4MWyfYIldMWB14FahScxLhWdRnM9YZ/i9IFcL\nypXsuz7DjrJPtPUCAwEAAaNmMGQwHQYDVR0OBBYEFP5JzLUawNF+c3AXsYTEWHh7\nz2czMB8GA1UdIwQYMBaAFP5JzLUawNF+c3AXsYTEWHh7z2czMA4GA1UdDwEB/wQE\nAwIBBjASBgNVHRMBAf8ECDAGAQH/AgEBMA0GCSqGSIb3DQEBCwUAA4IBAQBc+Be7\nNDhpE09y7hLPZGRPl1cSKBw4RI0XIv6rlbSTFs5EebpTGjhx/whNxwEZhB9HZ711\n1Oa1YlT8xkI9DshB78mjAHCKBAJ76moK8tkG0aqdYpJ4ZcJTVBB7l98Rvgc7zfTi\ni7WemTy72deBbSeiEtXavm4EF0mWjHhQ5Nxpnp00Bqn5g1x8CyTDypgmugnep+xG\n+iFzNmTdsz7WI9T/7kDMXqB7M/FPWBORyS98OJqNDswCLF8bIZYwUBEe+bRHFomo\nShMzaC3tvim7WCb16noDkSTMlfKO4pnvKhpcVdSgwcruATV7y+W+Lvmz2OT/Gui4\nJhqeoTewsxndhDDE\n-----END CERTIFICATE-----",
  "description": "The uploaded root CA certificate."
}
string tls-certificates-and-hostnames_schemas-created_at
{
  "type": "string",
  "format": "date-time",
  "example": "2019-10-28T18:11:23.37411Z",
  "description": "This is the time the fallback origin was created.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_schemas-csr
{
  "type": "string",
  "example": "-----BEGIN CERTIFICATE REQUEST-----\nMIICY....\n-----END CERTIFICATE REQUEST-----",
  "description": "The Certificate Signing Request (CSR). Must be newline-encoded.",
  "x-auditable": true
}
boolean tls-certificates-and-hostnames_schemas-enabled
{
  "type": "boolean",
  "example": true,
  "description": "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.\n\nBy 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.\n\n* HSTS\n* Always Use HTTPS\n* Opportunistic Encryption\n* Onion Routing\n* Any Page Rules redirecting traffic to HTTPS\n\nSimilarly, 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.\n\nIf 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.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_schemas-expires_on
{
  "type": "string",
  "format": "date-time",
  "example": "2122-10-29T16:59:47Z",
  "readOnly": true,
  "description": "When the certificate expires.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_schemas-hostname
{
  "type": "string",
  "example": "app.example.com",
  "maxLength": 255,
  "description": "The hostname on the origin for which the client certificate uploaded will be used.",
  "x-auditable": true
}
array tls-certificates-and-hostnames_schemas-hostnames
{
  "type": "array",
  "items": {
    "type": "string",
    "example": "api.example.com",
    "x-auditable": true
  }
}
array tls-certificates-and-hostnames_schemas-hosts
{
  "type": "array",
  "items": {
    "type": "string",
    "x-auditable": true
  },
  "example": [
    "example.com",
    "*.example.com",
    "www.example.com"
  ],
  "description": "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.",
  "x-stainless-collection-type": "set",
  "x-stainless-terraform-configurability": "computed_optional"
}
string tls-certificates-and-hostnames_schemas-identifier
{
  "type": "string",
  "example": "4d2844d2ce78891c34d0b6c0535a291e",
  "readOnly": true,
  "maxLength": 32,
  "description": "Keyless certificate identifier tag.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_schemas-issuer
{
  "type": "string",
  "example": "O=Example Inc.,L=California,ST=San Francisco,C=US",
  "readOnly": true,
  "description": "The certificate authority that issued the certificate.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_schemas-name
{
  "type": "string",
  "example": "example_ca_cert",
  "description": "Optional unique name for the certificate. Only used for human readability.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_schemas-private_key
{
  "type": "string",
  "example": "-----BEGIN RSA PRIVATE KEY-----\nMIIEowIBAAKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmG\ndtcGbg/1CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKn\nabIRuGvBKwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpid\ntnKX/a+50GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+py\nFxIXjbEIdZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pE\newooaeO2izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABAoIBACbhTYXBZYKmYPCb\nHBR1IBlCQA2nLGf0qRuJNJZg5iEzXows/6tc8YymZkQE7nolapWsQ+upk2y5Xdp/\naxiuprIs9JzkYK8Ox0r+dlwCG1kSW+UAbX0bQ/qUqlsTvU6muVuMP8vZYHxJ3wmb\n+ufRBKztPTQ/rYWaYQcgC0RWI20HTFBMxlTAyNxYNWzX7RKFkGVVyB9RsAtmcc8g\n+j4OdosbfNoJPS0HeIfNpAznDfHKdxDk2Yc1tV6RHBrC1ynyLE9+TaflIAdo2MVv\nKLMLq51GqYKtgJFIlBRPQqKoyXdz3fGvXrTkf/WY9QNq0J1Vk5ERePZ54mN8iZB7\n9lwy/AkCgYEA6FXzosxswaJ2wQLeoYc7ceaweX/SwTvxHgXzRyJIIT0eJWgx13Wo\n/WA3Iziimsjf6qE+SI/8laxPp2A86VMaIt3Z3mJN/CqSVGw8LK2AQst+OwdPyDMu\niacE8lj/IFGC8mwNUAb9CzGU3JpU4PxxGFjS/eMtGeRXCWkK4NE+G08CgYEA1Kp9\nN2JrVlqUz+gAX+LPmE9OEMAS9WQSQsfCHGogIFDGGcNf7+uwBM7GAaSJIP01zcoe\nVAgWdzXCv3FLhsaZoJ6RyLOLay5phbu1iaTr4UNYm5WtYTzMzqh8l1+MFFDl9xDB\nvULuCIIrglM5MeS/qnSg1uMoH2oVPj9TVst/ir8CgYEAxrI7Ws9Zc4Bt70N1As+U\nlySjaEVZCMkqvHJ6TCuVZFfQoE0r0whdLdRLU2PsLFP+q7qaeZQqgBaNSKeVcDYR\n9B+nY/jOmQoPewPVsp/vQTCnE/R81spu0mp0YI6cIheT1Z9zAy322svcc43JaWB7\nmEbeqyLOP4Z4qSOcmghZBSECgYACvR9Xs0DGn+wCsW4vze/2ei77MD4OQvepPIFX\ndFZtlBy5ADcgE9z0cuVB6CiL8DbdK5kwY9pGNr8HUCI03iHkW6Zs+0L0YmihfEVe\nPG19PSzK9CaDdhD9KFZSbLyVFmWfxOt50H7YRTTiPMgjyFpfi5j2q348yVT0tEQS\nfhRqaQKBgAcWPokmJ7EbYQGeMbS7HC8eWO/RyamlnSffdCdSc7ue3zdVJxpAkQ8W\nqu80pEIF6raIQfAf8MXiiZ7auFOSnHQTXUbhCpvDLKi0Mwq3G8Pl07l+2s6dQG6T\nlv6XTQaMyf6n1yjzL+fzDrH3qXMxHMO/b13EePXpDMpY7HQpoLDi\n-----END RSA PRIVATE KEY-----\n",
  "description": "The hostname certificate's private key.",
  "x-sensitive": true
}
string tls-certificates-and-hostnames_schemas-serial_number
{
  "type": "string",
  "example": "235217144297995885180570755458463043449861756659",
  "readOnly": true,
  "description": "The certificate serial number.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_schemas-signature
{
  "enum": [
    "ECDSAWithSHA256",
    "SHA1WithRSA",
    "SHA256WithRSA"
  ],
  "type": "string",
  "description": "Certificate's signature algorithm.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_schemas-status
{
  "enum": [
    "active",
    "deleted"
  ],
  "type": "string",
  "example": "active",
  "readOnly": true,
  "description": "Status of the Keyless SSL.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_schemas-type
{
  "enum": [
    "mh_custom",
    "managed_hostname",
    "sni_custom",
    "universal",
    "advanced",
    "total_tls",
    "keyless",
    "legacy_custom"
  ],
  "type": "string",
  "example": "universal",
  "description": "Type of certificate pack.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_schemas-updated_at
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-01T05:20:00Z",
  "readOnly": true,
  "description": "When the certificate was last modified.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_schemas-uploaded_on
{
  "type": "string",
  "format": "date-time",
  "example": "2019-10-28T18:11:23.37411Z",
  "description": "This is the time the certificate was uploaded.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_schemas-validation_method
{
  "enum": [
    "http",
    "cname",
    "txt"
  ],
  "type": "string",
  "example": "txt",
  "description": "Validation method in use for a certificate pack order.",
  "x-auditable": true
}
integer tls-certificates-and-hostnames_schemas-validity_days
{
  "type": "integer",
  "example": 3650,
  "description": "The number of days the Client Certificate will be valid after the issued_on date",
  "x-auditable": true
}
string tls-certificates-and-hostnames_serial_number
{
  "type": "string",
  "example": "6743787633689793699141714808227354901",
  "description": "The serial number on the uploaded certificate.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_service
{
  "type": "string",
  "example": "gateway",
  "description": "The service using the certificate.",
  "x-auditable": true
}
object tls-certificates-and-hostnames_settingObject
{
  "properties": {
    "value": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_value"
    },
    "status": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_hostname-tls-settings_components-schemas-status"
    },
    "hostname": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_components-schemas-hostname"
    },
    "created_at": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_hostname-tls-settings_components-schemas-created_at"
    },
    "updated_at": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_hostname-tls-settings_components-schemas-updated_at"
    }
  }
}
object tls-certificates-and-hostnames_settingObjectDelete
{
  "properties": {
    "value": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_value"
    },
    "status": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_hostname-tls-settings_components-schemas-status"
    },
    "hostname": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_components-schemas-hostname"
    },
    "created_at": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_hostname-tls-settings_components-schemas-created_at"
    },
    "updated_at": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_hostname-tls-settings_components-schemas-updated_at"
    }
  }
}
string tls-certificates-and-hostnames_setting_id
{
  "enum": [
    "ciphers",
    "min_tls_version",
    "http2"
  ],
  "type": "string",
  "description": "The TLS Setting name. The value type depends on the setting:\n- `ciphers`: value is an array of cipher suite strings (e.g., `[\"ECDHE-RSA-AES128-GCM-SHA256\", \"AES128-GCM-SHA256\"]`)\n- `min_tls_version`: value is a TLS version string (`\"1.0\"`, `\"1.1\"`, `\"1.2\"`, or `\"1.3\"`)\n- `http2`: value is `\"on\"` or `\"off\"`",
  "x-auditable": true
}
string tls-certificates-and-hostnames_signature
{
  "type": "string",
  "example": "SHA256WithRSA",
  "readOnly": true,
  "description": "The type of hash used for the certificate.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_ski
{
  "type": "string",
  "example": "8e375af1389a069a0f921f8cc8e1eb12d784b949",
  "readOnly": true,
  "description": "Subject Key Identifier",
  "x-auditable": true
}
object tls-certificates-and-hostnames_ssl
{
  "type": "object",
  "oneOf": [
    {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "example": "0d89c70d-ad9f-4843-b99f-6cc0252067e9",
          "maxLength": 36,
          "minLength": 36,
          "description": "Custom hostname SSL identifier tag.",
          "x-auditable": true
        },
        "type": {
          "enum": [
            "dv"
          ],
          "type": "string",
          "example": "dv",
          "description": "Level of validation to be used for this hostname. Domain validation (dv) must be used.",
          "x-auditable": true
        },
        "hosts": {
          "type": "array",
          "items": {
            "type": "string",
            "x-auditable": true
          },
          "example": [
            "app.example.com",
            "*.app.example.com"
          ],
          "description": "A list of Hostnames on a custom uploaded certificate."
        },
        "issuer": {
          "type": "string",
          "example": "DigiCertInc",
          "description": "The issuer on a custom uploaded certificate.",
          "x-auditable": true
        },
        "method": {
          "enum": [
            "http",
            "txt",
            "email"
          ],
          "type": "string",
          "example": "txt",
          "description": "Domain control validation (DCV) method used for this hostname.",
          "x-auditable": true
        },
        "status": {
          "enum": [
            "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"
          ],
          "type": "string",
          "example": "pending_validation",
          "readOnly": true,
          "description": "Status of the hostname's SSL certificates.",
          "x-auditable": true
        },
        "settings": {
          "$ref": "#/components/schemas/tls-certificates-and-hostnames_sslsettings"
        },
        "wildcard": {
          "type": "boolean",
          "example": false,
          "description": "Indicates whether the certificate covers a wildcard.",
          "x-auditable": true
        },
        "signature": {
          "type": "string",
          "example": "SHA256WithRSA",
          "description": "The signature on a custom uploaded certificate.",
          "x-auditable": true
        },
        "custom_key": {
          "type": "string",
          "example": "-----BEGIN RSA PRIVATE KEY-----\nMIIEowIBAAKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmG\ndtcGbg/1CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKn\nabIRuGvBKwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpid\ntnKX/a+50GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+py\nFxIXjbEIdZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pE\newooaeO2izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABAoIBACbhTYXBZYKmYPCb\nHBR1IBlCQA2nLGf0qRuJNJZg5iEzXows/6tc8YymZkQE7nolapWsQ+upk2y5Xdp/\naxiuprIs9JzkYK8Ox0r+dlwCG1kSW+UAbX0bQ/qUqlsTvU6muVuMP8vZYHxJ3wmb\n+ufRBKztPTQ/rYWaYQcgC0RWI20HTFBMxlTAyNxYNWzX7RKFkGVVyB9RsAtmcc8g\n+j4OdosbfNoJPS0HeIfNpAznDfHKdxDk2Yc1tV6RHBrC1ynyLE9+TaflIAdo2MVv\nKLMLq51GqYKtgJFIlBRPQqKoyXdz3fGvXrTkf/WY9QNq0J1Vk5ERePZ54mN8iZB7\n9lwy/AkCgYEA6FXzosxswaJ2wQLeoYc7ceaweX/SwTvxHgXzRyJIIT0eJWgx13Wo\n/WA3Iziimsjf6qE+SI/8laxPp2A86VMaIt3Z3mJN/CqSVGw8LK2AQst+OwdPyDMu\niacE8lj/IFGC8mwNUAb9CzGU3JpU4PxxGFjS/eMtGeRXCWkK4NE+G08CgYEA1Kp9\nN2JrVlqUz+gAX+LPmE9OEMAS9WQSQsfCHGogIFDGGcNf7+uwBM7GAaSJIP01zcoe\nVAgWdzXCv3FLhsaZoJ6RyLOLay5phbu1iaTr4UNYm5WtYTzMzqh8l1+MFFDl9xDB\nvULuCIIrglM5MeS/qnSg1uMoH2oVPj9TVst/ir8CgYEAxrI7Ws9Zc4Bt70N1As+U\nlySjaEVZCMkqvHJ6TCuVZFfQoE0r0whdLdRLU2PsLFP+q7qaeZQqgBaNSKeVcDYR\n9B+nY/jOmQoPewPVsp/vQTCnE/R81spu0mp0YI6cIheT1Z9zAy322svcc43JaWB7\nmEbeqyLOP4Z4qSOcmghZBSECgYACvR9Xs0DGn+wCsW4vze/2ei77MD4OQvepPIFX\ndFZtlBy5ADcgE9z0cuVB6CiL8DbdK5kwY9pGNr8HUCI03iHkW6Zs+0L0YmihfEVe\nPG19PSzK9CaDdhD9KFZSbLyVFmWfxOt50H7YRTTiPMgjyFpfi5j2q348yVT0tEQS\nfhRqaQKBgAcWPokmJ7EbYQGeMbS7HC8eWO/RyamlnSffdCdSc7ue3zdVJxpAkQ8W\nqu80pEIF6raIQfAf8MXiiZ7auFOSnHQTXUbhCpvDLKi0Mwq3G8Pl07l+2s6dQG6T\nlv6XTQaMyf6n1yjzL+fzDrH3qXMxHMO/b13EePXpDMpY7HQpoLDi\n-----END RSA PRIVATE KEY-----\n",
          "description": "The key for a custom uploaded certificate.",
          "x-sensitive": true
        },
        "expires_on": {
          "type": "string",
          "format": "date-time",
          "example": "2021-02-06T18:11:23.531995Z",
          "description": "The time the custom certificate expires on.",
          "x-auditable": true
        },
        "uploaded_on": {
          "type": "string",
          "format": "date-time",
          "example": "2020-02-06T18:11:23.531995Z",
          "description": "The time the custom certificate was uploaded.",
          "x-auditable": true
        },
        "bundle_method": {
          "enum": [
            "ubiquitous",
            "optimal",
            "force"
          ],
          "type": "string",
          "default": "ubiquitous",
          "example": "ubiquitous",
          "description": "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.",
          "x-auditable": true
        },
        "custom_csr_id": {
          "type": "string",
          "example": "7b163417-1d2b-4c84-a38a-2fb7a0cd7752",
          "description": "The identifier for the Custom CSR that was used.",
          "x-auditable": true
        },
        "serial_number": {
          "type": "string",
          "example": "6743787633689793699141714808227354901",
          "description": "The serial number on a custom uploaded certificate.",
          "x-auditable": true
        },
        "validation_errors": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "message": {
                "type": "string",
                "example": "SERVFAIL looking up CAA for app.example.com",
                "description": "A domain validation error.",
                "x-auditable": true
              }
            }
          },
          "description": "Domain validation errors that have been received by the certificate authority (CA)."
        },
        "custom_certificate": {
          "type": "string",
          "example": "-----BEGIN CERTIFICATE-----\nMIIFJDCCBAygAwIBAgIQD0ifmj/Yi5NP/2gdUySbfzANBgkqhkiG9w0BAQsFADBN\nMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMScwJQYDVQQDEx5E...SzSHfXp5lnu/3V08I72q1QNzOCgY1XeL4GKVcj4or6cT6tX6oJH7ePPmfrBfqI/O\nOeH8gMJ+FuwtXYEPa4hBf38M5eU5xWG7\n-----END CERTIFICATE-----\n",
          "description": "If a custom uploaded certificate is used."
        },
        "validation_records": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/tls-certificates-and-hostnames_validation_record"
          }
        },
        "certificate_authority": {
          "$ref": "#/components/schemas/tls-certificates-and-hostnames_certificate_authority"
        },
        "dcv_delegation_records": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/tls-certificates-and-hostnames_validation_record"
          },
          "readOnly": true,
          "description": "DCV Delegation records for domain validation."
        }
      }
    }
  ],
  "description": "SSL properties for the custom hostname."
}
object tls-certificates-and-hostnames_ssl_universal_settings_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/tls-certificates-and-hostnames_universal"
        }
      }
    }
  ]
}
object tls-certificates-and-hostnames_ssl_validation_method_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-single"
    },
    {
      "properties": {
        "result": {
          "properties": {
            "status": {
              "$ref": "#/components/schemas/tls-certificates-and-hostnames_validation_method_components-schemas-status"
            },
            "validation_method": {
              "$ref": "#/components/schemas/tls-certificates-and-hostnames_validation_method_definition"
            }
          }
        }
      }
    }
  ]
}
object tls-certificates-and-hostnames_ssl_verification_response_collection
{
  "allOf": [
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/tls-certificates-and-hostnames_verification"
          }
        }
      }
    }
  ]
}
object tls-certificates-and-hostnames_sslpost
{
  "type": "object",
  "oneOf": [
    {
      "type": "object",
      "properties": {
        "type": {
          "enum": [
            "dv"
          ],
          "type": "string",
          "example": "dv",
          "description": "Level of validation to be used for this hostname. Domain validation (dv) must be used.",
          "x-auditable": true
        },
        "method": {
          "enum": [
            "http",
            "txt",
            "email"
          ],
          "type": "string",
          "example": "http",
          "description": "Domain control validation (DCV) method used for this hostname.",
          "x-auditable": true
        },
        "settings": {
          "$ref": "#/components/schemas/tls-certificates-and-hostnames_sslsettings"
        },
        "wildcard": {
          "type": "boolean",
          "example": false,
          "description": "Indicates whether the certificate covers a wildcard.",
          "x-auditable": true
        },
        "custom_key": {
          "type": "string",
          "example": "-----BEGIN RSA PRIVATE KEY-----\nMIIEowIBAAKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmG\ndtcGbg/1CGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKn\nabIRuGvBKwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpid\ntnKX/a+50GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+py\nFxIXjbEIdZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pE\newooaeO2izNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABAoIBACbhTYXBZYKmYPCb\nHBR1IBlCQA2nLGf0qRuJNJZg5iEzXows/6tc8YymZkQE7nolapWsQ+upk2y5Xdp/\naxiuprIs9JzkYK8Ox0r+dlwCG1kSW+UAbX0bQ/qUqlsTvU6muVuMP8vZYHxJ3wmb\n+ufRBKztPTQ/rYWaYQcgC0RWI20HTFBMxlTAyNxYNWzX7RKFkGVVyB9RsAtmcc8g\n+j4OdosbfNoJPS0HeIfNpAznDfHKdxDk2Yc1tV6RHBrC1ynyLE9+TaflIAdo2MVv\nKLMLq51GqYKtgJFIlBRPQqKoyXdz3fGvXrTkf/WY9QNq0J1Vk5ERePZ54mN8iZB7\n9lwy/AkCgYEA6FXzosxswaJ2wQLeoYc7ceaweX/SwTvxHgXzRyJIIT0eJWgx13Wo\n/WA3Iziimsjf6qE+SI/8laxPp2A86VMaIt3Z3mJN/CqSVGw8LK2AQst+OwdPyDMu\niacE8lj/IFGC8mwNUAb9CzGU3JpU4PxxGFjS/eMtGeRXCWkK4NE+G08CgYEA1Kp9\nN2JrVlqUz+gAX+LPmE9OEMAS9WQSQsfCHGogIFDGGcNf7+uwBM7GAaSJIP01zcoe\nVAgWdzXCv3FLhsaZoJ6RyLOLay5phbu1iaTr4UNYm5WtYTzMzqh8l1+MFFDl9xDB\nvULuCIIrglM5MeS/qnSg1uMoH2oVPj9TVst/ir8CgYEAxrI7Ws9Zc4Bt70N1As+U\nlySjaEVZCMkqvHJ6TCuVZFfQoE0r0whdLdRLU2PsLFP+q7qaeZQqgBaNSKeVcDYR\n9B+nY/jOmQoPewPVsp/vQTCnE/R81spu0mp0YI6cIheT1Z9zAy322svcc43JaWB7\nmEbeqyLOP4Z4qSOcmghZBSECgYACvR9Xs0DGn+wCsW4vze/2ei77MD4OQvepPIFX\ndFZtlBy5ADcgE9z0cuVB6CiL8DbdK5kwY9pGNr8HUCI03iHkW6Zs+0L0YmihfEVe\nPG19PSzK9CaDdhD9KFZSbLyVFmWfxOt50H7YRTTiPMgjyFpfi5j2q348yVT0tEQS\nfhRqaQKBgAcWPokmJ7EbYQGeMbS7HC8eWO/RyamlnSffdCdSc7ue3zdVJxpAkQ8W\nqu80pEIF6raIQfAf8MXiiZ7auFOSnHQTXUbhCpvDLKi0Mwq3G8Pl07l+2s6dQG6T\nlv6XTQaMyf6n1yjzL+fzDrH3qXMxHMO/b13EePXpDMpY7HQpoLDi\n-----END RSA PRIVATE KEY-----\n",
          "description": "The key for a custom uploaded certificate.",
          "x-sensitive": true
        },
        "bundle_method": {
          "enum": [
            "ubiquitous",
            "optimal",
            "force"
          ],
          "type": "string",
          "default": "ubiquitous",
          "example": "ubiquitous",
          "description": "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.",
          "x-auditable": true
        },
        "custom_csr_id": {
          "type": "string",
          "example": "7b163417-1d2b-4c84-a38a-2fb7a0cd7752",
          "description": "The identifier for the Custom CSR that was used.",
          "x-auditable": true
        },
        "custom_cert_bundle": {
          "$ref": "#/components/schemas/tls-certificates-and-hostnames_custom_cert_bundle"
        },
        "custom_certificate": {
          "type": "string",
          "example": "-----BEGIN CERTIFICATE-----\nMIIFJDCCBAygAwIBAgIQD0ifmj/Yi5NP/2gdUySbfzANBgkqhkiG9w0BAQsFADBN\nMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMScwJQYDVQQDEx5E...SzSHfXp5lnu/3V08I72q1QNzOCgY1XeL4GKVcj4or6cT6tX6oJH7ePPmfrBfqI/O\nOeH8gMJ+FuwtXYEPa4hBf38M5eU5xWG7\n-----END CERTIFICATE-----\n",
          "description": "If a custom uploaded certificate is used.",
          "x-auditable": true
        },
        "cloudflare_branding": {
          "type": "boolean",
          "example": false,
          "description": "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",
          "x-auditable": true
        },
        "certificate_authority": {
          "$ref": "#/components/schemas/tls-certificates-and-hostnames_certificate_authority"
        }
      }
    }
  ],
  "description": "SSL properties used when creating the custom hostname."
}
object tls-certificates-and-hostnames_sslsettings
{
  "type": "object",
  "properties": {
    "http2": {
      "enum": [
        "on",
        "off"
      ],
      "type": "string",
      "example": "on",
      "description": "Whether or not HTTP2 is enabled.",
      "x-auditable": true
    },
    "ciphers": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "example": [
        "ECDHE-RSA-AES128-GCM-SHA256",
        "AES128-SHA"
      ],
      "description": "An allowlist of ciphers for TLS termination. These ciphers must be in the BoringSSL format.",
      "uniqueItems": true
    },
    "tls_1_3": {
      "enum": [
        "on",
        "off"
      ],
      "type": "string",
      "example": "on",
      "description": "Whether or not TLS 1.3 is enabled.",
      "x-auditable": true
    },
    "early_hints": {
      "enum": [
        "on",
        "off"
      ],
      "type": "string",
      "example": "on",
      "description": "Whether or not Early Hints is enabled.",
      "x-auditable": true
    },
    "min_tls_version": {
      "enum": [
        "1.0",
        "1.1",
        "1.2",
        "1.3"
      ],
      "type": "string",
      "example": "1.2",
      "description": "The minimum TLS version supported.",
      "x-auditable": true
    }
  },
  "description": "SSL specific settings."
}
string tls-certificates-and-hostnames_state
{
  "type": "string",
  "example": "CA",
  "readOnly": true,
  "description": "State, provided by the CSR",
  "x-auditable": true
}
string tls-certificates-and-hostnames_status
{
  "enum": [
    "active",
    "expired",
    "deleted",
    "pending",
    "initializing"
  ],
  "type": "string",
  "example": "active",
  "readOnly": true,
  "description": "Status of the zone's custom SSL.",
  "x-auditable": true
}
object tls-certificates-and-hostnames_total_tls_settings_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_api-response-single"
    },
    {
      "properties": {
        "result": {
          "properties": {
            "enabled": {
              "$ref": "#/components/schemas/tls-certificates-and-hostnames_components-schemas-enabled"
            },
            "validity_period": {
              "$ref": "#/components/schemas/tls-certificates-and-hostnames_validity_period"
            },
            "certificate_authority": {
              "$ref": "#/components/schemas/tls-certificates-and-hostnames_components-schemas-certificate_authority"
            }
          }
        }
      }
    }
  ]
}
string tls-certificates-and-hostnames_type
{
  "enum": [
    "legacy_custom",
    "sni_custom"
  ],
  "type": "string",
  "default": "legacy_custom",
  "example": "sni_custom",
  "description": "The type 'legacy_custom' enables support for legacy clients which do not include SNI in the TLS handshake.",
  "x-auditable": true
}
object tls-certificates-and-hostnames_universal
{
  "type": "object",
  "properties": {
    "enabled": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_schemas-enabled"
    }
  }
}
string tls-certificates-and-hostnames_updated_at
{
  "type": "string",
  "format": "date-time",
  "example": "2020-03-16T18:11:23.531995Z",
  "description": "This is the time the fallback origin was updated.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_uploaded_on
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-01T05:20:00Z",
  "readOnly": true,
  "description": "When the certificate was uploaded to Cloudflare.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_uuid
{
  "type": "string",
  "example": "abc123def456ghi7",
  "description": "The DCV Delegation unique identifier.",
  "x-auditable": true
}
object tls-certificates-and-hostnames_uuidObject
{
  "properties": {
    "uuid": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_uuid"
    }
  }
}
string tls-certificates-and-hostnames_validation_method
{
  "enum": [
    "txt",
    "http",
    "email"
  ],
  "type": "string",
  "example": "txt",
  "description": "Validation Method selected for the order.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_validation_method_components-schemas-status
{
  "type": "string",
  "example": "pending_validation",
  "description": "Result status.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_validation_method_definition
{
  "enum": [
    "http",
    "cname",
    "txt",
    "email"
  ],
  "type": "string",
  "example": "txt",
  "description": "Desired validation method.",
  "x-auditable": true
}
object tls-certificates-and-hostnames_validation_record
{
  "type": "object",
  "properties": {
    "cname": {
      "type": "string",
      "example": "_acme-challenge.example.com",
      "readOnly": true,
      "description": "The CNAME record hostname for DCV delegation.",
      "x-auditable": true
    },
    "emails": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "example": [
        "administrator@example.com",
        "webmaster@example.com"
      ],
      "description": "The set of email addresses that the certificate authority (CA) will use to complete domain validation."
    },
    "status": {
      "type": "string",
      "example": "pending",
      "readOnly": true,
      "description": "Status of the validation record."
    },
    "http_url": {
      "type": "string",
      "example": "http://app.example.com/.well-known/pki-validation/ca3-da12a1c25e7b48cf80408c6c1763b8a2.txt",
      "description": "The url that will be checked during domain validation."
    },
    "txt_name": {
      "type": "string",
      "example": "_acme-challenge.app.example.com",
      "description": "The hostname that the certificate authority (CA) will check for a TXT record during domain validation .",
      "x-auditable": true
    },
    "http_body": {
      "type": "string",
      "example": "ca3-574923932a82475cb8592200f1a2a23d",
      "description": "The content that the certificate authority (CA) will expect to find at the http_url during the domain validation."
    },
    "txt_value": {
      "type": "string",
      "example": "810b7d5f01154524b961ba0cd578acc2",
      "description": "The TXT record that the certificate authority (CA) will check during domain validation."
    },
    "cname_target": {
      "type": "string",
      "example": "dcv.cloudflare.com",
      "readOnly": true,
      "description": "The CNAME record target value for DCV delegation.",
      "x-auditable": true
    }
  },
  "description": "Certificate's required validation record."
}
integer tls-certificates-and-hostnames_validity_days
{
  "enum": [
    14,
    30,
    90,
    365
  ],
  "type": "integer",
  "description": "Validity Days selected for the order.",
  "x-auditable": true
}
integer tls-certificates-and-hostnames_validity_period
{
  "enum": [
    90
  ],
  "type": "integer",
  "description": "The validity period in days for the certificates ordered via Total TLS.",
  "x-auditable": true
}
object tls-certificates-and-hostnames_value
{
  "oneOf": [
    {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "ECDHE-RSA-AES128-GCM-SHA256",
        "AES128-GCM-SHA256"
      ],
      "description": "Used when `setting_id` is `ciphers`. An array of allowed cipher suite strings.",
      "x-auditable": true
    },
    {
      "enum": [
        "1.0",
        "1.1",
        "1.2",
        "1.3"
      ],
      "type": "string",
      "example": "1.2",
      "description": "Used when `setting_id` is `min_tls_version`. The minimum TLS version.",
      "x-auditable": true
    },
    {
      "enum": [
        "on",
        "off"
      ],
      "type": "string",
      "example": "on",
      "description": "Used when `setting_id` is `http2`. Whether HTTP/2 is enabled.",
      "x-auditable": true
    }
  ],
  "description": "The TLS setting value. The type depends on the `setting_id` used in the request path:\n- `ciphers`: an array of allowed cipher suite strings in BoringSSL format (e.g., `[\"ECDHE-RSA-AES128-GCM-SHA256\", \"AES128-GCM-SHA256\"]`)\n- `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\"`)\n- `http2`: a string indicating whether HTTP/2 is enabled — `\"on\"` or `\"off\"` (e.g., `\"on\"`)"
}
object tls-certificates-and-hostnames_verification
{
  "type": "object",
  "required": [
    "certificate_status"
  ],
  "properties": {
    "signature": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_schemas-signature"
    },
    "brand_check": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_brand_check"
    },
    "cert_pack_uuid": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_cert_pack_uuid"
    },
    "validation_method": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_schemas-validation_method"
    },
    "verification_info": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_verification_info"
    },
    "verification_type": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_verification_type"
    },
    "certificate_status": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_certificate_status"
    },
    "verification_status": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_verification_status"
    }
  }
}
array tls-certificates-and-hostnames_verification_errors
{
  "type": "array",
  "items": {
    "type": "string",
    "x-auditable": true
  },
  "example": [
    "None of the A or AAAA records are owned by this account and the pre-generated ownership verification token was not found."
  ],
  "description": "These are errors that were encountered while trying to activate a hostname."
}
object tls-certificates-and-hostnames_verification_info
{
  "type": "object",
  "properties": {
    "record_name": {
      "enum": [
        "record_name",
        "http_url",
        "cname",
        "txt_name"
      ],
      "type": "string",
      "format": "hostname",
      "example": "b3b90cfedd89a3e487d3e383c56c4267.example.com",
      "description": "Name of CNAME record.",
      "x-auditable": true
    },
    "record_target": {
      "enum": [
        "record_value",
        "http_body",
        "cname_target",
        "txt_value"
      ],
      "type": "string",
      "format": "hostname",
      "example": "6979be7e4cfc9e5c603e31df7efac9cc60fee82d.comodoca.com",
      "description": "Target of CNAME record.",
      "x-auditable": true
    }
  },
  "description": "Certificate's required verification information."
}
boolean tls-certificates-and-hostnames_verification_status
{
  "type": "boolean",
  "example": true,
  "description": "Status of the required verification information, omitted if verification status is unknown.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_verification_type
{
  "enum": [
    "cname",
    "meta tag"
  ],
  "type": "string",
  "example": "cname",
  "description": "Method of verification.",
  "x-auditable": true
}
object tls-certificates-and-hostnames_zone-authenticated-origin-pull
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_certificateObject"
    }
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_identifier"
    },
    "enabled": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_zone-authenticated-origin-pull_components-schemas-enabled"
    },
    "certificate": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_zone-authenticated-origin-pull_components-schemas-certificate"
    },
    "private_key": {
      "$ref": "#/components/schemas/tls-certificates-and-hostnames_private_key"
    }
  }
}
string tls-certificates-and-hostnames_zone-authenticated-origin-pull_components-schemas-certificate
{
  "type": "string",
  "example": "-----BEGIN CERTIFICATE-----\nMIIDtTCCAp2gAwIBAgIJAMHAwfXZ5/PWMA0GCSqGSIb3DQEBCwUAMEUxCzAJBgNV\nBAYTAkFVMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBX\naWRnaXRzIFB0eSBMdGQwHhcNMTYwODI0MTY0MzAxWhcNMTYxMTIyMTY0MzAxWjBF\nMQswCQYDVQQGEwJBVTETMBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50\nZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB\nCgKCAQEAwQHoetcl9+5ikGzV6cMzWtWPJHqXT3wpbEkRU9Yz7lgvddmGdtcGbg/1\nCGZu0jJGkMoppoUo4c3dts3iwqRYmBikUP77wwY2QGmDZw2FvkJCJlKnabIRuGvB\nKwzESIXgKk2016aTP6/dAjEHyo6SeoK8lkIySUvK0fyOVlsiEsCmOpidtnKX/a+5\n0GjB79CJH4ER2lLVZnhePFR/zUOyPxZQQ4naHf7yu/b5jhO0f8fwt+pyFxIXjbEI\ndZliWRkRMtzrHOJIhrmJ2A1J7iOrirbbwillwjjNVUWPf3IJ3M12S9pEewooaeO2\nizNTERcG9HzAacbVRn2Y2SWIyT/18QIDAQABo4GnMIGkMB0GA1UdDgQWBBT/LbE4\n9rWf288N6sJA5BRb6FJIGDB1BgNVHSMEbjBsgBT/LbE49rWf288N6sJA5BRb6FJI\nGKFJpEcwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgTClNvbWUtU3RhdGUxITAfBgNV\nBAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZIIJAMHAwfXZ5/PWMAwGA1UdEwQF\nMAMBAf8wDQYJKoZIhvcNAQELBQADggEBAHHFwl0tH0quUYZYO0dZYt4R7SJ0pCm2\n2satiyzHl4OnXcHDpekAo7/a09c6Lz6AU83cKy/+x3/djYHXWba7HpEu0dR3ugQP\nMlr4zrhd9xKZ0KZKiYmtJH+ak4OM4L3FbT0owUZPyjLSlhMtJVcoRp5CJsjAMBUG\nSvD8RX+T01wzox/Qb+lnnNnOlaWpqu8eoOenybxKp1a9ULzIVvN/LAcc+14vioFq\n2swRWtmocBAs8QR9n4uvbpiYvS8eYueDCWMM4fvFfBhaDZ3N9IbtySh3SpFdQDhw\nYbjM2rxXiyLGxB4Bol7QTv4zHif7Zt89FReT/NBy4rzaskDJY5L6xmY=\n-----END CERTIFICATE-----\n",
  "description": "The zone's leaf certificate.",
  "x-stainless-terraform": {
    "normalize_newlines": true
  }
}
boolean tls-certificates-and-hostnames_zone-authenticated-origin-pull_components-schemas-enabled
{
  "type": "boolean",
  "example": true,
  "description": "Indicates whether zone-level authenticated origin pulls is enabled.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_zone-authenticated-origin-pull_components-schemas-expires_on
{
  "type": "string",
  "format": "date-time",
  "example": "2100-01-01T05:20:00Z",
  "readOnly": true,
  "description": "When the certificate from the authority expires.",
  "x-auditable": true
}
string tls-certificates-and-hostnames_zone-authenticated-origin-pull_components-schemas-status
{
  "enum": [
    "initializing",
    "pending_deployment",
    "pending_deletion",
    "active",
    "deleted",
    "deployment_timed_out",
    "deletion_timed_out"
  ],
  "type": "string",
  "example": "active",
  "description": "Status of the certificate activation.",
  "x-auditable": true
}
string tunnel_account_id
{
  "type": "string",
  "example": "699d98642c564d2e855e9661899b7252",
  "readOnly": true,
  "maxLength": 32,
  "description": "Cloudflare account ID",
  "x-auditable": true
}
string tunnel_address_family
{
  "enum": [
    "v4",
    "v6"
  ],
  "type": "string",
  "example": "v4",
  "description": "IP address family, either `v4` (IPv4) or `v6` (IPv6)"
}
object tunnel_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/tunnel_api-response-common"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {},
          "nullable": true
        },
        "result_info": {
          "$ref": "#/components/schemas/tunnel_result_info"
        }
      }
    }
  ]
}
object tunnel_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/tunnel_messages"
    },
    "result": {
      "anyOf": [
        {
          "type": "object"
        },
        {
          "type": "array",
          "items": {}
        },
        {
          "type": "string"
        }
      ]
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful"
    },
    "messages": {
      "$ref": "#/components/schemas/tunnel_messages"
    }
  }
}
object tunnel_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/tunnel_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful"
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/tunnel_messages"
        }
      ],
      "example": []
    }
  }
}
object tunnel_api-response-single
{
  "$ref": "#/components/schemas/tunnel_api-response-common"
}
string tunnel_arch
{
  "type": "string",
  "example": "linux_amd64",
  "description": "The cloudflared OS architecture used to establish this connection."
}
object tunnel_argo-tunnel
{
  "type": "object",
  "required": [
    "id",
    "name",
    "created_at",
    "connections"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/tunnel_tunnel_id"
    },
    "name": {
      "$ref": "#/components/schemas/tunnel_tunnel_name"
    },
    "created_at": {
      "$ref": "#/components/schemas/tunnel_created_at"
    },
    "deleted_at": {
      "$ref": "#/components/schemas/tunnel_deleted_at"
    },
    "connections": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/tunnel_connection"
      },
      "description": "The tunnel connections between your origin and Cloudflare's edge."
    }
  }
}
object tunnel_cfd-tunnel-response-collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tunnel_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/tunnel_cfd_tunnel"
          }
        }
      }
    }
  ]
}
object tunnel_cfd-tunnel-response-single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tunnel_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/tunnel_cfd_tunnel"
        }
      }
    }
  ]
}
object tunnel_cfd_tunnel
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/tunnel_tunnel_id"
    },
    "name": {
      "$ref": "#/components/schemas/tunnel_tunnel_name"
    },
    "status": {
      "$ref": "#/components/schemas/tunnel_status"
    },
    "metadata": {
      "$ref": "#/components/schemas/tunnel_metadata"
    },
    "tun_type": {
      "$ref": "#/components/schemas/tunnel_tunnel_type"
    },
    "config_src": {
      "$ref": "#/components/schemas/tunnel_config_src"
    },
    "created_at": {
      "$ref": "#/components/schemas/tunnel_created_at"
    },
    "deleted_at": {
      "$ref": "#/components/schemas/tunnel_deleted_at"
    },
    "account_tag": {
      "$ref": "#/components/schemas/tunnel_account_id"
    },
    "connections": {
      "$ref": "#/components/schemas/tunnel_connections_deprecated"
    },
    "remote_config": {
      "$ref": "#/components/schemas/tunnel_remote_config"
    },
    "conns_active_at": {
      "$ref": "#/components/schemas/tunnel_conns_active_at"
    },
    "conns_inactive_at": {
      "$ref": "#/components/schemas/tunnel_conns_inactive_at"
    }
  },
  "description": "A Cloudflare Tunnel that connects your origin to Cloudflare's edge."
}
string tunnel_client_id
{
  "type": "string",
  "format": "uuid",
  "example": "1bedc50d-42b3-473c-b108-ff3d10c0d925",
  "readOnly": true,
  "maxLength": 36,
  "description": "UUID of the Cloudflare Tunnel connector.",
  "x-auditable": true
}
string tunnel_client_id_input
{
  "type": "string",
  "format": "uuid",
  "example": "1bedc50d-42b3-473c-b108-ff3d10c0d925",
  "maxLength": 36,
  "description": "UUID of the Cloudflare Tunnel connector.",
  "x-auditable": true
}
string tunnel_colo_name
{
  "type": "string",
  "example": "DFW",
  "description": "The Cloudflare data center used for this connection."
}
string tunnel_components-schemas-tunnel_id
{
  "type": "string",
  "format": "uuid",
  "example": "f70ff985-a4ef-4643-bbbc-4a0ed4fc8415",
  "maxLength": 36,
  "description": "UUID of the tunnel.",
  "x-auditable": true
}
object tunnel_config
{
  "type": "object",
  "properties": {
    "ingress": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/tunnel_ingressRule"
      },
      "minItems": 1,
      "description": "List of public hostname definitions. At least one ingress rule needs to be defined for the tunnel."
    },
    "warp-routing": {
      "type": "object",
      "readOnly": true,
      "deprecated": true,
      "properties": {
        "enabled": {
          "type": "boolean"
        }
      },
      "description": "Enable private network access from WARP users to private network routes. This is enabled if the tunnel has an assigned route.",
      "x-stainless-skip": true,
      "x-stainless-deprecation-message": "This field is ignored by cloudflared since version 2023.10.0."
    },
    "originRequest": {
      "$ref": "#/components/schemas/tunnel_originRequest"
    }
  },
  "description": "The tunnel configuration and ingress rules."
}
string tunnel_config_src
{
  "enum": [
    "local",
    "cloudflare"
  ],
  "type": "string",
  "default": "local",
  "example": "cloudflare",
  "description": "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."
}
integer tunnel_config_version
{
  "type": "integer",
  "description": "The version of the remote tunnel configuration. Used internally to sync cloudflared with the Zero Trust dashboard."
}
object tunnel_configuration
{
  "type": "object",
  "properties": {
    "config": {
      "$ref": "#/components/schemas/tunnel_config"
    },
    "source": {
      "$ref": "#/components/schemas/tunnel_schemas-config_src"
    },
    "version": {
      "$ref": "#/components/schemas/tunnel_schemas-config_version"
    },
    "tunnel_id": {
      "$ref": "#/components/schemas/tunnel_schemas-tunnel_id"
    },
    "account_id": {
      "$ref": "#/components/schemas/tunnel_identifier"
    },
    "created_at": {
      "$ref": "#/components/schemas/tunnel_timestamp"
    }
  },
  "description": "Cloudflare Tunnel configuration"
}
object tunnel_configuration_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tunnel_schemas-api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/tunnel_configuration"
        }
      }
    }
  ]
}
object tunnel_connection
{
  "properties": {
    "uuid": {
      "$ref": "#/components/schemas/tunnel_connection_id"
    },
    "colo_name": {
      "$ref": "#/components/schemas/tunnel_colo_name"
    },
    "is_pending_reconnect": {
      "$ref": "#/components/schemas/tunnel_is_pending_reconnect"
    }
  }
}
string tunnel_connection_id
{
  "type": "string",
  "format": "uuid",
  "example": "1bedc50d-42b3-473c-b108-ff3d10c0d925",
  "readOnly": true,
  "maxLength": 36,
  "description": "UUID of the Cloudflare Tunnel connection.",
  "x-auditable": true
}
array tunnel_connections
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/tunnel_schemas-connection"
  },
  "description": "The Cloudflare Tunnel connections between your origin and Cloudflare's edge."
}
array tunnel_connections_deprecated
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/tunnel_schemas-connection"
  },
  "deprecated": true,
  "description": "The Cloudflare Tunnel connections between your origin and Cloudflare's edge.",
  "x-stainless-deprecation-message": "This field will start returning an empty array. To fetch the connections of a given tunnel, please use the dedicated endpoint `/accounts/{account_id}/{tunnel_type}/{tunnel_id}/connections`"
}
string tunnel_conns_active_at
{
  "type": "string",
  "format": "date-time",
  "example": "2009-11-10T23:00:00Z",
  "description": "Timestamp of when the tunnel established at least one connection to Cloudflare's edge. If `null`, the tunnel is inactive."
}
string tunnel_conns_inactive_at
{
  "type": "string",
  "format": "date-time",
  "example": "2009-11-10T23:00:00Z",
  "description": "Timestamp of when the tunnel became inactive (no connections to Cloudflare's edge). If `null`, the tunnel is active."
}
string tunnel_created_at
{
  "type": "string",
  "format": "date-time",
  "example": "2021-01-25T18:22:34.317854Z",
  "readOnly": true,
  "description": "Timestamp of when the resource was created."
}
string tunnel_deleted_at
{
  "type": "string",
  "format": "date-time",
  "example": "2009-11-10T23:00:00.000000Z",
  "readOnly": true,
  "description": "Timestamp of when the resource was deleted. If `null`, the resource has not been deleted."
}
object tunnel_empty_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tunnel_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "enum": [
            null
          ],
          "type": "object",
          "nullable": true
        }
      }
    }
  ]
}
string tunnel_existed_at
{
  "type": "string",
  "format": "url-encoded-date-time",
  "example": "2019-10-12T07%3A20%3A50.52Z",
  "description": "If provided, include only resources that were created (and not deleted) before this time. URL encoded."
}
array tunnel_features
{
  "type": "array",
  "items": {
    "type": "string",
    "example": "ha-origin"
  },
  "description": "Features enabled for the Cloudflare Tunnel."
}
string tunnel_ha_status
{
  "enum": [
    "offline",
    "passive",
    "active"
  ],
  "type": "string",
  "description": "The HA status of a WARP Connector client.",
  "x-auditable": true
}
string tunnel_hostname
{
  "type": "string",
  "example": "office-1.local",
  "description": "The hostname of the route.",
  "x-auditable": true
}
string tunnel_hostname_comment
{
  "type": "string",
  "example": "example comment",
  "description": "An optional description of the hostname route.",
  "x-auditable": true
}
string tunnel_hostname_query_comment
{
  "type": "string",
  "example": "example%20comment",
  "description": "If set, only list hostname routes with the given comment."
}
object tunnel_hostname_route
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/tunnel_hostname_route_id"
    },
    "comment": {
      "$ref": "#/components/schemas/tunnel_hostname_comment"
    },
    "hostname": {
      "$ref": "#/components/schemas/tunnel_hostname"
    },
    "tunnel_id": {
      "$ref": "#/components/schemas/tunnel_components-schemas-tunnel_id"
    },
    "created_at": {
      "$ref": "#/components/schemas/tunnel_created_at"
    },
    "deleted_at": {
      "$ref": "#/components/schemas/tunnel_deleted_at"
    },
    "tunnel_name": {
      "$ref": "#/components/schemas/tunnel_schemas-tunnel_name"
    }
  }
}
string tunnel_hostname_route_id
{
  "type": "string",
  "format": "uuid",
  "example": "f70ff985-a4ef-4643-bbbc-4a0ed4fc8415",
  "description": "The hostname route ID.",
  "x-auditable": true
}
object tunnel_hostname_route_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tunnel_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/tunnel_hostname_route"
          }
        }
      }
    }
  ]
}
object tunnel_hostname_route_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tunnel_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/tunnel_hostname_route"
        }
      }
    }
  ]
}
boolean tunnel_icmp_proxy_enabled
{
  "type": "boolean",
  "example": true,
  "description": "A flag to enable the ICMP proxy for the account network.",
  "x-auditable": true
}
string tunnel_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Identifier.",
  "x-auditable": true
}
object tunnel_ingressRule
{
  "type": "object",
  "required": [
    "hostname",
    "service"
  ],
  "properties": {
    "path": {
      "type": "string",
      "example": "subpath",
      "description": "Requests with this path route to this public hostname."
    },
    "service": {
      "type": "string",
      "example": "https://localhost:8001",
      "description": "Protocol and address of destination server. Supported protocols: http://, https://, unix://, tcp://, ssh://, rdp://, unix+tls://, smb://. Alternatively can return a HTTP status code http_status:[code] e.g. 'http_status:404'.\n"
    },
    "hostname": {
      "type": "string",
      "example": "tunnel.example.com",
      "description": "Public hostname for this service."
    },
    "originRequest": {
      "$ref": "#/components/schemas/tunnel_originRequest"
    }
  },
  "description": "Public hostname"
}
string tunnel_ip
{
  "type": "string",
  "example": "10.1.0.137"
}
string tunnel_ip_network
{
  "type": "string",
  "example": "172.16.0.0/16",
  "description": "The private IPv4 or IPv6 range connected by the route, in CIDR notation.",
  "x-auditable": true
}
string tunnel_ip_network_encoded
{
  "type": "string",
  "example": "172.16.0.0%2F16",
  "description": "IP/CIDR range in URL-encoded format"
}
boolean tunnel_is_default_network
{
  "type": "boolean",
  "example": true,
  "description": "If `true`, this virtual network is the default for the account.",
  "x-auditable": true,
  "x-stainless-terraform-configurability": "computed_optional"
}
boolean tunnel_is_default_network_optional
{
  "type": "boolean",
  "default": false,
  "example": false,
  "description": "If `true`, this virtual network is the default for the account.",
  "x-auditable": true,
  "x-stainless-terraform-configurability": "computed_optional"
}
boolean tunnel_is_pending_reconnect
{
  "type": "boolean",
  "example": false,
  "description": "Cloudflare continues to track connections for several minutes after they disconnect. This is an optimization to improve latency and reliability of reconnecting.  If `true`, the connection has disconnected but is still being tracked. If `false`, the connection is actively serving traffic."
}
object tunnel_legacy-tunnel-response-collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tunnel_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/tunnel_argo-tunnel"
          }
        }
      }
    }
  ]
}
object tunnel_legacy-tunnel-response-single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tunnel_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/tunnel_argo-tunnel"
        }
      }
    }
  ]
}
string tunnel_management-resources
{
  "enum": [
    "logs"
  ],
  "type": "string",
  "example": "logs",
  "description": "Management resources the token will have access to."
}
array tunnel_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "message": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
object tunnel_metadata
{
  "type": "object",
  "example": {},
  "description": "Metadata associated with the tunnel."
}
boolean tunnel_offramp_warp_enabled
{
  "type": "boolean",
  "example": true,
  "description": "A flag to enable WARP to WARP traffic.",
  "x-auditable": true
}
object tunnel_originRequest
{
  "type": "object",
  "properties": {
    "access": {
      "type": "object",
      "required": [
        "audTag",
        "teamName"
      ],
      "properties": {
        "audTag": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Access applications that are allowed to reach this hostname for this Tunnel. Audience tags can be identified in the dashboard or via the List Access policies API."
        },
        "required": {
          "type": "boolean",
          "example": false,
          "description": "Deny traffic that has not fulfilled Access authorization."
        },
        "teamName": {
          "type": "string",
          "example": "zero-trust-organization-name"
        }
      },
      "description": "For all L7 requests to this hostname, cloudflared will validate each request's Cf-Access-Jwt-Assertion request header."
    },
    "caPool": {
      "type": "string",
      "description": "Path to the certificate authority (CA) for the certificate of your origin. This option should be used only if your certificate is not signed by Cloudflare."
    },
    "proxyType": {
      "type": "string",
      "description": "cloudflared starts a proxy server to translate HTTP traffic into TCP when proxying, for example, SSH or RDP. This configures what type of proxy will be started. Valid options are: \"\" for the regular proxy and \"socks\" for a SOCKS5 proxy.\n"
    },
    "tlsTimeout": {
      "type": "integer",
      "example": 10,
      "description": "Timeout for completing a TLS handshake to your origin server, if you have chosen to connect Tunnel to an HTTPS server."
    },
    "http2Origin": {
      "type": "boolean",
      "description": "Attempt to connect to origin using HTTP2. Origin must be configured as https."
    },
    "noTLSVerify": {
      "type": "boolean",
      "example": false,
      "description": "Disables TLS verification of the certificate presented by your origin. Will allow any certificate from the origin to be accepted."
    },
    "tcpKeepAlive": {
      "type": "integer",
      "example": 30,
      "description": "The timeout after which a TCP keepalive packet is sent on a connection between Tunnel and the origin server."
    },
    "connectTimeout": {
      "type": "integer",
      "example": 10,
      "description": "Timeout for establishing a new TCP connection to your origin server. This excludes the time taken to establish TLS, which is controlled by tlsTimeout."
    },
    "httpHostHeader": {
      "type": "string",
      "description": "Sets the HTTP Host header on requests sent to the local service."
    },
    "matchSNItoHost": {
      "type": "boolean",
      "example": false,
      "description": "Auto configure the Hostname on the origin server certificate."
    },
    "noHappyEyeballs": {
      "type": "boolean",
      "example": false,
      "description": "Disable the “happy eyeballs” algorithm for IPv4/IPv6 fallback if your local network has misconfigured one of the protocols."
    },
    "keepAliveTimeout": {
      "type": "integer",
      "example": 90,
      "description": "Timeout after which an idle keepalive connection can be discarded."
    },
    "originServerName": {
      "type": "string",
      "description": "Hostname that cloudflared should expect from your origin server certificate."
    },
    "keepAliveConnections": {
      "type": "integer",
      "example": 100,
      "description": "Maximum number of idle keepalive connections between Tunnel and your origin. This does not restrict the total number of concurrent connections."
    },
    "disableChunkedEncoding": {
      "type": "boolean",
      "description": "Disables chunked transfer encoding. Useful if you are running a WSGI server."
    }
  },
  "description": "Configuration parameters for the public hostname specific connection settings between cloudflared and origin server."
}
number tunnel_page_number
{
  "type": "number",
  "default": 1,
  "minimum": 1,
  "description": "Page number of paginated results."
}
number tunnel_per_page
{
  "type": "number",
  "maximum": 1000,
  "minimum": 1,
  "description": "Number of results to display."
}
boolean tunnel_remote_config
{
  "type": "boolean",
  "example": true,
  "deprecated": true,
  "description": "If `true`, the tunnel can be configured remotely from the Zero Trust dashboard. If `false`, the tunnel must be configured locally on the origin machine.",
  "x-auditable": true,
  "x-stainless-ignore": true,
  "x-stainless-deprecation-message": "Use the config_src field instead."
}
object tunnel_result_info
{
  "type": "object",
  "properties": {
    "page": {
      "type": "number",
      "example": 1,
      "description": "Current page within paginated list of results"
    },
    "count": {
      "type": "number",
      "example": 1,
      "description": "Total number of results for the requested service"
    },
    "per_page": {
      "type": "number",
      "example": 20,
      "description": "Number of results per page of results"
    },
    "total_count": {
      "type": "number",
      "example": 2000,
      "description": "Total results available without any search parameters"
    }
  }
}
object tunnel_route
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/tunnel_route_id"
    },
    "comment": {
      "$ref": "#/components/schemas/tunnel_route_comment"
    },
    "network": {
      "$ref": "#/components/schemas/tunnel_ip_network"
    },
    "tunnel_id": {
      "$ref": "#/components/schemas/tunnel_tunnel_id"
    },
    "created_at": {
      "$ref": "#/components/schemas/tunnel_created_at"
    },
    "deleted_at": {
      "$ref": "#/components/schemas/tunnel_deleted_at"
    },
    "virtual_network_id": {
      "$ref": "#/components/schemas/tunnel_virtual_network_id"
    }
  }
}
string tunnel_route_comment
{
  "type": "string",
  "default": "",
  "example": "Example comment for this route.",
  "maxLength": 100,
  "description": "Optional remark describing the route.",
  "x-auditable": true
}
string tunnel_route_id
{
  "type": "string",
  "example": "f70ff985-a4ef-4643-bbbc-4a0ed4fc8415",
  "readOnly": true,
  "maxLength": 36,
  "description": "UUID of the route."
}
object tunnel_route_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tunnel_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/tunnel_route"
        }
      }
    }
  ]
}
string tunnel_run_at
{
  "type": "string",
  "format": "date-time",
  "example": "2009-11-10T23:00:00Z",
  "description": "Timestamp of when the tunnel connection was started."
}
object tunnel_schemas-api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/tunnel_schemas-messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/tunnel_schemas-messages"
    }
  }
}
object tunnel_schemas-api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/tunnel_schemas-messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/tunnel_schemas-messages"
        }
      ],
      "example": []
    }
  }
}
object tunnel_schemas-api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/tunnel_schemas-api-response-common"
    }
  ]
}
string tunnel_schemas-config_src
{
  "enum": [
    "local",
    "cloudflare"
  ],
  "type": "string",
  "example": "cloudflare",
  "description": "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's configuration on the Zero Trust dashboard.",
  "x-stainless-terraform-configurability": "computed_optional"
}
integer tunnel_schemas-config_version
{
  "type": "integer",
  "description": "The version of the Tunnel Configuration."
}
object tunnel_schemas-connection
{
  "properties": {
    "id": {
      "$ref": "#/components/schemas/tunnel_connection_id"
    },
    "uuid": {
      "$ref": "#/components/schemas/tunnel_connection_id"
    },
    "client_id": {
      "$ref": "#/components/schemas/tunnel_client_id"
    },
    "colo_name": {
      "$ref": "#/components/schemas/tunnel_colo_name"
    },
    "opened_at": {
      "type": "string",
      "format": "date-time",
      "example": "2021-01-25T18:22:34.317854Z",
      "description": "Timestamp of when the connection was established."
    },
    "origin_ip": {
      "allOf": [
        {
          "$ref": "#/components/schemas/tunnel_ip"
        }
      ],
      "description": "The public IP address of the host running cloudflared."
    },
    "client_version": {
      "$ref": "#/components/schemas/tunnel_version"
    },
    "is_pending_reconnect": {
      "$ref": "#/components/schemas/tunnel_is_pending_reconnect"
    }
  }
}
array tunnel_schemas-messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string tunnel_schemas-tunnel_id
{
  "type": "string",
  "format": "uuid",
  "example": "f70ff985-a4ef-4643-bbbc-4a0ed4fc8415",
  "readOnly": true,
  "maxLength": 36,
  "description": "UUID of the tunnel."
}
string tunnel_schemas-tunnel_name
{
  "type": "string",
  "example": "api-tunnel",
  "description": "A user-friendly name for a tunnel."
}
object tunnel_schemas-warp-connector-connection
{
  "properties": {
    "id": {
      "$ref": "#/components/schemas/tunnel_connection_id"
    },
    "client_id": {
      "$ref": "#/components/schemas/tunnel_client_id"
    },
    "colo_name": {
      "$ref": "#/components/schemas/tunnel_colo_name"
    },
    "opened_at": {
      "type": "string",
      "format": "date-time",
      "example": "2021-01-25T18:22:34.317854Z",
      "description": "Timestamp of when the connection was established."
    },
    "origin_ip": {
      "allOf": [
        {
          "$ref": "#/components/schemas/tunnel_ip"
        }
      ],
      "description": "The public IP address of the host running WARP Connector."
    },
    "client_version": {
      "$ref": "#/components/schemas/tunnel_version"
    }
  }
}
string tunnel_status
{
  "enum": [
    "inactive",
    "degraded",
    "healthy",
    "down"
  ],
  "type": "string",
  "example": "healthy",
  "description": "The status of the tunnel. Valid values are `inactive` (tunnel has never been run), `degraded` (tunnel is active and able to serve traffic but in an unhealthy state), `healthy` (tunnel is active and able to serve traffic), or `down` (tunnel can not serve traffic as it has no connections to the Cloudflare Edge)."
}
object tunnel_subnet
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/tunnel_subnet_id"
    },
    "name": {
      "$ref": "#/components/schemas/tunnel_subnet_name"
    },
    "comment": {
      "$ref": "#/components/schemas/tunnel_subnet_comment"
    },
    "network": {
      "$ref": "#/components/schemas/tunnel_subnet_ip_network"
    },
    "created_at": {
      "$ref": "#/components/schemas/tunnel_created_at"
    },
    "deleted_at": {
      "$ref": "#/components/schemas/tunnel_deleted_at"
    },
    "subnet_type": {
      "$ref": "#/components/schemas/tunnel_subnet_type"
    },
    "is_default_network": {
      "$ref": "#/components/schemas/tunnel_subnet_is_default_network"
    }
  }
}
string tunnel_subnet_comment
{
  "type": "string",
  "default": "",
  "example": "example comment",
  "description": "An optional description of the subnet.",
  "x-auditable": true,
  "x-stainless-terraform-configurability": "computed_optional"
}
string tunnel_subnet_id
{
  "type": "string",
  "format": "uuid",
  "example": "f70ff985-a4ef-4643-bbbc-4a0ed4fc8415",
  "description": "The UUID of the subnet.",
  "x-auditable": true
}
string tunnel_subnet_ip_network
{
  "type": "string",
  "example": "100.64.0.0/12",
  "description": "The private IPv4 or IPv6 range defining the subnet, in CIDR notation.",
  "x-auditable": true
}
boolean tunnel_subnet_is_default_network
{
  "type": "boolean",
  "default": false,
  "description": "If `true`, this is the default subnet for the account. There can only be one default subnet per account.",
  "x-auditable": true,
  "x-stainless-terraform-configurability": "computed_optional"
}
string tunnel_subnet_name
{
  "type": "string",
  "example": "IPv4 Cloudflare Source IPs",
  "description": "A user-friendly name for the subnet.",
  "x-auditable": true
}
string tunnel_subnet_query_comment
{
  "type": "string",
  "example": "example%20comment",
  "description": "If set, only list subnets with the given comment."
}
string tunnel_subnet_query_name
{
  "type": "string",
  "example": "IPv4%20Cloudflare%20Source%20IPs",
  "description": "If set, only list subnets with the given name"
}
object tunnel_subnet_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tunnel_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/tunnel_subnet"
          }
        }
      }
    }
  ]
}
object tunnel_subnet_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tunnel_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/tunnel_subnet"
        }
      }
    }
  ]
}
object tunnel_subnet_response_single_nullable
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tunnel_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "nullable": true,
          "properties": {
            "id": {
              "$ref": "#/components/schemas/tunnel_subnet_id"
            },
            "name": {
              "$ref": "#/components/schemas/tunnel_subnet_name"
            },
            "comment": {
              "$ref": "#/components/schemas/tunnel_subnet_comment"
            },
            "network": {
              "$ref": "#/components/schemas/tunnel_subnet_ip_network"
            },
            "created_at": {
              "$ref": "#/components/schemas/tunnel_created_at"
            },
            "deleted_at": {
              "$ref": "#/components/schemas/tunnel_deleted_at"
            },
            "subnet_type": {
              "$ref": "#/components/schemas/tunnel_subnet_type"
            },
            "is_default_network": {
              "$ref": "#/components/schemas/tunnel_subnet_is_default_network"
            }
          }
        }
      }
    }
  ]
}
string tunnel_subnet_type
{
  "enum": [
    "cloudflare_source",
    "warp"
  ],
  "type": "string",
  "example": "cloudflare_source",
  "description": "The type of subnet.",
  "x-auditable": true
}
object tunnel_teamnet
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/tunnel_route_id"
    },
    "comment": {
      "$ref": "#/components/schemas/tunnel_route_comment"
    },
    "network": {
      "$ref": "#/components/schemas/tunnel_ip_network"
    },
    "tun_type": {
      "$ref": "#/components/schemas/tunnel_tunnel_type"
    },
    "tunnel_id": {
      "$ref": "#/components/schemas/tunnel_tunnel_id"
    },
    "created_at": {
      "$ref": "#/components/schemas/tunnel_created_at"
    },
    "deleted_at": {
      "$ref": "#/components/schemas/tunnel_deleted_at"
    },
    "tunnel_name": {
      "$ref": "#/components/schemas/tunnel_tunnel_name"
    },
    "virtual_network_id": {
      "$ref": "#/components/schemas/tunnel_virtual_network_id_computed_optional"
    },
    "virtual_network_name": {
      "$ref": "#/components/schemas/tunnel_virtual_network_name"
    }
  }
}
object tunnel_teamnet_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tunnel_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/tunnel_teamnet"
          }
        }
      }
    }
  ]
}
object tunnel_teamnet_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tunnel_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/tunnel_teamnet"
        }
      }
    }
  ]
}
string tunnel_timestamp
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-01T05:20:00.12345Z",
  "x-auditable": true
}
object tunnel_tunnel-response-collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tunnel_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/tunnel_cfd_tunnel"
              },
              {
                "$ref": "#/components/schemas/tunnel_warp_connector_tunnel"
              }
            ]
          }
        }
      }
    }
  ]
}
object tunnel_tunnel_client
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/tunnel_connection_id"
    },
    "arch": {
      "$ref": "#/components/schemas/tunnel_arch"
    },
    "conns": {
      "$ref": "#/components/schemas/tunnel_connections"
    },
    "run_at": {
      "$ref": "#/components/schemas/tunnel_run_at"
    },
    "version": {
      "$ref": "#/components/schemas/tunnel_version"
    },
    "features": {
      "$ref": "#/components/schemas/tunnel_features"
    },
    "config_version": {
      "$ref": "#/components/schemas/tunnel_config_version"
    }
  },
  "description": "A client (typically cloudflared) that maintains connections to a Cloudflare data center."
}
object tunnel_tunnel_client_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tunnel_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/tunnel_tunnel_client"
        }
      }
    }
  ]
}
object tunnel_tunnel_connections_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tunnel_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/tunnel_tunnel_client"
          }
        }
      }
    }
  ]
}
string tunnel_tunnel_id
{
  "type": "string",
  "format": "uuid",
  "example": "f70ff985-a4ef-4643-bbbc-4a0ed4fc8415",
  "readOnly": true,
  "maxLength": 36,
  "description": "UUID of the tunnel.",
  "x-auditable": true
}
object tunnel_tunnel_link
{
  "type": "object",
  "properties": {
    "created_at": {
      "$ref": "#/components/schemas/tunnel_created_at"
    },
    "linked_tunnel_id": {
      "$ref": "#/components/schemas/tunnel_tunnel_id"
    }
  },
  "description": "The id of the tunnel linked and the date that link was created."
}
object tunnel_tunnel_links_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tunnel_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/tunnel_tunnel_link"
          }
        }
      }
    }
  ]
}
string tunnel_tunnel_name
{
  "type": "string",
  "example": "blog",
  "description": "A user-friendly name for a tunnel."
}
object tunnel_tunnel_response_token
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tunnel_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/tunnel_tunnel_token"
        }
      }
    }
  ]
}
string tunnel_tunnel_secret
{
  "type": "string",
  "example": "AQIDBAUGBwgBAgMEBQYHCAECAwQFBgcIAQIDBAUGBwg=",
  "description": "Sets the password required to run a locally-managed tunnel. Must be at least 32 bytes and encoded as a base64 string.",
  "x-sensitive": true
}
string tunnel_tunnel_token
{
  "type": "string",
  "example": "eyJhIjoiNWFiNGU5Z...",
  "readOnly": true,
  "description": "The Tunnel Token is used as a mechanism to authenticate the operation of a tunnel.",
  "x-sensitive": true
}
string tunnel_tunnel_type
{
  "enum": [
    "cfd_tunnel",
    "warp_connector",
    "warp",
    "magic",
    "ip_sec",
    "gre",
    "cni"
  ],
  "type": "string",
  "example": "cfd_tunnel",
  "description": "The type of tunnel.",
  "x-auditable": true
}
array tunnel_tunnel_types
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/tunnel_tunnel_type"
  },
  "example": "cfd_tunnel,warp_connector",
  "description": "The types of tunnels to filter by, separated by commas."
}
object tunnel_tunnel_warp_connector_client
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/tunnel_client_id"
    },
    "arch": {
      "$ref": "#/components/schemas/tunnel_arch"
    },
    "conns": {
      "$ref": "#/components/schemas/tunnel_warp_connector_connections"
    },
    "run_at": {
      "$ref": "#/components/schemas/tunnel_run_at"
    },
    "version": {
      "$ref": "#/components/schemas/tunnel_version"
    },
    "features": {
      "$ref": "#/components/schemas/tunnel_features"
    },
    "ha_status": {
      "$ref": "#/components/schemas/tunnel_ha_status"
    }
  },
  "description": "A WARP Connector client that maintains a connection to a Cloudflare data center."
}
object tunnel_tunnel_warp_connector_client_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tunnel_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/tunnel_tunnel_warp_connector_client"
        }
      }
    }
  ]
}
object tunnel_tunnel_warp_connector_connections_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tunnel_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/tunnel_tunnel_warp_connector_client"
          }
        }
      }
    }
  ]
}
string tunnel_version
{
  "type": "string",
  "example": "2022.7.1",
  "description": "The cloudflared version used to establish this connection."
}
object tunnel_virtual-network
{
  "type": "object",
  "required": [
    "id",
    "name",
    "is_default_network",
    "comment",
    "created_at"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/tunnel_virtual_network_id"
    },
    "name": {
      "$ref": "#/components/schemas/tunnel_virtual_network_name"
    },
    "comment": {
      "$ref": "#/components/schemas/tunnel_virtual_network_comment"
    },
    "created_at": {
      "$ref": "#/components/schemas/tunnel_created_at"
    },
    "deleted_at": {
      "$ref": "#/components/schemas/tunnel_deleted_at"
    },
    "is_default_network": {
      "$ref": "#/components/schemas/tunnel_is_default_network"
    }
  }
}
string tunnel_virtual_network_comment
{
  "type": "string",
  "default": "",
  "example": "Staging VPC for data science",
  "maxLength": 256,
  "description": "Optional remark describing the virtual network.",
  "x-auditable": true
}
string tunnel_virtual_network_id
{
  "type": "string",
  "format": "uuid",
  "example": "f70ff985-a4ef-4643-bbbc-4a0ed4fc8415",
  "description": "UUID of the virtual network.",
  "x-auditable": true
}
string tunnel_virtual_network_id_computed_optional
{
  "type": "string",
  "format": "uuid",
  "example": "f70ff985-a4ef-4643-bbbc-4a0ed4fc8415",
  "description": "UUID of the virtual network.",
  "x-auditable": true,
  "x-stainless-terraform-configurability": "computed_optional"
}
string tunnel_virtual_network_name
{
  "type": "string",
  "example": "us-east-1-vpc",
  "maxLength": 256,
  "description": "A user-friendly name for the virtual network.",
  "x-auditable": true
}
object tunnel_vnet_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tunnel_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/tunnel_virtual-network"
          }
        }
      }
    }
  ]
}
object tunnel_vnet_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tunnel_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/tunnel_virtual-network"
        }
      }
    }
  ]
}
object tunnel_warp-connector-response-collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tunnel_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/tunnel_warp_connector_tunnel"
          }
        }
      }
    }
  ]
}
object tunnel_warp-connector-response-single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tunnel_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/tunnel_warp_connector_tunnel"
        }
      }
    }
  ]
}
array tunnel_warp_connector_connections
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/tunnel_schemas-warp-connector-connection"
  },
  "description": "The WARP Connector Tunnel connections between your origin and Cloudflare's edge."
}
object tunnel_warp_connector_tunnel
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/tunnel_tunnel_id"
    },
    "name": {
      "$ref": "#/components/schemas/tunnel_tunnel_name"
    },
    "status": {
      "$ref": "#/components/schemas/tunnel_status"
    },
    "metadata": {
      "$ref": "#/components/schemas/tunnel_metadata"
    },
    "tun_type": {
      "$ref": "#/components/schemas/tunnel_tunnel_type"
    },
    "created_at": {
      "$ref": "#/components/schemas/tunnel_created_at"
    },
    "deleted_at": {
      "$ref": "#/components/schemas/tunnel_deleted_at"
    },
    "account_tag": {
      "$ref": "#/components/schemas/tunnel_account_id"
    },
    "connections": {
      "$ref": "#/components/schemas/tunnel_connections_deprecated"
    },
    "conns_active_at": {
      "$ref": "#/components/schemas/tunnel_conns_active_at"
    },
    "conns_inactive_at": {
      "$ref": "#/components/schemas/tunnel_conns_inactive_at"
    }
  },
  "description": "A Warp Connector Tunnel that connects your origin to Cloudflare's edge."
}
object tunnel_zero_trust_connectivity_settings_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/tunnel_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "icmp_proxy_enabled": {
              "$ref": "#/components/schemas/tunnel_icmp_proxy_enabled"
            },
            "offramp_warp_enabled": {
              "$ref": "#/components/schemas/tunnel_offramp_warp_enabled"
            }
          }
        }
      }
    }
  ]
}
object turnstile_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/turnstile_messages"
    },
    "success": {
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful"
    },
    "messages": {
      "$ref": "#/components/schemas/turnstile_messages"
    }
  }
}
object turnstile_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/turnstile_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "type": "object",
      "nullable": true
    },
    "success": {
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful"
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/turnstile_messages"
        }
      ],
      "example": []
    }
  }
}
boolean turnstile_bot_fight_mode
{
  "type": "boolean",
  "example": false,
  "description": "If bot_fight_mode is set to `true`, Cloudflare issues computationally\nexpensive challenges in response to malicious bots (ENT only).\n",
  "x-auditable": true
}
string turnstile_clearance_level
{
  "enum": [
    "no_clearance",
    "jschallenge",
    "managed",
    "interactive"
  ],
  "type": "string",
  "example": "interactive",
  "description": "If Turnstile is embedded on a Cloudflare site and the widget should grant challenge clearance,\nthis setting can determine the clearance level to be set\n",
  "x-auditable": true
}
string turnstile_created_on
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-01T05:20:00.123123Z",
  "readOnly": true,
  "description": "When the widget was created."
}
array turnstile_domains
{
  "type": "array",
  "items": {
    "type": "string",
    "example": "203.0.113.1",
    "description": "Hosts as a hostname or IPv4/IPv6 address represented by strings. The\nwidget will only work on these domains, and their subdomains.\n",
    "x-auditable": true
  },
  "example": [
    "203.0.113.1",
    "cloudflare.com",
    "blog.example.com"
  ],
  "maxLength": 10
}
boolean turnstile_ephemeral_id
{
  "type": "boolean",
  "example": false,
  "description": "Return the Ephemeral ID in /siteverify (ENT only).\n",
  "x-auditable": true
}
string turnstile_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "readOnly": true,
  "maxLength": 32,
  "description": "Identifier",
  "x-auditable": true
}
boolean turnstile_invalidate_immediately
{
  "type": "boolean",
  "default": false,
  "description": "If `invalidate_immediately` is set to `false`, the previous secret will\nremain valid for two hours. Otherwise, the secret is immediately\ninvalidated, and requests using it will be rejected.\n",
  "x-auditable": true
}
array turnstile_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "message": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string turnstile_modified_on
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-01T05:20:00.123123Z",
  "readOnly": true,
  "description": "When the widget was modified."
}
string turnstile_name
{
  "type": "string",
  "example": "blog.cloudflare.com login form",
  "maxLength": 254,
  "minLength": 1,
  "description": "Human readable widget name. Not unique. Cloudflare suggests that you\nset this to a meaningful string to make it easier to identify your\nwidget, and where it is used.\n",
  "x-auditable": true
}
boolean turnstile_offlabel
{
  "type": "boolean",
  "example": false,
  "description": "Do not show any Cloudflare branding on the widget (ENT only).\n",
  "x-auditable": true
}
string turnstile_region
{
  "enum": [
    "world",
    "china"
  ],
  "type": "string",
  "default": "world",
  "description": "Region where this widget can be used. This cannot be changed after creation.\n",
  "x-auditable": true
}
object turnstile_result_info
{
  "type": "object",
  "required": [
    "page",
    "per_page",
    "count",
    "total_count"
  ],
  "properties": {
    "page": {
      "type": "number",
      "example": 1,
      "description": "Current page within paginated list of results"
    },
    "count": {
      "type": "number",
      "example": 1,
      "description": "Total number of results for the requested service"
    },
    "per_page": {
      "type": "number",
      "example": 20,
      "description": "Number of results per page of results"
    },
    "total_count": {
      "type": "number",
      "example": 2000,
      "description": "Total results available without any search parameters"
    }
  }
}
string turnstile_secret
{
  "type": "string",
  "example": "0x4AAF00AAAABn0R22HWm098HVBjhdsYUc",
  "description": "Secret key for this widget.",
  "x-sensitive": true
}
string turnstile_sitekey
{
  "type": "string",
  "example": "0x4AAF00AAAABn0R22HWm-YUc",
  "maxLength": 32,
  "description": "Widget item identifier tag.",
  "x-auditable": true
}
object turnstile_widget_detail
{
  "type": "object",
  "required": [
    "sitekey",
    "secret",
    "created_on",
    "modified_on",
    "name",
    "domains",
    "mode",
    "region",
    "bot_fight_mode",
    "offlabel",
    "clearance_level",
    "ephemeral_id"
  ],
  "properties": {
    "mode": {
      "$ref": "#/components/schemas/turnstile_widget_mode"
    },
    "name": {
      "$ref": "#/components/schemas/turnstile_name"
    },
    "region": {
      "$ref": "#/components/schemas/turnstile_region"
    },
    "secret": {
      "$ref": "#/components/schemas/turnstile_secret"
    },
    "domains": {
      "$ref": "#/components/schemas/turnstile_domains"
    },
    "sitekey": {
      "$ref": "#/components/schemas/turnstile_sitekey"
    },
    "offlabel": {
      "$ref": "#/components/schemas/turnstile_offlabel"
    },
    "created_on": {
      "$ref": "#/components/schemas/turnstile_created_on"
    },
    "modified_on": {
      "$ref": "#/components/schemas/turnstile_modified_on"
    },
    "ephemeral_id": {
      "$ref": "#/components/schemas/turnstile_ephemeral_id"
    },
    "bot_fight_mode": {
      "$ref": "#/components/schemas/turnstile_bot_fight_mode"
    },
    "clearance_level": {
      "$ref": "#/components/schemas/turnstile_clearance_level"
    }
  },
  "description": "A Turnstile widget's detailed configuration"
}
object turnstile_widget_list
{
  "type": "object",
  "required": [
    "sitekey",
    "created_on",
    "modified_on",
    "name",
    "domains",
    "mode",
    "region",
    "bot_fight_mode",
    "offlabel",
    "clearance_level",
    "ephemeral_id"
  ],
  "properties": {
    "mode": {
      "$ref": "#/components/schemas/turnstile_widget_mode"
    },
    "name": {
      "$ref": "#/components/schemas/turnstile_name"
    },
    "region": {
      "$ref": "#/components/schemas/turnstile_region"
    },
    "domains": {
      "$ref": "#/components/schemas/turnstile_domains"
    },
    "sitekey": {
      "$ref": "#/components/schemas/turnstile_sitekey"
    },
    "offlabel": {
      "$ref": "#/components/schemas/turnstile_offlabel"
    },
    "created_on": {
      "$ref": "#/components/schemas/turnstile_created_on"
    },
    "modified_on": {
      "$ref": "#/components/schemas/turnstile_modified_on"
    },
    "ephemeral_id": {
      "$ref": "#/components/schemas/turnstile_ephemeral_id"
    },
    "bot_fight_mode": {
      "$ref": "#/components/schemas/turnstile_bot_fight_mode"
    },
    "clearance_level": {
      "$ref": "#/components/schemas/turnstile_clearance_level"
    }
  },
  "description": "A Turnstile Widgets configuration as it appears in listings"
}
string turnstile_widget_mode
{
  "enum": [
    "non-interactive",
    "invisible",
    "managed"
  ],
  "type": "string",
  "example": "invisible",
  "description": "Widget Mode",
  "x-auditable": true
}
object vectorize_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/vectorize_api-response-common"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {},
          "nullable": true
        },
        "result_info": {
          "$ref": "#/components/schemas/vectorize_result_info"
        }
      }
    }
  ]
}
object vectorize_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/vectorize_messages"
    },
    "result": {
      "anyOf": [
        {
          "type": "object"
        },
        {
          "type": "array",
          "items": {}
        },
        {
          "type": "string"
        }
      ]
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful"
    },
    "messages": {
      "$ref": "#/components/schemas/vectorize_messages"
    }
  }
}
object vectorize_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/vectorize_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful"
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/vectorize_messages"
        }
      ],
      "example": []
    }
  }
}
object vectorize_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/vectorize_api-response-common"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "anyOf": [
            {
              "type": "object"
            },
            {
              "type": "string"
            }
          ],
          "nullable": true
        }
      }
    }
  ]
}
object vectorize_create-index-request
{
  "type": "object",
  "required": [
    "name",
    "config"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/vectorize_index-name"
    },
    "config": {
      "allOf": [
        {
          "$ref": "#/components/schemas/vectorize_index-configuration"
        }
      ]
    },
    "description": {
      "$ref": "#/components/schemas/vectorize_index-description"
    }
  }
}
object vectorize_create-index-response
{
  "type": "object",
  "properties": {
    "name": {
      "$ref": "#/components/schemas/vectorize_index-name"
    },
    "config": {
      "$ref": "#/components/schemas/vectorize_index-dimension-configuration"
    },
    "created_on": {
      "type": "string",
      "format": "date-time",
      "example": "2022-11-15T18:25:44.442097Z",
      "readOnly": true,
      "description": "Specifies the timestamp the resource was created as an ISO8601 string.",
      "x-auditable": true
    },
    "description": {
      "$ref": "#/components/schemas/vectorize_index-description"
    },
    "modified_on": {
      "type": "string",
      "format": "date-time",
      "example": "2022-11-15T18:25:44.442097Z",
      "readOnly": true,
      "description": "Specifies the timestamp the resource was modified as an ISO8601 string.",
      "x-auditable": true
    }
  }
}
object vectorize_create-metadata-index-request
{
  "type": "object",
  "required": [
    "propertyName",
    "indexType"
  ],
  "properties": {
    "indexType": {
      "enum": [
        "string",
        "number",
        "boolean"
      ],
      "type": "string",
      "description": "Specifies the type of metadata property to index.",
      "x-auditable": true
    },
    "propertyName": {
      "type": "string",
      "example": "random_metadata_property",
      "description": "Specifies the metadata property to index.",
      "x-auditable": true
    }
  }
}
object vectorize_create-metadata-index-response
{
  "type": "object",
  "properties": {
    "mutationId": {
      "$ref": "#/components/schemas/vectorize_mutation-uuid"
    }
  }
}
object vectorize_delete-metadata-index-request
{
  "type": "object",
  "required": [
    "propertyName"
  ],
  "properties": {
    "propertyName": {
      "type": "string",
      "example": "random_metadata_property",
      "description": "Specifies the metadata property for which the index must be deleted.",
      "x-auditable": true
    }
  }
}
object vectorize_delete-metadata-index-response
{
  "type": "object",
  "properties": {
    "mutationId": {
      "$ref": "#/components/schemas/vectorize_mutation-uuid"
    }
  }
}
string vectorize_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "readOnly": true,
  "maxLength": 32,
  "description": "Identifier",
  "x-auditable": true
}
object vectorize_index-configuration
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/vectorize_index-dimension-configuration"
    },
    {
      "$ref": "#/components/schemas/vectorize_index-preset-configuration"
    }
  ],
  "description": "Specifies the type of configuration to use for the index."
}
object vectorize_index-delete-vectors-by-id-request
{
  "type": "object",
  "properties": {
    "ids": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/vectorize_vector-identifier"
      },
      "example": [
        "5121db81354a40c6aedc3fe1ace51c59",
        "f90eb49c2107486abdfd78c67e853430"
      ],
      "description": "A list of vector identifiers to delete from the index indicated by the path."
    }
  }
}
object vectorize_index-delete-vectors-by-id-response
{
  "type": "object",
  "properties": {
    "ids": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/vectorize_vector-identifier"
      },
      "description": "Array of vector identifiers of the vectors that were successfully processed for deletion."
    },
    "count": {
      "type": "integer",
      "example": 42,
      "description": "The count of the vectors successfully deleted."
    }
  }
}
object vectorize_index-delete-vectors-by-id-v2-response
{
  "type": "object",
  "properties": {
    "mutationId": {
      "$ref": "#/components/schemas/vectorize_mutation-uuid"
    }
  }
}
string vectorize_index-description
{
  "type": "string",
  "example": "This is my example index.",
  "description": "Specifies the description of the index.",
  "x-auditable": true
}
object vectorize_index-dimension-configuration
{
  "type": "object",
  "required": [
    "dimensions",
    "metric"
  ],
  "properties": {
    "metric": {
      "$ref": "#/components/schemas/vectorize_index-metric"
    },
    "dimensions": {
      "$ref": "#/components/schemas/vectorize_index-dimensions"
    }
  }
}
integer vectorize_index-dimensions
{
  "type": "integer",
  "example": 768,
  "maximum": 1536,
  "minimum": 1,
  "description": "Specifies the number of dimensions for the index",
  "x-auditable": true
}
object vectorize_index-get-vectors-by-id-request
{
  "type": "object",
  "properties": {
    "ids": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/vectorize_vector-identifier"
      },
      "example": [
        "5121db81354a40c6aedc3fe1ace51c59",
        "f90eb49c2107486abdfd78c67e853430"
      ],
      "description": "A list of vector identifiers to retrieve from the index indicated by the path."
    }
  }
}
array vectorize_index-get-vectors-by-id-response
{
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "id": {
        "$ref": "#/components/schemas/vectorize_vector-identifier"
      },
      "values": {
        "type": "array",
        "items": {
          "type": "number"
        }
      },
      "metadata": {
        "type": "object"
      },
      "namespace": {
        "type": "string",
        "nullable": true
      }
    }
  },
  "example": [
    {
      "id": "some-vector-id",
      "values": [
        0.812,
        0.621,
        0.261
      ],
      "metadata": {
        "another-key": "another-value",
        "customer-id": 442
      }
    },
    {
      "id": "other-vector-id",
      "values": [
        0.961,
        0.751,
        0.661
      ],
      "metadata": {
        "another-key": "with-a-value",
        "customer-id": 2151
      },
      "namespace": "namespaced"
    }
  ],
  "description": "Array of vectors with matching ids."
}
object vectorize_index-info-response
{
  "type": "object",
  "properties": {
    "dimensions": {
      "$ref": "#/components/schemas/vectorize_index-dimensions"
    },
    "vectorCount": {
      "type": "integer",
      "example": 300000,
      "description": "Specifies the number of vectors present in the index",
      "x-auditable": true
    },
    "processedUpToDatetime": {
      "type": "string",
      "format": "date-time",
      "example": "2024-07-22T18:25:44.442097Z",
      "nullable": true,
      "readOnly": true,
      "description": "Specifies the timestamp the last mutation batch was processed as an ISO8601 string.",
      "x-auditable": true
    },
    "processedUpToMutation": {
      "$ref": "#/components/schemas/vectorize_mutation-uuid"
    }
  }
}
object vectorize_index-insert-response
{
  "type": "object",
  "properties": {
    "ids": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/vectorize_vector-identifier"
      },
      "description": "Array of vector identifiers of the vectors successfully inserted."
    },
    "count": {
      "type": "integer",
      "example": 768,
      "description": "Specifies the count of the vectors successfully inserted.",
      "x-auditable": true
    }
  }
}
object vectorize_index-insert-v2-response
{
  "type": "object",
  "properties": {
    "mutationId": {
      "$ref": "#/components/schemas/vectorize_mutation-uuid"
    }
  }
}
object vectorize_index-list-vectors-response
{
  "type": "object",
  "required": [
    "count",
    "totalCount",
    "isTruncated",
    "vectors"
  ],
  "properties": {
    "count": {
      "type": "integer",
      "example": 100,
      "description": "Number of vectors returned in this response"
    },
    "vectors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/vectorize_vector-list-item"
      },
      "description": "Array of vector items"
    },
    "nextCursor": {
      "type": "string",
      "example": "suUTaDY5PFUiRweVccnzyt9n75suNPbXHPshvCzue5mHjtj7Letjvzlza9eGj099",
      "nullable": true,
      "description": "Cursor for the next page of results"
    },
    "totalCount": {
      "type": "integer",
      "example": 500,
      "description": "Total number of vectors in the index"
    },
    "isTruncated": {
      "type": "boolean",
      "example": true,
      "description": "Whether there are more vectors available beyond this response"
    },
    "cursorExpirationTimestamp": {
      "type": "string",
      "format": "date-time",
      "example": "2025-08-12T20:32:52.469144957+00:00",
      "nullable": true,
      "description": "When the cursor expires as an ISO8601 string"
    }
  }
}
string vectorize_index-metric
{
  "enum": [
    "cosine",
    "euclidean",
    "dot-product"
  ],
  "type": "string",
  "description": "Specifies the type of metric to use calculating distance.",
  "x-auditable": true
}
string vectorize_index-name
{
  "type": "string",
  "example": "example-index",
  "pattern": "^([a-z]+[a-z0-9_-]*[a-z0-9]+)$",
  "x-auditable": true
}
string vectorize_index-preset
{
  "enum": [
    "@cf/baai/bge-small-en-v1.5",
    "@cf/baai/bge-base-en-v1.5",
    "@cf/baai/bge-large-en-v1.5",
    "openai/text-embedding-ada-002",
    "cohere/embed-multilingual-v2.0"
  ],
  "type": "string",
  "example": "@cf/baai/bge-small-en-v1.5",
  "description": "Specifies the preset to use for the index.",
  "x-auditable": true
}
object vectorize_index-preset-configuration
{
  "type": "object",
  "required": [
    "preset"
  ],
  "properties": {
    "preset": {
      "$ref": "#/components/schemas/vectorize_index-preset"
    }
  }
}
object vectorize_index-query-request
{
  "type": "object",
  "required": [
    "vector"
  ],
  "properties": {
    "topK": {
      "type": "number",
      "default": 5,
      "example": 5,
      "description": "The number of nearest neighbors to find."
    },
    "filter": {
      "type": "object",
      "example": {
        "has_viewed": {
          "$ne": true
        },
        "streaming_platform": "netflix"
      },
      "description": "A metadata filter expression used to limit nearest neighbor results."
    },
    "vector": {
      "type": "array",
      "items": {
        "type": "number"
      },
      "example": [
        0.5,
        0.5,
        0.5
      ],
      "description": "The search vector that will be used to find the nearest neighbors."
    },
    "returnValues": {
      "type": "boolean",
      "default": false,
      "description": "Whether to return the values associated with the closest vectors."
    },
    "returnMetadata": {
      "type": "boolean",
      "default": false,
      "description": "Whether to return the metadata associated with the closest vectors."
    }
  }
}
object vectorize_index-query-response
{
  "type": "object",
  "properties": {
    "count": {
      "type": "integer",
      "description": "Specifies the count of vectors returned by the search"
    },
    "matches": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/vectorize_vector-identifier"
          },
          "score": {
            "type": "number",
            "description": "The score of the vector according to the index's distance metric"
          },
          "values": {
            "type": "array",
            "items": {
              "type": "number"
            },
            "nullable": true
          },
          "metadata": {
            "type": "object",
            "nullable": true
          }
        }
      },
      "description": "Array of vectors matched by the search"
    }
  }
}
object vectorize_index-query-v2-request
{
  "type": "object",
  "required": [
    "vector"
  ],
  "properties": {
    "topK": {
      "type": "number",
      "default": 5,
      "example": 5,
      "description": "The number of nearest neighbors to find."
    },
    "filter": {
      "type": "object",
      "example": {
        "has_viewed": {
          "$ne": true
        },
        "streaming_platform": "netflix"
      },
      "description": "A metadata filter expression used to limit nearest neighbor results."
    },
    "vector": {
      "type": "array",
      "items": {
        "type": "number"
      },
      "example": [
        0.5,
        0.5,
        0.5
      ],
      "description": "The search vector that will be used to find the nearest neighbors."
    },
    "returnValues": {
      "type": "boolean",
      "default": false,
      "description": "Whether to return the values associated with the closest vectors."
    },
    "returnMetadata": {
      "enum": [
        "none",
        "indexed",
        "all"
      ],
      "type": "string",
      "default": "none",
      "description": "Whether to return no metadata, indexed metadata or all metadata associated with the closest vectors."
    }
  }
}
object vectorize_index-query-v2-response
{
  "type": "object",
  "properties": {
    "count": {
      "type": "integer",
      "description": "Specifies the count of vectors returned by the search"
    },
    "matches": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/vectorize_vector-identifier"
          },
          "score": {
            "type": "number",
            "description": "The score of the vector according to the index's distance metric"
          },
          "values": {
            "type": "array",
            "items": {
              "type": "number"
            },
            "nullable": true
          },
          "metadata": {
            "type": "object",
            "nullable": true
          },
          "namespace": {
            "type": "string",
            "nullable": true
          }
        }
      },
      "description": "Array of vectors matched by the search"
    }
  }
}
object vectorize_index-upsert-response
{
  "type": "object",
  "properties": {
    "ids": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/vectorize_vector-identifier"
      },
      "description": "Array of vector identifiers of the vectors successfully inserted."
    },
    "count": {
      "type": "integer",
      "example": 768,
      "description": "Specifies the count of the vectors successfully inserted.",
      "x-auditable": true
    }
  }
}
object vectorize_index-upsert-v2-response
{
  "type": "object",
  "properties": {
    "mutationId": {
      "$ref": "#/components/schemas/vectorize_mutation-uuid"
    }
  }
}
object vectorize_list-metadata-index-response
{
  "type": "object",
  "example": {
    "metadataIndexes": [
      {
        "indexType": "number",
        "propertyName": "some-num-prop"
      },
      {
        "indexType": "string",
        "propertyName": "some-str-prop"
      },
      {
        "indexType": "boolean",
        "propertyName": "some-bool-prop"
      }
    ]
  },
  "properties": {
    "metadataIndexes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "indexType": {
            "enum": [
              "string",
              "number",
              "boolean"
            ],
            "type": "string",
            "description": "Specifies the type of indexed metadata property.",
            "x-auditable": true
          },
          "propertyName": {
            "type": "string",
            "example": "random_metadata_property",
            "description": "Specifies the indexed metadata property.",
            "x-auditable": true
          }
        }
      },
      "description": "Array of indexed metadata properties."
    }
  }
}
array vectorize_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "message": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
object vectorize_mutation-uuid
{
  "example": "0000aaaa-11bb-22cc-33dd-444444eeeeee",
  "maxLength": 36,
  "description": "The unique identifier for the async mutation operation containing the changeset.",
  "x-auditable": true
}
object vectorize_result_info
{
  "type": "object",
  "properties": {
    "page": {
      "type": "number",
      "example": 1,
      "description": "Current page within paginated list of results"
    },
    "count": {
      "type": "number",
      "example": 1,
      "description": "Total number of results for the requested service"
    },
    "per_page": {
      "type": "number",
      "example": 20,
      "description": "Number of results per page of results"
    },
    "total_count": {
      "type": "number",
      "example": 2000,
      "description": "Total results available without any search parameters"
    }
  }
}
object vectorize_update-index-request
{
  "type": "object",
  "required": [
    "description"
  ],
  "properties": {
    "description": {
      "$ref": "#/components/schemas/vectorize_index-description"
    }
  }
}
string vectorize_vector-identifier
{
  "type": "string",
  "example": "some-vector-id-023e105f4ecef8ad9ca31a8372d0c353",
  "readOnly": true,
  "maxLength": 64,
  "description": "Identifier for a Vector"
}
object vectorize_vector-list-item
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/vectorize_vector-identifier"
    }
  }
}
object vuln_scanner_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/vuln_scanner_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result_info": {
          "type": "object",
          "properties": {
            "page": {
              "type": "number",
              "example": 1,
              "description": "Current page within paginated list of results."
            },
            "count": {
              "type": "number",
              "example": 1,
              "description": "Total number of results for the requested service."
            },
            "per_page": {
              "type": "number",
              "example": 20,
              "description": "Number of results per page of results."
            },
            "total_count": {
              "type": "number",
              "example": 2000,
              "description": "Total results available without any search parameters."
            },
            "total_pages": {
              "type": "number",
              "example": 100,
              "description": "The number of total pages in the entire result set."
            }
          }
        }
      }
    }
  ]
}
object vuln_scanner_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/vuln_scanner_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/vuln_scanner_messages"
    }
  }
}
object vuln_scanner_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/vuln_scanner_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/vuln_scanner_messages"
        }
      ],
      "example": []
    }
  }
}
object vuln_scanner_bola-assertion-kind
{
  "oneOf": [
    {
      "type": "object",
      "required": [
        "type",
        "parameters"
      ],
      "properties": {
        "type": {
          "enum": [
            "http_status_within_range"
          ],
          "type": "string"
        },
        "parameters": {
          "$ref": "#/components/schemas/vuln_scanner_bola-http-status-range"
        }
      },
      "description": "Assert that an HTTP status code is within a range, e.g. to assert success for the 2xx range, or expected failure for the 4xx/5xx range."
    }
  ],
  "description": "The kind of assertion to make."
}
object vuln_scanner_bola-body-response
{
  "oneOf": [
    {
      "type": "object",
      "required": [
        "kind"
      ],
      "properties": {
        "kind": {
          "enum": [
            "not_found"
          ],
          "type": "string"
        }
      },
      "description": "No body was received."
    },
    {
      "type": "object",
      "required": [
        "kind",
        "contents",
        "truncated"
      ],
      "properties": {
        "kind": {
          "enum": [
            "bytes"
          ],
          "type": "string"
        },
        "contents": {
          "type": "string"
        },
        "truncated": {
          "type": "boolean"
        }
      },
      "description": "Body received but unable to read as UTF-8. Raw bytes, base64-encoded."
    },
    {
      "type": "object",
      "required": [
        "kind",
        "contents",
        "truncated"
      ],
      "properties": {
        "kind": {
          "enum": [
            "text"
          ],
          "type": "string"
        },
        "contents": {
          "type": "string"
        },
        "truncated": {
          "type": "boolean"
        }
      },
      "description": "Body received as valid UTF-8 text but not valid JSON."
    },
    {
      "type": "object",
      "required": [
        "kind",
        "contents",
        "truncated"
      ],
      "properties": {
        "kind": {
          "enum": [
            "json"
          ],
          "type": "string"
        },
        "contents": {
          "type": "string"
        },
        "truncated": {
          "type": "boolean"
        }
      },
      "description": "Body received as valid JSON."
    }
  ],
  "description": "HTTP response body preview."
}
string vuln_scanner_bola-credential-role
{
  "enum": [
    "owner",
    "attacker"
  ],
  "type": "string",
  "description": "Identifies the role a request was made with. The credential set governs this role. `owner` is the resource owner, `attacker` attempts to access resources."
}
object vuln_scanner_bola-credential-sets
{
  "type": "object",
  "required": [
    "owner",
    "attacker"
  ],
  "properties": {
    "owner": {
      "type": "string",
      "format": "uuid",
      "description": "Credential set ID for the resource owner."
    },
    "attacker": {
      "type": "string",
      "format": "uuid",
      "description": "Credential set ID for the attacker."
    }
  },
  "description": "Credential set references for a BOLA scan. The scanner uses the\n`owner` credentials for legitimate requests and the `attacker`\ncredentials to attempt unauthorized access.\n"
}
object vuln_scanner_bola-http-status-range
{
  "type": "object",
  "required": [
    "min",
    "max"
  ],
  "properties": {
    "max": {
      "type": "integer",
      "maximum": 65535,
      "minimum": 0,
      "description": "Maximum (inclusive) status code of the range."
    },
    "min": {
      "type": "integer",
      "maximum": 65535,
      "minimum": 0,
      "description": "Minimum (inclusive) status code of the range."
    }
  },
  "description": "Range of HTTP status codes."
}
string vuln_scanner_bola-method
{
  "enum": [
    "GET",
    "DELETE",
    "PATCH",
    "POST",
    "PUT"
  ],
  "type": "string",
  "description": "HTTP method."
}
string vuln_scanner_bola-outcome
{
  "enum": [
    "ok",
    "fail",
    "inconclusive"
  ],
  "type": "string",
  "description": "Outcome of an assertion. `ok` means the assertion passed, `fail` means the assertion failed, `inconclusive` means the scanner could not evaluate the assertion."
}
object vuln_scanner_bola-report
{
  "type": "object",
  "required": [
    "report_schema_version",
    "report"
  ],
  "properties": {
    "report": {
      "allOf": [
        {
          "$ref": "#/components/schemas/vuln_scanner_bola-report-v1"
        }
      ]
    },
    "report_schema_version": {
      "enum": [
        "v1"
      ],
      "type": "string",
      "description": "Version of the report schema."
    }
  },
  "description": "A BOLA vulnerability scan report, versioned for future evolution."
}
object vuln_scanner_bola-report-summary
{
  "type": "object",
  "required": [
    "verdict"
  ],
  "properties": {
    "verdict": {
      "allOf": [
        {
          "$ref": "#/components/schemas/vuln_scanner_bola-verdict"
        }
      ],
      "description": "Overall verdict of the vulnerability scan."
    }
  },
  "description": "Overall report summary."
}
object vuln_scanner_bola-report-v1
{
  "type": "object",
  "required": [
    "summary",
    "tests"
  ],
  "properties": {
    "tests": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/vuln_scanner_bola-test"
      },
      "description": "List of tests that were run."
    },
    "summary": {
      "allOf": [
        {
          "$ref": "#/components/schemas/vuln_scanner_bola-report-summary"
        }
      ],
      "description": "Summary of all steps and findings."
    }
  },
  "description": "Version 1 of the BOLA vulnerability scan report."
}
object vuln_scanner_bola-test
{
  "type": "object",
  "required": [
    "verdict",
    "steps"
  ],
  "properties": {
    "steps": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/vuln_scanner_bola-test-step"
      },
      "description": "Steps that were executed."
    },
    "verdict": {
      "allOf": [
        {
          "$ref": "#/components/schemas/vuln_scanner_bola-verdict"
        }
      ],
      "description": "Verdict of this single test."
    },
    "preflight_errors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/vuln_scanner_bola-test-error"
      },
      "description": "Errors that prevented step execution."
    }
  },
  "description": "Result of a single test."
}
object vuln_scanner_bola-test-assertion
{
  "type": "object",
  "required": [
    "description",
    "kind",
    "observed",
    "outcome"
  ],
  "properties": {
    "kind": {
      "allOf": [
        {
          "$ref": "#/components/schemas/vuln_scanner_bola-assertion-kind"
        }
      ],
      "description": "Kind of assertion."
    },
    "outcome": {
      "allOf": [
        {
          "$ref": "#/components/schemas/vuln_scanner_bola-outcome"
        }
      ],
      "description": "Outcome of the assertion."
    },
    "observed": {
      "type": "integer",
      "nullable": true,
      "description": "Observed value on which the assertion was made."
    },
    "description": {
      "type": "string",
      "description": "Human-readable description of the assertion, explaining what was checked."
    }
  },
  "description": "Assertion that was made against the received response."
}
object vuln_scanner_bola-test-credential-set
{
  "type": "object",
  "required": [
    "id",
    "role"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid",
      "description": "ID of the credential set."
    },
    "role": {
      "allOf": [
        {
          "$ref": "#/components/schemas/vuln_scanner_bola-credential-role"
        }
      ],
      "description": "Role of the credential set."
    }
  },
  "description": "Credential set that was used."
}
object vuln_scanner_bola-test-error
{
  "type": "object",
  "required": [
    "description"
  ],
  "properties": {
    "error_code": {
      "type": "integer",
      "format": "uint32",
      "minimum": 0,
      "nullable": true,
      "description": "Numeric error code identifying the class of error, if available."
    },
    "description": {
      "type": "string",
      "description": "Human-readable error description."
    }
  },
  "description": "Error that occurred during a test."
}
object vuln_scanner_bola-test-request
{
  "type": "object",
  "required": [
    "method",
    "url",
    "credential_set",
    "header_names",
    "variable_captures"
  ],
  "properties": {
    "url": {
      "type": "string",
      "format": "uri",
      "description": "Exact and full URL (including host, query parameters) that was requested."
    },
    "body": {
      "type": "object",
      "nullable": true,
      "description": "Request body, if any."
    },
    "method": {
      "allOf": [
        {
          "$ref": "#/components/schemas/vuln_scanner_bola-method"
        }
      ],
      "description": "HTTP method."
    },
    "header_names": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Names of headers that were sent."
    },
    "credential_set": {
      "allOf": [
        {
          "$ref": "#/components/schemas/vuln_scanner_bola-test-credential-set"
        }
      ],
      "description": "Credential set that was used."
    },
    "variable_captures": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/vuln_scanner_bola-variable-capture"
      },
      "description": "Variable captures requested for this step."
    }
  },
  "description": "HTTP request that was made."
}
object vuln_scanner_bola-test-response
{
  "type": "object",
  "required": [
    "status",
    "header_names",
    "body"
  ],
  "properties": {
    "body": {
      "allOf": [
        {
          "$ref": "#/components/schemas/vuln_scanner_bola-body-response"
        }
      ],
      "description": "HTTP response body."
    },
    "status": {
      "type": "integer",
      "maximum": 65535,
      "minimum": 0,
      "description": "HTTP status code."
    },
    "status_text": {
      "type": "string",
      "nullable": true,
      "description": "HTTP status text, if available for the status code."
    },
    "header_names": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Names of headers that were received."
    }
  },
  "description": "HTTP response that was received."
}
object vuln_scanner_bola-test-step
{
  "type": "object",
  "required": [
    "assertions"
  ],
  "properties": {
    "errors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/vuln_scanner_bola-test-error"
      },
      "description": "Errors the step encountered that may explain absent or incomplete fields."
    },
    "request": {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/vuln_scanner_bola-test-request"
        }
      ],
      "nullable": true,
      "description": "HTTP request that was made, if any."
    },
    "response": {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/vuln_scanner_bola-test-response"
        }
      ],
      "nullable": true,
      "description": "HTTP response that was received, if any."
    },
    "assertions": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/vuln_scanner_bola-test-assertion"
      },
      "description": "Assertions that were made against the received response."
    }
  },
  "description": "A single step in a test."
}
object vuln_scanner_bola-variable-capture
{
  "type": "object",
  "required": [
    "name",
    "json_path"
  ],
  "properties": {
    "name": {
      "type": "string",
      "description": "Variable name, e.g. `\"resource_id\"`."
    },
    "json_path": {
      "type": "string",
      "description": "JSONPath expression used for capture, e.g. `\"$.id\"`."
    }
  },
  "description": "A variable to capture from the response body."
}
string vuln_scanner_bola-verdict
{
  "enum": [
    "ok",
    "warning",
    "inconclusive"
  ],
  "type": "string",
  "description": "A verdict. `ok` means the scan passed, `warning` means the scan detected issues, `inconclusive` means errors prevented the scanner from reaching an accurate verdict."
}
object vuln_scanner_create-bola-scan-request
{
  "type": "object",
  "required": [
    "target_environment_id",
    "scan_type",
    "open_api",
    "credential_sets"
  ],
  "properties": {
    "open_api": {
      "type": "string",
      "description": "OpenAPI schema definition for the API under test. The scanner\nuses this to discover endpoints and construct requests.\n"
    },
    "scan_type": {
      "enum": [
        "bola"
      ],
      "type": "string"
    },
    "credential_sets": {
      "$ref": "#/components/schemas/vuln_scanner_bola-credential-sets"
    },
    "target_environment_id": {
      "type": "string",
      "format": "uuid",
      "description": "The target environment to scan."
    }
  }
}
object vuln_scanner_create-credential-request
{
  "type": "object",
  "required": [
    "name",
    "location",
    "location_name",
    "value"
  ],
  "properties": {
    "name": {
      "type": "string",
      "example": "Admin API key",
      "description": "Human-readable name."
    },
    "value": {
      "type": "string",
      "example": "Bearer EXAMPLE_TOKEN",
      "writeOnly": true,
      "description": "The credential value (e.g. API key, session token). Write-only.\nNever returned in responses.\n",
      "x-sensitive": true
    },
    "location": {
      "$ref": "#/components/schemas/vuln_scanner_credential-location"
    },
    "location_name": {
      "type": "string",
      "example": "Authorization",
      "description": "Name of the header or cookie where the credential is attached.\n"
    }
  }
}
object vuln_scanner_create-credential-set-request
{
  "type": "object",
  "required": [
    "name"
  ],
  "properties": {
    "name": {
      "type": "string",
      "example": "Production API credentials",
      "description": "Human-readable name."
    }
  }
}
object vuln_scanner_create-scan-request
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/vuln_scanner_create-bola-scan-request"
    }
  ],
  "description": "Create a new vulnerability scan. The `scan_type` discriminator\nselects the scan variant and its required context fields.\n",
  "discriminator": {
    "mapping": {
      "bola": "#/components/schemas/vuln_scanner_create-bola-scan-request"
    },
    "propertyName": "scan_type"
  }
}
object vuln_scanner_create-target-environment-request
{
  "type": "object",
  "required": [
    "name",
    "target"
  ],
  "properties": {
    "name": {
      "type": "string",
      "example": "Production Zone",
      "description": "Human-readable name."
    },
    "target": {
      "$ref": "#/components/schemas/vuln_scanner_target-type"
    },
    "description": {
      "type": "string",
      "example": "Main production environment",
      "nullable": true,
      "description": "Optional description."
    }
  }
}
object vuln_scanner_credential
{
  "type": "object",
  "required": [
    "id",
    "credential_set_id",
    "name",
    "location",
    "location_name"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid",
      "description": "Credential identifier.",
      "x-auditable": true
    },
    "name": {
      "type": "string",
      "example": "Admin API key",
      "description": "Human-readable name.",
      "x-auditable": true
    },
    "location": {
      "$ref": "#/components/schemas/vuln_scanner_credential-location"
    },
    "location_name": {
      "type": "string",
      "example": "Authorization",
      "description": "Name of the header or cookie where the credential is attached.\n",
      "x-auditable": true
    },
    "credential_set_id": {
      "type": "string",
      "format": "uuid",
      "description": "Parent credential set identifier.",
      "x-auditable": true
    }
  },
  "description": "A credential attached to API requests during scanning. The\ncredential `value` is write-only and never returned in responses.\n"
}
string vuln_scanner_credential-location
{
  "enum": [
    "header",
    "cookie"
  ],
  "type": "string",
  "description": "Where the credential is attached in outgoing requests.",
  "x-auditable": true
}
object vuln_scanner_credential-set
{
  "type": "object",
  "required": [
    "id",
    "name"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid",
      "description": "Credential set identifier.",
      "x-auditable": true
    },
    "name": {
      "type": "string",
      "example": "Production API credentials",
      "description": "Human-readable name.",
      "x-auditable": true
    }
  }
}
object vuln_scanner_empty-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/vuln_scanner_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "nullable": true
        },
        "result_info": {
          "type": "object",
          "nullable": true
        }
      }
    }
  ],
  "description": "Standard response envelope with a `null` result. Operations\nthat produce no result body return this response.\n"
}
string vuln_scanner_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Identifier.",
  "x-auditable": true
}
array vuln_scanner_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
object vuln_scanner_patch-credential-request
{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "example": "Admin API key",
      "description": "Human-readable name."
    },
    "value": {
      "type": "string",
      "example": "Bearer EXAMPLE_TOKEN",
      "writeOnly": true,
      "description": "The credential value. Write-only. Never returned in responses.\n",
      "x-sensitive": true
    },
    "location": {
      "$ref": "#/components/schemas/vuln_scanner_credential-location"
    },
    "location_name": {
      "type": "string",
      "example": "Authorization",
      "description": "Name of the header or cookie where the credential is attached.\n"
    }
  },
  "description": "Applies a partial update. Only the provided fields change; omitted fields remain unchanged."
}
object vuln_scanner_patch-credential-set-request
{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "example": "Production API credentials",
      "description": "Human-readable name."
    }
  },
  "description": "Applies a partial update. Only the provided fields change; omitted fields remain unchanged."
}
object vuln_scanner_patch-target-environment-request
{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "example": "Production Zone",
      "description": "Human-readable name."
    },
    "target": {
      "$ref": "#/components/schemas/vuln_scanner_target-type"
    },
    "description": {
      "type": "string",
      "example": "Main production environment",
      "nullable": true,
      "description": "Optional description. Omit to leave unchanged, set to `null`\nto clear, or provide a string to update.\n"
    }
  },
  "description": "Applies a partial update. Only the provided fields change; omitted fields remain unchanged.\n\nThe `description` field supports three states:\n- **omitted**: leave unchanged\n- **`null`**: clear the description\n- **`\"value\"`**: set to the given string\n"
}
object vuln_scanner_scan
{
  "type": "object",
  "required": [
    "id",
    "target_environment_id",
    "scan_type",
    "status"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid",
      "description": "Scan identifier.",
      "x-auditable": true
    },
    "report": {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/vuln_scanner_bola-report"
        }
      ],
      "nullable": true,
      "description": "Vulnerability report produced after the scan completes. The shape depends on the scan type. Present only for finished scans."
    },
    "status": {
      "enum": [
        "created",
        "scheduled",
        "planning",
        "running",
        "finished",
        "failed"
      ],
      "type": "string",
      "description": "Current lifecycle status of the scan.",
      "x-auditable": true
    },
    "scan_type": {
      "enum": [
        "bola"
      ],
      "type": "string",
      "description": "The type of vulnerability scan.",
      "x-auditable": true
    },
    "target_environment_id": {
      "type": "string",
      "format": "uuid",
      "description": "The target environment this scan runs against.",
      "x-auditable": true
    }
  }
}
object vuln_scanner_target-environment
{
  "type": "object",
  "required": [
    "id",
    "name",
    "target"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid",
      "description": "Target environment identifier.",
      "x-auditable": true
    },
    "name": {
      "type": "string",
      "example": "Production Zone",
      "description": "Human-readable name.",
      "x-auditable": true
    },
    "target": {
      "$ref": "#/components/schemas/vuln_scanner_target-type"
    },
    "description": {
      "type": "string",
      "example": "Main production environment",
      "nullable": true,
      "description": "Optional description providing additional context."
    }
  }
}
object vuln_scanner_target-type
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/vuln_scanner_zone-target"
    }
  ],
  "description": "Identifies the Cloudflare asset to scan. Uses a `type` discriminator.\nCurrently the service supports only `zone` targets.\n",
  "x-auditable": true,
  "discriminator": {
    "mapping": {
      "zone": "#/components/schemas/vuln_scanner_zone-target"
    },
    "propertyName": "type"
  }
}
object vuln_scanner_update-credential-request
{
  "type": "object",
  "required": [
    "name",
    "location",
    "location_name",
    "value"
  ],
  "properties": {
    "name": {
      "type": "string",
      "example": "Admin API key",
      "description": "Human-readable name."
    },
    "value": {
      "type": "string",
      "example": "Bearer EXAMPLE_TOKEN",
      "writeOnly": true,
      "description": "The credential value. Write-only. Never returned in responses.\n",
      "x-sensitive": true
    },
    "location": {
      "$ref": "#/components/schemas/vuln_scanner_credential-location"
    },
    "location_name": {
      "type": "string",
      "example": "Authorization",
      "description": "Name of the header or cookie where the credential is attached.\n"
    }
  },
  "description": "Full replacement. Provide all fields."
}
object vuln_scanner_update-credential-set-request
{
  "type": "object",
  "required": [
    "name"
  ],
  "properties": {
    "name": {
      "type": "string",
      "example": "Production API credentials",
      "description": "Human-readable name."
    }
  },
  "description": "Full replacement. Provide all fields."
}
object vuln_scanner_update-target-environment-request
{
  "type": "object",
  "required": [
    "name",
    "target"
  ],
  "properties": {
    "name": {
      "type": "string",
      "example": "Production Zone",
      "description": "Human-readable name."
    },
    "target": {
      "$ref": "#/components/schemas/vuln_scanner_target-type"
    },
    "description": {
      "type": "string",
      "example": "Main production environment",
      "nullable": true,
      "description": "Optional description."
    }
  },
  "description": "Full replacement."
}
object vuln_scanner_zone-target
{
  "type": "object",
  "required": [
    "type",
    "zone_tag"
  ],
  "properties": {
    "type": {
      "enum": [
        "zone"
      ],
      "type": "string"
    },
    "zone_tag": {
      "type": "string",
      "example": "d8e8fca2dc0f896fd7cb4cb0031ba249",
      "maxLength": 32,
      "description": "Cloudflare zone tag. The zone must belong to the account.\n"
    }
  }
}
array waf-managed-rules_allowed_modes
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/waf-managed-rules_mode"
  },
  "example": [
    "on",
    "off"
  ],
  "readOnly": true,
  "description": "Defines the available states for the rule group."
}
array waf-managed-rules_allowed_modes_allow_traditional
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/waf-managed-rules_mode_allow_traditional"
  },
  "example": [
    "on",
    "off"
  ],
  "readOnly": true,
  "description": "Defines the available modes for the current WAF rule."
}
array waf-managed-rules_allowed_modes_anomaly
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/waf-managed-rules_mode_anomaly"
  },
  "example": [
    "on",
    "off"
  ],
  "readOnly": true,
  "description": "Defines the available modes for the current WAF rule. Applies to anomaly detection WAF rules."
}
array waf-managed-rules_allowed_modes_deny_traditional
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/waf-managed-rules_mode_deny_traditional"
  },
  "example": [
    "default",
    "disable",
    "simulate",
    "block",
    "challenge"
  ],
  "readOnly": true,
  "description": "Defines the list of possible actions of the WAF rule when it is triggered."
}
object waf-managed-rules_anomaly_rule
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/waf-managed-rules_schemas-base"
    },
    {
      "type": "object",
      "properties": {
        "mode": {
          "$ref": "#/components/schemas/waf-managed-rules_mode_anomaly"
        },
        "allowed_modes": {
          "$ref": "#/components/schemas/waf-managed-rules_allowed_modes_anomaly"
        }
      }
    }
  ],
  "title": "Anomaly detection WAF rule",
  "required": [
    "id",
    "description",
    "priority",
    "allowed_modes",
    "mode",
    "group",
    "package_id"
  ],
  "description": "When triggered, anomaly detection WAF rules contribute to an overall threat score that will determine if a request is considered malicious. You can configure the total scoring threshold through the 'sensitivity' property of the WAF package."
}
object waf-managed-rules_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/waf-managed-rules_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result_info": {
          "$ref": "#/components/schemas/waf-managed-rules_result_info"
        }
      }
    }
  ]
}
object waf-managed-rules_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/waf-managed-rules_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Defines whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/waf-managed-rules_messages"
    }
  }
}
object waf-managed-rules_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/waf-managed-rules_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Defines whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/waf-managed-rules_messages"
        }
      ],
      "example": []
    }
  }
}
object waf-managed-rules_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/waf-managed-rules_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "oneOf": [
            {
              "type": "object",
              "nullable": true
            },
            {
              "type": "string",
              "nullable": true
            }
          ]
        }
      }
    }
  ]
}
object waf-managed-rules_base
{
  "properties": {
    "id": {
      "$ref": "#/components/schemas/waf-managed-rules_rule_components-schemas-identifier"
    },
    "group": {
      "type": "object",
      "readOnly": true,
      "properties": {
        "id": {
          "$ref": "#/components/schemas/waf-managed-rules_components-schemas-identifier"
        },
        "name": {
          "$ref": "#/components/schemas/waf-managed-rules_name"
        }
      },
      "description": "Defines the rule group to which the current WAF rule belongs."
    },
    "priority": {
      "$ref": "#/components/schemas/waf-managed-rules_priority"
    },
    "package_id": {
      "$ref": "#/components/schemas/waf-managed-rules_identifier"
    },
    "description": {
      "$ref": "#/components/schemas/waf-managed-rules_schemas-description"
    }
  }
}
string waf-managed-rules_components-schemas-identifier
{
  "type": "string",
  "example": "de677e5818985db1285d0e80225f06e5",
  "readOnly": true,
  "maxLength": 32,
  "description": "Defines the unique identifier of the rule group.",
  "x-auditable": true
}
string waf-managed-rules_default_mode
{
  "enum": [
    "disable",
    "simulate",
    "block",
    "challenge"
  ],
  "example": "block",
  "readOnly": true,
  "description": "Defines the default action/mode of a rule."
}
string waf-managed-rules_description
{
  "type": "string",
  "example": "Group designed to protect against IP addresses that are a threat and typically used to launch DDoS attacks",
  "nullable": true,
  "readOnly": true,
  "description": "Defines an informative summary of what the rule group does.",
  "x-auditable": true
}
object waf-managed-rules_group
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/waf-managed-rules_components-schemas-identifier"
    },
    "name": {
      "$ref": "#/components/schemas/waf-managed-rules_name"
    },
    "package_id": {
      "$ref": "#/components/schemas/waf-managed-rules_identifier"
    },
    "description": {
      "$ref": "#/components/schemas/waf-managed-rules_description"
    },
    "rules_count": {
      "$ref": "#/components/schemas/waf-managed-rules_rules_count"
    },
    "modified_rules_count": {
      "$ref": "#/components/schemas/waf-managed-rules_modified_rules_count"
    }
  }
}
string waf-managed-rules_identifier
{
  "type": "string",
  "example": "a25a9a7e9c00afc1fb2e0245519d725b",
  "readOnly": true,
  "maxLength": 32,
  "description": "Defines the unique identifier of a WAF package.",
  "x-auditable": true
}
array waf-managed-rules_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "message": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string waf-managed-rules_mode
{
  "enum": [
    "on",
    "off"
  ],
  "type": "string",
  "default": "on",
  "description": "Defines the state of the rules contained in the rule group. When `on`, the rules in the group are configurable/usable.",
  "x-auditable": true
}
string waf-managed-rules_mode_allow_traditional
{
  "enum": [
    "on",
    "off"
  ],
  "type": "string",
  "example": "on",
  "description": "When set to `on`, the current rule will be used when evaluating the request. Applies to traditional (allow) WAF rules.",
  "x-auditable": true
}
string waf-managed-rules_mode_anomaly
{
  "enum": [
    "on",
    "off"
  ],
  "type": "string",
  "example": "on",
  "description": "Defines the mode anomaly. When set to `on`, the current WAF rule will be used when evaluating the request. Applies to anomaly detection WAF rules.",
  "x-auditable": true
}
string waf-managed-rules_mode_deny_traditional
{
  "enum": [
    "default",
    "disable",
    "simulate",
    "block",
    "challenge"
  ],
  "type": "string",
  "example": "block",
  "description": "Defines the action that the current WAF rule will perform when triggered. Applies to traditional (deny) WAF rules.",
  "x-auditable": true
}
number waf-managed-rules_modified_rules_count
{
  "type": "number",
  "default": 0,
  "example": 2,
  "readOnly": true,
  "description": "Defines the number of rules within the group that have been modified from their default configuration.",
  "x-auditable": true
}
string waf-managed-rules_name
{
  "type": "string",
  "example": "Project Honey Pot",
  "readOnly": true,
  "description": "Defines the name of the rule group.",
  "x-auditable": true
}
string waf-managed-rules_priority
{
  "type": "string",
  "readOnly": true,
  "description": "Defines the order in which the individual WAF rule is executed within its rule group.",
  "x-auditable": true
}
object waf-managed-rules_result_info
{
  "type": "object",
  "properties": {
    "page": {
      "type": "number",
      "example": 1,
      "description": "Defines the current page within paginated list of results."
    },
    "count": {
      "type": "number",
      "example": 1,
      "description": "Defines the total number of results for the requested service."
    },
    "per_page": {
      "type": "number",
      "example": 20,
      "description": "Defines the number of results per page of results."
    },
    "total_count": {
      "type": "number",
      "example": 2000,
      "description": "Defines the total results available without any search parameters."
    }
  }
}
object waf-managed-rules_rule
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/waf-managed-rules_anomaly_rule"
    },
    {
      "$ref": "#/components/schemas/waf-managed-rules_traditional_deny_rule"
    },
    {
      "$ref": "#/components/schemas/waf-managed-rules_traditional_allow_rule"
    }
  ]
}
string waf-managed-rules_rule_components-schemas-identifier
{
  "type": "string",
  "example": "f939de3be84e66e757adcdcb87908023",
  "readOnly": true,
  "maxLength": 32,
  "description": "Defines the unique identifier of the WAF rule.",
  "x-auditable": true
}
object waf-managed-rules_rule_group_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/waf-managed-rules_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/waf-managed-rules_schemas-group"
          }
        }
      }
    }
  ]
}
object waf-managed-rules_rule_group_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/waf-managed-rules_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object"
        }
      }
    }
  ]
}
object waf-managed-rules_rule_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/waf-managed-rules_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/waf-managed-rules_rule"
          }
        }
      }
    }
  ]
}
object waf-managed-rules_rule_response_single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/waf-managed-rules_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object"
        }
      }
    }
  ]
}
number waf-managed-rules_rules_count
{
  "type": "number",
  "default": 0,
  "example": 10,
  "readOnly": true,
  "description": "Defines the number of rules in the current rule group.",
  "x-auditable": true
}
object waf-managed-rules_schemas-base
{
  "allOf": [
    {
      "$ref": "#/components/schemas/waf-managed-rules_base"
    }
  ]
}
string waf-managed-rules_schemas-description
{
  "type": "string",
  "example": "SQL injection prevention for SELECT statements",
  "readOnly": true,
  "description": "Defines the public description of the WAF rule.",
  "x-auditable": true
}
object waf-managed-rules_schemas-group
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/waf-managed-rules_group"
    },
    {
      "type": "object",
      "properties": {
        "mode": {
          "$ref": "#/components/schemas/waf-managed-rules_mode"
        },
        "allowed_modes": {
          "$ref": "#/components/schemas/waf-managed-rules_allowed_modes"
        }
      }
    }
  ],
  "required": [
    "id",
    "name",
    "description",
    "mode",
    "rules_count"
  ]
}
string waf-managed-rules_schemas-identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "readOnly": true,
  "maxLength": 32,
  "description": "Defines an identifier of a schema.",
  "x-auditable": true
}
object waf-managed-rules_traditional_allow_rule
{
  "allOf": [
    {
      "$ref": "#/components/schemas/waf-managed-rules_base"
    },
    {
      "type": "object",
      "properties": {
        "mode": {
          "$ref": "#/components/schemas/waf-managed-rules_mode_allow_traditional"
        },
        "allowed_modes": {
          "$ref": "#/components/schemas/waf-managed-rules_allowed_modes_allow_traditional"
        }
      }
    }
  ],
  "title": "Traditional (allow) WAF rule",
  "required": [
    "id",
    "description",
    "priority",
    "allowed_modes",
    "default_mode",
    "mode",
    "group",
    "package_id"
  ],
  "description": "When triggered, traditional WAF rules cause the firewall to immediately act on the request based on the rule configuration. An 'allow' rule will immediately allow the request and no other rules will be processed."
}
object waf-managed-rules_traditional_deny_rule
{
  "allOf": [
    {
      "$ref": "#/components/schemas/waf-managed-rules_base"
    },
    {
      "type": "object",
      "properties": {
        "mode": {
          "$ref": "#/components/schemas/waf-managed-rules_mode_deny_traditional"
        },
        "default_mode": {
          "$ref": "#/components/schemas/waf-managed-rules_default_mode"
        },
        "allowed_modes": {
          "$ref": "#/components/schemas/waf-managed-rules_allowed_modes_deny_traditional"
        }
      }
    }
  ],
  "title": "Traditional (deny) WAF rule",
  "required": [
    "id",
    "description",
    "priority",
    "allowed_modes",
    "default_mode",
    "mode",
    "group",
    "package_id"
  ],
  "description": "When triggered, traditional WAF rules cause the firewall to immediately act upon the request based on the configuration of the rule. A 'deny' rule will immediately respond to the request based on the configured rule action/mode (for example, 'block') and no other rules will be processed."
}
object waf-product-api-bundle_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/waf-product-api-bundle_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "type": "object"
          },
          "nullable": true
        }
      }
    }
  ]
}
object waf-product-api-bundle_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/waf-product-api-bundle_messages"
    },
    "result": {
      "anyOf": [
        {
          "type": "object"
        },
        {
          "type": "array",
          "items": {
            "type": "object"
          }
        },
        {
          "type": "string"
        }
      ]
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Defines whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/waf-product-api-bundle_messages"
    }
  }
}
object waf-product-api-bundle_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/waf-product-api-bundle_messages"
        }
      ],
      "example": [
        {
          "code": 10100,
          "message": "Unknown error occured, please try again"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Defines whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/waf-product-api-bundle_messages"
        }
      ],
      "example": []
    }
  }
}
object waf-product-api-bundle_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/waf-product-api-bundle_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "anyOf": [
            {
              "type": "object",
              "nullable": true
            },
            {
              "type": "string",
              "nullable": true
            }
          ]
        }
      }
    }
  ]
}
object waf-product-api-bundle_components-schemas-api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/waf-product-api-bundle_messages"
        }
      ],
      "example": [
        {
          "code": 13900,
          "message": "internal server error"
        }
      ],
      "minItems": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Defines whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/waf-product-api-bundle_messages"
        }
      ],
      "example": []
    }
  }
}
object waf-product-api-bundle_custom-detection
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/waf-product-api-bundle_detection-id"
    },
    "password": {
      "type": "string",
      "example": "lookup_json_string(http.request.body.raw, \"secret\")",
      "description": "Defines ehe ruleset expression to use in matching the password in a request.",
      "x-auditable": true
    },
    "username": {
      "type": "string",
      "example": "lookup_json_string(http.request.body.raw, \"user\")",
      "description": "Defines the ruleset expression to use in matching the username in a request.",
      "x-auditable": true
    }
  },
  "description": "Defines a custom set of username/password expressions to match Leaked Credential Checks on."
}
object waf-product-api-bundle_custom-scan
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/waf-product-api-bundle_custom-scan-id"
    },
    "payload": {
      "$ref": "#/components/schemas/waf-product-api-bundle_custom-scan-payload"
    }
  },
  "description": "Defines a custom scan expression to match Content Scanning on."
}
object waf-product-api-bundle_custom-scan-id
{
  "allOf": [
    {
      "$ref": "#/components/schemas/waf-product-api-bundle_identifier"
    }
  ],
  "example": "a350a054caa840c9becd89c3b4f0195b",
  "description": "defines the unique ID for this custom scan expression."
}
string waf-product-api-bundle_custom-scan-payload
{
  "type": "string",
  "example": "lookup_json_string(http.request.body.raw, \"file\")",
  "description": "Defines the ruleset expression to use in matching content objects.",
  "x-auditable": true
}
object waf-product-api-bundle_custom-topic
{
  "type": "object",
  "required": [
    "label",
    "topic"
  ],
  "properties": {
    "label": {
      "type": "string",
      "example": "credit-cards",
      "pattern": "^[a-z0-9-]+$",
      "maxLength": 20,
      "minLength": 2,
      "description": "Unique label identifier. Must contain only lowercase letters (a–z), digits (0–9), and hyphens."
    },
    "topic": {
      "type": "string",
      "example": "credit card numbers",
      "maxLength": 50,
      "minLength": 2,
      "description": "Description of the topic category. Must contain only printable ASCII characters."
    }
  }
}
object waf-product-api-bundle_custom-topics
{
  "type": "object",
  "properties": {
    "topics": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/waf-product-api-bundle_custom-topic"
      },
      "maxItems": 20,
      "description": "Custom topic categories for Firewall for AI content detection."
    }
  }
}
object waf-product-api-bundle_detection-id
{
  "allOf": [
    {
      "$ref": "#/components/schemas/waf-product-api-bundle_identifier"
    }
  ],
  "example": "18a14bafaa8eb1df04ce683ec18c765e",
  "description": "Defines the unique ID for this custom detection.",
  "x-auditable": true
}
string waf-product-api-bundle_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "readOnly": true,
  "maxLength": 32,
  "description": "Defines an identifier.",
  "x-auditable": true
}
array waf-product-api-bundle_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "message": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
object waf-product-api-bundle_response-custom-detection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/waf-product-api-bundle_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/waf-product-api-bundle_custom-detection"
        }
      }
    }
  ]
}
object waf-product-api-bundle_response-custom-detection-collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/waf-product-api-bundle_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/waf-product-api-bundle_custom-detection"
          }
        }
      }
    }
  ]
}
object waf-product-api-bundle_response-custom-scan-collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/waf-product-api-bundle_schemas-api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/waf-product-api-bundle_custom-scan"
          }
        }
      }
    }
  ]
}
object waf-product-api-bundle_response-custom-topics
{
  "allOf": [
    {
      "$ref": "#/components/schemas/waf-product-api-bundle_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/waf-product-api-bundle_custom-topics"
        }
      }
    }
  ]
}
object waf-product-api-bundle_response-settings
{
  "allOf": [
    {
      "$ref": "#/components/schemas/waf-product-api-bundle_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/waf-product-api-bundle_settings"
        }
      }
    }
  ]
}
object waf-product-api-bundle_response-status
{
  "allOf": [
    {
      "$ref": "#/components/schemas/waf-product-api-bundle_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/waf-product-api-bundle_status"
        }
      }
    }
  ]
}
object waf-product-api-bundle_schemas-api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/waf-product-api-bundle_schemas-api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "type": "object"
          },
          "nullable": true
        }
      }
    }
  ]
}
object waf-product-api-bundle_schemas-api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/waf-product-api-bundle_messages"
    },
    "result": {
      "anyOf": [
        {
          "type": "object"
        },
        {
          "type": "array",
          "items": {
            "type": "object"
          }
        },
        {
          "type": "string",
          "nullable": true
        }
      ]
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/waf-product-api-bundle_messages"
    }
  }
}
object waf-product-api-bundle_schemas-api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/waf-product-api-bundle_messages"
        }
      ],
      "example": [
        {
          "code": 10000,
          "message": "Authentication error"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/waf-product-api-bundle_messages"
        }
      ],
      "example": []
    }
  }
}
object waf-product-api-bundle_schemas-api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/waf-product-api-bundle_schemas-api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "anyOf": [
            {
              "type": "object",
              "nullable": true
            },
            {
              "type": "string",
              "nullable": true
            }
          ]
        }
      }
    }
  ]
}
object waf-product-api-bundle_schemas-response-status
{
  "allOf": [
    {
      "$ref": "#/components/schemas/waf-product-api-bundle_schemas-api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/waf-product-api-bundle_schemas-status"
        }
      }
    }
  ]
}
object waf-product-api-bundle_schemas-status
{
  "type": "object",
  "properties": {
    "value": {
      "type": "string",
      "example": "enabled",
      "description": "Defines the status of Content Scanning.",
      "x-auditable": true
    },
    "modified": {
      "type": "string",
      "example": "2024-12-02T09:57:23.150259Z",
      "description": "Defines the last modification date (ISO 8601) of the Content Scanning status.",
      "x-auditable": true
    }
  },
  "description": "Defines the status for Content Scanning."
}
object waf-product-api-bundle_settings
{
  "type": "object",
  "properties": {
    "enabled": {
      "type": "boolean",
      "example": true,
      "description": "Whether Firewall for AI is enabled on the zone."
    }
  },
  "description": "Firewall for AI enablement status for a zone."
}
object waf-product-api-bundle_status
{
  "type": "object",
  "properties": {
    "enabled": {
      "type": "boolean",
      "example": true,
      "description": "Determines whether or not Leaked Credential Checks are enabled.",
      "x-auditable": true
    }
  },
  "description": "Defines the overall status for Leaked Credential Checks."
}
string waf-product-api-bundle_zone_id
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Defines the zone."
}
array waitingroom_additional_routes
{
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "host": {
        "type": "string",
        "example": "shop2.example.com",
        "description": "The hostname to which this waiting room will be applied (no wildcards). The hostname must be the primary domain, subdomain, or custom hostname (if using SSL for SaaS) of this zone. Please do not include the scheme (http:// or https://).",
        "x-auditable": true
      },
      "path": {
        "type": "string",
        "default": "/",
        "example": "/shop2/checkout",
        "description": "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.",
        "x-auditable": true
      }
    }
  },
  "description": "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."
}
object waitingroom_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/waitingroom_schemas-api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result_info": {
          "type": "object",
          "properties": {
            "page": {
              "type": "number",
              "example": 1,
              "description": "Current page within paginated list of results."
            },
            "count": {
              "type": "number",
              "example": 1,
              "description": "Total number of results for the requested service."
            },
            "per_page": {
              "type": "number",
              "example": 20,
              "description": "Number of results per page of results."
            },
            "total_count": {
              "type": "number",
              "example": 2000,
              "description": "Total results available without any search parameters."
            },
            "total_pages": {
              "type": "number",
              "example": 100,
              "description": "The number of total pages in the entire result set."
            }
          }
        }
      }
    }
  ]
}
object waitingroom_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ]
}
object waitingroom_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/waitingroom_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/waitingroom_messages"
        }
      ],
      "example": []
    }
  }
}
object waitingroom_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/waitingroom_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "oneOf": [
            {
              "type": "object"
            },
            {
              "type": "string"
            }
          ]
        }
      }
    }
  ]
}
object waitingroom_cookie_attributes
{
  "type": "object",
  "properties": {
    "secure": {
      "enum": [
        "auto",
        "always",
        "never"
      ],
      "type": "string",
      "default": "auto",
      "example": "auto",
      "description": "Configures the Secure attribute on the waiting room cookie. Value `always` indicates that the Secure attribute will be set in the Set-Cookie header, `never` indicates that the Secure attribute will not be set, and `auto` will set the Secure attribute depending if **Always Use HTTPS** is enabled.",
      "x-auditable": true
    },
    "samesite": {
      "enum": [
        "auto",
        "lax",
        "none",
        "strict"
      ],
      "type": "string",
      "default": "auto",
      "example": "auto",
      "description": "Configures the SameSite attribute on the waiting room cookie. Value `auto` will be translated to `lax` or `none` depending if **Always Use HTTPS** is enabled. Note that when using value `none`, the secure attribute cannot be set to `never`.",
      "x-auditable": true
    }
  },
  "description": "Configures cookie attributes for the waiting room cookie. This encrypted cookie stores a user's status in the waiting room, such as queue position."
}
string waitingroom_cookie_suffix
{
  "type": "string",
  "default": "",
  "example": "abcd",
  "description": "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`.",
  "x-auditable": true
}
object waitingroom_create_rule
{
  "type": "object",
  "required": [
    "action",
    "expression"
  ],
  "properties": {
    "action": {
      "$ref": "#/components/schemas/waitingroom_rule_action"
    },
    "enabled": {
      "$ref": "#/components/schemas/waitingroom_rule_enabled"
    },
    "expression": {
      "$ref": "#/components/schemas/waitingroom_rule_expression"
    },
    "description": {
      "$ref": "#/components/schemas/waitingroom_rule_description"
    }
  }
}
string waitingroom_custom_page_html
{
  "type": "string",
  "default": "",
  "example": "{{#waitTimeKnown}} {{waitTime}} mins {{/waitTimeKnown}} {{^waitTimeKnown}} Queue all enabled {{/waitTimeKnown}}",
  "description": "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:\n1. {{`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**.\n2. {{`waitTimeFormatted`}} Estimated wait time for the user. For example, five minutes. Alternatively, you can use:\n3. {{`waitTime`}} Number of minutes of estimated wait for a user.\n4. {{`waitTimeHours`}} Number of hours of estimated wait for a user (`Math.floor(waitTime/60)`).\n5. {{`waitTimeHourMinutes`}} Number of minutes above the `waitTimeHours` value (`waitTime%60`).\n6. {{`queueIsFull`}} Changes to **true** when no more people can be added to the queue.\n\nTo view the full list of variables, look at the `cfWaitingRoom` object described under the `json_response_enabled` property in other Waiting Room API calls.",
  "x-auditable": true
}
string waitingroom_default_template_language
{
  "enum": [
    "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"
  ],
  "type": "string",
  "default": "en-US",
  "example": "es-ES",
  "description": "The language of the default page template. If no default_template_language is provided, then `en-US` (English) will be used.",
  "x-auditable": true
}
string waitingroom_description
{
  "type": "string",
  "default": "",
  "example": "Production - DO NOT MODIFY",
  "description": "A note that you can use to add more details about the waiting room.",
  "x-auditable": true
}
boolean waitingroom_disable_session_renewal
{
  "type": "boolean",
  "default": false,
  "example": false,
  "description": "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.",
  "x-auditable": true
}
array waitingroom_enabled_origin_commands
{
  "type": "array",
  "items": {
    "enum": [
      "revoke"
    ],
    "type": "string",
    "uniqueItems": true,
    "x-auditable": true
  },
  "default": [],
  "description": "A list of enabled origin commands."
}
integer waitingroom_estimated_queued_users
{
  "type": "integer",
  "x-auditable": true
}
integer waitingroom_estimated_total_active_users
{
  "type": "integer",
  "x-auditable": true
}
string waitingroom_event_custom_page_html
{
  "type": "string",
  "example": "{{#waitTimeKnown}} {{waitTime}} mins {{/waitTimeKnown}} {{^waitTimeKnown}} Event is prequeueing / Queue all enabled {{/waitTimeKnown}}",
  "nullable": true,
  "description": "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.",
  "x-auditable": true
}
string waitingroom_event_description
{
  "type": "string",
  "default": "",
  "example": "Production event - DO NOT MODIFY",
  "description": "A note that you can use to add more details about the event.",
  "x-auditable": true
}
string waitingroom_event_details_custom_page_html
{
  "type": "string",
  "example": "{{#waitTimeKnown}} {{waitTime}} mins {{/waitTimeKnown}} {{^waitTimeKnown}} Event is prequeueing / Queue all enabled {{/waitTimeKnown}}",
  "x-auditable": true
}
boolean waitingroom_event_details_disable_session_renewal
{
  "type": "boolean",
  "example": false,
  "x-auditable": true
}
integer waitingroom_event_details_new_users_per_minute
{
  "type": "integer",
  "x-auditable": true
}
string waitingroom_event_details_queueing_method
{
  "type": "string",
  "example": "random",
  "x-auditable": true
}
object waitingroom_event_details_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/waitingroom_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/waitingroom_event_details_result"
        }
      }
    }
  ]
}
object waitingroom_event_details_result
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/waitingroom_event_id"
    },
    "name": {
      "$ref": "#/components/schemas/waitingroom_event_name"
    },
    "suspended": {
      "$ref": "#/components/schemas/waitingroom_event_suspended"
    },
    "created_on": {
      "$ref": "#/components/schemas/waitingroom_timestamp"
    },
    "description": {
      "$ref": "#/components/schemas/waitingroom_event_description"
    },
    "modified_on": {
      "$ref": "#/components/schemas/waitingroom_timestamp"
    },
    "event_end_time": {
      "$ref": "#/components/schemas/waitingroom_event_end_time"
    },
    "queueing_method": {
      "$ref": "#/components/schemas/waitingroom_event_details_queueing_method"
    },
    "custom_page_html": {
      "$ref": "#/components/schemas/waitingroom_event_details_custom_page_html"
    },
    "event_start_time": {
      "$ref": "#/components/schemas/waitingroom_event_start_time"
    },
    "session_duration": {
      "$ref": "#/components/schemas/waitingroom_event_details_session_duration"
    },
    "total_active_users": {
      "$ref": "#/components/schemas/waitingroom_event_details_total_active_users"
    },
    "prequeue_start_time": {
      "$ref": "#/components/schemas/waitingroom_event_prequeue_start_time"
    },
    "new_users_per_minute": {
      "$ref": "#/components/schemas/waitingroom_event_details_new_users_per_minute"
    },
    "shuffle_at_event_start": {
      "$ref": "#/components/schemas/waitingroom_event_shuffle_at_event_start"
    },
    "disable_session_renewal": {
      "$ref": "#/components/schemas/waitingroom_event_details_disable_session_renewal"
    }
  }
}
integer waitingroom_event_details_session_duration
{
  "type": "integer",
  "x-auditable": true
}
integer waitingroom_event_details_total_active_users
{
  "type": "integer",
  "x-auditable": true
}
boolean waitingroom_event_disable_session_renewal
{
  "type": "boolean",
  "nullable": true,
  "description": "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.",
  "x-auditable": true
}
string waitingroom_event_end_time
{
  "type": "string",
  "example": "2021-09-28T17:00:00.000Z",
  "description": "An ISO 8601 timestamp that marks the end of the event.",
  "x-auditable": true
}
string waitingroom_event_id
{
  "type": "string",
  "example": "25756b2dfe6e378a06b033b670413757",
  "x-auditable": true
}
object waitingroom_event_id_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/waitingroom_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "id": {
              "$ref": "#/components/schemas/waitingroom_event_id"
            }
          }
        }
      }
    }
  ]
}
string waitingroom_event_name
{
  "type": "string",
  "example": "production_webinar_event",
  "description": "A unique name to identify the event. Only alphanumeric characters, hyphens and underscores are allowed.",
  "x-auditable": true
}
integer waitingroom_event_new_users_per_minute
{
  "type": "integer",
  "maximum": 2147483647,
  "minimum": 200,
  "nullable": true,
  "description": "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.",
  "x-auditable": true
}
string waitingroom_event_prequeue_start_time
{
  "type": "string",
  "example": "2021-09-28T15:00:00.000Z",
  "nullable": true,
  "description": "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`.",
  "x-auditable": true
}
string waitingroom_event_queueing_method
{
  "type": "string",
  "example": "random",
  "nullable": true,
  "description": "If set, the event will override the waiting room's `queueing_method` property while it is active. If null, the event will inherit it.",
  "x-auditable": true
}
object waitingroom_event_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/waitingroom_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/waitingroom_event_result"
        }
      }
    }
  ]
}
object waitingroom_event_response_collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/waitingroom_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/waitingroom_event_result"
          }
        }
      }
    }
  ]
}
object waitingroom_event_result
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/waitingroom_event_id"
    },
    "name": {
      "$ref": "#/components/schemas/waitingroom_event_name"
    },
    "suspended": {
      "$ref": "#/components/schemas/waitingroom_event_suspended"
    },
    "created_on": {
      "$ref": "#/components/schemas/waitingroom_timestamp"
    },
    "description": {
      "$ref": "#/components/schemas/waitingroom_event_description"
    },
    "modified_on": {
      "$ref": "#/components/schemas/waitingroom_timestamp"
    },
    "event_end_time": {
      "$ref": "#/components/schemas/waitingroom_event_end_time"
    },
    "turnstile_mode": {
      "$ref": "#/components/schemas/waitingroom_event_turnstile_mode"
    },
    "queueing_method": {
      "$ref": "#/components/schemas/waitingroom_event_queueing_method"
    },
    "custom_page_html": {
      "$ref": "#/components/schemas/waitingroom_event_custom_page_html"
    },
    "event_start_time": {
      "$ref": "#/components/schemas/waitingroom_event_start_time"
    },
    "session_duration": {
      "$ref": "#/components/schemas/waitingroom_event_session_duration"
    },
    "turnstile_action": {
      "$ref": "#/components/schemas/waitingroom_event_turnstile_action"
    },
    "total_active_users": {
      "$ref": "#/components/schemas/waitingroom_event_total_active_users"
    },
    "prequeue_start_time": {
      "$ref": "#/components/schemas/waitingroom_event_prequeue_start_time"
    },
    "new_users_per_minute": {
      "$ref": "#/components/schemas/waitingroom_event_new_users_per_minute"
    },
    "shuffle_at_event_start": {
      "$ref": "#/components/schemas/waitingroom_event_shuffle_at_event_start"
    },
    "disable_session_renewal": {
      "$ref": "#/components/schemas/waitingroom_event_disable_session_renewal"
    }
  }
}
integer waitingroom_event_session_duration
{
  "type": "integer",
  "maximum": 30,
  "minimum": 1,
  "nullable": true,
  "description": "If set, the event will override the waiting room's `session_duration` property while it is active. If null, the event will inherit it.",
  "x-auditable": true
}
boolean waitingroom_event_shuffle_at_event_start
{
  "type": "boolean",
  "default": false,
  "description": "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.",
  "x-auditable": true
}
string waitingroom_event_start_time
{
  "type": "string",
  "example": "2021-09-28T15:30:00.000Z",
  "description": "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`.",
  "x-auditable": true
}
boolean waitingroom_event_suspended
{
  "type": "boolean",
  "default": false,
  "description": "Suspends or allows an event. If set to `true`, the event is ignored and traffic will be handled based on the waiting room configuration.",
  "x-auditable": true
}
integer waitingroom_event_total_active_users
{
  "type": "integer",
  "maximum": 2147483647,
  "minimum": 200,
  "nullable": true,
  "description": "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.",
  "x-auditable": true
}
string waitingroom_event_turnstile_action
{
  "enum": [
    "log",
    "infinite_queue"
  ],
  "type": "string",
  "nullable": true,
  "description": "If set, the event will override the waiting room's `turnstile_action` property while it is active. If null, the event will inherit it.",
  "x-auditable": true
}
string waitingroom_event_turnstile_mode
{
  "enum": [
    "off",
    "invisible",
    "visible_non_interactive",
    "visible_managed"
  ],
  "type": "string",
  "nullable": true,
  "description": "If set, the event will override the waiting room's `turnstile_mode` property while it is active. If null, the event will inherit it.",
  "x-auditable": true
}
string waitingroom_host
{
  "type": "string",
  "example": "shop.example.com",
  "description": "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.",
  "x-auditable": true
}
string waitingroom_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Identifier.",
  "x-auditable": true
}
boolean waitingroom_json_response_enabled
{
  "type": "boolean",
  "default": false,
  "example": false,
  "description": "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:\n1. `inWaitingRoom`: Boolean indicating if the user is in the waiting room (always **true**).\n2. `waitTimeKnown`: Boolean indicating if the current estimated wait times are accurate. If **false**, they are not available.\n3. `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`.\n4. `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).\n5. `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.\n6. `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).\n7. `waitTimeFormatted`: String displaying the `waitTime` formatted in English for users. If `waitTimeKnown` is **false**, `waitTimeFormatted` will display **unavailable**.\n8. `queueIsFull`: Boolean indicating if the waiting room's queue is currently full and not accepting new users at the moment.\n9. `queueAll`: Boolean indicating if all users will be queued in the waiting room and no one will be let into the origin website.\n10. `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.\n11. `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**.\n12. `queueingMethod`: The queueing method currently used by the waiting room. It is either **fifo**, **random**, **passthrough**, or **reject**.\n13. `isFIFOQueue`: Boolean indicating if the waiting room uses a FIFO (First-In-First-Out) queue.\n14. `isRandomQueue`: Boolean indicating if the waiting room uses a Random queue where users gain access randomly.\n15. `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.\n16. `isRejectQueue`: Boolean indicating if the waiting room uses a reject queue.\n17. `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.\n18. `isEventPrequeueing`: Valid only when `isEventActive` is **true**. Boolean indicating if an event is currently prequeueing users before it starts.\n19. `timeUntilEventStart`: Valid only when `isEventPrequeueing` is **true**. Integer indicating the number of minutes until the event starts.\n20. `timeUntilEventStartFormatted`: String displaying the `timeUntilEventStart` formatted in English for users. If `isEventPrequeueing` is **false**, `timeUntilEventStartFormatted` will display **unavailable**.\n21. `timeUntilEventEnd`: Valid only when `isEventActive` is **true**. Integer indicating the number of minutes until the event ends.\n22. `timeUntilEventEndFormatted`: String displaying the `timeUntilEventEnd` formatted in English for users. If `isEventActive` is **false**, `timeUntilEventEndFormatted` will display **unavailable**.\n23. `shuffleAtEventStart`: Valid only when `isEventActive` is **true**. Boolean indicating if the users in the prequeue are shuffled randomly when the event starts.\n24. `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.\n25. `infiniteQueue`: Boolean indicating whether the response is for a user in the infinite queue.\n\nAn example cURL to a waiting room could be:\n\n\tcurl -X GET \"https://example.com/waitingroom\" \\\n\t\t-H \"Accept: application/json\"\n\nIf `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:\n\n\t{\n\t\t\"cfWaitingRoom\": {\n\t\t\t\"inWaitingRoom\": true,\n\t\t\t\"waitTimeKnown\": true,\n\t\t\t\"waitTime\": 10,\n\t\t\t\"waitTime25Percentile\": 0,\n\t\t\t\"waitTime50Percentile\": 0,\n\t\t\t\"waitTime75Percentile\": 0,\n\t\t\t\"waitTimeFormatted\": \"10 minutes\",\n\t\t\t\"queueIsFull\": false,\n\t\t\t\"queueAll\": false,\n\t\t\t\"lastUpdated\": \"2020-08-03T23:46:00.000Z\",\n\t\t\t\"refreshIntervalSeconds\": 20,\n\t\t\t\"queueingMethod\": \"fifo\",\n\t\t\t\"isFIFOQueue\": true,\n\t\t\t\"isRandomQueue\": false,\n\t\t\t\"isPassthroughQueue\": false,\n\t\t\t\"isRejectQueue\": false,\n\t\t\t\"isEventActive\": false,\n\t\t\t\"isEventPrequeueing\": false,\n\t\t\t\"timeUntilEventStart\": 0,\n\t\t\t\"timeUntilEventStartFormatted\": \"unavailable\",\n\t\t\t\"timeUntilEventEnd\": 0,\n\t\t\t\"timeUntilEventEndFormatted\": \"unavailable\",\n\t\t\t\"shuffleAtEventStart\": false\n\t\t}\n\t}\n\nIf `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:\n\n\t{\n\t\t\"cfWaitingRoom\": {\n\t\t\t\"inWaitingRoom\": true,\n\t\t\t\"waitTimeKnown\": true,\n\t\t\t\"waitTime\": 10,\n\t\t\t\"waitTime25Percentile\": 5,\n\t\t\t\"waitTime50Percentile\": 10,\n\t\t\t\"waitTime75Percentile\": 15,\n\t\t\t\"waitTimeFormatted\": \"5 minutes to 15 minutes\",\n\t\t\t\"queueIsFull\": false,\n\t\t\t\"queueAll\": false,\n\t\t\t\"lastUpdated\": \"2020-08-03T23:46:00.000Z\",\n\t\t\t\"refreshIntervalSeconds\": 20,\n\t\t\t\"queueingMethod\": \"random\",\n\t\t\t\"isFIFOQueue\": false,\n\t\t\t\"isRandomQueue\": true,\n\t\t\t\"isPassthroughQueue\": false,\n\t\t\t\"isRejectQueue\": false,\n\t\t\t\"isEventActive\": true,\n\t\t\t\"isEventPrequeueing\": false,\n\t\t\t\"timeUntilEventStart\": 0,\n\t\t\t\"timeUntilEventStartFormatted\": \"unavailable\",\n\t\t\t\"timeUntilEventEnd\": 15,\n\t\t\t\"timeUntilEventEndFormatted\": \"15 minutes\",\n\t\t\t\"shuffleAtEventStart\": true\n\t\t}\n\t}",
  "x-auditable": true
}
integer waitingroom_max_estimated_time_minutes
{
  "type": "integer",
  "x-auditable": true
}
array waitingroom_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string waitingroom_name
{
  "type": "string",
  "example": "production_webinar",
  "description": "A unique name to identify the waiting room. Only alphanumeric characters, hyphens and underscores are allowed.",
  "x-auditable": true
}
integer waitingroom_new_users_per_minute
{
  "type": "integer",
  "maximum": 2147483647,
  "minimum": 200,
  "description": "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.",
  "x-auditable": true
}
string waitingroom_next_event_prequeue_start_time
{
  "type": "string",
  "example": "2021-09-28T15:00:00.000Z",
  "nullable": true,
  "description": "An ISO 8601 timestamp that marks when the next event will begin queueing.",
  "x-auditable": true
}
string waitingroom_next_event_start_time
{
  "type": "string",
  "example": "2021-09-28T15:00:00.000Z",
  "nullable": true,
  "description": "An ISO 8601 timestamp that marks when the next event will start.",
  "x-auditable": true
}
object waitingroom_patch_rule
{
  "type": "object",
  "required": [
    "action",
    "expression"
  ],
  "properties": {
    "action": {
      "$ref": "#/components/schemas/waitingroom_rule_action"
    },
    "enabled": {
      "$ref": "#/components/schemas/waitingroom_rule_enabled"
    },
    "position": {
      "$ref": "#/components/schemas/waitingroom_rule_position"
    },
    "expression": {
      "$ref": "#/components/schemas/waitingroom_rule_expression"
    },
    "description": {
      "$ref": "#/components/schemas/waitingroom_rule_description"
    }
  }
}
string waitingroom_path
{
  "type": "string",
  "default": "/",
  "example": "/shop/checkout",
  "description": "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.",
  "x-auditable": true
}
object waitingroom_preview_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/waitingroom_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "preview_url": {
              "$ref": "#/components/schemas/waitingroom_preview_url"
            }
          }
        }
      }
    }
  ]
}
string waitingroom_preview_url
{
  "type": "string",
  "example": "http://waitingrooms.dev/preview/35af8c12-6d68-4608-babb-b53435a5ddfb",
  "description": "URL where the custom waiting room page can temporarily be previewed.",
  "x-auditable": true
}
object waitingroom_query_event
{
  "type": "object",
  "required": [
    "name",
    "event_start_time",
    "event_end_time"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/waitingroom_event_name"
    },
    "suspended": {
      "$ref": "#/components/schemas/waitingroom_event_suspended"
    },
    "description": {
      "$ref": "#/components/schemas/waitingroom_event_description"
    },
    "event_end_time": {
      "$ref": "#/components/schemas/waitingroom_event_end_time"
    },
    "turnstile_mode": {
      "$ref": "#/components/schemas/waitingroom_event_turnstile_mode"
    },
    "queueing_method": {
      "$ref": "#/components/schemas/waitingroom_event_queueing_method"
    },
    "custom_page_html": {
      "$ref": "#/components/schemas/waitingroom_event_custom_page_html"
    },
    "event_start_time": {
      "$ref": "#/components/schemas/waitingroom_event_start_time"
    },
    "session_duration": {
      "$ref": "#/components/schemas/waitingroom_event_session_duration"
    },
    "turnstile_action": {
      "$ref": "#/components/schemas/waitingroom_event_turnstile_action"
    },
    "total_active_users": {
      "$ref": "#/components/schemas/waitingroom_event_total_active_users"
    },
    "prequeue_start_time": {
      "$ref": "#/components/schemas/waitingroom_event_prequeue_start_time"
    },
    "new_users_per_minute": {
      "$ref": "#/components/schemas/waitingroom_event_new_users_per_minute"
    },
    "shuffle_at_event_start": {
      "$ref": "#/components/schemas/waitingroom_event_shuffle_at_event_start"
    },
    "disable_session_renewal": {
      "$ref": "#/components/schemas/waitingroom_event_disable_session_renewal"
    }
  }
}
object waitingroom_query_preview
{
  "type": "object",
  "required": [
    "custom_html"
  ],
  "properties": {
    "custom_html": {
      "$ref": "#/components/schemas/waitingroom_custom_page_html"
    }
  }
}
object waitingroom_query_waitingroom
{
  "type": "object",
  "required": [
    "name",
    "host",
    "new_users_per_minute",
    "total_active_users"
  ],
  "properties": {
    "host": {
      "$ref": "#/components/schemas/waitingroom_host"
    },
    "name": {
      "$ref": "#/components/schemas/waitingroom_name"
    },
    "path": {
      "$ref": "#/components/schemas/waitingroom_path"
    },
    "queue_all": {
      "$ref": "#/components/schemas/waitingroom_queue_all"
    },
    "suspended": {
      "$ref": "#/components/schemas/waitingroom_suspended"
    },
    "description": {
      "$ref": "#/components/schemas/waitingroom_description"
    },
    "cookie_suffix": {
      "$ref": "#/components/schemas/waitingroom_cookie_suffix"
    },
    "turnstile_mode": {
      "$ref": "#/components/schemas/waitingroom_turnstile_mode"
    },
    "queueing_method": {
      "$ref": "#/components/schemas/waitingroom_queueing_method"
    },
    "custom_page_html": {
      "$ref": "#/components/schemas/waitingroom_custom_page_html"
    },
    "session_duration": {
      "$ref": "#/components/schemas/waitingroom_session_duration"
    },
    "turnstile_action": {
      "$ref": "#/components/schemas/waitingroom_turnstile_action"
    },
    "additional_routes": {
      "$ref": "#/components/schemas/waitingroom_additional_routes"
    },
    "cookie_attributes": {
      "$ref": "#/components/schemas/waitingroom_cookie_attributes"
    },
    "total_active_users": {
      "$ref": "#/components/schemas/waitingroom_total_active_users"
    },
    "new_users_per_minute": {
      "$ref": "#/components/schemas/waitingroom_new_users_per_minute"
    },
    "queueing_status_code": {
      "$ref": "#/components/schemas/waitingroom_queueing_status_code"
    },
    "json_response_enabled": {
      "$ref": "#/components/schemas/waitingroom_json_response_enabled"
    },
    "disable_session_renewal": {
      "$ref": "#/components/schemas/waitingroom_disable_session_renewal"
    },
    "enabled_origin_commands": {
      "$ref": "#/components/schemas/waitingroom_enabled_origin_commands"
    },
    "default_template_language": {
      "$ref": "#/components/schemas/waitingroom_default_template_language"
    }
  }
}
boolean waitingroom_queue_all
{
  "type": "boolean",
  "default": false,
  "example": true,
  "description": "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.",
  "x-auditable": true
}
string waitingroom_queueing_method
{
  "enum": [
    "fifo",
    "random",
    "passthrough",
    "reject"
  ],
  "type": "string",
  "default": "fifo",
  "example": "fifo",
  "description": "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:\n1. `fifo` **(default)**: First-In-First-Out queue where customers gain access in the order they arrived.\n2. `random`: Random queue where customers gain access randomly, regardless of arrival time.\n3. `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.\n4. `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**.",
  "x-auditable": true
}
integer waitingroom_queueing_status_code
{
  "enum": [
    200,
    202,
    429
  ],
  "type": "integer",
  "default": 200,
  "example": 202,
  "description": "HTTP status code returned to a user while in the queue.",
  "x-auditable": true
}
object waitingroom_response_collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/waitingroom_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/waitingroom_waitingroom"
          }
        }
      }
    }
  ]
}
string waitingroom_rule_action
{
  "enum": [
    "bypass_waiting_room"
  ],
  "type": "string",
  "example": "bypass_waiting_room",
  "description": "The action to take when the expression matches.",
  "x-auditable": true
}
string waitingroom_rule_description
{
  "type": "string",
  "default": "",
  "example": "allow all traffic from 10.20.30.40",
  "description": "The description of the rule.",
  "x-auditable": true
}
boolean waitingroom_rule_enabled
{
  "type": "boolean",
  "default": true,
  "example": true,
  "description": "When set to true, the rule is enabled.",
  "x-auditable": true
}
string waitingroom_rule_expression
{
  "type": "string",
  "example": "ip.src in {10.20.30.40}",
  "description": "Criteria defining when there is a match for the current rule.",
  "x-auditable": true
}
string waitingroom_rule_id
{
  "type": "string",
  "example": "25756b2dfe6e378a06b033b670413757",
  "description": "The ID of the rule.",
  "x-auditable": true
}
object waitingroom_rule_position
{
  "type": "object",
  "oneOf": [
    {
      "type": "object",
      "properties": {
        "index": {
          "type": "integer",
          "description": "Places the rule in the exact position specified by the integer number <POSITION_NUMBER>. Position numbers start with 1. Existing rules in the ruleset from the specified position number onward are shifted one position (no rule is overwritten).",
          "x-auditable": true
        }
      }
    },
    {
      "type": "object",
      "properties": {
        "before": {
          "type": "string",
          "example": "<RULE_ID>",
          "description": "Places the rule before rule <RULE_ID>. Use this argument with an empty rule ID value (\"\") to set the rule as the first rule in the ruleset.",
          "x-auditable": true
        }
      }
    },
    {
      "type": "object",
      "properties": {
        "after": {
          "type": "string",
          "example": "<RULE_ID>",
          "description": "Places the rule after rule <RULE_ID>. Use this argument with an empty rule ID value (\"\") to set the rule as the last rule in the ruleset.",
          "x-auditable": true
        }
      }
    }
  ],
  "description": "Reorder the position of a rule"
}
object waitingroom_rule_result
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/waitingroom_rule_id"
    },
    "action": {
      "$ref": "#/components/schemas/waitingroom_rule_action"
    },
    "enabled": {
      "$ref": "#/components/schemas/waitingroom_rule_enabled"
    },
    "version": {
      "$ref": "#/components/schemas/waitingroom_rule_version"
    },
    "expression": {
      "$ref": "#/components/schemas/waitingroom_rule_expression"
    },
    "description": {
      "$ref": "#/components/schemas/waitingroom_rule_description"
    },
    "last_updated": {
      "$ref": "#/components/schemas/waitingroom_timestamp"
    }
  }
}
string waitingroom_rule_version
{
  "type": "string",
  "example": "1",
  "description": "The version of the rule.",
  "x-auditable": true
}
object waitingroom_rules_response_collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/waitingroom_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/waitingroom_rule_result"
          }
        }
      }
    }
  ]
}
object waitingroom_schemas-api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/waitingroom_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/waitingroom_messages"
    }
  }
}
boolean waitingroom_search_engine_crawler_bypass
{
  "type": "boolean",
  "default": false,
  "example": true,
  "description": "Whether to allow verified search engine crawlers to bypass all waiting rooms on this zone.\nVerified search engine crawlers will not be tracked or counted by the waiting room system,\nand will not appear in waiting room analytics.\n",
  "x-auditable": true
}
integer waitingroom_session_duration
{
  "type": "integer",
  "default": 5,
  "maximum": 30,
  "minimum": 1,
  "description": "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.",
  "x-auditable": true
}
object waitingroom_single_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/waitingroom_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/waitingroom_waitingroom"
        }
      }
    }
  ]
}
string waitingroom_status
{
  "enum": [
    "event_prequeueing",
    "not_queueing",
    "queueing",
    "suspended"
  ],
  "type": "string",
  "example": "queueing",
  "x-auditable": true
}
string waitingroom_status_event_id
{
  "type": "string",
  "example": "25756b2dfe6e378a06b033b670413757",
  "x-auditable": true
}
object waitingroom_status_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/waitingroom_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "status": {
              "$ref": "#/components/schemas/waitingroom_status"
            },
            "event_id": {
              "$ref": "#/components/schemas/waitingroom_status_event_id"
            },
            "estimated_queued_users": {
              "$ref": "#/components/schemas/waitingroom_estimated_queued_users"
            },
            "max_estimated_time_minutes": {
              "$ref": "#/components/schemas/waitingroom_max_estimated_time_minutes"
            },
            "estimated_total_active_users": {
              "$ref": "#/components/schemas/waitingroom_estimated_total_active_users"
            }
          }
        }
      }
    }
  ]
}
boolean waitingroom_suspended
{
  "type": "boolean",
  "default": false,
  "description": "Suspends or allows traffic going to the waiting room. If set to `true`, the traffic will not go to the waiting room.",
  "x-auditable": true
}
string waitingroom_timestamp
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-01T05:20:00.12345Z",
  "readOnly": true,
  "x-auditable": true
}
integer waitingroom_total_active_users
{
  "type": "integer",
  "maximum": 2147483647,
  "minimum": 200,
  "description": "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.",
  "x-auditable": true
}
string waitingroom_turnstile_action
{
  "enum": [
    "log",
    "infinite_queue"
  ],
  "type": "string",
  "default": "log",
  "description": "Which action to take when a bot is detected using Turnstile. `log` will\nhave no impact on queueing behavior, simply keeping track of how many\nbots are detected in Waiting Room Analytics. `infinite_queue` will send\nbots to a false queueing state, where they will never reach your\norigin. `infinite_queue` requires Advanced Waiting Room.\n",
  "x-auditable": true
}
string waitingroom_turnstile_mode
{
  "enum": [
    "off",
    "invisible",
    "visible_non_interactive",
    "visible_managed"
  ],
  "type": "string",
  "default": "invisible",
  "description": "Which Turnstile widget type to use for detecting bot traffic. See\n[the Turnstile documentation](https://developers.cloudflare.com/turnstile/concepts/widget/#widget-types)\nfor the definitions of these widget types. Set to `off` to disable the\nTurnstile integration entirely. Setting this to anything other than\n`off` or `invisible` requires Advanced Waiting Room.\n",
  "x-auditable": true
}
array waitingroom_update_rules
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/waitingroom_create_rule"
  }
}
string waitingroom_waiting_room_id
{
  "type": "string",
  "example": "699d98642c564d2e855e9661899b7252",
  "x-auditable": true
}
object waitingroom_waiting_room_id_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/waitingroom_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "id": {
              "$ref": "#/components/schemas/waitingroom_waiting_room_id"
            }
          }
        }
      }
    }
  ]
}
object waitingroom_waitingroom
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/waitingroom_waiting_room_id"
    },
    "host": {
      "$ref": "#/components/schemas/waitingroom_host"
    },
    "name": {
      "$ref": "#/components/schemas/waitingroom_name"
    },
    "path": {
      "$ref": "#/components/schemas/waitingroom_path"
    },
    "queue_all": {
      "$ref": "#/components/schemas/waitingroom_queue_all"
    },
    "suspended": {
      "$ref": "#/components/schemas/waitingroom_suspended"
    },
    "created_on": {
      "$ref": "#/components/schemas/waitingroom_timestamp"
    },
    "description": {
      "$ref": "#/components/schemas/waitingroom_description"
    },
    "modified_on": {
      "$ref": "#/components/schemas/waitingroom_timestamp"
    },
    "cookie_suffix": {
      "$ref": "#/components/schemas/waitingroom_cookie_suffix"
    },
    "turnstile_mode": {
      "$ref": "#/components/schemas/waitingroom_turnstile_mode"
    },
    "queueing_method": {
      "$ref": "#/components/schemas/waitingroom_queueing_method"
    },
    "custom_page_html": {
      "$ref": "#/components/schemas/waitingroom_custom_page_html"
    },
    "session_duration": {
      "$ref": "#/components/schemas/waitingroom_session_duration"
    },
    "turnstile_action": {
      "$ref": "#/components/schemas/waitingroom_turnstile_action"
    },
    "additional_routes": {
      "$ref": "#/components/schemas/waitingroom_additional_routes"
    },
    "cookie_attributes": {
      "$ref": "#/components/schemas/waitingroom_cookie_attributes"
    },
    "total_active_users": {
      "$ref": "#/components/schemas/waitingroom_total_active_users"
    },
    "new_users_per_minute": {
      "$ref": "#/components/schemas/waitingroom_new_users_per_minute"
    },
    "queueing_status_code": {
      "$ref": "#/components/schemas/waitingroom_queueing_status_code"
    },
    "json_response_enabled": {
      "$ref": "#/components/schemas/waitingroom_json_response_enabled"
    },
    "next_event_start_time": {
      "$ref": "#/components/schemas/waitingroom_next_event_start_time"
    },
    "disable_session_renewal": {
      "$ref": "#/components/schemas/waitingroom_disable_session_renewal"
    },
    "enabled_origin_commands": {
      "$ref": "#/components/schemas/waitingroom_enabled_origin_commands"
    },
    "default_template_language": {
      "$ref": "#/components/schemas/waitingroom_default_template_language"
    },
    "next_event_prequeue_start_time": {
      "$ref": "#/components/schemas/waitingroom_next_event_prequeue_start_time"
    }
  }
}
object waitingroom_zone_settings
{
  "type": "object",
  "properties": {
    "search_engine_crawler_bypass": {
      "$ref": "#/components/schemas/waitingroom_search_engine_crawler_bypass"
    }
  }
}
object waitingroom_zone_settings_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/waitingroom_api-response-single"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "type": "object",
          "required": [
            "search_engine_crawler_bypass"
          ],
          "properties": {
            "search_engine_crawler_bypass": {
              "$ref": "#/components/schemas/waitingroom_search_engine_crawler_bypass"
            }
          }
        }
      }
    }
  ]
}
object web3_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/web3_api-response-common"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {},
          "nullable": true
        },
        "result_info": {
          "$ref": "#/components/schemas/web3_result_info"
        }
      }
    }
  ]
}
object web3_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/web3_messages"
    },
    "result": {
      "type": "object",
      "anyOf": [
        {
          "type": "object"
        },
        {
          "type": "array",
          "items": {}
        },
        {
          "type": "string"
        }
      ],
      "description": "Provides the API response."
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Specifies whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/web3_messages"
    }
  }
}
object web3_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/web3_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Specifies whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/web3_messages"
        }
      ],
      "example": []
    }
  }
}
object web3_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/web3_api-response-common"
    },
    {
      "properties": {
        "result_info": {
          "type": "object",
          "anyOf": [
            {
              "type": "object",
              "nullable": true
            },
            {
              "type": "string",
              "nullable": true
            }
          ],
          "description": "Provides the API response."
        }
      }
    }
  ]
}
object web3_api-response-single-id
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/web3_api-response-common"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "nullable": true,
          "required": [
            "id"
          ],
          "properties": {
            "id": {
              "$ref": "#/components/schemas/web3_identifier"
            }
          }
        }
      }
    }
  ]
}
object web3_collection_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/web3_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/web3_web3-hostname"
          }
        }
      }
    }
  ]
}
string web3_content_list_action
{
  "enum": [
    "block"
  ],
  "type": "string",
  "example": "block",
  "description": "Behavior of the content list."
}
object web3_content_list_details
{
  "type": "object",
  "properties": {
    "action": {
      "$ref": "#/components/schemas/web3_content_list_action"
    }
  }
}
object web3_content_list_details_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/web3_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/web3_content_list_details"
        }
      }
    }
  ]
}
array web3_content_list_entries
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/web3_content_list_entry"
  },
  "description": "Provides content list entries."
}
object web3_content_list_entry
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/web3_identifier"
    },
    "type": {
      "$ref": "#/components/schemas/web3_content_list_entry_type"
    },
    "content": {
      "$ref": "#/components/schemas/web3_content_list_entry_content"
    },
    "created_on": {
      "$ref": "#/components/schemas/web3_timestamp"
    },
    "description": {
      "$ref": "#/components/schemas/web3_content_list_entry_description"
    },
    "modified_on": {
      "$ref": "#/components/schemas/web3_timestamp"
    }
  },
  "description": "Specify a content list entry to block."
}
object web3_content_list_entry_collection_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/web3_api-response-collection"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "entries": {
              "$ref": "#/components/schemas/web3_content_list_entries"
            }
          }
        }
      }
    }
  ]
}
string web3_content_list_entry_content
{
  "type": "string",
  "example": "QmPZ9gcCEpqKTo6aq61g2nXGUhM4iCL3ewB6LDXZCtioEB",
  "maxLength": 500,
  "description": "Specify the CID or content path of content to block."
}
object web3_content_list_entry_create_request
{
  "type": "object",
  "required": [
    "type",
    "content"
  ],
  "properties": {
    "type": {
      "$ref": "#/components/schemas/web3_content_list_entry_type"
    },
    "content": {
      "$ref": "#/components/schemas/web3_content_list_entry_content"
    },
    "description": {
      "$ref": "#/components/schemas/web3_content_list_entry_description"
    }
  }
}
string web3_content_list_entry_description
{
  "type": "string",
  "example": "this is my content list entry",
  "maxLength": 500,
  "description": "Specify an optional description of the content list entry."
}
object web3_content_list_entry_single_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/web3_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/web3_content_list_entry"
        }
      }
    }
  ]
}
string web3_content_list_entry_type
{
  "enum": [
    "cid",
    "content_path"
  ],
  "type": "string",
  "example": "cid",
  "description": "Specify the type of content list entry to block."
}
object web3_content_list_update_request
{
  "type": "object",
  "required": [
    "action",
    "entries"
  ],
  "properties": {
    "action": {
      "$ref": "#/components/schemas/web3_content_list_action"
    },
    "entries": {
      "$ref": "#/components/schemas/web3_content_list_entries"
    }
  }
}
object web3_create_request
{
  "type": "object",
  "required": [
    "name",
    "target"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/web3_name"
    },
    "target": {
      "$ref": "#/components/schemas/web3_target"
    },
    "dnslink": {
      "$ref": "#/components/schemas/web3_dnslink"
    },
    "description": {
      "$ref": "#/components/schemas/web3_description"
    }
  }
}
string web3_description
{
  "type": "string",
  "example": "This is my IPFS gateway.",
  "maxLength": 500,
  "description": "Specify an optional description of the hostname."
}
string web3_dnslink
{
  "type": "string",
  "example": "/ipns/onboarding.ipfs.cloudflare.com",
  "description": "Specify the DNSLink value used if the target is ipfs."
}
string web3_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "readOnly": true,
  "maxLength": 32,
  "description": "Specify the identifier of the hostname."
}
array web3_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "message": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
object web3_modify_request
{
  "type": "object",
  "properties": {
    "dnslink": {
      "$ref": "#/components/schemas/web3_dnslink"
    },
    "description": {
      "$ref": "#/components/schemas/web3_description"
    }
  }
}
string web3_name
{
  "type": "string",
  "example": "gateway.example.com",
  "maxLength": 255,
  "description": "Specify the hostname that points to the target gateway via CNAME."
}
object web3_result_info
{
  "type": "object",
  "properties": {
    "page": {
      "type": "number",
      "example": 1,
      "description": "Specifies the current page within paginated list of results."
    },
    "count": {
      "type": "number",
      "example": 1,
      "description": "Specifies the total number of results for the requested service."
    },
    "per_page": {
      "type": "number",
      "example": 20,
      "description": "Specifies the number of results per page of results."
    },
    "total_count": {
      "type": "number",
      "example": 2000,
      "description": "Specifies the total results available without any search parameters."
    }
  }
}
object web3_single_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/web3_api-response-single"
    },
    {
      "properties": {
        "result": {
          "$ref": "#/components/schemas/web3_web3-hostname"
        }
      }
    }
  ]
}
string web3_status
{
  "enum": [
    "active",
    "pending",
    "deleting",
    "error"
  ],
  "type": "string",
  "example": "active",
  "readOnly": true,
  "description": "Specifies the status of the hostname's activation."
}
string web3_target
{
  "enum": [
    "ethereum",
    "ipfs",
    "ipfs_universal_path"
  ],
  "type": "string",
  "example": "ipfs",
  "description": "Specify the target gateway of the hostname."
}
string web3_timestamp
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-01T05:20:00.12345Z",
  "readOnly": true
}
object web3_web3-hostname
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/web3_identifier"
    },
    "name": {
      "$ref": "#/components/schemas/web3_name"
    },
    "status": {
      "$ref": "#/components/schemas/web3_status"
    },
    "target": {
      "$ref": "#/components/schemas/web3_target"
    },
    "dnslink": {
      "$ref": "#/components/schemas/web3_dnslink"
    },
    "created_on": {
      "$ref": "#/components/schemas/web3_timestamp"
    },
    "description": {
      "$ref": "#/components/schemas/web3_description"
    },
    "modified_on": {
      "$ref": "#/components/schemas/web3_timestamp"
    }
  }
}
object workers-kv_any
{
  "anyOf": [
    {
      "type": "string"
    },
    {
      "type": "number"
    },
    {
      "type": "integer"
    },
    {
      "type": "boolean"
    },
    {
      "type": "object",
      "nullable": true,
      "additionalProperties": true
    },
    {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/workers-kv_any"
      }
    }
  ],
  "x-stainless-override-schema": {
    "type": "unknown"
  }
}
object workers-kv_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/workers-kv_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result_info": {
          "$ref": "#/components/schemas/workers-kv_result_info"
        }
      }
    }
  ]
}
object workers-kv_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/workers-kv_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/workers-kv_messages"
    }
  }
}
object workers-kv_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/workers-kv_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "type": "object",
      "nullable": true,
      "x-stainless-empty-object": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/workers-kv_messages"
        }
      ],
      "example": []
    }
  }
}
object workers-kv_api-response-common-no-result
{
  "allOf": [
    {
      "$ref": "#/components/schemas/workers-kv_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "nullable": true,
          "x-stainless-empty-object": true
        }
      }
    }
  ]
}
object workers-kv_bulk-get-result
{
  "type": "object",
  "properties": {
    "values": {
      "type": "object",
      "example": {
        "key1": "value1",
        "key2": "value2"
      },
      "description": "Requested keys are paired with their values in an object.",
      "additionalProperties": {
        "oneOf": [
          {
            "type": "string"
          },
          {
            "type": "number"
          },
          {
            "type": "boolean"
          },
          {
            "type": "object",
            "additionalProperties": true
          }
        ],
        "description": "The value associated with the key."
      }
    }
  }
}
object workers-kv_bulk-get-result-with-metadata
{
  "type": "object",
  "properties": {
    "values": {
      "type": "object",
      "example": {
        "key1": {
          "value": "value1",
          "metadata": {
            "someMetadataKey": "someMetadataValue"
          },
          "expiration": 1577836800
        },
        "key2": {
          "value": "value2",
          "metadata": {
            "anotherKey": "anotherValue"
          }
        }
      },
      "description": "Requested keys are paired with their values and metadata in an object.",
      "additionalProperties": {
        "type": "object",
        "nullable": true,
        "required": [
          "value",
          "metadata"
        ],
        "properties": {
          "value": {
            "allOf": [
              {
                "$ref": "#/components/schemas/workers-kv_any"
              },
              {
                "description": "The value associated with the key."
              }
            ]
          },
          "metadata": {
            "allOf": [
              {
                "$ref": "#/components/schemas/workers-kv_any"
              },
              {
                "description": "The metadata associated with the key."
              }
            ]
          },
          "expiration": {
            "$ref": "#/components/schemas/workers-kv_expiration"
          }
        }
      }
    }
  }
}
object workers-kv_bulk-result
{
  "type": "object",
  "properties": {
    "unsuccessful_keys": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Name of the keys that failed to be fully updated. They should be retried."
    },
    "successful_key_count": {
      "type": "number",
      "example": 100,
      "description": "Number of keys successfully updated."
    }
  }
}
array workers-kv_bulk_delete
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/workers-kv_key_name_bulk"
  }
}
array workers-kv_bulk_write
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "key",
      "value"
    ],
    "properties": {
      "key": {
        "$ref": "#/components/schemas/workers-kv_key_name_bulk"
      },
      "value": {
        "type": "string",
        "example": "Some string",
        "maxLength": 26214400,
        "description": "A UTF-8 encoded string to be stored, up to 25 MiB in length."
      },
      "base64": {
        "type": "boolean",
        "default": false,
        "description": "Indicates whether or not the server should base64 decode the value before storing it. Useful for writing values that wouldn't otherwise be valid JSON strings, such as images."
      },
      "metadata": {
        "$ref": "#/components/schemas/workers-kv_list_metadata"
      },
      "expiration": {
        "$ref": "#/components/schemas/workers-kv_expiration"
      },
      "expiration_ttl": {
        "$ref": "#/components/schemas/workers-kv_expiration_ttl"
      }
    }
  }
}
object workers-kv_create_rename_namespace_body
{
  "type": "object",
  "required": [
    "title"
  ],
  "properties": {
    "title": {
      "$ref": "#/components/schemas/workers-kv_namespace_title"
    }
  }
}
string workers-kv_cursor
{
  "type": "string",
  "example": "6Ck1la0VxJ0djhidm1MdX2FyDGxLKVeeHZZmORS_8XeSuhz9SjIJRaSa2lnsF01tQOHrfTGAP3R5X1Kv5iVUuMbNKhWNAXHOl6ePB0TUL8nw",
  "description": "Opaque token indicating the position from which to continue when requesting the next set of records if the amount of list results was limited by the limit parameter. A valid value for the cursor can be obtained from the cursors object in the result_info structure.",
  "x-stainless-pagination-property": {
    "purpose": "next_cursor_field"
  }
}
object workers-kv_cursor_result_info
{
  "type": "object",
  "properties": {
    "count": {
      "type": "number",
      "example": 1,
      "description": "Total results returned based on your list parameters."
    },
    "cursor": {
      "$ref": "#/components/schemas/workers-kv_cursor"
    }
  }
}
number workers-kv_expiration
{
  "type": "number",
  "example": 1578435000,
  "description": "Expires the key at a certain time, measured in number of seconds since the UNIX epoch."
}
number workers-kv_expiration_ttl
{
  "type": "number",
  "example": 300,
  "minimum": 60,
  "description": "Expires the key after a number of seconds. Must be at least 60."
}
string workers-kv_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "readOnly": true,
  "maxLength": 32,
  "description": "Identifier.",
  "x-auditable": true
}
object workers-kv_key
{
  "type": "object",
  "required": [
    "name"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/workers-kv_key_name"
    },
    "metadata": {
      "$ref": "#/components/schemas/workers-kv_list_metadata"
    },
    "expiration": {
      "type": "number",
      "example": 1577836800,
      "description": "The time, measured in number of seconds since the UNIX epoch, at which the key will expire. This property is omitted for keys that will not expire."
    }
  },
  "description": "A name for a value. A value stored under a given key may be retrieved via the same key."
}
string workers-kv_key_name
{
  "type": "string",
  "example": "My-Key",
  "maxLength": 512,
  "description": "A key's name. The name may be at most 512 bytes. All printable, non-whitespace characters are valid. Use percent-encoding to define key names as part of a URL."
}
string workers-kv_key_name_bulk
{
  "type": "string",
  "example": "My-Key",
  "maxLength": 512,
  "description": "A key's name. The name may be at most 512 bytes. All printable, non-whitespace characters are valid."
}
object workers-kv_list_metadata
{
  "allOf": [
    {
      "$ref": "#/components/schemas/workers-kv_any"
    },
    {
      "example": {
        "someMetadataKey": "someMetadataValue"
      },
      "description": "Arbitrary JSON that is associated with a key."
    }
  ]
}
array workers-kv_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "message": {
        "type": "string"
      }
    }
  },
  "example": [],
  "uniqueItems": true
}
object workers-kv_metadata
{
  "allOf": [
    {
      "$ref": "#/components/schemas/workers-kv_any"
    },
    {
      "example": {
        "someMetadataKey": "someMetadataValue"
      },
      "description": "Associates arbitrary JSON data with a key/value pair."
    }
  ]
}
object workers-kv_namespace
{
  "type": "object",
  "required": [
    "id",
    "title"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/workers-kv_namespace_identifier"
    },
    "title": {
      "$ref": "#/components/schemas/workers-kv_namespace_title"
    },
    "supports_url_encoding": {
      "type": "boolean",
      "example": true,
      "readOnly": true,
      "description": "True if keys written on the URL will be URL-decoded before storing. For example, if set to \"true\", a key written on the URL as \"%3F\" will be stored as \"?\".",
      "x-auditable": true
    }
  }
}
string workers-kv_namespace_identifier
{
  "type": "string",
  "example": "0f2ac74b498b48028cb68387c421e279",
  "readOnly": true,
  "maxLength": 32,
  "description": "Namespace identifier tag.",
  "x-auditable": true
}
string workers-kv_namespace_title
{
  "type": "string",
  "example": "My Own Namespace",
  "maxLength": 512,
  "description": "A human-readable string name for a Namespace.",
  "x-auditable": true
}
object workers-kv_result_info
{
  "type": "object",
  "properties": {
    "page": {
      "type": "number",
      "example": 1,
      "description": "Current page within paginated list of results."
    },
    "count": {
      "type": "number",
      "example": 1,
      "description": "Total number of results for the requested service."
    },
    "per_page": {
      "type": "number",
      "example": 20,
      "description": "Number of results per page of results."
    },
    "total_count": {
      "type": "number",
      "example": 2000,
      "description": "Total results available without any search parameters."
    }
  }
}
object workers-kv_value
{
  "anyOf": [
    {
      "type": "string"
    },
    {
      "type": "string",
      "format": "binary"
    }
  ],
  "example": "Some Value",
  "description": "A byte sequence to be stored, up to 25 MiB in length."
}
object workers-observability_filter_leaf
{
  "type": "object",
  "required": [
    "key",
    "operation",
    "type"
  ],
  "properties": {
    "key": {
      "type": "string",
      "description": "Filter field name. IMPORTANT: do not guess keys. Always use verified keys from previous query results or the observability_keys response. Preferred keys: $metadata.service, $metadata.origin, $metadata.trigger, $metadata.message, $metadata.error."
    },
    "kind": {
      "enum": [
        "filter"
      ],
      "type": "string"
    },
    "type": {
      "enum": [
        "string",
        "number",
        "boolean"
      ],
      "type": "string"
    },
    "value": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "number"
        },
        {
          "type": "boolean"
        }
      ],
      "description": "Filter comparison value. IMPORTANT: must match actual values in your logs. Verify using previous query results or the /values endpoint. Ensure value type matches the field type. String comparisons are case-sensitive unless using specific operations. Regex uses ClickHouse RE2 syntax (no lookaheads/lookbehinds); examples: ^5\\d{2}$ for HTTP 5xx, \\bERROR\\b for word boundary."
    },
    "operation": {
      "enum": [
        "includes",
        "not_includes",
        "starts_with",
        "regex",
        "exists",
        "is_null",
        "in",
        "not_in",
        "eq",
        "neq",
        "gt",
        "gte",
        "lt",
        "lte",
        "=",
        "!=",
        ">",
        ">=",
        "<",
        "<=",
        "INCLUDES",
        "DOES_NOT_INCLUDE",
        "MATCH_REGEX",
        "EXISTS",
        "DOES_NOT_EXIST",
        "IN",
        "NOT_IN",
        "STARTS_WITH"
      ],
      "type": "string"
    }
  },
  "description": "Filtering best practices: use observability_keys and observability_values to confirm available fields and values. If searching for errors, filter for $metadata.error exists."
}
object workers-observability_filter_node
{
  "type": "object",
  "anyOf": [
    {
      "type": "object",
      "required": [
        "kind",
        "filterCombination",
        "filters"
      ],
      "properties": {
        "kind": {
          "enum": [
            "group"
          ],
          "type": "string"
        },
        "filters": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/workers-observability_filter_node"
          },
          "minItems": 1
        },
        "filterCombination": {
          "enum": [
            "and",
            "or",
            "AND",
            "OR"
          ],
          "type": "string"
        }
      }
    },
    {
      "$ref": "#/components/schemas/workers-observability_filter_leaf"
    }
  ],
  "description": "Supports nested groups via kind: 'group'."
}
object workers-observability_performance_information
{
  "type": "object",
  "required": [
    "elapsed",
    "rows_read",
    "bytes_read"
  ],
  "properties": {
    "elapsed": {
      "type": "number",
      "description": "Time in seconds for the query to run."
    },
    "abr_level": {
      "type": "number",
      "description": "The level of Adaptive Bit Rate (ABR) sampling used for the query. If empty the ABR level is 1"
    },
    "rows_read": {
      "type": "number",
      "description": "Number of rows scanned from the table."
    },
    "bytes_read": {
      "type": "number",
      "description": "Number of uncompressed bytes read from the table."
    }
  },
  "description": "The statistics object contains information about query performance from the database, it does not include any network latency"
}
object workers-observability_query
{
  "type": "object",
  "required": [
    "id",
    "name",
    "description",
    "adhoc",
    "parameters",
    "created",
    "createdBy",
    "updated",
    "updatedBy"
  ],
  "properties": {
    "id": {
      "type": "string"
    },
    "name": {
      "type": "string",
      "maxLength": 250,
      "minLength": 1,
      "description": "Query name"
    },
    "adhoc": {
      "type": "boolean",
      "description": "If the query wasn't explcitly saved"
    },
    "created": {
      "type": "string"
    },
    "updated": {
      "type": "string"
    },
    "createdBy": {
      "type": "string"
    },
    "updatedBy": {
      "type": "string"
    },
    "parameters": {
      "type": "object",
      "properties": {
        "limit": {
          "type": "integer",
          "maximum": 100,
          "minimum": 0,
          "description": "Set a limit on the number of results / records returned by the query"
        },
        "needle": {
          "type": "object",
          "required": [
            "value"
          ],
          "properties": {
            "value": {
              "allOf": [
                {
                  "anyOf": [
                    {
                      "type": "string"
                    },
                    {
                      "type": "number"
                    },
                    {
                      "type": "boolean"
                    }
                  ]
                },
                {
                  "type": "string",
                  "maxLength": 1000
                }
              ]
            },
            "isRegex": {
              "type": "boolean"
            },
            "matchCase": {
              "type": "boolean"
            }
          },
          "description": "Define an expression to search using full-text search."
        },
        "filters": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/workers-observability_filter_node"
          },
          "description": "Configure the Filters to apply to the query. Supports nested groups via kind: 'group'."
        },
        "havings": {
          "type": "array",
          "items": {
            "type": "object",
            "required": [
              "key",
              "operation",
              "value"
            ],
            "properties": {
              "key": {
                "type": "string"
              },
              "value": {
                "type": "number"
              },
              "operation": {
                "enum": [
                  "eq",
                  "neq",
                  "gt",
                  "gte",
                  "lt",
                  "lte"
                ],
                "type": "string"
              }
            }
          },
          "description": "Configure the Having clauses that filter on calculations in the query result."
        },
        "orderBy": {
          "type": "object",
          "required": [
            "value"
          ],
          "properties": {
            "order": {
              "enum": [
                "asc",
                "desc"
              ],
              "type": "string",
              "description": "Set the order of the results"
            },
            "value": {
              "type": "string",
              "description": "Configure which Calculation to order the results by."
            }
          },
          "description": "Configure the order of the results returned by the query."
        },
        "datasets": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "example": [],
          "description": "Set the Datasets to query. Leave it empty to query all the datasets."
        },
        "groupBys": {
          "type": "array",
          "items": {
            "type": "object",
            "required": [
              "type",
              "value"
            ],
            "properties": {
              "type": {
                "enum": [
                  "string",
                  "number",
                  "boolean"
                ],
                "type": "string"
              },
              "value": {
                "type": "string"
              }
            }
          },
          "description": "Define how to group the results of the query."
        },
        "calculations": {
          "type": "array",
          "items": {
            "type": "object",
            "required": [
              "operator"
            ],
            "properties": {
              "key": {
                "type": "string"
              },
              "alias": {
                "type": "string"
              },
              "keyType": {
                "enum": [
                  "string",
                  "number",
                  "boolean"
                ],
                "type": "string"
              },
              "operator": {
                "enum": [
                  "uniq",
                  "count",
                  "max",
                  "min",
                  "sum",
                  "avg",
                  "median",
                  "p001",
                  "p01",
                  "p05",
                  "p10",
                  "p25",
                  "p75",
                  "p90",
                  "p95",
                  "p99",
                  "p999",
                  "stddev",
                  "variance",
                  "COUNT_DISTINCT",
                  "COUNT",
                  "MAX",
                  "MIN",
                  "SUM",
                  "AVG",
                  "MEDIAN",
                  "P001",
                  "P01",
                  "P05",
                  "P10",
                  "P25",
                  "P75",
                  "P90",
                  "P95",
                  "P99",
                  "P999",
                  "STDDEV",
                  "VARIANCE"
                ],
                "type": "string"
              }
            }
          },
          "description": "Create Calculations to compute as part of the query."
        },
        "filterCombination": {
          "enum": [
            "and",
            "or",
            "AND",
            "OR"
          ],
          "type": "string",
          "description": "Set a Flag to describe how to combine the filters on the query."
        }
      }
    },
    "description": {
      "type": "string",
      "example": "Query description",
      "nullable": true,
      "maxLength": 1000
    }
  }
}
object workers-observability_query_results
{
  "type": "object",
  "required": [
    "run",
    "statistics"
  ],
  "properties": {
    "run": {
      "$ref": "#/components/schemas/workers-observability_query_run"
    },
    "agents": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "namespace",
          "agentClass",
          "service",
          "lastEventMs",
          "firstEventMs",
          "totalEvents",
          "eventTypeCounts",
          "hasErrors"
        ],
        "properties": {
          "service": {
            "type": "string"
          },
          "hasErrors": {
            "type": "boolean"
          },
          "namespace": {
            "type": "string"
          },
          "agentClass": {
            "type": "string"
          },
          "lastEventMs": {
            "type": "number"
          },
          "totalEvents": {
            "type": "number"
          },
          "firstEventMs": {
            "type": "number"
          },
          "eventTypeCounts": {
            "type": "object",
            "additionalProperties": {
              "type": "number"
            }
          }
        }
      }
    },
    "events": {
      "type": "object",
      "properties": {
        "count": {
          "type": "number"
        },
        "events": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/workers-observability_telemetry_event"
          }
        },
        "fields": {
          "type": "array",
          "items": {
            "type": "object",
            "required": [
              "key",
              "type"
            ],
            "properties": {
              "key": {
                "type": "string"
              },
              "type": {
                "type": "string"
              }
            }
          }
        },
        "series": {
          "type": "array",
          "items": {
            "type": "object",
            "required": [
              "time",
              "data"
            ],
            "properties": {
              "data": {
                "type": "array",
                "items": {
                  "type": "object",
                  "required": [
                    "aggregates",
                    "count",
                    "interval",
                    "sampleInterval"
                  ],
                  "properties": {
                    "count": {
                      "type": "number"
                    },
                    "errors": {
                      "type": "number"
                    },
                    "groups": {
                      "type": "object",
                      "description": "Groups in the query results.",
                      "additionalProperties": {
                        "anyOf": [
                          {
                            "type": "string"
                          },
                          {
                            "type": "number"
                          },
                          {
                            "type": "boolean"
                          }
                        ]
                      }
                    },
                    "interval": {
                      "type": "number"
                    },
                    "aggregates": {
                      "type": "object",
                      "required": [
                        "_count",
                        "_interval"
                      ],
                      "properties": {
                        "bin": {
                          "type": "object",
                          "deprecated": true
                        },
                        "_count": {
                          "type": "integer",
                          "minimum": 0,
                          "deprecated": true,
                          "exclusiveMinimum": true
                        },
                        "_interval": {
                          "type": "number",
                          "minimum": 0,
                          "deprecated": true,
                          "exclusiveMinimum": true
                        },
                        "_lastSeen": {
                          "type": "string",
                          "deprecated": true
                        },
                        "_firstSeen": {
                          "type": "string",
                          "deprecated": true
                        }
                      }
                    },
                    "sampleInterval": {
                      "type": "number"
                    }
                  }
                }
              },
              "time": {
                "type": "string"
              }
            }
          }
        }
      }
    },
    "traces": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "traceId",
          "spans",
          "service",
          "traceStartMs",
          "traceEndMs",
          "traceDurationMs",
          "rootSpanName",
          "rootTransactionName"
        ],
        "properties": {
          "spans": {
            "type": "number"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "service": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "traceId": {
            "type": "string"
          },
          "traceEndMs": {
            "type": "number"
          },
          "rootSpanName": {
            "type": "string"
          },
          "traceStartMs": {
            "type": "number"
          },
          "traceDurationMs": {
            "type": "number"
          },
          "rootTransactionName": {
            "type": "string"
          }
        }
      }
    },
    "compare": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "calculation",
          "aggregates",
          "series"
        ],
        "properties": {
          "alias": {
            "type": "string"
          },
          "series": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "time",
                "data"
              ],
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "value",
                      "count",
                      "interval",
                      "sampleInterval"
                    ],
                    "properties": {
                      "count": {
                        "type": "number"
                      },
                      "value": {
                        "type": "number"
                      },
                      "groups": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "required": [
                            "key",
                            "value"
                          ],
                          "properties": {
                            "key": {
                              "type": "string"
                            },
                            "value": {
                              "anyOf": [
                                {
                                  "type": "string"
                                },
                                {
                                  "type": "number"
                                },
                                {
                                  "type": "boolean"
                                }
                              ]
                            }
                          }
                        }
                      },
                      "interval": {
                        "type": "number"
                      },
                      "lastSeen": {
                        "type": "string"
                      },
                      "firstSeen": {
                        "type": "string"
                      },
                      "sampleInterval": {
                        "type": "number"
                      }
                    }
                  }
                },
                "time": {
                  "type": "string"
                }
              }
            }
          },
          "aggregates": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "value",
                "count",
                "interval",
                "sampleInterval"
              ],
              "properties": {
                "count": {
                  "type": "number"
                },
                "value": {
                  "type": "number"
                },
                "groups": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "key",
                      "value"
                    ],
                    "properties": {
                      "key": {
                        "type": "string"
                      },
                      "value": {
                        "anyOf": [
                          {
                            "type": "string"
                          },
                          {
                            "type": "number"
                          },
                          {
                            "type": "boolean"
                          }
                        ]
                      }
                    }
                  }
                },
                "interval": {
                  "type": "number"
                },
                "sampleInterval": {
                  "type": "number"
                }
              }
            }
          },
          "calculation": {
            "type": "string"
          }
        }
      }
    },
    "statistics": {
      "$ref": "#/components/schemas/workers-observability_performance_information"
    },
    "invocations": {
      "type": "object",
      "additionalProperties": {
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/workers-observability_telemetry_event"
        }
      }
    },
    "calculations": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "calculation",
          "aggregates",
          "series"
        ],
        "properties": {
          "alias": {
            "type": "string"
          },
          "series": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "time",
                "data"
              ],
              "properties": {
                "data": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "value",
                      "count",
                      "interval",
                      "sampleInterval"
                    ],
                    "properties": {
                      "count": {
                        "type": "number"
                      },
                      "value": {
                        "type": "number"
                      },
                      "groups": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "required": [
                            "key",
                            "value"
                          ],
                          "properties": {
                            "key": {
                              "type": "string"
                            },
                            "value": {
                              "anyOf": [
                                {
                                  "type": "string"
                                },
                                {
                                  "type": "number"
                                },
                                {
                                  "type": "boolean"
                                }
                              ]
                            }
                          }
                        }
                      },
                      "interval": {
                        "type": "number"
                      },
                      "lastSeen": {
                        "type": "string"
                      },
                      "firstSeen": {
                        "type": "string"
                      },
                      "sampleInterval": {
                        "type": "number"
                      }
                    }
                  }
                },
                "time": {
                  "type": "string"
                }
              }
            }
          },
          "aggregates": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "value",
                "count",
                "interval",
                "sampleInterval"
              ],
              "properties": {
                "count": {
                  "type": "number"
                },
                "value": {
                  "type": "number"
                },
                "groups": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "key",
                      "value"
                    ],
                    "properties": {
                      "key": {
                        "type": "string"
                      },
                      "value": {
                        "anyOf": [
                          {
                            "type": "string"
                          },
                          {
                            "type": "number"
                          },
                          {
                            "type": "boolean"
                          }
                        ]
                      }
                    }
                  }
                },
                "interval": {
                  "type": "number"
                },
                "sampleInterval": {
                  "type": "number"
                }
              }
            }
          },
          "calculation": {
            "type": "string"
          }
        }
      }
    }
  }
}
object workers-observability_query_run
{
  "type": "object",
  "required": [
    "id",
    "query",
    "accountId",
    "timeframe",
    "userId",
    "status",
    "granularity",
    "dry"
  ],
  "properties": {
    "id": {
      "type": "string"
    },
    "dry": {
      "type": "boolean"
    },
    "query": {
      "allOf": [
        {
          "$ref": "#/components/schemas/workers-observability_query"
        },
        {
          "type": "object",
          "properties": {
            "created": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "string"
                }
              ]
            },
            "updated": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "string"
                }
              ]
            }
          }
        }
      ]
    },
    "status": {
      "enum": [
        "STARTED",
        "COMPLETED"
      ],
      "type": "string"
    },
    "userId": {
      "type": "string"
    },
    "created": {
      "type": "string"
    },
    "updated": {
      "type": "string"
    },
    "accountId": {
      "type": "string"
    },
    "timeframe": {
      "type": "object",
      "required": [
        "to",
        "from"
      ],
      "properties": {
        "to": {
          "type": "number",
          "description": "End timestamp for the query timeframe (Unix timestamp in milliseconds)"
        },
        "from": {
          "type": "number",
          "description": "Start timestamp for the query timeframe (Unix timestamp in milliseconds)"
        }
      },
      "description": "Time range for the query execution"
    },
    "statistics": {
      "type": "object",
      "required": [
        "elapsed",
        "rows_read",
        "bytes_read"
      ],
      "properties": {
        "elapsed": {
          "type": "number",
          "description": "Time in seconds for the query to run."
        },
        "abr_level": {
          "type": "number",
          "description": "The level of Adaptive Bit Rate (ABR) sampling used for the query. If empty the ABR level is 1"
        },
        "rows_read": {
          "type": "number",
          "description": "Number of rows scanned from the table."
        },
        "bytes_read": {
          "type": "number",
          "description": "Number of uncompressed bytes read from the table."
        }
      }
    },
    "granularity": {
      "type": "number"
    }
  },
  "description": "A Workers Observability Query Object"
}
object workers-observability_telemetry_event
{
  "type": "object",
  "required": [
    "dataset",
    "timestamp",
    "source",
    "$metadata"
  ],
  "properties": {
    "source": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "object"
        }
      ]
    },
    "dataset": {
      "type": "string"
    },
    "$workers": {
      "anyOf": [
        {
          "type": "object",
          "required": [
            "scriptName",
            "eventType",
            "requestId"
          ],
          "properties": {
            "event": {
              "type": "object",
              "additionalProperties": true
            },
            "outcome": {
              "type": "string"
            },
            "eventType": {
              "enum": [
                "fetch",
                "scheduled",
                "alarm",
                "cron",
                "queue",
                "email",
                "tail",
                "rpc",
                "websocket",
                "workflow",
                "unknown"
              ],
              "type": "string"
            },
            "requestId": {
              "type": "string"
            },
            "truncated": {
              "type": "boolean"
            },
            "entrypoint": {
              "type": "string"
            },
            "scriptName": {
              "type": "string"
            },
            "scriptVersion": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string"
                },
                "tag": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                }
              }
            },
            "executionModel": {
              "enum": [
                "durableObject",
                "stateless"
              ],
              "type": "string"
            },
            "durableObjectId": {
              "type": "string"
            }
          }
        },
        {
          "type": "object",
          "required": [
            "scriptName",
            "outcome",
            "eventType",
            "wallTimeMs",
            "cpuTimeMs",
            "requestId"
          ],
          "properties": {
            "event": {
              "type": "object",
              "additionalProperties": true
            },
            "outcome": {
              "type": "string"
            },
            "cpuTimeMs": {
              "type": "number"
            },
            "eventType": {
              "enum": [
                "fetch",
                "scheduled",
                "alarm",
                "cron",
                "queue",
                "email",
                "tail",
                "rpc",
                "websocket",
                "workflow",
                "unknown"
              ],
              "type": "string"
            },
            "requestId": {
              "type": "string"
            },
            "truncated": {
              "type": "boolean"
            },
            "entrypoint": {
              "type": "string"
            },
            "scriptName": {
              "type": "string"
            },
            "wallTimeMs": {
              "type": "number"
            },
            "scriptVersion": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string"
                },
                "tag": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                }
              }
            },
            "executionModel": {
              "enum": [
                "durableObject",
                "stateless"
              ],
              "type": "string"
            },
            "durableObjectId": {
              "type": "string"
            },
            "dispatchNamespace": {
              "type": "string"
            },
            "diagnosticsChannelEvents": {
              "type": "array",
              "items": {
                "type": "object",
                "required": [
                  "timestamp",
                  "channel",
                  "message"
                ],
                "properties": {
                  "channel": {
                    "type": "string"
                  },
                  "message": {
                    "type": "string"
                  },
                  "timestamp": {
                    "type": "number"
                  }
                }
              }
            }
          }
        }
      ],
      "description": "Cloudflare Workers event information enriches your logs so you can easily identify and debug issues."
    },
    "$metadata": {
      "type": "object",
      "required": [
        "id"
      ],
      "properties": {
        "id": {
          "type": "string",
          "description": "Unique event ID. Use as the cursor for offset-based pagination."
        },
        "url": {
          "type": "string"
        },
        "cost": {
          "type": "integer",
          "minimum": 0,
          "exclusiveMinimum": true
        },
        "type": {
          "type": "string"
        },
        "error": {
          "type": "string"
        },
        "level": {
          "type": "string"
        },
        "origin": {
          "type": "string"
        },
        "region": {
          "type": "string"
        },
        "spanId": {
          "type": "string"
        },
        "account": {
          "type": "string"
        },
        "endTime": {
          "type": "integer",
          "minimum": 0
        },
        "message": {
          "type": "string"
        },
        "service": {
          "type": "string"
        },
        "stackId": {
          "type": "string"
        },
        "traceId": {
          "type": "string"
        },
        "trigger": {
          "type": "string"
        },
        "duration": {
          "type": "integer",
          "minimum": 0,
          "exclusiveMinimum": true
        },
        "provider": {
          "type": "string"
        },
        "spanName": {
          "type": "string"
        },
        "coldStart": {
          "type": "integer",
          "minimum": 0,
          "exclusiveMinimum": true
        },
        "requestId": {
          "type": "string"
        },
        "startTime": {
          "type": "integer",
          "minimum": 0
        },
        "metricName": {
          "type": "string"
        },
        "statusCode": {
          "type": "integer",
          "minimum": 0,
          "exclusiveMinimum": true
        },
        "fingerprint": {
          "type": "string"
        },
        "cloudService": {
          "type": "string"
        },
        "parentSpanId": {
          "type": "string"
        },
        "errorTemplate": {
          "type": "string"
        },
        "traceDuration": {
          "type": "integer",
          "minimum": 0,
          "exclusiveMinimum": true
        },
        "messageTemplate": {
          "type": "string"
        },
        "transactionName": {
          "type": "string"
        }
      }
    },
    "timestamp": {
      "type": "integer",
      "minimum": 0
    },
    "$containers": {
      "type": "object",
      "description": "Cloudflare Containers event information enriches your logs so you can easily identify and debug issues."
    }
  },
  "description": "The data structure of a telemetry event",
  "additionalProperties": false
}
object workers_Domain
{
  "type": "object",
  "required": [
    "id",
    "cert_id",
    "zone_id",
    "zone_name",
    "hostname",
    "service",
    "environment"
  ],
  "properties": {
    "id": {
      "type": "string",
      "example": "dbe10b4bc17c295377eabd600e1787fd",
      "readOnly": true,
      "description": "Immutable ID of the domain.",
      "x-auditable": true
    },
    "cert_id": {
      "type": "string",
      "format": "uuid",
      "example": "9fdf92c8-64c2-4a3d-b1af-e15304961145",
      "readOnly": true,
      "description": "ID of the TLS certificate issued for the domain.",
      "x-auditable": true
    },
    "service": {
      "type": "string",
      "example": "my-worker",
      "description": "Name of the Worker associated with the domain. Requests to the configured hostname will be routed to this Worker.",
      "x-auditable": true
    },
    "zone_id": {
      "type": "string",
      "example": "593c9c94de529bbbfaac7c53ced0447d",
      "description": "ID of the zone containing the domain hostname.",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    },
    "hostname": {
      "type": "string",
      "example": "app.example.com",
      "description": "Hostname of the domain. Can be either the zone apex or a subdomain of the zone. Requests to this hostname will be routed to the configured Worker.",
      "x-auditable": true
    },
    "zone_name": {
      "type": "string",
      "example": "example.com",
      "description": "Name of the zone containing the domain hostname.",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    },
    "environment": {
      "type": "string",
      "example": "production",
      "deprecated": true,
      "description": "Worker environment associated with the domain.",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    }
  }
}
object workers_ErrorAuth
{
  "type": "object",
  "required": [
    "code",
    "message"
  ],
  "properties": {
    "code": {
      "enum": [
        10023
      ],
      "type": "integer",
      "description": "Code indicating that the user is not authorized to perform this action."
    },
    "message": {
      "type": "string",
      "description": "Message explaining that the user lacks access to this feature."
    }
  }
}
object workers_ErrorInternalServer
{
  "type": "object",
  "required": [
    "code",
    "message"
  ],
  "properties": {
    "code": {
      "enum": [
        10002
      ],
      "type": "integer",
      "description": "Code indicating that an unknown internal server error has occurred."
    },
    "message": {
      "type": "string",
      "description": "Message explaining that an unknown error occurred and providing guidance for reporting the issue."
    }
  }
}
object workers_ErrorMissingParam
{
  "type": "object",
  "required": [
    "code",
    "message"
  ],
  "properties": {
    "code": {
      "enum": [
        10003
      ],
      "type": "integer",
      "description": "Code indicating that a required URL parameter is missing."
    },
    "message": {
      "type": "string",
      "description": "Message explaining which required parameter is missing and suggesting to check the URL."
    }
  }
}
object workers_ErrorWorkerInvalid
{
  "type": "object",
  "required": [
    "code",
    "message"
  ],
  "properties": {
    "code": {
      "enum": [
        10021
      ],
      "type": "integer",
      "description": "Code indicating that the Worker request contains invalid data."
    },
    "message": {
      "type": "string",
      "description": "Message explaining why the Worker request is invalid, such as malformed JSON."
    }
  }
}
object workers_ErrorWorkerLimit
{
  "type": "object",
  "required": [
    "code",
    "message"
  ],
  "properties": {
    "code": {
      "enum": [
        10037
      ],
      "type": "integer",
      "description": "Code indicating that the account has exceeded the maximum number of Workers allowed."
    },
    "message": {
      "type": "string",
      "description": "Message explaining that the Worker limit has been exceeded and providing guidance."
    }
  }
}
object workers_ErrorWorkerNameConflict
{
  "type": "object",
  "required": [
    "code",
    "message"
  ],
  "properties": {
    "code": {
      "enum": [
        10040
      ],
      "type": "integer",
      "description": "Code indicating that a Worker with this name already exists."
    },
    "message": {
      "type": "string",
      "description": "Message explaining that the Worker name is already in use and suggesting to choose a different name."
    }
  }
}
object workers_ErrorWorkerNameInvalid
{
  "type": "object",
  "required": [
    "code",
    "message"
  ],
  "properties": {
    "code": {
      "enum": [
        10016
      ],
      "type": "integer",
      "description": "Code indicating that the Worker name is invalid."
    },
    "message": {
      "type": "string",
      "description": "Message explaining why the Worker name is invalid."
    }
  }
}
object workers_ErrorWorkerNamePreviewLengthLimit
{
  "type": "object",
  "required": [
    "code",
    "message"
  ],
  "properties": {
    "code": {
      "enum": [
        100315
      ],
      "type": "integer",
      "description": "Code indicating that the Worker name is too long to be used with previews enabled."
    },
    "message": {
      "type": "string",
      "description": "Message explaining that Worker names with previews enabled cannot exceed 54 characters."
    }
  }
}
object workers_ErrorWorkerNameSubdomainLengthLimit
{
  "type": "object",
  "required": [
    "code",
    "message"
  ],
  "properties": {
    "code": {
      "enum": [
        100132
      ],
      "type": "integer",
      "description": "Code indicating that the Worker name is too long to be used as a subdomain."
    },
    "message": {
      "type": "string",
      "description": "Message explaining that the Worker name exceeds the 63 character limit for subdomains."
    }
  }
}
object workers_ErrorWorkerNotFound
{
  "type": "object",
  "required": [
    "code",
    "message"
  ],
  "properties": {
    "code": {
      "enum": [
        10007
      ],
      "type": "integer",
      "description": "Code indicating that the Worker does not exist."
    },
    "message": {
      "type": "string",
      "description": "Message explaining that the Worker was not found."
    }
  }
}
object workers_ErrorWorkerObservabilitySamplingRateInvalid
{
  "type": "object",
  "required": [
    "code",
    "message"
  ],
  "properties": {
    "code": {
      "enum": [
        100308
      ],
      "type": "integer",
      "description": "Code indicating that an observability sampling rate is invalid."
    },
    "message": {
      "type": "string",
      "description": "Message explaining that sampling rates must be between 0 and 1 inclusive."
    }
  }
}
object workers_ErrorWorkerTagInvalid
{
  "type": "object",
  "required": [
    "code",
    "message"
  ],
  "properties": {
    "code": {
      "enum": [
        100134
      ],
      "type": "integer",
      "description": "Code indicating that the Worker has a tag containing invalid characters."
    },
    "message": {
      "type": "string",
      "description": "Message explaining that tags cannot contain certain characters like comma or ampersand."
    }
  }
}
object workers_ErrorWorkerTagLengthLimit
{
  "type": "object",
  "required": [
    "code",
    "message"
  ],
  "properties": {
    "code": {
      "enum": [
        100102
      ],
      "type": "integer",
      "description": "Code indicating that the Worker has a tag that exceeds the maximum tag length."
    },
    "message": {
      "type": "string",
      "description": "Message explaining why the tag is too long, including the maximum tag length."
    }
  }
}
object workers_ErrorWorkerTagLimit
{
  "type": "object",
  "required": [
    "code",
    "message"
  ],
  "properties": {
    "code": {
      "enum": [
        100103
      ],
      "type": "integer",
      "description": "Code indicating that the Worker has exceeded the maximum number of tags allowed."
    },
    "message": {
      "type": "string",
      "description": "Message explaining that the tag limit has been exceeded and suggesting to remove a tag."
    }
  }
}
object workers_Version
{
  "type": "object",
  "required": [
    "id",
    "number",
    "urls",
    "created_on"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid",
      "readOnly": true,
      "description": "Version identifier.",
      "x-auditable": true
    },
    "urls": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "uri"
      },
      "example": [
        "https://9387e76d-my-worker.my-subdomain.workers.dev"
      ],
      "readOnly": true,
      "description": "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."
    },
    "assets": {
      "type": "object",
      "properties": {
        "jwt": {
          "type": "string",
          "description": "Token provided upon successful upload of all files from a registered manifest.",
          "x-sensitive": true
        },
        "config": {
          "type": "object",
          "properties": {
            "html_handling": {
              "enum": [
                "auto-trailing-slash",
                "force-trailing-slash",
                "drop-trailing-slash",
                "none"
              ],
              "type": "string",
              "default": "auto-trailing-slash",
              "example": "auto-trailing-slash",
              "description": "Determines the redirects and rewrites of requests for HTML content.",
              "x-auditable": true
            },
            "run_worker_first": {
              "oneOf": [
                {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "example": "[\"/api/*\", \"/oauth/callback\", \"!/api/assets/*\"]",
                  "description": "Contains a list path rules to control routing to either the Worker or assets. Glob (*) and negative (!) rules are supported. Rules must start with either '/' or '!/'. At least one non-negative rule must be provided, and negative rules have higher precedence than non-negative rules."
                },
                {
                  "type": "boolean",
                  "example": true,
                  "description": "Enables routing to always invoke the Worker script ahead of all requests. When true, this is equivalent to `[\"/*\"]` in the string array version of this field."
                }
              ],
              "default": false
            },
            "not_found_handling": {
              "enum": [
                "none",
                "404-page",
                "single-page-application"
              ],
              "type": "string",
              "default": "none",
              "example": "404-page",
              "description": "Determines the response when a request does not match a static asset, and there is no Worker script.",
              "x-auditable": true
            }
          },
          "description": "Configuration for assets within a Worker."
        }
      },
      "description": "Configuration for assets within a Worker.\n\n[`_headers`](https://developers.cloudflare.com/workers/static-assets/headers/#custom-headers) and\n[`_redirects`](https://developers.cloudflare.com/workers/static-assets/redirects/) files should be\nincluded as modules named `_headers` and `_redirects` with content type `text/plain`.\n"
    },
    "limits": {
      "type": "object",
      "properties": {
        "cpu_ms": {
          "type": "integer",
          "example": 50,
          "description": "CPU time limit in milliseconds."
        },
        "subrequests": {
          "type": "integer",
          "example": 1000,
          "description": "Subrequest limit per request."
        }
      },
      "description": "Resource limits enforced at runtime.",
      "x-stainless-terraform-configurability": "computed_optional"
    },
    "number": {
      "type": "integer",
      "readOnly": true,
      "description": "The integer version number, starting from one.",
      "x-auditable": true
    },
    "source": {
      "type": "string",
      "example": "wrangler",
      "readOnly": true,
      "description": "The client used to create the version.",
      "x-auditable": true
    },
    "modules": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "name",
          "content_type",
          "content_base64"
        ],
        "properties": {
          "name": {
            "type": "string",
            "example": "index.js",
            "description": "The name of the module."
          },
          "content_type": {
            "type": "string",
            "example": "application/javascript+module",
            "description": "The content type of the module."
          },
          "content_base64": {
            "type": "string",
            "format": "byte",
            "example": "ZXhwb3J0IGRlZmF1bHQgewogIGFzeW5jIGZldGNoKHJlcXVlc3QsIGVudiwgY3R4KSB7CiAgICByZXR1cm4gbmV3IFJlc3BvbnNlKCdIZWxsbyBXb3JsZCEnKQogIH0KfQ==",
            "description": "The base64-encoded module content."
          }
        }
      },
      "description": "Code, sourcemaps, and other content used at runtime.\n\nThis includes [`_headers`](https://developers.cloudflare.com/workers/static-assets/headers/#custom-headers) and\n[`_redirects`](https://developers.cloudflare.com/workers/static-assets/redirects/) files used to configure \n[Static Assets](https://developers.cloudflare.com/workers/static-assets/). `_headers` and `_redirects` files should be \nincluded as modules named `_headers` and `_redirects` with content type `text/plain`.\n",
      "x-stainless-collection-type": "set"
    },
    "bindings": {
      "$ref": "#/components/schemas/workers_bindings"
    },
    "placement": {
      "$ref": "#/components/schemas/workers_placement_info_no_status"
    },
    "containers": {
      "$ref": "#/components/schemas/workers_containers"
    },
    "created_on": {
      "type": "string",
      "format": "date-time",
      "readOnly": true,
      "description": "When the version was created.",
      "x-auditable": true
    },
    "migrations": {
      "oneOf": [
        {
          "$ref": "#/components/schemas/workers_single_step_migrations"
        },
        {
          "$ref": "#/components/schemas/workers_multiple_step_migrations"
        }
      ],
      "description": "Migrations for Durable Objects associated with the version. Migrations are applied when the version is deployed."
    },
    "annotations": {
      "type": "object",
      "properties": {
        "workers/tag": {
          "type": "string",
          "example": "v1.0.1",
          "maxLength": 100,
          "description": "User-provided identifier for the version. Maximum 100 bytes.",
          "x-auditable": true
        },
        "workers/message": {
          "type": "string",
          "example": "Fixed bug.",
          "maxLength": 1000,
          "description": "Human-readable message about the version. Truncated to 1000 bytes if longer.",
          "x-auditable": true
        },
        "workers/triggered_by": {
          "type": "string",
          "example": "upload",
          "readOnly": true,
          "description": "Operation that triggered the creation of the version.",
          "x-auditable": true
        }
      },
      "description": "Metadata about the version."
    },
    "main_module": {
      "type": "string",
      "example": "index.js",
      "description": "The name of the main module in the `modules` array (e.g. the name of the module that exports a `fetch` handler).",
      "x-auditable": true
    },
    "usage_model": {
      "enum": [
        "standard",
        "bundled",
        "unbound"
      ],
      "type": "string",
      "default": "standard",
      "example": "standard",
      "deprecated": true,
      "description": "Usage model for the version.",
      "x-auditable": true
    },
    "migration_tag": {
      "type": "string",
      "example": "v1",
      "readOnly": true,
      "description": "Durable Object migration tag. Set when the version is deployed. Omitted if the version has not been deployed or the Worker does not use Durable Objects."
    },
    "startup_time_ms": {
      "type": "integer",
      "example": 10,
      "readOnly": true,
      "description": "Time in milliseconds spent on [Worker startup](https://developers.cloudflare.com/workers/platform/limits/#worker-startup-time).",
      "x-auditable": true
    },
    "compatibility_date": {
      "$ref": "#/components/schemas/workers_compatibility_date"
    },
    "compatibility_flags": {
      "$ref": "#/components/schemas/workers_compatibility_flags"
    }
  }
}
object workers_Worker
{
  "type": "object",
  "required": [
    "id",
    "name",
    "tags",
    "subdomain",
    "observability",
    "logpush",
    "tail_consumers",
    "created_on",
    "updated_on",
    "references"
  ],
  "properties": {
    "id": {
      "type": "string",
      "example": "e8f70fdbc8b1fb0b8ddb1af166186758",
      "readOnly": true,
      "description": "Immutable ID of the Worker.",
      "x-auditable": true
    },
    "name": {
      "type": "string",
      "example": "my-worker",
      "pattern": "^[a-z0-9_][a-z0-9-_]*$",
      "description": "Name of the Worker.",
      "x-auditable": true
    },
    "tags": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[^,&]*$",
        "maxLength": 1024
      },
      "default": [],
      "example": [
        "my-team",
        "my-public-api"
      ],
      "maxItems": 8,
      "description": "Tags associated with the Worker.",
      "x-stainless-collection-type": "set"
    },
    "logpush": {
      "type": "boolean",
      "default": false,
      "description": "Whether logpush is enabled for the Worker.",
      "x-auditable": true
    },
    "subdomain": {
      "type": "object",
      "properties": {
        "enabled": {
          "type": "boolean",
          "default": false,
          "description": "Whether the *.workers.dev subdomain is enabled for the Worker.",
          "x-auditable": true
        },
        "previews_enabled": {
          "type": "boolean",
          "description": "Whether [preview URLs](https://developers.cloudflare.com/workers/configuration/previews/) are enabled for the Worker.",
          "x-auditable": true,
          "x-stainless-terraform-configurability": "computed_optional"
        }
      },
      "description": "Subdomain settings for the Worker."
    },
    "created_on": {
      "type": "string",
      "format": "date-time",
      "readOnly": true,
      "description": "When the Worker was created.",
      "x-auditable": true
    },
    "references": {
      "type": "object",
      "readOnly": true,
      "required": [
        "workers",
        "domains",
        "dispatch_namespace_outbounds",
        "durable_objects",
        "queues"
      ],
      "properties": {
        "queues": {
          "type": "array",
          "items": {
            "type": "object",
            "required": [
              "queue_id",
              "queue_name",
              "queue_consumer_id"
            ],
            "properties": {
              "queue_id": {
                "type": "string",
                "example": "e8f70fdbc8b1fb0b8ddb1af166186758",
                "description": "ID of the queue."
              },
              "queue_name": {
                "type": "string",
                "example": "my-queue",
                "description": "Name of the queue."
              },
              "queue_consumer_id": {
                "type": "string",
                "example": "e8f70fdbc8b1fb0b8ddb1af166186758",
                "description": "ID of the queue consumer configuration."
              }
            }
          },
          "description": "Queues that send messages to the Worker."
        },
        "domains": {
          "type": "array",
          "items": {
            "type": "object",
            "required": [
              "id",
              "hostname",
              "zone_id",
              "zone_name",
              "certificate_id"
            ],
            "properties": {
              "id": {
                "type": "string",
                "example": "e8f70fdbc8b1fb0b8ddb1af166186758",
                "description": "ID of the custom domain."
              },
              "zone_id": {
                "type": "string",
                "example": "e8f70fdbc8b1fb0b8ddb1af166186758",
                "description": "ID of the zone."
              },
              "hostname": {
                "type": "string",
                "example": "my-worker.example.com",
                "description": "Full hostname of the custom domain, including the zone name."
              },
              "zone_name": {
                "type": "string",
                "example": "example.com",
                "description": "Name of the zone."
              },
              "certificate_id": {
                "type": "string",
                "description": "ID of the TLS certificate issued for the custom domain."
              }
            }
          },
          "description": "Custom domains connected to the Worker."
        },
        "workers": {
          "type": "array",
          "items": {
            "type": "object",
            "required": [
              "id",
              "name"
            ],
            "properties": {
              "id": {
                "type": "string",
                "example": "e8f70fdbc8b1fb0b8ddb1af166186758",
                "description": "ID of the referencing Worker."
              },
              "name": {
                "type": "string",
                "example": "my-worker",
                "description": "Name of the referencing Worker."
              }
            }
          },
          "description": "Other Workers that reference the Worker using [service bindings](https://developers.cloudflare.com/workers/runtime-apis/bindings/service-bindings/)."
        },
        "durable_objects": {
          "type": "array",
          "items": {
            "type": "object",
            "required": [
              "worker_id",
              "worker_name",
              "namespace_id",
              "namespace_name"
            ],
            "properties": {
              "worker_id": {
                "type": "string",
                "example": "e8f70fdbc8b1fb0b8ddb1af166186758",
                "description": "ID of the Worker using the Durable Object implementation."
              },
              "worker_name": {
                "type": "string",
                "example": "my-worker",
                "description": "Name of the Worker using the Durable Object implementation."
              },
              "namespace_id": {
                "type": "string",
                "example": "e8f70fdbc8b1fb0b8ddb1af166186758",
                "description": "ID of the Durable Object namespace being used."
              },
              "namespace_name": {
                "type": "string",
                "example": "my-durable-object-namespace",
                "description": "Name of the Durable Object namespace being used."
              }
            }
          },
          "description": "Other Workers that reference Durable Object classes implemented by the Worker."
        },
        "dispatch_namespace_outbounds": {
          "type": "array",
          "items": {
            "type": "object",
            "required": [
              "worker_id",
              "worker_name",
              "namespace_id",
              "namespace_name"
            ],
            "properties": {
              "worker_id": {
                "type": "string",
                "example": "e8f70fdbc8b1fb0b8ddb1af166186758",
                "description": "ID of the Worker using the dispatch namespace."
              },
              "worker_name": {
                "type": "string",
                "example": "my-worker",
                "description": "Name of the Worker using the dispatch namespace."
              },
              "namespace_id": {
                "type": "string",
                "example": "e8f70fdbc8b1fb0b8ddb1af166186758",
                "description": "ID of the dispatch namespace."
              },
              "namespace_name": {
                "type": "string",
                "example": "my-dispatch-namespace",
                "description": "Name of the dispatch namespace."
              }
            }
          },
          "description": "Other Workers that reference the Worker as an outbound for a dispatch namespace."
        }
      },
      "description": "Other resources that reference the Worker and depend on it existing."
    },
    "updated_on": {
      "type": "string",
      "format": "date-time",
      "readOnly": true,
      "description": "When the Worker was most recently updated.",
      "x-auditable": true
    },
    "deployed_on": {
      "type": "string",
      "format": "date-time",
      "nullable": true,
      "readOnly": true,
      "description": "When the Worker's most recent deployment was created. `null` if the Worker has never been deployed."
    },
    "observability": {
      "type": "object",
      "properties": {
        "logs": {
          "type": "object",
          "properties": {
            "enabled": {
              "type": "boolean",
              "default": false,
              "description": "Whether logs are enabled for the Worker.",
              "x-auditable": true
            },
            "persist": {
              "type": "boolean",
              "default": true,
              "description": "Whether log persistence is enabled for the Worker.",
              "x-auditable": true
            },
            "destinations": {
              "type": "array",
              "items": {
                "type": "string"
              },
              "default": [],
              "description": "A list of destinations where logs will be exported to.",
              "x-auditable": true
            },
            "invocation_logs": {
              "type": "boolean",
              "default": true,
              "description": "Whether [invocation logs](https://developers.cloudflare.com/workers/observability/logs/workers-logs/#invocation-logs) are enabled for the Worker.",
              "x-auditable": true
            },
            "head_sampling_rate": {
              "type": "number",
              "default": 1,
              "example": 1,
              "description": "The sampling rate for logs. From 0 to 1 (1 = 100%, 0.1 = 10%).",
              "x-auditable": true
            }
          },
          "description": "Log settings for the Worker."
        },
        "traces": {
          "type": "object",
          "properties": {
            "enabled": {
              "type": "boolean",
              "default": false,
              "description": "Whether traces are enabled for the Worker.",
              "x-auditable": true
            },
            "persist": {
              "type": "boolean",
              "default": true,
              "description": "Whether trace persistence is enabled for the Worker.",
              "x-auditable": true
            },
            "destinations": {
              "type": "array",
              "items": {
                "type": "string"
              },
              "default": [],
              "description": "A list of destinations where traces will be exported to.",
              "x-auditable": true
            },
            "head_sampling_rate": {
              "type": "number",
              "default": 1,
              "example": 1,
              "description": "The sampling rate for traces. From 0 to 1 (1 = 100%, 0.1 = 10%).",
              "x-auditable": true
            }
          },
          "description": "Trace settings for the Worker."
        },
        "enabled": {
          "type": "boolean",
          "default": false,
          "description": "Whether observability is enabled for the Worker.",
          "x-auditable": true
        },
        "head_sampling_rate": {
          "type": "number",
          "default": 1,
          "example": 1,
          "description": "The sampling rate for observability. From 0 to 1 (1 = 100%, 0.1 = 10%).",
          "x-auditable": true
        }
      },
      "description": "Observability settings for the Worker."
    },
    "tail_consumers": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "name"
        ],
        "properties": {
          "name": {
            "type": "string",
            "example": "my-tail-consumer",
            "description": "Name of the consumer Worker.",
            "x-auditable": true
          }
        }
      },
      "default": [],
      "description": "Other Workers that should consume logs from the Worker.",
      "x-stainless-collection-type": "set"
    }
  }
}
object workers_account-settings
{
  "type": "object",
  "properties": {
    "green_compute": {
      "type": "boolean",
      "x-auditable": true
    },
    "default_usage_model": {
      "type": "string",
      "x-auditable": true
    }
  }
}
object workers_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/workers_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result_info": {
          "type": "object",
          "properties": {
            "page": {
              "type": "number",
              "example": 1,
              "description": "Current page within paginated list of results."
            },
            "count": {
              "type": "number",
              "example": 1,
              "description": "Total number of results for the requested service."
            },
            "per_page": {
              "type": "number",
              "example": 20,
              "description": "Number of results per page of results."
            },
            "total_count": {
              "type": "number",
              "example": 2000,
              "description": "Total results available without any search parameters."
            },
            "total_pages": {
              "type": "number",
              "example": 100,
              "description": "The number of total pages in the entire result set."
            }
          }
        }
      }
    }
  ]
}
object workers_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/workers_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/workers_messages"
    }
  }
}
object workers_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/workers_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/workers_messages"
        }
      ],
      "example": []
    }
  }
}
object workers_api-response-null-result
{
  "allOf": [
    {
      "$ref": "#/components/schemas/workers_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "enum": [
            null
          ],
          "type": "object",
          "nullable": true
        }
      }
    }
  ]
}
object workers_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/workers_api-response-common"
    }
  ]
}
object workers_assets
{
  "type": "object",
  "properties": {
    "jwt": {
      "type": "string",
      "description": "Token provided upon successful upload of all files from a registered manifest.",
      "x-sensitive": true
    },
    "config": {
      "type": "object",
      "properties": {
        "_headers": {
          "type": "string",
          "example": "/dashboard/*\nX-Frame-Options: DENY\n\n/static/*\nAccess-Control-Allow-Origin: *",
          "description": "The contents of a _headers file (used to attach custom headers on asset responses)."
        },
        "_redirects": {
          "type": "string",
          "example": "/foo /bar 301\n/news/* /blog/:splat",
          "description": "The contents of a _redirects file (used to apply redirects or proxy paths ahead of asset serving)."
        },
        "html_handling": {
          "enum": [
            "auto-trailing-slash",
            "force-trailing-slash",
            "drop-trailing-slash",
            "none"
          ],
          "type": "string",
          "example": "auto-trailing-slash",
          "description": "Determines the redirects and rewrites of requests for HTML content."
        },
        "serve_directly": {
          "type": "boolean",
          "example": true,
          "deprecated": true,
          "description": "When true and the incoming request matches an asset, that will be served instead of invoking the Worker script. When false, requests will always invoke the Worker script."
        },
        "run_worker_first": {
          "oneOf": [
            {
              "type": "array",
              "items": {
                "type": "string"
              },
              "example": "[\"/api/*\", \"/oauth/callback\", \"!/api/assets/*\"]",
              "description": "Contains a list path rules to control routing to either the Worker or assets. Glob (*) and negative (!) rules are supported. Rules must start with either '/' or '!/'. At least one non-negative rule must be provided, and negative rules have higher precedence than non-negative rules."
            },
            {
              "type": "boolean",
              "example": true,
              "description": "Enables routing to always invoke the Worker script ahead of all requests. When true, this is equivalent to `[\"/*\"]` in the string array version of this field."
            }
          ]
        },
        "not_found_handling": {
          "enum": [
            "none",
            "404-page",
            "single-page-application"
          ],
          "type": "string",
          "example": "404-page",
          "description": "Determines the response when a request does not match a static asset, and there is no Worker script."
        }
      },
      "description": "Configuration for assets within a Worker."
    }
  },
  "description": "Configuration for assets within a Worker."
}
object workers_binding_item
{
  "type": "object",
  "oneOf": [
    {
      "$ref": "#/components/schemas/workers_binding_kind_ai"
    },
    {
      "$ref": "#/components/schemas/workers_binding_kind_ai_search"
    },
    {
      "$ref": "#/components/schemas/workers_binding_kind_ai_search_namespace"
    },
    {
      "$ref": "#/components/schemas/workers_binding_kind_analytics_engine"
    },
    {
      "$ref": "#/components/schemas/workers_binding_kind_assets"
    },
    {
      "$ref": "#/components/schemas/workers_binding_kind_browser"
    },
    {
      "$ref": "#/components/schemas/workers_binding_kind_d1"
    },
    {
      "$ref": "#/components/schemas/workers_binding_kind_data_blob"
    },
    {
      "$ref": "#/components/schemas/workers_binding_kind_dispatch_namespace"
    },
    {
      "$ref": "#/components/schemas/workers_binding_kind_durable_object_namespace"
    },
    {
      "$ref": "#/components/schemas/workers_binding_kind_hyperdrive"
    },
    {
      "$ref": "#/components/schemas/workers_binding_kind_inherit"
    },
    {
      "$ref": "#/components/schemas/workers_binding_kind_images"
    },
    {
      "$ref": "#/components/schemas/workers_binding_kind_json"
    },
    {
      "$ref": "#/components/schemas/workers_binding_kind_kv_namespace"
    },
    {
      "$ref": "#/components/schemas/workers_binding_kind_media"
    },
    {
      "$ref": "#/components/schemas/workers_binding_kind_mtls_certificate"
    },
    {
      "$ref": "#/components/schemas/workers_binding_kind_plain_text"
    },
    {
      "$ref": "#/components/schemas/workers_binding_kind_pipelines"
    },
    {
      "$ref": "#/components/schemas/workers_binding_kind_queue"
    },
    {
      "$ref": "#/components/schemas/workers_binding_kind_ratelimit"
    },
    {
      "$ref": "#/components/schemas/workers_binding_kind_r2_bucket"
    },
    {
      "$ref": "#/components/schemas/workers_binding_kind_secret_text"
    },
    {
      "$ref": "#/components/schemas/workers_binding_kind_send_email"
    },
    {
      "$ref": "#/components/schemas/workers_binding_kind_service"
    },
    {
      "$ref": "#/components/schemas/workers_binding_kind_text_blob"
    },
    {
      "$ref": "#/components/schemas/workers_binding_kind_vectorize"
    },
    {
      "$ref": "#/components/schemas/workers_binding_kind_version_metadata"
    },
    {
      "$ref": "#/components/schemas/workers_binding_kind_secrets_store_secret"
    },
    {
      "$ref": "#/components/schemas/workers_binding_kind_flagship"
    },
    {
      "$ref": "#/components/schemas/workers_binding_kind_secret_key"
    },
    {
      "$ref": "#/components/schemas/workers_binding_kind_workflow"
    },
    {
      "$ref": "#/components/schemas/workers_binding_kind_wasm_module"
    },
    {
      "$ref": "#/components/schemas/workers_binding_kind_vpc_service"
    },
    {
      "$ref": "#/components/schemas/workers_binding_kind_vpc_network"
    }
  ],
  "description": "A binding to allow the Worker to communicate with resources.",
  "discriminator": {
    "mapping": {
      "ai": "#/components/schemas/workers_binding_kind_ai",
      "d1": "#/components/schemas/workers_binding_kind_d1",
      "json": "#/components/schemas/workers_binding_kind_json",
      "media": "#/components/schemas/workers_binding_kind_media",
      "queue": "#/components/schemas/workers_binding_kind_queue",
      "assets": "#/components/schemas/workers_binding_kind_assets",
      "images": "#/components/schemas/workers_binding_kind_images",
      "browser": "#/components/schemas/workers_binding_kind_browser",
      "inherit": "#/components/schemas/workers_binding_kind_inherit",
      "service": "#/components/schemas/workers_binding_kind_service",
      "flagship": "#/components/schemas/workers_binding_kind_flagship",
      "workflow": "#/components/schemas/workers_binding_kind_workflow",
      "ai_search": "#/components/schemas/workers_binding_kind_ai_search",
      "data_blob": "#/components/schemas/workers_binding_kind_data_blob",
      "pipelines": "#/components/schemas/workers_binding_kind_pipelines",
      "r2_bucket": "#/components/schemas/workers_binding_kind_r2_bucket",
      "ratelimit": "#/components/schemas/workers_binding_kind_ratelimit",
      "text_blob": "#/components/schemas/workers_binding_kind_text_blob",
      "vectorize": "#/components/schemas/workers_binding_kind_vectorize",
      "hyperdrive": "#/components/schemas/workers_binding_kind_hyperdrive",
      "plain_text": "#/components/schemas/workers_binding_kind_plain_text",
      "secret_key": "#/components/schemas/workers_binding_kind_secret_key",
      "send_email": "#/components/schemas/workers_binding_kind_send_email",
      "secret_text": "#/components/schemas/workers_binding_kind_secret_text",
      "vpc_network": "#/components/schemas/workers_binding_kind_vpc_network",
      "vpc_service": "#/components/schemas/workers_binding_kind_vpc_service",
      "wasm_module": "#/components/schemas/workers_binding_kind_wasm_module",
      "kv_namespace": "#/components/schemas/workers_binding_kind_kv_namespace",
      "analytics_engine": "#/components/schemas/workers_binding_kind_analytics_engine",
      "mtls_certificate": "#/components/schemas/workers_binding_kind_mtls_certificate",
      "version_metadata": "#/components/schemas/workers_binding_kind_version_metadata",
      "dispatch_namespace": "#/components/schemas/workers_binding_kind_dispatch_namespace",
      "ai_search_namespace": "#/components/schemas/workers_binding_kind_ai_search_namespace",
      "secrets_store_secret": "#/components/schemas/workers_binding_kind_secrets_store_secret",
      "durable_object_namespace": "#/components/schemas/workers_binding_kind_durable_object_namespace"
    },
    "propertyName": "type"
  }
}
object workers_binding_kind_ai
{
  "type": "object",
  "required": [
    "name",
    "type"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/workers_binding_name"
    },
    "type": {
      "enum": [
        "ai"
      ],
      "type": "string",
      "description": "The kind of resource that the binding provides.",
      "x-auditable": true
    }
  }
}
object workers_binding_kind_ai_search
{
  "type": "object",
  "required": [
    "name",
    "type",
    "instance_name"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/workers_binding_name"
    },
    "type": {
      "enum": [
        "ai_search"
      ],
      "type": "string",
      "description": "The kind of resource that the binding provides.",
      "x-auditable": true
    },
    "namespace": {
      "type": "string",
      "example": "production",
      "description": "The namespace the instance belongs to. Defaults to \"default\" if omitted. Customers who don't use namespaces can simply omit this field.",
      "x-auditable": true
    },
    "instance_name": {
      "type": "string",
      "example": "cloudflare-blog",
      "description": "The user-chosen instance name. Must exist at deploy time. The worker can search, chat, update, and manage items/jobs on this instance.",
      "x-auditable": true
    }
  }
}
object workers_binding_kind_ai_search_namespace
{
  "type": "object",
  "required": [
    "name",
    "type",
    "namespace"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/workers_binding_name"
    },
    "type": {
      "enum": [
        "ai_search_namespace"
      ],
      "type": "string",
      "description": "The kind of resource that the binding provides.",
      "x-auditable": true
    },
    "namespace": {
      "type": "string",
      "example": "production",
      "description": "The user-chosen namespace name. Must exist before deploy -- Wrangler handles auto-creation on deploy failure (R2 bucket pattern). The \"default\" namespace is auto-created by config-api for new accounts. Grants full access (CRUD + search + chat) to all instances within the namespace.",
      "x-auditable": true
    }
  }
}
object workers_binding_kind_analytics_engine
{
  "type": "object",
  "required": [
    "name",
    "type",
    "dataset"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/workers_binding_name"
    },
    "type": {
      "enum": [
        "analytics_engine"
      ],
      "type": "string",
      "description": "The kind of resource that the binding provides.",
      "x-auditable": true
    },
    "dataset": {
      "type": "string",
      "example": "some_dataset",
      "description": "The name of the dataset to bind to.",
      "x-auditable": true
    }
  }
}
object workers_binding_kind_assets
{
  "type": "object",
  "required": [
    "name",
    "type"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/workers_binding_name"
    },
    "type": {
      "enum": [
        "assets"
      ],
      "type": "string",
      "description": "The kind of resource that the binding provides.",
      "x-auditable": true
    }
  }
}
object workers_binding_kind_browser
{
  "type": "object",
  "required": [
    "name",
    "type"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/workers_binding_name"
    },
    "type": {
      "enum": [
        "browser"
      ],
      "type": "string",
      "description": "The kind of resource that the binding provides.",
      "x-auditable": true
    }
  }
}
object workers_binding_kind_d1
{
  "type": "object",
  "required": [
    "name",
    "type",
    "database_id"
  ],
  "properties": {
    "id": {
      "type": "string",
      "example": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
      "deprecated": true,
      "description": "Identifier of the D1 database to bind to.",
      "x-auditable": true,
      "x-stainless-deprecation-message": "This property has been renamed to `database_id`."
    },
    "name": {
      "$ref": "#/components/schemas/workers_binding_name"
    },
    "type": {
      "enum": [
        "d1"
      ],
      "type": "string",
      "description": "The kind of resource that the binding provides.",
      "x-auditable": true
    },
    "database_id": {
      "type": "string",
      "example": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
      "description": "Identifier of the D1 database to bind to.",
      "x-auditable": true
    }
  }
}
object workers_binding_kind_data_blob
{
  "type": "object",
  "required": [
    "name",
    "type",
    "part"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/workers_binding_name"
    },
    "part": {
      "type": "string",
      "example": "my-module.bin",
      "description": "The name of the file containing the data content. Only accepted for `service worker syntax` Workers.",
      "x-auditable": true
    },
    "type": {
      "enum": [
        "data_blob"
      ],
      "type": "string",
      "deprecated": true,
      "description": "The kind of resource that the binding provides.",
      "x-auditable": true
    }
  }
}
object workers_binding_kind_dispatch_namespace
{
  "type": "object",
  "required": [
    "name",
    "type",
    "namespace"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/workers_binding_name"
    },
    "type": {
      "enum": [
        "dispatch_namespace"
      ],
      "type": "string",
      "description": "The kind of resource that the binding provides.",
      "x-auditable": true
    },
    "outbound": {
      "type": "object",
      "properties": {
        "params": {
          "type": "array",
          "items": {
            "type": "object",
            "required": [
              "name"
            ],
            "properties": {
              "name": {
                "type": "string",
                "example": "customer_name",
                "description": "Name of the parameter.",
                "x-auditable": true
              }
            }
          },
          "description": "Pass information from the Dispatch Worker to the Outbound Worker through the parameters."
        },
        "worker": {
          "type": "object",
          "properties": {
            "service": {
              "type": "string",
              "description": "Name of the outbound worker.",
              "x-auditable": true
            },
            "entrypoint": {
              "type": "string",
              "description": "Entrypoint to invoke on the outbound worker.",
              "x-auditable": true
            },
            "environment": {
              "type": "string",
              "description": "Environment of the outbound worker.",
              "x-auditable": true
            }
          },
          "description": "Outbound worker."
        }
      },
      "description": "Outbound worker."
    },
    "namespace": {
      "type": "string",
      "example": "my-namespace",
      "description": "The name of the dispatch namespace.",
      "x-auditable": true
    }
  }
}
object workers_binding_kind_durable_object_namespace
{
  "type": "object",
  "required": [
    "name",
    "type"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/workers_binding_name"
    },
    "type": {
      "enum": [
        "durable_object_namespace"
      ],
      "type": "string",
      "description": "The kind of resource that the binding provides.",
      "x-auditable": true
    },
    "class_name": {
      "type": "string",
      "example": "MyDurableObject",
      "description": "The exported class name of the Durable Object.",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    },
    "environment": {
      "type": "string",
      "example": "production",
      "description": "The environment of the script_name to bind to.",
      "x-auditable": true
    },
    "script_name": {
      "type": "string",
      "example": "my-other-worker",
      "description": "The script where the Durable Object is defined, if it is external to this Worker.",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    },
    "namespace_id": {
      "allOf": [
        {
          "$ref": "#/components/schemas/workers_namespace_identifier"
        },
        {
          "type": "string",
          "x-auditable": true,
          "x-stainless-terraform-configurability": "computed_optional"
        }
      ]
    },
    "dispatch_namespace": {
      "type": "string",
      "example": "my-dispatch-namespace",
      "description": "The dispatch namespace the Durable Object script belongs to.",
      "x-auditable": true
    }
  }
}
object workers_binding_kind_flagship
{
  "type": "object",
  "required": [
    "name",
    "type",
    "app_id"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/workers_binding_name"
    },
    "type": {
      "enum": [
        "flagship"
      ],
      "type": "string",
      "description": "The kind of resource that the binding provides.",
      "x-auditable": true
    },
    "app_id": {
      "type": "string",
      "example": "app-12345678-1234-1234-1234-123456789012",
      "maxLength": 128,
      "description": "ID of the Flagship app to bind to for feature flag evaluation.",
      "x-auditable": true
    }
  }
}
object workers_binding_kind_hyperdrive
{
  "type": "object",
  "required": [
    "name",
    "type",
    "id"
  ],
  "properties": {
    "id": {
      "type": "string",
      "example": "57b7076f58be42419276f058a8968187",
      "description": "Identifier of the Hyperdrive connection to bind to.",
      "x-auditable": true
    },
    "name": {
      "$ref": "#/components/schemas/workers_binding_name"
    },
    "type": {
      "enum": [
        "hyperdrive"
      ],
      "type": "string",
      "description": "The kind of resource that the binding provides.",
      "x-auditable": true
    }
  }
}
object workers_binding_kind_images
{
  "type": "object",
  "required": [
    "name",
    "type"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/workers_binding_name"
    },
    "type": {
      "enum": [
        "images"
      ],
      "type": "string",
      "description": "The kind of resource that the binding provides.",
      "x-auditable": true
    }
  }
}
object workers_binding_kind_inherit
{
  "type": "object",
  "required": [
    "name",
    "type"
  ],
  "properties": {
    "name": {
      "type": "string",
      "example": "MY_BINDING",
      "description": "The name of the inherited binding.",
      "x-auditable": true
    },
    "type": {
      "enum": [
        "inherit"
      ],
      "type": "string",
      "description": "The kind of resource that the binding provides.",
      "x-auditable": true
    },
    "old_name": {
      "type": "string",
      "example": "MY_OLD_BINDING",
      "description": "The old name of the inherited binding. If set, the binding will be renamed from `old_name` to `name` in the new version. If not set, the binding will keep the same name between versions.",
      "x-auditable": true
    },
    "version_id": {
      "type": "string",
      "default": "latest",
      "example": "8969331f-7192-434c-9938-6aea24ed58bf",
      "description": "Identifier for the version to inherit the binding from, which can be the version ID or the literal \"latest\" to inherit from the latest version. Defaults to inheriting the binding from the latest version.",
      "x-auditable": true
    }
  }
}
object workers_binding_kind_json
{
  "type": "object",
  "required": [
    "name",
    "type",
    "json"
  ],
  "properties": {
    "json": {
      "type": "object",
      "description": "JSON data to use.",
      "x-stainless-any": true
    },
    "name": {
      "$ref": "#/components/schemas/workers_binding_name"
    },
    "type": {
      "enum": [
        "json"
      ],
      "type": "string",
      "description": "The kind of resource that the binding provides.",
      "x-auditable": true
    }
  }
}
object workers_binding_kind_kv_namespace
{
  "type": "object",
  "required": [
    "name",
    "type",
    "namespace_id"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/workers_binding_name"
    },
    "type": {
      "enum": [
        "kv_namespace"
      ],
      "type": "string",
      "description": "The kind of resource that the binding provides.",
      "x-auditable": true
    },
    "namespace_id": {
      "$ref": "#/components/schemas/workers_namespace_identifier"
    }
  }
}
object workers_binding_kind_media
{
  "type": "object",
  "required": [
    "name",
    "type"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/workers_binding_name"
    },
    "type": {
      "enum": [
        "media"
      ],
      "type": "string",
      "description": "The kind of resource that the binding provides.",
      "x-auditable": true
    }
  }
}
object workers_binding_kind_mtls_certificate
{
  "type": "object",
  "required": [
    "name",
    "type",
    "certificate_id"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/workers_binding_name"
    },
    "type": {
      "enum": [
        "mtls_certificate"
      ],
      "type": "string",
      "description": "The kind of resource that the binding provides.",
      "x-auditable": true
    },
    "certificate_id": {
      "type": "string",
      "example": "efwu2n6s-q69d-2kr9-184j-4913e8h391k6",
      "description": "Identifier of the certificate to bind to.",
      "x-auditable": true
    }
  }
}
object workers_binding_kind_pipelines
{
  "type": "object",
  "required": [
    "name",
    "type",
    "pipeline"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/workers_binding_name"
    },
    "type": {
      "enum": [
        "pipelines"
      ],
      "type": "string",
      "description": "The kind of resource that the binding provides.",
      "x-auditable": true
    },
    "pipeline": {
      "type": "string",
      "example": "my-pipeline",
      "description": "Name of the Pipeline to bind to.",
      "x-auditable": true
    }
  }
}
object workers_binding_kind_plain_text
{
  "type": "object",
  "required": [
    "name",
    "type",
    "text"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/workers_binding_name"
    },
    "text": {
      "type": "string",
      "example": "Hello, world!",
      "description": "The text value to use.",
      "x-auditable": true
    },
    "type": {
      "enum": [
        "plain_text"
      ],
      "type": "string",
      "description": "The kind of resource that the binding provides.",
      "x-auditable": true
    }
  }
}
object workers_binding_kind_queue
{
  "type": "object",
  "required": [
    "name",
    "type",
    "queue_name"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/workers_binding_name"
    },
    "type": {
      "enum": [
        "queue"
      ],
      "type": "string",
      "description": "The kind of resource that the binding provides.",
      "x-auditable": true
    },
    "queue_name": {
      "type": "string",
      "example": "my-queue",
      "description": "Name of the Queue to bind to."
    }
  }
}
object workers_binding_kind_r2_bucket
{
  "type": "object",
  "required": [
    "name",
    "type",
    "bucket_name"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/workers_binding_name"
    },
    "type": {
      "enum": [
        "r2_bucket"
      ],
      "type": "string",
      "description": "The kind of resource that the binding provides.",
      "x-auditable": true
    },
    "bucket_name": {
      "type": "string",
      "example": "my-r2-bucket",
      "description": "R2 bucket to bind to.",
      "x-auditable": true
    },
    "jurisdiction": {
      "enum": [
        "eu",
        "fedramp",
        "fedramp-high"
      ],
      "type": "string",
      "example": "eu",
      "description": "The [jurisdiction](https://developers.cloudflare.com/r2/reference/data-location/#jurisdictional-restrictions) of the R2 bucket.",
      "x-auditable": true
    }
  }
}
object workers_binding_kind_ratelimit
{
  "type": "object",
  "required": [
    "name",
    "type",
    "namespace_id",
    "simple"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/workers_binding_name"
    },
    "type": {
      "enum": [
        "ratelimit"
      ],
      "type": "string",
      "description": "The kind of resource that the binding provides.",
      "x-auditable": true
    },
    "simple": {
      "type": "object",
      "required": [
        "limit",
        "period"
      ],
      "properties": {
        "limit": {
          "type": "number",
          "example": 100,
          "description": "The limit (requests per period).",
          "x-auditable": true
        },
        "period": {
          "type": "integer",
          "example": 60,
          "description": "The period in seconds.",
          "x-auditable": true
        }
      },
      "description": "The rate limit configuration."
    },
    "namespace_id": {
      "type": "string",
      "example": "1234",
      "description": "Identifier of the rate limit namespace to bind to.",
      "x-auditable": true
    }
  }
}
object workers_binding_kind_secret_key
{
  "type": "object",
  "required": [
    "name",
    "type",
    "format",
    "algorithm",
    "usages"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/workers_binding_name"
    },
    "type": {
      "enum": [
        "secret_key"
      ],
      "type": "string",
      "description": "The kind of resource that the binding provides.",
      "x-auditable": true
    },
    "format": {
      "enum": [
        "raw",
        "pkcs8",
        "spki",
        "jwk"
      ],
      "type": "string",
      "example": "raw",
      "description": "Data format of the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#format).",
      "x-auditable": true
    },
    "usages": {
      "type": "array",
      "items": {
        "enum": [
          "encrypt",
          "decrypt",
          "sign",
          "verify",
          "deriveKey",
          "deriveBits",
          "wrapKey",
          "unwrapKey"
        ],
        "type": "string"
      },
      "example": [
        "encrypt",
        "decrypt"
      ],
      "description": "Allowed operations with the key. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#keyUsages).",
      "x-auditable": true,
      "x-stainless-collection-type": "set"
    },
    "key_jwk": {
      "type": "object",
      "writeOnly": true,
      "description": "Key data in [JSON Web Key](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#json_web_key) format. Required if `format` is \"jwk\".",
      "x-sensitive": true
    },
    "algorithm": {
      "type": "object",
      "description": "Algorithm-specific key parameters. [Learn more](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/importKey#algorithm).",
      "x-auditable": true
    },
    "key_base64": {
      "type": "string",
      "writeOnly": true,
      "description": "Base64-encoded key data. Required if `format` is \"raw\", \"pkcs8\", or \"spki\".",
      "x-sensitive": true
    }
  }
}
object workers_binding_kind_secret_text
{
  "type": "object",
  "required": [
    "name",
    "type",
    "text"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/workers_binding_name"
    },
    "text": {
      "type": "string",
      "example": "My secret.",
      "writeOnly": true,
      "description": "The secret value to use.",
      "x-sensitive": true
    },
    "type": {
      "enum": [
        "secret_text"
      ],
      "type": "string",
      "description": "The kind of resource that the binding provides.",
      "x-auditable": true
    }
  }
}
object workers_binding_kind_secrets_store_secret
{
  "type": "object",
  "required": [
    "name",
    "type",
    "store_id",
    "secret_name"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/workers_binding_name"
    },
    "type": {
      "enum": [
        "secrets_store_secret"
      ],
      "type": "string",
      "description": "The kind of resource that the binding provides.",
      "x-auditable": true
    },
    "store_id": {
      "type": "string",
      "example": "8c8b1387108e49be85669169793e7bd2",
      "description": "ID of the store containing the secret.",
      "x-auditable": true
    },
    "secret_name": {
      "type": "string",
      "example": "my_secret",
      "description": "Name of the secret in the store.",
      "x-auditable": true
    }
  }
}
object workers_binding_kind_send_email
{
  "type": "object",
  "required": [
    "name",
    "type"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/workers_binding_name"
    },
    "type": {
      "enum": [
        "send_email"
      ],
      "type": "string",
      "description": "The kind of resource that the binding provides.",
      "x-auditable": true
    },
    "destination_address": {
      "type": "string",
      "format": "email",
      "example": "user@example.com",
      "description": "Destination address for the email.",
      "x-auditable": true
    },
    "allowed_sender_addresses": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "email"
      },
      "example": [
        "user1@example.com",
        "user2@example.com"
      ],
      "description": "List of allowed sender addresses.",
      "x-auditable": true
    },
    "allowed_destination_addresses": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "email"
      },
      "example": [
        "user1@example.com",
        "user2@example.com"
      ],
      "description": "List of allowed destination addresses.",
      "x-auditable": true
    }
  }
}
object workers_binding_kind_service
{
  "type": "object",
  "required": [
    "name",
    "type",
    "service"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/workers_binding_name"
    },
    "type": {
      "enum": [
        "service"
      ],
      "type": "string",
      "description": "The kind of resource that the binding provides.",
      "x-auditable": true
    },
    "service": {
      "type": "string",
      "example": "my-worker",
      "description": "Name of Worker to bind to.",
      "x-auditable": true
    },
    "entrypoint": {
      "type": "string",
      "example": "MyHandler",
      "description": "Entrypoint to invoke on the target Worker.",
      "x-auditable": true
    },
    "environment": {
      "type": "string",
      "default": "production",
      "example": "production",
      "description": "Optional environment if the Worker utilizes one.",
      "x-auditable": true
    }
  }
}
object workers_binding_kind_text_blob
{
  "type": "object",
  "required": [
    "name",
    "type",
    "part"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/workers_binding_name"
    },
    "part": {
      "type": "string",
      "example": "my-module.txt",
      "description": "The name of the file containing the text content. Only accepted for `service worker syntax` Workers.",
      "x-auditable": true
    },
    "type": {
      "enum": [
        "text_blob"
      ],
      "type": "string",
      "deprecated": true,
      "description": "The kind of resource that the binding provides.",
      "x-auditable": true
    }
  }
}
object workers_binding_kind_vectorize
{
  "type": "object",
  "required": [
    "name",
    "type",
    "index_name"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/workers_binding_name"
    },
    "type": {
      "enum": [
        "vectorize"
      ],
      "type": "string",
      "description": "The kind of resource that the binding provides.",
      "x-auditable": true
    },
    "index_name": {
      "type": "string",
      "example": "my-index-name",
      "description": "Name of the Vectorize index to bind to.",
      "x-auditable": true
    }
  }
}
object workers_binding_kind_version_metadata
{
  "type": "object",
  "required": [
    "name",
    "type"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/workers_binding_name"
    },
    "type": {
      "enum": [
        "version_metadata"
      ],
      "type": "string",
      "description": "The kind of resource that the binding provides.",
      "x-auditable": true
    }
  }
}
object workers_binding_kind_vpc_network
{
  "type": "object",
  "required": [
    "name",
    "type"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/workers_binding_name"
    },
    "type": {
      "enum": [
        "vpc_network"
      ],
      "type": "string",
      "description": "The kind of resource that the binding provides.",
      "x-auditable": true
    },
    "tunnel_id": {
      "type": "string",
      "example": "abcd1234-5678-90ef-ghij-klmnopqrstuv",
      "description": "UUID of the Cloudflare Tunnel to bind to. Mutually exclusive with network_id.\n",
      "x-auditable": true
    },
    "network_id": {
      "type": "string",
      "example": "cf1:network",
      "description": "Identifier of the network to bind to. Only \"cf1:network\" is currently supported. Mutually exclusive with tunnel_id.\n",
      "x-auditable": true
    }
  }
}
object workers_binding_kind_vpc_service
{
  "type": "object",
  "required": [
    "name",
    "type",
    "service_id"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/workers_binding_name"
    },
    "type": {
      "enum": [
        "vpc_service"
      ],
      "type": "string",
      "description": "The kind of resource that the binding provides.",
      "x-auditable": true
    },
    "service_id": {
      "type": "string",
      "example": "8c8b1387108e49be85669169793e7bd2",
      "description": "Identifier of the VPC service to bind to.",
      "x-auditable": true
    }
  }
}
object workers_binding_kind_wasm_module
{
  "type": "object",
  "required": [
    "name",
    "type",
    "part"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/workers_binding_name"
    },
    "part": {
      "type": "string",
      "example": "my-module.wasm",
      "description": "The name of the file containing the WebAssembly module content. Only accepted for `service worker syntax` Workers.",
      "x-auditable": true
    },
    "type": {
      "enum": [
        "wasm_module"
      ],
      "type": "string",
      "deprecated": true,
      "description": "The kind of resource that the binding provides.",
      "x-auditable": true
    }
  }
}
object workers_binding_kind_workflow
{
  "type": "object",
  "required": [
    "name",
    "type",
    "workflow_name"
  ],
  "properties": {
    "name": {
      "$ref": "#/components/schemas/workers_binding_name"
    },
    "type": {
      "enum": [
        "workflow"
      ],
      "type": "string",
      "description": "The kind of resource that the binding provides."
    },
    "class_name": {
      "type": "string",
      "example": "my-workflow",
      "description": "Class name of the Workflow. Should only be provided if the Workflow belongs to this script."
    },
    "script_name": {
      "type": "string",
      "example": "my-workflow",
      "description": "Script name that contains the Workflow. If not provided, defaults to this script name.",
      "x-auditable": true
    },
    "workflow_name": {
      "type": "string",
      "example": "my-workflow",
      "description": "Name of the Workflow to bind to."
    }
  }
}
string workers_binding_name
{
  "type": "string",
  "example": "myBinding",
  "description": "A JavaScript variable name for the binding.",
  "x-auditable": true
}
array workers_bindings
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/workers_binding_item"
  },
  "example": [
    {
      "name": "MY_ENV_VAR",
      "text": "my_data",
      "type": "plain_text"
    }
  ],
  "description": "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."
}
string workers_compatibility_date
{
  "type": "string",
  "example": "2021-01-01",
  "description": "Date indicating targeted support in the Workers runtime. Backwards incompatible fixes to the runtime following this date will not affect this Worker.",
  "x-auditable": true
}
string workers_compatibility_flag
{
  "type": "string",
  "example": "nodejs_compat",
  "description": "Flag that enables or disables a specific feature in the Workers runtime.",
  "x-auditable": true
}
array workers_compatibility_flags
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/workers_compatibility_flag"
  },
  "default": [],
  "example": [
    "nodejs_compat"
  ],
  "description": "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`.",
  "x-stainless-collection-type": "set"
}
object workers_completed-upload-assets-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/workers_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "jwt": {
              "type": "string",
              "description": "A \"completion\" JWT which can be redeemed when creating a Worker version.",
              "x-sensitive": true
            }
          }
        }
      }
    }
  ]
}
object workers_container_item
{
  "type": "object",
  "required": [
    "class_name"
  ],
  "properties": {
    "class_name": {
      "type": "string",
      "description": "Select which Durable Object class should get this container attached.",
      "x-auditable": true
    }
  },
  "description": "Container configuration for a Worker."
}
array workers_containers
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/workers_container_item"
  },
  "example": [
    {
      "class_name": "MyDurableObject"
    }
  ],
  "description": "List of containers attached to a Worker. Containers can only be attached to Durable Object classes of this Worker script.",
  "x-stainless-collection-type": "set"
}
object workers_create-assets-upload-session-object
{
  "type": "object",
  "required": [
    "manifest"
  ],
  "properties": {
    "manifest": {
      "type": "object",
      "description": "A manifest ([path]: {hash, size}) map of files to upload. As an example, `/blog/hello-world.html` would be a valid path key.",
      "additionalProperties": {
        "$ref": "#/components/schemas/workers_manifest-value"
      }
    }
  }
}
object workers_create-assets-upload-session-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/workers_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "jwt": {
              "type": "string",
              "description": "A JWT to use as authentication for uploading assets.",
              "x-sensitive": true
            },
            "buckets": {
              "type": "array",
              "items": {
                "type": "array",
                "items": {
                  "type": "string",
                  "description": "The file hash to include in this bucket."
                },
                "description": "The set of assets to include in each request while uploading.",
                "x-stainless-collection-type": "set"
              },
              "description": "The requests to make to upload assets.",
              "x-stainless-collection-type": "set"
            }
          }
        }
      }
    }
  ]
}
string workers_created_on
{
  "type": "string",
  "format": "date-time",
  "example": "2017-01-01T00:00:00Z",
  "readOnly": true,
  "description": "When the script was created.",
  "x-auditable": true
}
string workers_cursor
{
  "type": "string",
  "example": "AAAAANuhDN7SjacTnSVsDu3WW1Lvst6dxJGTjRY5BhxPXdf6L6uTcpd_NVtjhn11OUYRsVEykxoUwF-JQU4dn6QylZSKTOJuG0indrdn_MlHpMRtsxgXjs-RPdHYIVm3odE_uvEQ_dTQGFm8oikZMohns34DLBgrQpc",
  "description": "Opaque token indicating the position from which to continue when requesting the next set of records. A valid value for the cursor can be obtained from the cursors object in the result_info structure."
}
object workers_deployment
{
  "type": "object",
  "required": [
    "id",
    "source",
    "strategy",
    "versions",
    "created_on"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid",
      "readOnly": true,
      "x-auditable": true
    },
    "source": {
      "type": "string",
      "example": "api",
      "readOnly": true,
      "x-auditable": true
    },
    "strategy": {
      "enum": [
        "percentage"
      ],
      "type": "string",
      "x-auditable": true
    },
    "versions": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "version_id",
          "percentage"
        ],
        "properties": {
          "percentage": {
            "type": "number",
            "example": 100,
            "maximum": 100,
            "minimum": 0.01,
            "x-auditable": true
          },
          "version_id": {
            "type": "string",
            "format": "uuid",
            "x-auditable": true
          }
        }
      },
      "x-auditable": true
    },
    "created_on": {
      "type": "string",
      "format": "date-time",
      "readOnly": true,
      "x-auditable": true
    },
    "annotations": {
      "type": "object",
      "properties": {
        "workers/message": {
          "type": "string",
          "example": "Deploy bug fix.",
          "maxLength": 1000,
          "description": "Human-readable message about the deployment. Truncated to 1000 bytes if longer.",
          "x-auditable": true
        },
        "workers/triggered_by": {
          "type": "string",
          "example": "deployment",
          "readOnly": true,
          "description": "Operation that triggered the creation of the deployment."
        }
      }
    },
    "author_email": {
      "type": "string",
      "format": "email",
      "readOnly": true,
      "x-auditable": true
    }
  }
}
string workers_dispatch_namespace_name
{
  "type": "string",
  "example": "my-dispatch-namespace",
  "pattern": "^.+$",
  "description": "Name of the Workers for Platforms dispatch namespace.",
  "x-auditable": true
}
string workers_environment
{
  "type": "string",
  "example": "production",
  "description": "Optional environment if the Worker utilizes one.",
  "x-auditable": true
}
string workers_etag
{
  "type": "string",
  "example": "ea95132c15732412d22c1476fa83f27a",
  "readOnly": true,
  "description": "Hashed script content, can be used in a If-None-Match header when updating."
}
boolean workers_has_assets
{
  "type": "boolean",
  "example": false,
  "description": "Whether a Worker contains assets.",
  "x-auditable": true
}
boolean workers_has_modules
{
  "type": "boolean",
  "example": false,
  "description": "Whether a Worker contains modules.",
  "x-auditable": true
}
string workers_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Identifier.",
  "x-auditable": true
}
object workers_limits
{
  "type": "object",
  "properties": {
    "cpu_ms": {
      "type": "integer",
      "example": 50,
      "description": "The amount of CPU time this Worker can use in milliseconds.",
      "x-auditable": true
    },
    "subrequests": {
      "type": "integer",
      "example": 1000,
      "description": "The number of subrequests this Worker can make per request.",
      "x-auditable": true
    }
  },
  "description": "Limits to apply for this Worker."
}
boolean workers_logpush
{
  "type": "boolean",
  "default": false,
  "example": false,
  "description": "Whether Logpush is turned on for the Worker.",
  "x-auditable": true
}
object workers_manifest-value
{
  "type": "object",
  "required": [
    "hash",
    "size"
  ],
  "properties": {
    "hash": {
      "type": "string",
      "description": "The hash of the file."
    },
    "size": {
      "type": "integer",
      "description": "The size of the file in bytes."
    }
  }
}
array workers_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
object workers_migration_step
{
  "type": "object",
  "properties": {
    "new_classes": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "writeOnly": true,
      "description": "A list of classes to create Durable Object namespaces from."
    },
    "deleted_classes": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "writeOnly": true,
      "description": "A list of classes to delete Durable Object namespaces from."
    },
    "renamed_classes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "to": {
            "type": "string",
            "writeOnly": true,
            "x-auditable": true
          },
          "from": {
            "type": "string",
            "writeOnly": true,
            "x-auditable": true
          }
        }
      },
      "writeOnly": true,
      "description": "A list of classes with Durable Object namespaces that were renamed."
    },
    "new_sqlite_classes": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "writeOnly": true,
      "description": "A list of classes to create Durable Object namespaces with SQLite from."
    },
    "transferred_classes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "to": {
            "type": "string",
            "writeOnly": true,
            "x-auditable": true
          },
          "from": {
            "type": "string",
            "writeOnly": true,
            "x-auditable": true
          },
          "from_script": {
            "type": "string",
            "writeOnly": true,
            "x-auditable": true
          }
        }
      },
      "writeOnly": true,
      "description": "A list of transfers for Durable Object namespaces from a different Worker and class to a class defined in this Worker."
    }
  }
}
object workers_migration_tag_conditions
{
  "type": "object",
  "properties": {
    "new_tag": {
      "type": "string",
      "example": "v2",
      "writeOnly": true,
      "description": "Tag to set as the latest migration tag.",
      "x-auditable": true
    },
    "old_tag": {
      "type": "string",
      "example": "v1",
      "writeOnly": true,
      "description": "Tag used to verify against the latest migration tag for this Worker. If they don't match, the upload is rejected.",
      "x-auditable": true
    }
  }
}
string workers_modified_on
{
  "type": "string",
  "format": "date-time",
  "example": "2017-01-01T00:00:00Z",
  "readOnly": true,
  "description": "When the script was last modified.",
  "x-auditable": true
}
object workers_multipart-script
{
  "type": "object",
  "example": {
    "files": [
      "export default {\n  async fetch(request, env, ctx) {\n    return new Response(\"Hello, world!\");\n  }\n};"
    ],
    "metadata": {
      "main_module": "worker.js",
      "compatibility_date": {},
      "compatibility_flags": [
        "nodejs_compat"
      ]
    }
  },
  "required": [
    "metadata"
  ],
  "properties": {
    "files": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "binary"
      },
      "description": "An array of modules (often JavaScript files) comprising a Worker script. At least one module must be present and referenced in the metadata as `main_module` or `body_part` by filename.<br/>Possible Content-Type(s) are: `application/javascript+module`, `text/javascript+module`, `application/javascript`, `text/javascript`, `text/x-python`, `text/x-python-requirement`, `application/wasm`, `text/plain`, `application/octet-stream`, `application/source-map`.",
      "x-stainless-collection-type": "set"
    },
    "metadata": {
      "type": "object",
      "properties": {
        "tags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of strings to use as tags for this Worker.",
          "x-stainless-collection-type": "set"
        },
        "assets": {
          "$ref": "#/components/schemas/workers_assets"
        },
        "limits": {
          "$ref": "#/components/schemas/workers_limits"
        },
        "logpush": {
          "$ref": "#/components/schemas/workers_logpush"
        },
        "bindings": {
          "$ref": "#/components/schemas/workers_bindings"
        },
        "body_part": {
          "type": "string",
          "example": "worker.js",
          "description": "Name of the uploaded file that contains the script (e.g. the file adding a listener to the `fetch` event). Indicates a `service worker syntax` Worker."
        },
        "placement": {
          "$ref": "#/components/schemas/workers_placement_info"
        },
        "migrations": {
          "oneOf": [
            {
              "$ref": "#/components/schemas/workers_single_step_migrations"
            },
            {
              "$ref": "#/components/schemas/workers_multiple_step_migrations"
            }
          ],
          "writeOnly": true,
          "description": "Migrations to apply for Durable Objects associated with this Worker."
        },
        "keep_assets": {
          "type": "boolean",
          "example": false,
          "description": "Retain assets which exist for a previously uploaded Worker version; used in lieu of providing a completion token."
        },
        "main_module": {
          "type": "string",
          "example": "worker.js",
          "description": "Name of the uploaded file that contains the main module (e.g. the file exporting a `fetch` handler). Indicates a `module syntax` Worker."
        },
        "usage_model": {
          "$ref": "#/components/schemas/workers_usage_model"
        },
        "keep_bindings": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of binding types to keep from previous_upload.",
          "x-stainless-collection-type": "set"
        },
        "observability": {
          "$ref": "#/components/schemas/workers_observability"
        },
        "tail_consumers": {
          "$ref": "#/components/schemas/workers_tail_consumers"
        },
        "compatibility_date": {
          "$ref": "#/components/schemas/workers_compatibility_date"
        },
        "compatibility_flags": {
          "$ref": "#/components/schemas/workers_compatibility_flags"
        }
      },
      "description": "JSON-encoded metadata about the uploaded parts and Worker configuration."
    }
  }
}
object workers_multiple_step_migrations
{
  "allOf": [
    {
      "$ref": "#/components/schemas/workers_migration_tag_conditions"
    },
    {
      "type": "object",
      "properties": {
        "steps": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/workers_migration_step"
          },
          "writeOnly": true,
          "description": "Migrations to apply in order."
        }
      }
    }
  ]
}
object workers_namespace
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "readOnly": true
    },
    "name": {
      "type": "string"
    },
    "class": {
      "type": "string"
    },
    "script": {
      "type": "string"
    },
    "use_sqlite": {
      "type": "boolean"
    }
  }
}
object workers_namespace-list-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/workers_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/workers_namespace-response"
          }
        }
      }
    }
  ]
}
object workers_namespace-response
{
  "type": "object",
  "properties": {
    "created_by": {
      "$ref": "#/components/schemas/workers_identifier"
    },
    "created_on": {
      "$ref": "#/components/schemas/workers_created_on"
    },
    "modified_by": {
      "$ref": "#/components/schemas/workers_identifier"
    },
    "modified_on": {
      "$ref": "#/components/schemas/workers_modified_on"
    },
    "namespace_id": {
      "$ref": "#/components/schemas/workers_uuid"
    },
    "script_count": {
      "$ref": "#/components/schemas/workers_script_count"
    },
    "namespace_name": {
      "$ref": "#/components/schemas/workers_dispatch_namespace_name"
    },
    "trusted_workers": {
      "$ref": "#/components/schemas/workers_trusted_workers"
    }
  }
}
object workers_namespace-script-and-version-settings-item
{
  "type": "object",
  "properties": {
    "tags": {
      "allOf": [
        {
          "$ref": "#/components/schemas/workers_tags"
        },
        {
          "type": "array",
          "items": {
            "type": "string",
            "x-auditable": true
          },
          "default": [],
          "x-stainless-collection-type": "set"
        }
      ]
    },
    "limits": {
      "$ref": "#/components/schemas/workers_limits"
    },
    "logpush": {
      "$ref": "#/components/schemas/workers_logpush"
    },
    "bindings": {
      "allOf": [
        {
          "$ref": "#/components/schemas/workers_bindings"
        },
        {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/workers_binding_item"
          },
          "default": []
        }
      ]
    },
    "placement": {
      "allOf": [
        {
          "$ref": "#/components/schemas/workers_placement_info_no_status"
        },
        {
          "type": "object",
          "default": {}
        }
      ]
    },
    "migrations": {
      "oneOf": [
        {
          "$ref": "#/components/schemas/workers_single_step_migrations"
        },
        {
          "$ref": "#/components/schemas/workers_multiple_step_migrations"
        }
      ],
      "writeOnly": true,
      "description": "Migrations to apply for Durable Objects associated with this Worker.\n"
    },
    "usage_model": {
      "$ref": "#/components/schemas/workers_usage_model"
    },
    "observability": {
      "$ref": "#/components/schemas/workers_observability"
    },
    "tail_consumers": {
      "allOf": [
        {
          "$ref": "#/components/schemas/workers_tail_consumers"
        },
        {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/workers_tail_consumers_script"
          },
          "default": [],
          "x-stainless-collection-type": "set"
        }
      ]
    },
    "compatibility_date": {
      "allOf": [
        {
          "$ref": "#/components/schemas/workers_compatibility_date"
        },
        {
          "type": "string",
          "default": "",
          "x-auditable": true
        }
      ]
    },
    "compatibility_flags": {
      "allOf": [
        {
          "$ref": "#/components/schemas/workers_compatibility_flags"
        },
        {
          "type": "array",
          "items": {
            "type": "string",
            "x-auditable": true
          },
          "default": [],
          "x-stainless-collection-type": "set"
        }
      ]
    }
  },
  "description": "Script and version settings for Workers for Platforms namespace scripts. Same as script-and-version-settings-item but without annotations, which are not supported for namespace scripts.\n"
}
object workers_namespace-script-delete-bulk-response
{
  "type": "object",
  "properties": {
    "deleted": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/workers_uuid"
          }
        }
      }
    },
    "has_more": {
      "type": "boolean",
      "example": false
    },
    "deleted_count": {
      "type": "integer",
      "example": 100
    }
  },
  "description": "Detail about bulk deletion of scripts in a namespace."
}
object workers_namespace-script-response
{
  "type": "object",
  "properties": {
    "script": {
      "$ref": "#/components/schemas/workers_script-response"
    },
    "created_on": {
      "$ref": "#/components/schemas/workers_created_on"
    },
    "modified_on": {
      "$ref": "#/components/schemas/workers_modified_on"
    },
    "dispatch_namespace": {
      "$ref": "#/components/schemas/workers_dispatch_namespace_name"
    }
  },
  "description": "Details about a worker uploaded to a Workers for Platforms namespace."
}
object workers_namespace-script-response-single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/workers_api-response-common"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "$ref": "#/components/schemas/workers_namespace-script-response"
        }
      }
    }
  ]
}
object workers_namespace-single-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/workers_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/workers_namespace-response"
        }
      }
    }
  ]
}
string workers_namespace_identifier
{
  "type": "string",
  "example": "0f2ac74b498b48028cb68387c421e279",
  "maxLength": 32,
  "description": "Namespace identifier tag.",
  "x-auditable": true
}
object workers_object
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "example": "fe7803fc55b964e09d94666545aab688d360c6bda69ba349ced1e5f28d2fc2c8",
      "readOnly": true,
      "description": "ID of the Durable Object."
    },
    "hasStoredData": {
      "type": "boolean",
      "example": true,
      "readOnly": true,
      "description": "Whether the Durable Object has stored data."
    }
  }
}
object workers_observability
{
  "type": "object",
  "required": [
    "enabled"
  ],
  "properties": {
    "logs": {
      "type": "object",
      "nullable": true,
      "required": [
        "enabled",
        "invocation_logs"
      ],
      "properties": {
        "enabled": {
          "type": "boolean",
          "example": true,
          "description": "Whether logs are enabled for the Worker.",
          "x-auditable": true
        },
        "persist": {
          "type": "boolean",
          "default": true,
          "example": true,
          "description": "Whether log persistence is enabled for the Worker.",
          "x-auditable": true
        },
        "destinations": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "example": [
            "cloudflare"
          ],
          "description": "A list of destinations where logs will be exported to.",
          "x-auditable": true
        },
        "invocation_logs": {
          "type": "boolean",
          "example": true,
          "description": "Whether [invocation logs](https://developers.cloudflare.com/workers/observability/logs/workers-logs/#invocation-logs) are enabled for the Worker.",
          "x-auditable": true
        },
        "head_sampling_rate": {
          "type": "number",
          "example": 0.1,
          "nullable": true,
          "description": "The sampling rate for logs. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1.",
          "x-auditable": true
        }
      },
      "description": "Log settings for the Worker."
    },
    "traces": {
      "type": "object",
      "nullable": true,
      "properties": {
        "enabled": {
          "type": "boolean",
          "example": true,
          "description": "Whether traces are enabled for the Worker.",
          "x-auditable": true
        },
        "persist": {
          "type": "boolean",
          "default": true,
          "example": true,
          "description": "Whether trace persistence is enabled for the Worker.",
          "x-auditable": true
        },
        "destinations": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "example": [
            "cloudflare"
          ],
          "description": "A list of destinations where traces will be exported to.",
          "x-auditable": true
        },
        "head_sampling_rate": {
          "type": "number",
          "example": 0.1,
          "nullable": true,
          "description": "The sampling rate for traces. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1.",
          "x-auditable": true
        }
      },
      "description": "Trace settings for the Worker."
    },
    "enabled": {
      "type": "boolean",
      "example": true,
      "description": "Whether observability is enabled for the Worker.",
      "x-auditable": true
    },
    "head_sampling_rate": {
      "type": "number",
      "example": 0.1,
      "nullable": true,
      "description": "The sampling rate for incoming requests. From 0 to 1 (1 = 100%, 0.1 = 10%). Default is 1.",
      "x-auditable": true
    }
  },
  "description": "Observability settings for the Worker."
}
object workers_placement-provider
{
  "type": "object",
  "required": [
    "id",
    "regions"
  ],
  "properties": {
    "id": {
      "type": "string",
      "example": "aws",
      "description": "The cloud provider identifier."
    },
    "regions": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/workers_placement-region"
      },
      "description": "List of regions available for this provider."
    }
  }
}
object workers_placement-region
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "string",
      "example": "us-east-1",
      "description": "The region identifier."
    }
  }
}
object workers_placement-regions-response
{
  "type": "object",
  "required": [
    "providers"
  ],
  "properties": {
    "providers": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/workers_placement-provider"
      },
      "description": "List of cloud providers with their available regions."
    }
  }
}
object workers_placement_info
{
  "type": "object",
  "allOf": [
    {
      "oneOf": [
        {
          "type": "object",
          "required": [
            "mode"
          ],
          "properties": {
            "mode": {
              "enum": [
                "smart"
              ],
              "type": "string",
              "description": "Enables [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement).",
              "x-auditable": true
            }
          }
        },
        {
          "type": "object",
          "required": [
            "region"
          ],
          "properties": {
            "region": {
              "type": "string",
              "example": "aws:us-east-1",
              "description": "Cloud region for targeted placement in format 'provider:region'.",
              "x-auditable": true
            }
          }
        },
        {
          "type": "object",
          "required": [
            "hostname"
          ],
          "properties": {
            "hostname": {
              "type": "string",
              "example": "api.example.com",
              "description": "HTTP hostname for targeted placement.",
              "x-auditable": true
            }
          }
        },
        {
          "type": "object",
          "required": [
            "host"
          ],
          "properties": {
            "host": {
              "type": "string",
              "example": "db.example.com:5432",
              "description": "TCP host and port for targeted placement.",
              "x-auditable": true
            }
          }
        },
        {
          "type": "object",
          "required": [
            "mode",
            "region"
          ],
          "properties": {
            "mode": {
              "enum": [
                "targeted"
              ],
              "type": "string",
              "description": "Targeted placement mode.",
              "x-auditable": true
            },
            "region": {
              "type": "string",
              "example": "aws:us-east-1",
              "description": "Cloud region for targeted placement in format 'provider:region'.",
              "x-auditable": true
            }
          }
        },
        {
          "type": "object",
          "required": [
            "mode",
            "hostname"
          ],
          "properties": {
            "mode": {
              "enum": [
                "targeted"
              ],
              "type": "string",
              "description": "Targeted placement mode.",
              "x-auditable": true
            },
            "hostname": {
              "type": "string",
              "example": "api.example.com",
              "description": "HTTP hostname for targeted placement.",
              "x-auditable": true
            }
          }
        },
        {
          "type": "object",
          "required": [
            "mode",
            "host"
          ],
          "properties": {
            "host": {
              "type": "string",
              "example": "db.example.com:5432",
              "description": "TCP host and port for targeted placement.",
              "x-auditable": true
            },
            "mode": {
              "enum": [
                "targeted"
              ],
              "type": "string",
              "description": "Targeted placement mode.",
              "x-auditable": true
            }
          }
        },
        {
          "type": "object",
          "required": [
            "mode",
            "target"
          ],
          "properties": {
            "mode": {
              "enum": [
                "targeted"
              ],
              "type": "string",
              "description": "Targeted placement mode.",
              "x-auditable": true
            },
            "target": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/workers_placement_target"
              },
              "maxItems": 1,
              "minItems": 1,
              "description": "Array of placement targets (currently limited to single target).",
              "x-auditable": true
            }
          }
        }
      ]
    },
    {
      "type": "object",
      "properties": {
        "status": {
          "$ref": "#/components/schemas/workers_placement_status"
        },
        "last_analyzed_at": {
          "type": "string",
          "format": "date-time",
          "example": "2025-01-01T00:00:00Z",
          "readOnly": true,
          "description": "The last time the script was analyzed for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement)."
        }
      }
    }
  ],
  "description": "Configuration for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). Specify mode='smart' for Smart Placement, or one of region/hostname/host."
}
object workers_placement_info_no_status
{
  "type": "object",
  "oneOf": [
    {
      "type": "object",
      "required": [
        "mode"
      ],
      "properties": {
        "mode": {
          "enum": [
            "smart"
          ],
          "type": "string",
          "description": "Enables [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement).",
          "x-auditable": true
        }
      },
      "additionalProperties": false
    },
    {
      "type": "object",
      "required": [
        "region"
      ],
      "properties": {
        "region": {
          "type": "string",
          "example": "aws:us-east-1",
          "description": "Cloud region for targeted placement in format 'provider:region'.",
          "x-auditable": true
        }
      },
      "additionalProperties": false
    },
    {
      "type": "object",
      "required": [
        "hostname"
      ],
      "properties": {
        "hostname": {
          "type": "string",
          "example": "api.example.com",
          "description": "HTTP hostname for targeted placement.",
          "x-auditable": true
        }
      },
      "additionalProperties": false
    },
    {
      "type": "object",
      "required": [
        "host"
      ],
      "properties": {
        "host": {
          "type": "string",
          "example": "db.example.com:5432",
          "description": "TCP host and port for targeted placement.",
          "x-auditable": true
        }
      },
      "additionalProperties": false
    },
    {
      "type": "object",
      "required": [
        "mode",
        "region"
      ],
      "properties": {
        "mode": {
          "enum": [
            "targeted"
          ],
          "type": "string",
          "description": "Targeted placement mode.",
          "x-auditable": true
        },
        "region": {
          "type": "string",
          "example": "aws:us-east-1",
          "description": "Cloud region for targeted placement in format 'provider:region'.",
          "x-auditable": true
        }
      },
      "additionalProperties": false
    },
    {
      "type": "object",
      "required": [
        "mode",
        "hostname"
      ],
      "properties": {
        "mode": {
          "enum": [
            "targeted"
          ],
          "type": "string",
          "description": "Targeted placement mode.",
          "x-auditable": true
        },
        "hostname": {
          "type": "string",
          "example": "api.example.com",
          "description": "HTTP hostname for targeted placement.",
          "x-auditable": true
        }
      },
      "additionalProperties": false
    },
    {
      "type": "object",
      "required": [
        "mode",
        "host"
      ],
      "properties": {
        "host": {
          "type": "string",
          "example": "db.example.com:5432",
          "description": "TCP host and port for targeted placement.",
          "x-auditable": true
        },
        "mode": {
          "enum": [
            "targeted"
          ],
          "type": "string",
          "description": "Targeted placement mode.",
          "x-auditable": true
        }
      },
      "additionalProperties": false
    },
    {
      "type": "object",
      "required": [
        "mode",
        "target"
      ],
      "properties": {
        "mode": {
          "enum": [
            "targeted"
          ],
          "type": "string",
          "description": "Targeted placement mode.",
          "x-auditable": true
        },
        "target": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/workers_placement_target"
          },
          "maxItems": 1,
          "minItems": 1,
          "description": "Array of placement targets (currently limited to single target).",
          "x-auditable": true
        }
      },
      "additionalProperties": false
    }
  ],
  "description": "Configuration for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). Specify mode='smart' for Smart Placement, or one of region/hostname/host."
}
string workers_placement_mode
{
  "enum": [
    "smart",
    "targeted"
  ],
  "type": "string",
  "description": "Configuration for [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement). Specify mode='smart' for Smart Placement, or one of region/hostname/host.",
  "x-auditable": true
}
string workers_placement_status
{
  "enum": [
    "SUCCESS",
    "UNSUPPORTED_APPLICATION",
    "INSUFFICIENT_INVOCATIONS"
  ],
  "type": "string",
  "readOnly": true,
  "description": "Status of [Smart Placement](https://developers.cloudflare.com/workers/configuration/smart-placement).",
  "x-auditable": true
}
object workers_placement_target
{
  "type": "object",
  "oneOf": [
    {
      "type": "object",
      "required": [
        "region"
      ],
      "properties": {
        "region": {
          "type": "string",
          "example": "aws:us-east-1",
          "description": "Cloud region in format 'provider:region'."
        }
      },
      "additionalProperties": false
    },
    {
      "type": "object",
      "required": [
        "hostname"
      ],
      "properties": {
        "hostname": {
          "type": "string",
          "example": "api.example.com",
          "description": "HTTP hostname for targeted placement."
        }
      },
      "additionalProperties": false
    },
    {
      "type": "object",
      "required": [
        "host"
      ],
      "properties": {
        "host": {
          "type": "string",
          "example": "db.example.com:5432",
          "description": "TCP host:port for targeted placement."
        }
      },
      "additionalProperties": false
    }
  ],
  "description": "A target to run your Worker near."
}
object workers_route
{
  "type": "object",
  "required": [
    "id",
    "pattern"
  ],
  "properties": {
    "id": {
      "allOf": [
        {
          "$ref": "#/components/schemas/workers_identifier"
        }
      ],
      "readOnly": true
    },
    "script": {
      "type": "string",
      "example": "my-workers-script",
      "description": "Name of the script to run if the route matches.",
      "x-auditable": true
    },
    "pattern": {
      "type": "string",
      "example": "example.com/*",
      "description": "Pattern to match incoming requests against. [Learn more](https://developers.cloudflare.com/workers/configuration/routing/routes/#matching-behavior).",
      "x-auditable": true
    }
  }
}
object workers_schedule
{
  "type": "object",
  "required": [
    "cron"
  ],
  "properties": {
    "cron": {
      "type": "string",
      "example": "*/30 * * * *",
      "x-auditable": true
    },
    "created_on": {
      "type": "string",
      "readOnly": true,
      "x-auditable": true
    },
    "modified_on": {
      "type": "string",
      "readOnly": true,
      "x-auditable": true
    }
  }
}
string workers_schemas-id
{
  "type": "string",
  "example": "5fd1cafff895419c8bcc647fc64ab8f0",
  "description": "ID of the namespace."
}
string workers_schemas-script_name
{
  "type": "string",
  "example": "this-is_my_script-01",
  "pattern": "^[a-z0-9_][a-z0-9-_]*$",
  "description": "Name of the script."
}
object workers_schemas-subdomain
{
  "type": "object",
  "required": [
    "subdomain"
  ],
  "properties": {
    "subdomain": {
      "type": "string",
      "example": "my-subdomain",
      "x-auditable": true
    }
  }
}
object workers_script-and-version-settings-item
{
  "type": "object",
  "properties": {
    "tags": {
      "allOf": [
        {
          "$ref": "#/components/schemas/workers_tags"
        },
        {
          "type": "array",
          "items": {
            "type": "string",
            "x-auditable": true
          },
          "default": [],
          "x-stainless-collection-type": "set"
        }
      ]
    },
    "limits": {
      "$ref": "#/components/schemas/workers_limits"
    },
    "logpush": {
      "$ref": "#/components/schemas/workers_logpush"
    },
    "bindings": {
      "allOf": [
        {
          "$ref": "#/components/schemas/workers_bindings"
        },
        {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/workers_binding_item"
          },
          "default": []
        }
      ]
    },
    "placement": {
      "allOf": [
        {
          "$ref": "#/components/schemas/workers_placement_info_no_status"
        },
        {
          "type": "object",
          "default": {}
        }
      ]
    },
    "migrations": {
      "oneOf": [
        {
          "$ref": "#/components/schemas/workers_single_step_migrations"
        },
        {
          "$ref": "#/components/schemas/workers_multiple_step_migrations"
        }
      ],
      "writeOnly": true,
      "description": "Migrations to apply for Durable Objects associated with this Worker.\n"
    },
    "annotations": {
      "type": "object",
      "properties": {
        "workers/tag": {
          "type": "string",
          "example": "v1.0.1",
          "maxLength": 100,
          "description": "User-provided identifier for the version. Maximum 100 bytes."
        },
        "workers/message": {
          "type": "string",
          "example": "Fixed bug.",
          "maxLength": 1000,
          "description": "Human-readable message about the version. Truncated to 1000 bytes if longer."
        },
        "workers/triggered_by": {
          "type": "string",
          "example": "upload",
          "readOnly": true,
          "description": "Operation that triggered the creation of the version. This is read-only and set by the server."
        }
      },
      "description": "Annotations for the Worker version. Annotations are not inherited across settings updates; omitting this field means the new version will have no annotations."
    },
    "usage_model": {
      "$ref": "#/components/schemas/workers_usage_model"
    },
    "observability": {
      "$ref": "#/components/schemas/workers_observability"
    },
    "tail_consumers": {
      "allOf": [
        {
          "$ref": "#/components/schemas/workers_tail_consumers"
        },
        {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/workers_tail_consumers_script"
          },
          "default": [],
          "x-stainless-collection-type": "set"
        }
      ]
    },
    "compatibility_date": {
      "allOf": [
        {
          "$ref": "#/components/schemas/workers_compatibility_date"
        },
        {
          "type": "string",
          "default": "",
          "x-auditable": true
        }
      ]
    },
    "compatibility_flags": {
      "allOf": [
        {
          "$ref": "#/components/schemas/workers_compatibility_flags"
        },
        {
          "type": "array",
          "items": {
            "type": "string",
            "x-auditable": true
          },
          "default": [],
          "x-stainless-collection-type": "set"
        }
      ]
    }
  }
}
object workers_script-and-version-settings-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/workers_api-response-common"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "$ref": "#/components/schemas/workers_script-and-version-settings-item"
        }
      }
    }
  ]
}
object workers_script-response
{
  "properties": {
    "id": {
      "type": "string",
      "example": "my-workers-script",
      "readOnly": true,
      "description": "The name used to identify the script.",
      "x-auditable": true
    },
    "tag": {
      "type": "string",
      "example": "e8f70fdbc8b1fb0b8ddb1af166186758",
      "readOnly": true,
      "description": "The immutable ID of the script."
    },
    "etag": {
      "$ref": "#/components/schemas/workers_etag"
    },
    "tags": {
      "$ref": "#/components/schemas/workers_tags"
    },
    "logpush": {
      "$ref": "#/components/schemas/workers_logpush"
    },
    "handlers": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "fetch",
        "scheduled"
      ],
      "description": "The names of handlers exported as part of the default export."
    },
    "placement": {
      "$ref": "#/components/schemas/workers_placement_info"
    },
    "created_on": {
      "$ref": "#/components/schemas/workers_created_on"
    },
    "has_assets": {
      "$ref": "#/components/schemas/workers_has_assets"
    },
    "has_modules": {
      "$ref": "#/components/schemas/workers_has_modules"
    },
    "modified_on": {
      "$ref": "#/components/schemas/workers_modified_on"
    },
    "usage_model": {
      "$ref": "#/components/schemas/workers_usage_model"
    },
    "migration_tag": {
      "type": "string",
      "example": "v1",
      "description": "The tag of the Durable Object migration that was most recently applied for this Worker."
    },
    "observability": {
      "$ref": "#/components/schemas/workers_observability"
    },
    "named_handlers": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "example": "MyDurableObject",
            "description": "The name of the export."
          },
          "handlers": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "example": [
              "class"
            ],
            "description": "The names of handlers exported as part of the named export."
          }
        }
      },
      "description": "Named exports, such as Durable Object class implementations and named entrypoints."
    },
    "placement_mode": {
      "allOf": [
        {
          "$ref": "#/components/schemas/workers_placement_mode"
        },
        {
          "type": "string",
          "deprecated": true
        }
      ]
    },
    "tail_consumers": {
      "$ref": "#/components/schemas/workers_tail_consumers"
    },
    "placement_status": {
      "allOf": [
        {
          "$ref": "#/components/schemas/workers_placement_status"
        },
        {
          "type": "string",
          "deprecated": true
        }
      ]
    },
    "compatibility_date": {
      "$ref": "#/components/schemas/workers_compatibility_date"
    },
    "last_deployed_from": {
      "type": "string",
      "example": "wrangler",
      "description": "The client most recently used to deploy this Worker."
    },
    "compatibility_flags": {
      "$ref": "#/components/schemas/workers_compatibility_flags"
    }
  }
}
object workers_script-response-collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/workers_api-response-common"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/components/schemas/workers_script-response"
              },
              {
                "type": "object",
                "properties": {
                  "routes": {
                    "type": "array",
                    "items": {
                      "$ref": "#/components/schemas/workers_route"
                    },
                    "nullable": true,
                    "description": "Routes associated with the Worker."
                  }
                }
              }
            ]
          }
        }
      }
    }
  ]
}
object workers_script-response-single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/workers_api-response-single"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "$ref": "#/components/schemas/workers_script-response"
        }
      },
      "x-cfLinkErrors": {
        "10001": "Unsupported or unexpected Content Type",
        "10002": "Unexpected internal server error",
        "10003": "Missing required URL parameter",
        "10004": "Malformed URL parameter",
        "10006": "Unparseable script body",
        "10007": "Resource not found (similar to HTTP 404)",
        "10014": "Internal error while attempting authorization checks",
        "10015": "The current account is not authorized to use workers",
        "10018": "Attempted to update a script where the e-tag does not match",
        "10021": "Script content failed validation checks, but was otherwise parseable",
        "10023": "Unauthorized access attempt",
        "10027": "Script body was too large",
        "10075": "Requires a Workers Paid plan"
      }
    }
  ]
}
object workers_script-response-upload
{
  "allOf": [
    {
      "$ref": "#/components/schemas/workers_script-response"
    },
    {
      "type": "object",
      "required": [
        "startup_time_ms"
      ],
      "properties": {
        "entry_point": {
          "type": "string",
          "example": "index.js",
          "readOnly": true,
          "description": "The entry point for the script."
        },
        "startup_time_ms": {
          "type": "integer",
          "example": 10,
          "readOnly": true,
          "x-auditable": true
        }
      }
    }
  ]
}
object workers_script-response-upload-single
{
  "allOf": [
    {
      "$ref": "#/components/schemas/workers_api-response-common"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "$ref": "#/components/schemas/workers_script-response-upload"
        }
      },
      "x-cfLinkErrors": {
        "10001": "Unsupported or unexpected Content Type",
        "10002": "Unexpected internal server error",
        "10003": "Missing required URL parameter",
        "10004": "Malformed URL parameter",
        "10006": "Unparseable script body",
        "10007": "Resource not found (similar to HTTP 404)",
        "10014": "Internal error while attempting authorization checks",
        "10015": "The current account is not authorized to use workers",
        "10018": "Attempted to update a script where the e-tag does not match",
        "10021": "Script content failed validation checks, but was otherwise parseable",
        "10023": "Unauthorized access attempt",
        "10027": "Script body was too large",
        "10075": "Requires a Workers Paid plan"
      }
    }
  ]
}
object workers_script-settings-item
{
  "type": "object",
  "properties": {
    "tags": {
      "allOf": [
        {
          "$ref": "#/components/schemas/workers_tags"
        },
        {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/workers_tag"
          },
          "nullable": true,
          "x-auditable": true
        }
      ]
    },
    "logpush": {
      "$ref": "#/components/schemas/workers_logpush"
    },
    "observability": {
      "allOf": [
        {
          "$ref": "#/components/schemas/workers_observability"
        },
        {
          "type": "object",
          "nullable": true,
          "x-auditable": true
        }
      ]
    },
    "tail_consumers": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/workers_tail_consumers_script"
      },
      "nullable": true,
      "description": "List of Workers that will consume logs from the attached Worker.",
      "x-stainless-collection-type": "set"
    }
  }
}
object workers_script-settings-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/workers_api-response-common"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "$ref": "#/components/schemas/workers_script-settings-item"
        }
      }
    }
  ]
}
integer workers_script_count
{
  "type": "integer",
  "example": 800,
  "description": "The current number of scripts in this Dispatch Namespace."
}
string workers_script_name
{
  "type": "string",
  "example": "this-is_my_script-01",
  "pattern": "^[a-z0-9_][a-z0-9-_]*$",
  "description": "Name of the script, used in URLs and route configuration.",
  "x-auditable": true
}
object workers_secret
{
  "type": "object",
  "oneOf": [
    {
      "$ref": "#/components/schemas/workers_binding_kind_secret_text"
    },
    {
      "$ref": "#/components/schemas/workers_binding_kind_secret_key"
    }
  ],
  "description": "A secret value accessible through a binding.",
  "discriminator": {
    "mapping": {
      "secret_key": "#/components/schemas/workers_binding_kind_secret_key",
      "secret_text": "#/components/schemas/workers_binding_kind_secret_text"
    },
    "propertyName": "type"
  }
}
string workers_secret_name
{
  "type": "string",
  "example": "mySecret",
  "readOnly": true,
  "description": "A JavaScript variable name for the secret binding.",
  "x-auditable": true
}
boolean workers_secret_name_url_encoded
{
  "type": "boolean",
  "example": true,
  "readOnly": true,
  "description": "Flag that indicates whether the secret name is URL encoded.",
  "x-auditable": true
}
string workers_service
{
  "type": "string",
  "example": "my-worker",
  "description": "Name of Worker to bind to.",
  "x-auditable": true
}
object workers_single_step_migrations
{
  "allOf": [
    {
      "$ref": "#/components/schemas/workers_migration_tag_conditions"
    },
    {
      "$ref": "#/components/schemas/workers_migration_step"
    }
  ],
  "description": "A single set of migrations to apply."
}
object workers_subdomain
{
  "type": "object",
  "required": [
    "enabled",
    "previews_enabled"
  ],
  "properties": {
    "enabled": {
      "type": "boolean",
      "default": false,
      "example": false,
      "description": "Whether the Worker is available on the workers.dev subdomain.",
      "x-auditable": true
    },
    "previews_enabled": {
      "type": "boolean",
      "example": false,
      "description": "Whether the Worker's Preview URLs are available on the workers.dev subdomain.",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    }
  }
}
string workers_tag
{
  "type": "string",
  "example": "my-tag",
  "pattern": "^[^,&]*$",
  "maxLength": 1024
}
array workers_tags
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/workers_tag"
  },
  "example": [
    "my-team",
    "my-public-api"
  ],
  "maxItems": 10,
  "nullable": true,
  "description": "Tags associated with the Worker.",
  "x-auditable": true,
  "x-stainless-collection-type": "set"
}
object workers_tail
{
  "type": "object",
  "required": [
    "id",
    "url",
    "expires_at"
  ],
  "properties": {
    "id": {
      "allOf": [
        {
          "$ref": "#/components/schemas/workers_identifier"
        }
      ],
      "readOnly": true
    },
    "url": {
      "type": "string",
      "readOnly": true,
      "x-auditable": true
    },
    "expires_at": {
      "type": "string",
      "readOnly": true,
      "x-auditable": true
    }
  }
}
array workers_tail_consumers
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/workers_tail_consumers_script"
  },
  "nullable": true,
  "description": "List of Workers that will consume logs from the attached Worker.",
  "x-stainless-collection-type": "set"
}
object workers_tail_consumers_script
{
  "type": "object",
  "required": [
    "service"
  ],
  "properties": {
    "service": {
      "type": "string",
      "example": "my-log-consumer",
      "description": "Name of Worker that is to be the consumer.",
      "x-auditable": true
    },
    "namespace": {
      "type": "string",
      "example": "my-namespace",
      "description": "Optional dispatch namespace the script belongs to.",
      "x-auditable": true
    },
    "environment": {
      "type": "string",
      "example": "production",
      "description": "Optional environment if the Worker utilizes one.",
      "x-auditable": true
    }
  },
  "description": "A reference to a script that will consume logs from the attached Worker."
}
boolean workers_trusted_workers
{
  "type": "boolean",
  "default": false,
  "example": false,
  "description": "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\".",
  "x-auditable": true
}
object workers_upload-assets-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/workers_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "maxProperties": 0,
          "additionalProperties": false
        }
      }
    }
  ]
}
object workers_usage-model-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/workers_api-response-common"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "usage_model": {
              "$ref": "#/components/schemas/workers_usage_model"
            },
            "user_limits": {
              "$ref": "#/components/schemas/workers_user_limits"
            }
          }
        }
      }
    }
  ]
}
string workers_usage_model
{
  "enum": [
    "standard",
    "bundled",
    "unbound"
  ],
  "type": "string",
  "default": "standard",
  "example": "standard",
  "description": "Usage model for the Worker invocations.",
  "x-auditable": true
}
object workers_user_limits
{
  "type": "object",
  "nullable": true,
  "properties": {
    "cpu_ms": {
      "type": "integer",
      "example": 50,
      "nullable": true,
      "description": "The amount of CPU time this Worker can use in milliseconds."
    }
  },
  "description": "User-defined resource limits for Workers with standard usage model."
}
string workers_uuid
{
  "type": "string",
  "example": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
  "maxLength": 36,
  "description": "API Resource UUID tag.",
  "x-auditable": true
}
object workers_version-item-full
{
  "allOf": [
    {
      "$ref": "#/components/schemas/workers_version-item-short"
    },
    {
      "type": "object",
      "required": [
        "resources"
      ],
      "properties": {
        "resources": {
          "type": "object",
          "example": {
            "script": {
              "etag": "13a3240e8fb414561b0366813b0b8f42b3e6cfa0d9e70e99835dae83d0d8a794",
              "handlers": [
                "fetch"
              ],
              "last_deployed_from": "api"
            },
            "bindings": [
              {
                "json": "example_binding",
                "name": "JSON_VAR",
                "type": "json"
              }
            ],
            "script_runtime": {
              "usage_model": "standard"
            }
          },
          "readOnly": true,
          "properties": {
            "script": {
              "type": "object",
              "example": {
                "etag": "13a3240e8fb414561b0366813b0b8f42b3e6cfa0d9e70e99835dae83d0d8a794",
                "handlers": [
                  "fetch"
                ],
                "named_handlers": [
                  {
                    "name": "MyClass",
                    "handlers": [
                      "fetch"
                    ]
                  }
                ],
                "last_deployed_from": "api"
              },
              "readOnly": true,
              "properties": {
                "etag": {
                  "type": "string",
                  "example": "13a3240e8fb414561b0366813b0b8f42b3e6cfa0d9e70e99835dae83d0d8a794",
                  "readOnly": true,
                  "description": "Hashed script content",
                  "x-auditable": true
                },
                "handlers": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "example": "fetch",
                    "readOnly": true
                  },
                  "example": [
                    "fetch"
                  ],
                  "readOnly": true,
                  "description": "The names of handlers exported as part of the default export.",
                  "x-stainless-collection-type": "set"
                },
                "named_handlers": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "example": {
                      "name": "MyClass",
                      "handlers": [
                        "fetch"
                      ]
                    },
                    "readOnly": true,
                    "properties": {
                      "name": {
                        "type": "string",
                        "example": "MyClass",
                        "readOnly": true,
                        "description": "The name of the exported class or entrypoint."
                      },
                      "handlers": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "example": "fetch",
                          "readOnly": true
                        },
                        "example": [
                          "fetch"
                        ],
                        "readOnly": true,
                        "description": "The names of handlers exported as part of the named export.",
                        "x-stainless-collection-type": "set"
                      }
                    }
                  },
                  "example": [
                    {
                      "name": "MyClass",
                      "handlers": [
                        "fetch"
                      ]
                    }
                  ],
                  "readOnly": true,
                  "description": "Named exports, such as Durable Object class implementations and named entrypoints.",
                  "x-stainless-collection-type": "set"
                },
                "last_deployed_from": {
                  "type": "string",
                  "example": "api",
                  "readOnly": true,
                  "description": "The client most recently used to deploy this Worker.",
                  "x-auditable": true
                }
              }
            },
            "bindings": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/workers_bindings"
                },
                {
                  "readOnly": true
                }
              ]
            },
            "script_runtime": {
              "type": "object",
              "readOnly": true,
              "properties": {
                "limits": {
                  "type": "object",
                  "example": {
                    "cpu_ms": 50
                  },
                  "readOnly": true,
                  "properties": {
                    "cpu_ms": {
                      "type": "integer",
                      "example": 50,
                      "readOnly": true,
                      "description": "The amount of CPU time this Worker can use in milliseconds."
                    }
                  },
                  "description": "Resource limits for the Worker."
                },
                "usage_model": {
                  "enum": [
                    "bundled",
                    "unbound",
                    "standard"
                  ],
                  "type": "string",
                  "example": "standard",
                  "readOnly": true,
                  "description": "Usage model for the Worker invocations.",
                  "x-auditable": true
                },
                "migration_tag": {
                  "type": "string",
                  "example": "v1",
                  "readOnly": true,
                  "description": "The tag of the Durable Object migration that was most recently applied for this Worker.",
                  "x-auditable": true
                },
                "compatibility_date": {
                  "type": "string",
                  "example": "2022-11-08",
                  "readOnly": true,
                  "description": "Date indicating targeted support in the Workers runtime. Backwards incompatible fixes to the runtime following this date will not affect this Worker.",
                  "x-auditable": true
                },
                "compatibility_flags": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "example": "x",
                    "readOnly": true
                  },
                  "readOnly": true,
                  "description": "Flags that enable or disable certain features in the Workers runtime.",
                  "x-stainless-collection-type": "set"
                }
              },
              "description": "Runtime configuration for the Worker."
            }
          }
        }
      }
    }
  ]
}
object workers_version-item-short
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "example": "18f97339-c287-4872-9bdd-e2135c07ec12",
      "readOnly": true,
      "description": "Unique identifier for the version.",
      "x-auditable": true
    },
    "number": {
      "type": "number",
      "example": 1,
      "readOnly": true,
      "description": "Sequential version number.",
      "x-auditable": true
    },
    "metadata": {
      "type": "object",
      "example": {
        "source": "api",
        "author_id": "408cbcdfd4dda4617efef40b04d168a1",
        "created_on": "2022-11-08T17:19:29.176266Z",
        "modified_on": "2022-11-08T17:19:29.176266Z",
        "author_email": "user@example.com"
      },
      "readOnly": true,
      "properties": {
        "source": {
          "enum": [
            "unknown",
            "api",
            "wrangler",
            "terraform",
            "dash",
            "dash_template",
            "integration",
            "quick_editor",
            "playground",
            "workersci"
          ],
          "type": "string",
          "example": "api",
          "readOnly": true,
          "description": "The source of the version upload.",
          "x-auditable": true
        },
        "author_id": {
          "type": "string",
          "example": "408cbcdfd4dda4617efef40b04d168a1",
          "readOnly": true,
          "description": "Identifier of the user who created the version.",
          "x-auditable": true
        },
        "created_on": {
          "type": "string",
          "example": "2022-11-08T17:19:29.176266Z",
          "readOnly": true,
          "description": "When the version was created.",
          "x-auditable": true
        },
        "hasPreview": {
          "type": "boolean",
          "readOnly": true,
          "description": "Whether the version can be previewed."
        },
        "modified_on": {
          "type": "string",
          "example": "2022-11-08T17:19:29.176266Z",
          "readOnly": true,
          "description": "When the version was last modified.",
          "x-auditable": true
        },
        "author_email": {
          "type": "string",
          "example": "user@example.com",
          "readOnly": true,
          "description": "Email of the user who created the version.",
          "x-auditable": true
        }
      }
    }
  }
}
object workers_version-item-uploaded
{
  "allOf": [
    {
      "$ref": "#/components/schemas/workers_version-item-full"
    },
    {
      "type": "object",
      "required": [
        "resources"
      ],
      "properties": {
        "startup_time_ms": {
          "type": "integer",
          "example": 10,
          "description": "Time in milliseconds spent on [Worker startup](https://developers.cloudflare.com/workers/platform/limits/#worker-startup-time)."
        }
      }
    }
  ]
}
string workers_version_identifier
{
  "type": "string",
  "example": "bcf48806-b317-4351-9ee7-36e7d557d4de",
  "readOnly": true,
  "maxLength": 36
}
object workers_versions-list-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/workers_api-response-common"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "items": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/workers_version-item-short"
              }
            }
          }
        }
      }
    }
  ]
}
object workers_versions-single-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/workers_api-response-common"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "$ref": "#/components/schemas/workers_version-item-full"
        }
      }
    }
  ]
}
object workers_versions-upload-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/workers_api-response-common"
    },
    {
      "type": "object",
      "required": [
        "result"
      ],
      "properties": {
        "result": {
          "$ref": "#/components/schemas/workers_version-item-uploaded"
        }
      }
    }
  ]
}
object zaraz_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/zaraz_messages"
    },
    "success": {
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful.",
      "x-auditable": true
    },
    "messages": {
      "$ref": "#/components/schemas/zaraz_messages"
    }
  }
}
object zaraz_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/zaraz_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/zaraz_messages"
        }
      ],
      "example": []
    }
  }
}
object zaraz_base-mc
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zaraz_base-tool"
    },
    {
      "type": "object",
      "required": [
        "component",
        "settings",
        "permissions"
      ],
      "properties": {
        "actions": {
          "type": "object",
          "description": "Actions configured on a tool. Either this or neoEvents field is required.",
          "additionalProperties": {
            "type": "object",
            "required": [
              "actionType",
              "blockingTriggers",
              "firingTriggers",
              "data"
            ],
            "properties": {
              "data": {
                "type": "object",
                "description": "Event payload."
              },
              "actionType": {
                "type": "string",
                "description": "Tool event type.",
                "x-auditable": true
              },
              "firingTriggers": {
                "type": "array",
                "items": {
                  "type": "string",
                  "x-auditable": true
                },
                "minItems": 1,
                "description": "List of firing triggers IDs."
              },
              "blockingTriggers": {
                "type": "array",
                "items": {
                  "type": "string",
                  "x-auditable": true
                },
                "description": "List of blocking triggers IDs."
              }
            }
          }
        },
        "settings": {
          "type": "object",
          "description": "Tool's settings.",
          "additionalProperties": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "boolean"
              }
            ],
            "x-auditable": true
          }
        },
        "component": {
          "type": "string",
          "description": "Tool's internal name.",
          "x-auditable": true
        },
        "neoEvents": {
          "type": "array",
          "items": {
            "type": "object",
            "required": [
              "actionType",
              "blockingTriggers",
              "firingTriggers",
              "data"
            ],
            "properties": {
              "data": {
                "type": "object",
                "description": "Event payload."
              },
              "actionType": {
                "type": "string",
                "description": "Tool event type.",
                "x-auditable": true
              },
              "firingTriggers": {
                "type": "array",
                "items": {
                  "type": "string",
                  "x-auditable": true
                },
                "minItems": 1,
                "description": "List of firing triggers IDs."
              },
              "blockingTriggers": {
                "type": "array",
                "items": {
                  "type": "string",
                  "x-auditable": true
                },
                "description": "List of blocking triggers IDs."
              }
            }
          },
          "description": "DEPRECATED - List of actions configured on a tool. Either this or actions field is required. If both are present, actions field will take precedence."
        },
        "permissions": {
          "type": "array",
          "items": {
            "type": "string",
            "x-auditable": true
          },
          "description": "List of permissions granted to the component."
        }
      }
    }
  ]
}
object zaraz_base-tool
{
  "type": "object",
  "required": [
    "enabled",
    "blockingTriggers",
    "name",
    "defaultFields"
  ],
  "properties": {
    "name": {
      "type": "string",
      "description": "Tool's name defined by the user.",
      "x-auditable": true
    },
    "enabled": {
      "type": "boolean",
      "description": "Whether tool is enabled.",
      "x-auditable": true
    },
    "vendorName": {
      "type": "string",
      "description": "Vendor name for TCF compliant consent modal, required for Custom Managed Components and Custom HTML tool with a defaultPurpose assigned.",
      "x-auditable": true
    },
    "defaultFields": {
      "type": "object",
      "description": "Default fields for tool's actions.",
      "additionalProperties": {
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "boolean"
          }
        ],
        "x-auditable": true
      }
    },
    "defaultPurpose": {
      "type": "string",
      "description": "Default consent purpose ID.",
      "x-auditable": true
    },
    "vendorPolicyUrl": {
      "type": "string",
      "description": "Vendor's Privacy Policy URL for TCF compliant consent modal, required for Custom Managed Components and Custom HTML tool with a defaultPurpose assigned.",
      "x-auditable": true
    },
    "blockingTriggers": {
      "type": "array",
      "items": {
        "type": "string",
        "x-auditable": true
      },
      "description": "List of blocking trigger IDs."
    }
  }
}
object zaraz_click-listener-rule
{
  "type": "object",
  "required": [
    "id",
    "action",
    "settings"
  ],
  "properties": {
    "id": {
      "type": "string",
      "x-auditable": true
    },
    "action": {
      "enum": [
        "clickListener"
      ],
      "type": "string",
      "x-auditable": true
    },
    "settings": {
      "type": "object",
      "required": [
        "type",
        "selector",
        "waitForTags"
      ],
      "properties": {
        "type": {
          "enum": [
            "xpath",
            "css"
          ],
          "type": "string",
          "x-auditable": true
        },
        "selector": {
          "type": "string",
          "x-auditable": true
        },
        "waitForTags": {
          "type": "integer",
          "minimum": 0,
          "x-auditable": true
        }
      }
    }
  }
}
object zaraz_custom-managed-component
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zaraz_base-mc"
    },
    {
      "type": "object",
      "required": [
        "worker",
        "type"
      ],
      "properties": {
        "type": {
          "enum": [
            "custom-mc"
          ],
          "type": "string"
        },
        "worker": {
          "type": "object",
          "required": [
            "workerTag",
            "escapedWorkerName"
          ],
          "properties": {
            "workerTag": {
              "type": "string",
              "x-auditable": true
            },
            "escapedWorkerName": {
              "type": "string",
              "x-auditable": true
            }
          },
          "description": "Cloudflare worker that acts as a managed component."
        }
      }
    }
  ]
}
object zaraz_element-visibility-rule
{
  "type": "object",
  "required": [
    "id",
    "action",
    "settings"
  ],
  "properties": {
    "id": {
      "type": "string",
      "x-auditable": true
    },
    "action": {
      "enum": [
        "elementVisibility"
      ],
      "type": "string",
      "x-auditable": true
    },
    "settings": {
      "type": "object",
      "required": [
        "selector"
      ],
      "properties": {
        "selector": {
          "type": "string",
          "x-auditable": true
        }
      }
    }
  }
}
object zaraz_form-submission-rule
{
  "type": "object",
  "required": [
    "id",
    "action",
    "settings"
  ],
  "properties": {
    "id": {
      "type": "string",
      "x-auditable": true
    },
    "action": {
      "enum": [
        "formSubmission"
      ],
      "type": "string",
      "x-auditable": true
    },
    "settings": {
      "type": "object",
      "required": [
        "selector",
        "validate"
      ],
      "properties": {
        "selector": {
          "type": "string",
          "x-auditable": true
        },
        "validate": {
          "type": "boolean",
          "x-auditable": true
        }
      }
    }
  }
}
string zaraz_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Identifier.",
  "x-auditable": true
}
object zaraz_load-rule
{
  "type": "object",
  "required": [
    "id",
    "match",
    "op",
    "value"
  ],
  "properties": {
    "id": {
      "type": "string",
      "x-auditable": true
    },
    "op": {
      "enum": [
        "CONTAINS",
        "EQUALS",
        "STARTS_WITH",
        "ENDS_WITH",
        "MATCH_REGEX",
        "NOT_MATCH_REGEX",
        "GREATER_THAN",
        "GREATER_THAN_OR_EQUAL",
        "LESS_THAN",
        "LESS_THAN_OR_EQUAL"
      ],
      "type": "string",
      "x-auditable": true
    },
    "match": {
      "type": "string",
      "x-auditable": true
    },
    "value": {
      "type": "string",
      "x-auditable": true
    }
  }
}
object zaraz_managed-component
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zaraz_base-mc"
    },
    {
      "type": "object",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "enum": [
            "component"
          ],
          "type": "string"
        }
      }
    }
  ]
}
array zaraz_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
object zaraz_scroll-depth-rule
{
  "type": "object",
  "required": [
    "id",
    "action",
    "settings"
  ],
  "properties": {
    "id": {
      "type": "string",
      "x-auditable": true
    },
    "action": {
      "enum": [
        "scrollDepth"
      ],
      "type": "string",
      "x-auditable": true
    },
    "settings": {
      "type": "object",
      "required": [
        "positions"
      ],
      "properties": {
        "positions": {
          "type": "string",
          "x-auditable": true
        }
      }
    }
  }
}
object zaraz_secret_variable
{
  "type": "object",
  "required": [
    "name",
    "type",
    "value"
  ],
  "properties": {
    "name": {
      "type": "string",
      "x-auditable": true
    },
    "type": {
      "enum": [
        "secret"
      ],
      "type": "string",
      "x-auditable": true
    },
    "value": {
      "type": "string",
      "x-auditable": true,
      "x-sensitive": true
    }
  }
}
object zaraz_string_variable
{
  "type": "object",
  "required": [
    "name",
    "type",
    "value"
  ],
  "properties": {
    "name": {
      "type": "string",
      "x-auditable": true
    },
    "type": {
      "enum": [
        "string"
      ],
      "type": "string",
      "x-auditable": true
    },
    "value": {
      "type": "string",
      "x-auditable": true
    }
  }
}
object zaraz_timer-rule
{
  "type": "object",
  "required": [
    "id",
    "action",
    "settings"
  ],
  "properties": {
    "id": {
      "type": "string",
      "x-auditable": true
    },
    "action": {
      "enum": [
        "timer"
      ],
      "type": "string",
      "x-auditable": true
    },
    "settings": {
      "type": "object",
      "required": [
        "interval",
        "limit"
      ],
      "properties": {
        "limit": {
          "type": "integer",
          "minimum": 0,
          "x-auditable": true
        },
        "interval": {
          "type": "integer",
          "minimum": 50,
          "x-auditable": true
        }
      }
    }
  }
}
object zaraz_variable-match-rule
{
  "type": "object",
  "required": [
    "id",
    "action",
    "settings"
  ],
  "properties": {
    "id": {
      "type": "string",
      "x-auditable": true
    },
    "action": {
      "enum": [
        "variableMatch"
      ],
      "type": "string",
      "x-auditable": true
    },
    "settings": {
      "type": "object",
      "required": [
        "variable",
        "match"
      ],
      "properties": {
        "match": {
          "type": "string",
          "x-auditable": true
        },
        "variable": {
          "type": "string",
          "x-auditable": true
        }
      }
    }
  }
}
object zaraz_worker_variable
{
  "type": "object",
  "required": [
    "name",
    "type",
    "value"
  ],
  "properties": {
    "name": {
      "type": "string",
      "x-auditable": true
    },
    "type": {
      "enum": [
        "worker"
      ],
      "type": "string",
      "x-auditable": true
    },
    "value": {
      "type": "object",
      "required": [
        "escapedWorkerName",
        "workerTag"
      ],
      "properties": {
        "workerTag": {
          "type": "string",
          "x-auditable": true
        },
        "escapedWorkerName": {
          "type": "string",
          "x-auditable": true
        }
      }
    }
  }
}
object zaraz_zaraz-config-base
{
  "type": "object",
  "example": {
    "tools": {
      "aJvt": {
        "name": "Facebook Pixel",
        "type": "component",
        "actions": {
          "hrnc": {
            "data": {
              "ev": "PageView",
              "__zaraz_setting_name": "Page view"
            },
            "actionType": "pageview",
            "firingTriggers": [
              "Pageview"
            ],
            "blockingTriggers": []
          }
        },
        "enabled": true,
        "settings": {
          "property": "12345",
          "ecommerce": true,
          "accessToken": "ABcdEFg"
        },
        "component": "facebook-pixel",
        "permissions": [
          "access_client_kv"
        ],
        "defaultFields": {
          "testKey": "TEST123456"
        }
      }
    },
    "consent": {
      "enabled": false,
      "cookieName": "zaraz-consent",
      "customIntroDisclaimerDismissed": true
    },
    "debugKey": "my-debug-key",
    "settings": {
      "initPath": "/i",
      "ecommerce": true,
      "autoInjectScript": true
    },
    "triggers": {
      "ktBn": {
        "Pageview": {
          "name": "Pageview",
          "system": "pageload",
          "loadRules": [
            {
              "op": "EQUALS",
              "match": "{{ client.__zarazTrack }}",
              "value": "Pageview"
            }
          ],
          "clientRules": [],
          "description": "All page loads",
          "excludeRules": []
        }
      }
    },
    "dataLayer": true,
    "variables": {
      "Autd": {
        "name": "ip",
        "type": "string",
        "value": "{{ system.device.ip }}"
      }
    },
    "zarazVersion": 43
  },
  "required": [
    "tools",
    "triggers",
    "variables",
    "settings",
    "dataLayer",
    "debugKey",
    "zarazVersion"
  ],
  "properties": {
    "consent": {
      "type": "object",
      "required": [
        "enabled"
      ],
      "properties": {
        "enabled": {
          "type": "boolean"
        },
        "purposes": {
          "type": "object",
          "description": "Object where keys are purpose alpha-numeric IDs.",
          "additionalProperties": {
            "type": "object",
            "required": [
              "name",
              "description"
            ],
            "properties": {
              "name": {
                "type": "string",
                "x-auditable": true
              },
              "description": {
                "type": "string",
                "x-auditable": true
              }
            }
          }
        },
        "customCSS": {
          "type": "string",
          "x-auditable": true
        },
        "hideModal": {
          "type": "boolean",
          "x-auditable": true
        },
        "cookieName": {
          "type": "string",
          "x-auditable": true
        },
        "companyName": {
          "type": "string",
          "x-auditable": true
        },
        "companyEmail": {
          "type": "string",
          "x-auditable": true
        },
        "tcfCompliant": {
          "type": "boolean"
        },
        "defaultLanguage": {
          "type": "string",
          "x-auditable": true
        },
        "companyStreetAddress": {
          "type": "string",
          "x-auditable": true
        },
        "consentModalIntroHTML": {
          "type": "string",
          "x-auditable": true
        },
        "buttonTextTranslations": {
          "type": "object",
          "required": [
            "accept_all",
            "reject_all",
            "confirm_my_choices"
          ],
          "properties": {
            "accept_all": {
              "type": "object",
              "description": "Object where keys are language codes.",
              "additionalProperties": {
                "type": "string",
                "x-auditable": true
              }
            },
            "reject_all": {
              "type": "object",
              "description": "Object where keys are language codes.",
              "additionalProperties": {
                "type": "string",
                "x-auditable": true
              }
            },
            "confirm_my_choices": {
              "type": "object",
              "description": "Object where keys are language codes.",
              "additionalProperties": {
                "type": "string",
                "x-auditable": true
              }
            }
          }
        },
        "purposesWithTranslations": {
          "type": "object",
          "description": "Object where keys are purpose alpha-numeric IDs.",
          "additionalProperties": {
            "type": "object",
            "required": [
              "name",
              "description",
              "order"
            ],
            "properties": {
              "name": {
                "type": "object",
                "description": "Object where keys are language codes.",
                "additionalProperties": {
                  "type": "string",
                  "x-auditable": true
                }
              },
              "order": {
                "type": "integer",
                "x-auditable": true
              },
              "description": {
                "type": "object",
                "description": "Object where keys are language codes.",
                "additionalProperties": {
                  "type": "string",
                  "x-auditable": true
                }
              }
            }
          }
        },
        "customIntroDisclaimerDismissed": {
          "type": "boolean",
          "x-auditable": true
        },
        "consentModalIntroHTMLWithTranslations": {
          "type": "object",
          "description": "Object where keys are language codes.",
          "additionalProperties": {
            "type": "string",
            "x-auditable": true
          }
        }
      },
      "description": "Consent management configuration."
    },
    "debugKey": {
      "type": "string",
      "description": "The key for Zaraz debug mode.",
      "x-auditable": true
    },
    "settings": {
      "type": "object",
      "required": [
        "autoInjectScript"
      ],
      "properties": {
        "initPath": {
          "type": "string",
          "description": "Custom endpoint for Zaraz init script.",
          "x-auditable": true
        },
        "ecommerce": {
          "type": "boolean",
          "description": "Ecommerce API enabled.",
          "x-auditable": true
        },
        "trackPath": {
          "type": "string",
          "description": "Custom endpoint for Zaraz tracking requests.",
          "x-auditable": true
        },
        "mcRootPath": {
          "type": "string",
          "description": "Custom path for Managed Components server functionalities.",
          "x-auditable": true
        },
        "scriptPath": {
          "type": "string",
          "description": "Custom endpoint for Zaraz main script.",
          "x-auditable": true
        },
        "cookieDomain": {
          "type": "string",
          "description": "The domain Zaraz will use for writing and reading its cookies.",
          "x-auditable": true
        },
        "eventsApiPath": {
          "type": "string",
          "description": "Custom endpoint for server-side track events.",
          "x-auditable": true
        },
        "hideIPAddress": {
          "type": "boolean",
          "description": "Trimming IP address enabled.",
          "x-auditable": true
        },
        "hideUserAgent": {
          "type": "boolean",
          "description": "Removing sensitive data from User Agent string enabled."
        },
        "injectIframes": {
          "type": "boolean",
          "description": "Injection of Zaraz scripts into iframes enabled.",
          "x-auditable": true
        },
        "contextEnricher": {
          "type": "object",
          "required": [
            "escapedWorkerName",
            "workerTag"
          ],
          "properties": {
            "workerTag": {
              "type": "string",
              "x-auditable": true
            },
            "escapedWorkerName": {
              "type": "string",
              "x-auditable": true
            }
          },
          "description": "Details of the worker that receives and edits Zaraz Context object."
        },
        "hideQueryParams": {
          "type": "boolean",
          "description": "Removing URL query params enabled.",
          "x-auditable": true
        },
        "autoInjectScript": {
          "type": "boolean",
          "description": "Automatic injection of Zaraz scripts enabled.",
          "x-auditable": true
        },
        "hideExternalReferer": {
          "type": "boolean",
          "description": "Hiding external referrer URL enabled.",
          "x-auditable": true
        }
      },
      "description": "General Zaraz settings."
    },
    "triggers": {
      "type": "object",
      "description": "Triggers set up under Zaraz configuration, where key is the trigger alpha-numeric ID and value is the trigger configuration.",
      "additionalProperties": {
        "type": "object",
        "required": [
          "name",
          "loadRules",
          "excludeRules"
        ],
        "properties": {
          "name": {
            "type": "string",
            "description": "Trigger name.",
            "x-auditable": true
          },
          "system": {
            "enum": [
              "pageload"
            ],
            "type": "string",
            "x-auditable": true
          },
          "loadRules": {
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/zaraz_load-rule"
                },
                {
                  "$ref": "#/components/schemas/zaraz_click-listener-rule"
                },
                {
                  "$ref": "#/components/schemas/zaraz_timer-rule"
                },
                {
                  "$ref": "#/components/schemas/zaraz_form-submission-rule"
                },
                {
                  "$ref": "#/components/schemas/zaraz_variable-match-rule"
                },
                {
                  "$ref": "#/components/schemas/zaraz_scroll-depth-rule"
                },
                {
                  "$ref": "#/components/schemas/zaraz_element-visibility-rule"
                }
              ]
            },
            "description": "Rules defining when the trigger is fired."
          },
          "description": {
            "type": "string",
            "description": "Trigger description.",
            "x-auditable": true
          },
          "excludeRules": {
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/zaraz_load-rule"
                },
                {
                  "$ref": "#/components/schemas/zaraz_click-listener-rule"
                },
                {
                  "$ref": "#/components/schemas/zaraz_timer-rule"
                },
                {
                  "$ref": "#/components/schemas/zaraz_form-submission-rule"
                },
                {
                  "$ref": "#/components/schemas/zaraz_variable-match-rule"
                },
                {
                  "$ref": "#/components/schemas/zaraz_scroll-depth-rule"
                },
                {
                  "$ref": "#/components/schemas/zaraz_element-visibility-rule"
                }
              ]
            },
            "description": "Rules defining when the trigger is not fired."
          }
        }
      }
    },
    "analytics": {
      "type": "object",
      "properties": {
        "enabled": {
          "type": "boolean",
          "description": "Whether Advanced Monitoring reports are enabled.",
          "x-auditable": true
        },
        "defaultPurpose": {
          "type": "string",
          "description": "Consent purpose assigned to Monitoring.",
          "x-auditable": true
        },
        "sessionExpTime": {
          "type": "integer",
          "maximum": 86400,
          "minimum": 60,
          "description": "Session expiration time (seconds).",
          "x-auditable": true
        }
      },
      "description": "Cloudflare Monitoring settings."
    },
    "dataLayer": {
      "type": "boolean",
      "description": "Data layer compatibility mode enabled.",
      "x-auditable": true
    },
    "variables": {
      "type": "object",
      "description": "Variables set up under Zaraz configuration, where key is the variable alpha-numeric ID and value is the variable configuration. Values of variables of type secret are not included.",
      "additionalProperties": {
        "anyOf": [
          {
            "$ref": "#/components/schemas/zaraz_string_variable"
          },
          {
            "$ref": "#/components/schemas/zaraz_secret_variable"
          },
          {
            "$ref": "#/components/schemas/zaraz_worker_variable"
          }
        ],
        "discriminator": {
          "mapping": {
            "secret": "#/components/schemas/zaraz_secret_variable",
            "string": "#/components/schemas/zaraz_string_variable",
            "worker": "#/components/schemas/zaraz_worker_variable"
          },
          "propertyName": "type"
        }
      }
    },
    "zarazVersion": {
      "type": "integer",
      "description": "Zaraz internal version of the config.",
      "x-auditable": true
    },
    "historyChange": {
      "type": "boolean",
      "description": "Single Page Application support enabled.",
      "x-auditable": true
    }
  },
  "description": "Zaraz configuration."
}
object zaraz_zaraz-config-body
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zaraz_zaraz-config-base"
    },
    {
      "type": "object",
      "properties": {
        "tools": {
          "type": "object",
          "description": "Tools set up under Zaraz configuration, where key is the alpha-numeric tool ID and value is the tool configuration object.",
          "additionalProperties": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/zaraz_managed-component"
              },
              {
                "$ref": "#/components/schemas/zaraz_custom-managed-component"
              }
            ]
          }
        }
      }
    }
  ]
}
object zaraz_zaraz-config-history-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zaraz_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "example": {
            "12345": {
              "id": 12345,
              "config": {
                "tools": {
                  "aJvt": {
                    "name": "Facebook Pixel",
                    "type": "component",
                    "enabled": true,
                    "settings": {
                      "property": "12345",
                      "ecommerce": true,
                      "accessToken": "ABcdEFg"
                    },
                    "component": "facebook-pixel",
                    "neoEvents": [
                      {
                        "data": {
                          "ev": "PageView",
                          "__zaraz_setting_name": "Page view"
                        },
                        "actionType": "pageview",
                        "firingTriggers": [
                          "Pageview"
                        ],
                        "blockingTriggers": []
                      }
                    ],
                    "permissions": [
                      "access_client_kv"
                    ],
                    "defaultFields": {
                      "testKey": "TEST123456"
                    }
                  }
                },
                "consent": {
                  "enabled": false,
                  "cookieName": "zaraz-consent",
                  "customIntroDisclaimerDismissed": true
                },
                "debugKey": "my-debug-key",
                "settings": {
                  "autoInjectScript": true
                },
                "triggers": {
                  "ktBn": {
                    "Pageview": {
                      "name": "Pageview",
                      "system": "pageload",
                      "loadRules": [
                        {
                          "op": "EQUALS",
                          "match": "{{ client.__zarazTrack }}",
                          "value": "Pageview"
                        }
                      ],
                      "clientRules": [],
                      "description": "All page loads",
                      "excludeRules": []
                    }
                  }
                },
                "dataLayer": true,
                "variables": {
                  "Autd": {
                    "name": "ip",
                    "type": "string",
                    "value": "{{ system.device.ip }}"
                  }
                },
                "zarazVersion": 43
              },
              "userId": "278d0d0g123cd8e49d45ea64f12faa37",
              "createdAt": "2023-02-23T05:05:55.155273Z",
              "updatedAt": "2023-02-23T05:05:55.155273Z"
            },
            "23456": null
          },
          "description": "Object where keys are numeric configuration IDs.",
          "additionalProperties": {
            "allOf": [
              {
                "$ref": "#/components/schemas/zaraz_zaraz-config-row-base"
              },
              {
                "type": "object",
                "nullable": true,
                "required": [
                  "config"
                ],
                "properties": {
                  "config": {
                    "$ref": "#/components/schemas/zaraz_zaraz-config-return"
                  }
                },
                "description": "Configuration record corresponding to an ID provided in query params."
              }
            ]
          }
        }
      }
    }
  ]
}
object zaraz_zaraz-config-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zaraz_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/zaraz_zaraz-config-return"
        }
      }
    }
  ]
}
object zaraz_zaraz-config-return
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zaraz_zaraz-config-base"
    },
    {
      "type": "object",
      "properties": {
        "tools": {
          "type": "object",
          "description": "Tools set up under Zaraz configuration, where key is the alpha-numeric tool ID and value is the tool configuration object.",
          "additionalProperties": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/zaraz_managed-component"
              },
              {
                "$ref": "#/components/schemas/zaraz_custom-managed-component"
              }
            ]
          }
        }
      }
    }
  ]
}
object zaraz_zaraz-config-row-base
{
  "type": "object",
  "required": [
    "id",
    "createdAt",
    "updatedAt",
    "userId"
  ],
  "properties": {
    "id": {
      "type": "integer",
      "description": "ID of the configuration.",
      "x-auditable": true
    },
    "userId": {
      "type": "string",
      "description": "Alpha-numeric ID of the account user who published the configuration.",
      "x-auditable": true
    },
    "createdAt": {
      "type": "string",
      "format": "date-time",
      "description": "Date and time the configuration was created.",
      "x-auditable": true
    },
    "updatedAt": {
      "type": "string",
      "format": "date-time",
      "description": "Date and time the configuration was last updated.",
      "x-auditable": true
    }
  }
}
object zaraz_zaraz-history-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zaraz_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/components/schemas/zaraz_zaraz-config-row-base"
              },
              {
                "type": "object",
                "example": {
                  "id": 12345,
                  "userId": "278d0d0g123cd8e49d45ea64f12faa37",
                  "createdAt": "2023-02-23T05:05:55.155273Z",
                  "updatedAt": "2023-02-23T05:05:55.155273Z",
                  "description": "Config with enabled ecommerce tracking"
                },
                "required": [
                  "description"
                ],
                "properties": {
                  "description": {
                    "type": "string",
                    "description": "Configuration description provided by the user who published this configuration."
                  }
                }
              }
            ]
          }
        }
      }
    }
  ]
}
string zaraz_zaraz-workflow
{
  "enum": [
    "realtime",
    "preview"
  ],
  "type": "string",
  "description": "Zaraz workflow.",
  "x-auditable": true
}
object zaraz_zaraz-workflow-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zaraz_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/zaraz_zaraz-workflow"
        }
      }
    }
  ]
}
object zaraz_zone-identifier
{
  "$ref": "#/components/schemas/zaraz_identifier"
}
object zero-trust-gateway_account-log-options
{
  "type": "object",
  "properties": {
    "log_all": {
      "type": "boolean",
      "default": false,
      "example": false,
      "description": "Specify whether to log all requests to this service.",
      "x-auditable": true
    },
    "log_blocks": {
      "type": "boolean",
      "default": false,
      "example": true,
      "description": "Specify whether to log only blocking requests to this service.",
      "x-auditable": true
    }
  }
}
string zero-trust-gateway_action
{
  "enum": [
    "on",
    "off",
    "allow",
    "block",
    "scan",
    "noscan",
    "safesearch",
    "ytrestricted",
    "isolate",
    "noisolate",
    "override",
    "l4_override",
    "egress",
    "resolve",
    "quarantine",
    "redirect"
  ],
  "type": "string",
  "example": "allow",
  "description": "Specify the action to perform when the associated traffic, identity, and device posture expressions either absent or evaluate to `true`.",
  "x-auditable": true
}
object zero-trust-gateway_activity-log-settings
{
  "type": "object",
  "nullable": true,
  "properties": {
    "enabled": {
      "type": "boolean",
      "example": true,
      "nullable": true,
      "description": "Specify whether to log activity.",
      "x-auditable": true
    }
  },
  "description": "Specify activity log settings.",
  "x-stainless-terraform-configurability": "optional"
}
object zero-trust-gateway_anti-virus-settings
{
  "type": "object",
  "nullable": true,
  "properties": {
    "fail_closed": {
      "$ref": "#/components/schemas/zero-trust-gateway_fail_closed"
    },
    "enabled_upload_phase": {
      "$ref": "#/components/schemas/zero-trust-gateway_enabled_upload_phase"
    },
    "notification_settings": {
      "$ref": "#/components/schemas/zero-trust-gateway_notification_settings"
    },
    "enabled_download_phase": {
      "$ref": "#/components/schemas/zero-trust-gateway_enabled_download_phase"
    }
  },
  "description": "Specify anti-virus settings.",
  "x-stainless-terraform-configurability": "optional"
}
object zero-trust-gateway_api-response-collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/zero-trust-gateway_api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result_info": {
          "$ref": "#/components/schemas/zero-trust-gateway_result_info"
        }
      }
    }
  ]
}
object zero-trust-gateway_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/zero-trust-gateway_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Indicate whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/zero-trust-gateway_messages"
    }
  }
}
object zero-trust-gateway_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/zero-trust-gateway_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Indicate whether the API call was successful."
    },
    "messages": {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/zero-trust-gateway_messages"
        }
      ],
      "example": []
    }
  }
}
object zero-trust-gateway_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/zero-trust-gateway_api-response-common"
    }
  ]
}
object zero-trust-gateway_app-types
{
  "type": "object",
  "oneOf": [
    {
      "$ref": "#/components/schemas/zero-trust-gateway_application"
    },
    {
      "$ref": "#/components/schemas/zero-trust-gateway_application_type"
    }
  ],
  "readOnly": true
}
string zero-trust-gateway_app-types_components-schemas-name
{
  "type": "string",
  "example": "Facebook",
  "description": "Specify the name of the application or application type.",
  "x-auditable": true
}
object zero-trust-gateway_app-types_components-schemas-response_collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/zero-trust-gateway_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/zero-trust-gateway_app-types"
          }
        }
      }
    }
  ]
}
integer zero-trust-gateway_app_id
{
  "type": "integer",
  "description": "Identify this application. Only one application per ID.",
  "x-auditable": true
}
integer zero-trust-gateway_app_type_id
{
  "type": "integer",
  "description": "Identify the type of this application. Multiple applications can share the same type. Refers to the `id` of a returned application type.",
  "x-auditable": true
}
object zero-trust-gateway_application
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/zero-trust-gateway_app_id"
    },
    "name": {
      "$ref": "#/components/schemas/zero-trust-gateway_app-types_components-schemas-name"
    },
    "created_at": {
      "$ref": "#/components/schemas/zero-trust-gateway_timestamp"
    },
    "application_type_id": {
      "$ref": "#/components/schemas/zero-trust-gateway_app_type_id"
    }
  }
}
object zero-trust-gateway_application_type
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/zero-trust-gateway_app_type_id"
    },
    "name": {
      "$ref": "#/components/schemas/zero-trust-gateway_app-types_components-schemas-name"
    },
    "created_at": {
      "$ref": "#/components/schemas/zero-trust-gateway_timestamp"
    },
    "description": {
      "type": "string",
      "example": "Applications used to communicate or collaborate in a business setting.",
      "description": "Provide a short summary of applications with this type."
    }
  }
}
object zero-trust-gateway_applications_review_status_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/zero-trust-gateway_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/zero-trust-gateway_applications_review_status_response_content"
        }
      }
    }
  ],
  "x-auditable": true
}
object zero-trust-gateway_applications_review_status_response_content
{
  "type": "object",
  "properties": {
    "created_at": {
      "$ref": "#/components/schemas/zero-trust-gateway_read_only_timestamp"
    },
    "updated_at": {
      "$ref": "#/components/schemas/zero-trust-gateway_read_only_timestamp"
    },
    "approved_apps": {
      "$ref": "#/components/schemas/zero-trust-gateway_approved_apps"
    },
    "in_review_apps": {
      "$ref": "#/components/schemas/zero-trust-gateway_in_review_apps"
    },
    "unapproved_apps": {
      "$ref": "#/components/schemas/zero-trust-gateway_unapproved_apps"
    }
  }
}
array zero-trust-gateway_approved_apps
{
  "type": "array",
  "items": {
    "type": "integer"
  },
  "description": "Contains the ids of the approved applications.",
  "x-stainless-collection-type": "set"
}
object zero-trust-gateway_audit_ssh_settings_components-schemas-single_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/zero-trust-gateway_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/zero-trust-gateway_settings"
        }
      }
    }
  ]
}
string zero-trust-gateway_audit_ssh_settings_components-schemas-uuid
{
  "type": "string",
  "example": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
  "maxLength": 36,
  "description": "Identify the seed ID.",
  "x-auditable": true
}
boolean zero-trust-gateway_beta
{
  "type": "boolean",
  "example": false,
  "description": "Indicate whether the category is in beta and subject to change.",
  "x-auditable": true
}
string zero-trust-gateway_binding_status
{
  "enum": [
    "pending_deployment",
    "available",
    "pending_deletion",
    "inactive"
  ],
  "type": "string",
  "readOnly": true,
  "description": "Indicate the read-only deployment status of the certificate on Cloudflare's edge. Gateway TLS interception can use certificates in the 'available' (previously called 'active') state.",
  "x-auditable": true
}
object zero-trust-gateway_block-page-settings
{
  "type": "object",
  "nullable": true,
  "properties": {
    "mode": {
      "enum": [
        "",
        "customized_block_page",
        "redirect_uri"
      ],
      "type": "string",
      "default": "",
      "description": "Specify whether to redirect users to a Cloudflare-hosted block page or a customer-provided URI.",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "optional"
    },
    "name": {
      "type": "string",
      "example": "Cloudflare",
      "description": "Specify the block page title when the mode is customized_block_page.",
      "x-auditable": true
    },
    "enabled": {
      "type": "boolean",
      "example": true,
      "nullable": true,
      "description": "Specify whether to enable the custom block page.",
      "x-auditable": true
    },
    "version": {
      "type": "integer",
      "example": 1,
      "nullable": true,
      "readOnly": true,
      "description": "Indicate the version number of the setting.",
      "x-auditable": true
    },
    "logo_path": {
      "type": "string",
      "example": "https://logos.com/a.png",
      "description": "Specify the full URL to the logo file when the mode is customized_block_page.",
      "x-auditable": true
    },
    "read_only": {
      "type": "boolean",
      "nullable": true,
      "readOnly": true,
      "description": "Indicate that this setting was shared via the Orgs API and read only for the current account.",
      "x-auditable": true
    },
    "target_uri": {
      "type": "string",
      "format": "uri",
      "description": "Specify the URI to redirect users to when the mode is redirect_uri.",
      "x-auditable": true
    },
    "footer_text": {
      "type": "string",
      "example": "--footer--",
      "description": "Specify the block page footer text when the mode is customized_block_page.",
      "x-auditable": true
    },
    "header_text": {
      "type": "string",
      "example": "--header--",
      "description": "Specify the block page header text when the mode is customized_block_page.",
      "x-auditable": true
    },
    "mailto_address": {
      "type": "string",
      "example": "admin@example.com",
      "description": "Specify the admin email for users to contact when the mode is customized_block_page.",
      "x-auditable": true
    },
    "mailto_subject": {
      "type": "string",
      "example": "Blocked User Inquiry",
      "description": "Specify the subject line for emails created from the block page when the mode is customized_block_page.",
      "x-auditable": true
    },
    "source_account": {
      "type": "string",
      "nullable": true,
      "readOnly": true,
      "description": "Indicate the account tag of the account that shared this setting.",
      "x-auditable": true
    },
    "include_context": {
      "type": "boolean",
      "description": "Specify whether to append context to target_uri as query parameters. This applies only when the mode is redirect_uri.",
      "x-auditable": true
    },
    "suppress_footer": {
      "type": "boolean",
      "example": false,
      "description": "Specify whether to suppress detailed information at the bottom of the block page when the mode is customized_block_page."
    },
    "background_color": {
      "type": "string",
      "description": "Specify the block page background color in `#rrggbb` format when the mode is customized_block_page.",
      "x-auditable": true
    }
  },
  "description": "Specify block page layout settings.",
  "x-stainless-terraform-configurability": "optional"
}
object zero-trust-gateway_body-scanning-settings
{
  "type": "object",
  "nullable": true,
  "properties": {
    "inspection_mode": {
      "enum": [
        "deep",
        "shallow"
      ],
      "type": "string",
      "example": "deep",
      "description": "Specify the inspection mode as either `deep` or `shallow`.",
      "x-auditable": true
    }
  },
  "description": "Specify the DLP inspection mode.",
  "x-stainless-terraform-configurability": "optional"
}
object zero-trust-gateway_browser-isolation-settings
{
  "type": "object",
  "nullable": true,
  "properties": {
    "non_identity_enabled": {
      "type": "boolean",
      "example": true,
      "description": "Specify whether to enable non-identity onramp support for Browser Isolation.",
      "x-auditable": true
    },
    "url_browser_isolation_enabled": {
      "type": "boolean",
      "example": true,
      "description": "Specify whether to enable Clientless Browser Isolation.",
      "x-auditable": true
    }
  },
  "description": "Specify Clientless Browser Isolation settings.",
  "x-stainless-terraform-configurability": "optional"
}
object zero-trust-gateway_categories
{
  "type": "object",
  "readOnly": true,
  "properties": {
    "id": {
      "$ref": "#/components/schemas/zero-trust-gateway_id"
    },
    "beta": {
      "$ref": "#/components/schemas/zero-trust-gateway_beta"
    },
    "name": {
      "$ref": "#/components/schemas/zero-trust-gateway_categories_components-schemas-name"
    },
    "class": {
      "$ref": "#/components/schemas/zero-trust-gateway_class"
    },
    "description": {
      "$ref": "#/components/schemas/zero-trust-gateway_components-schemas-description"
    },
    "subcategories": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/zero-trust-gateway_subcategory"
      },
      "description": "Provide all subcategories for this category."
    }
  }
}
string zero-trust-gateway_categories_components-schemas-name
{
  "type": "string",
  "example": "Education",
  "description": "Specify the category name."
}
object zero-trust-gateway_categories_components-schemas-response_collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/zero-trust-gateway_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/zero-trust-gateway_categories"
          }
        }
      }
    }
  ]
}
object zero-trust-gateway_certificate-settings
{
  "type": "object",
  "nullable": true,
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "string",
      "example": "d1b364c5-1311-466e-a194-f0e943e0799f",
      "description": "Specify the UUID of the certificate used for interception. Ensure the certificate is available at the edge(previously called 'active'). A nil UUID directs Cloudflare to use the Root CA.",
      "x-auditable": true
    }
  },
  "description": "Specify certificate settings for Gateway TLS interception. If unset, the Cloudflare Root CA handles interception.",
  "x-stainless-terraform-configurability": "optional"
}
object zero-trust-gateway_certificates
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/zero-trust-gateway_uuid"
    },
    "type": {
      "$ref": "#/components/schemas/zero-trust-gateway_type"
    },
    "in_use": {
      "type": "boolean",
      "readOnly": true,
      "description": "Indicate whether Gateway TLS interception uses this certificate (read-only). You cannot set this value directly. To configure interception, use the Gateway configuration setting named `certificate` (read-only).",
      "x-stainless-terraform-configurability": "computed"
    },
    "created_at": {
      "$ref": "#/components/schemas/zero-trust-gateway_read_only_timestamp"
    },
    "expires_on": {
      "$ref": "#/components/schemas/zero-trust-gateway_read_only_timestamp"
    },
    "issuer_org": {
      "type": "string",
      "example": "Example Inc.",
      "readOnly": true,
      "description": "Indicate the organization that issued the certificate (read-only).",
      "x-auditable": true
    },
    "issuer_raw": {
      "type": "string",
      "example": "O=Example Inc.,L=California,ST=San Francisco,C=US",
      "readOnly": true,
      "description": "Provide the entire issuer field of the certificate (read-only).",
      "x-auditable": true
    },
    "updated_at": {
      "$ref": "#/components/schemas/zero-trust-gateway_read_only_timestamp"
    },
    "certificate": {
      "type": "string",
      "example": "-----BEGIN CERTIFICATE-----\\nMIIDmDCCAoCgAwIBAgIUKTOAZNjcXVZRj4oQt0SHsl1c1vMwDQYJKoZIhvcNAQELBQAwUTELMAkGA1UEBhMCVVMxFjAUBgNVBAgMDVNhbiBGcmFuY2lzY28xEzARBgNVBAcMCkNhbGlmb3JuaWExFTATBgNVBAoMDEV4YW1wbGUgSW5jLjAgFw0yMjExMjIxNjU5NDdaGA8yMTIyMTAyOTE2NTk0N1owUTELMAkGA1UEBhMCVVMxFjAUBgNVBAgMDVNhbiBGcmFuY2lzY28xEzARBgNVBAcMCkNhbGlmb3JuaWExFTATBgNVBAoMDEV4YW1wbGUgSW5jLjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMRcORwgJFTdcG/2GKI+cFYiOBNDKjCZUXEOvXWY42BkH9wxiMT869CO+enA1w5pIrXow6kCM1sQspHHaVmJUlotEMJxyoLFfA/8Kt1EKFyobOjuZs2SwyVyJ2sStvQuUQEosULZCNGZEqoH5g6zhMPxaxm7ZLrrsDZ9maNGVqo7EWLWHrZ57Q/5MtTrbxQL+eXjUmJ9K3kS+3uEwMdqR6Z3BluU1ivanpPc1CN2GNhdO0/hSY4YkGEnuLsqJyDd3cIiB1MxuCBJ4ZaqOd2viV1WcP3oU3dxVPm4MWyfYIldMWB14FahScxLhWdRnM9YZ/i9IFcLypXsuz7DjrJPtPUCAwEAAaNmMGQwHQYDVR0OBBYEFP5JzLUawNF+c3AXsYTEWHh7z2czMB8GA1UdIwQYMBaAFP5JzLUawNF+c3AXsYTEWHh7z2czMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMBAf8ECDAGAQH/AgEBMA0GCSqGSIb3DQEBCwUAA4IBAQBc+Be7NDhpE09y7hLPZGRPl1cSKBw4RI0XIv6rlbSTFs5EebpTGjhx/whNxwEZhB9HZ7111Oa1YlT8xkI9DshB78mjAHCKBAJ76moK8tkG0aqdYpJ4ZcJTVBB7l98Rvgc7zfTii7WemTy72deBbSeiEtXavm4EF0mWjHhQ5Nxpnp00Bqn5g1x8CyTDypgmugnep+xG+iFzNmTdsz7WI9T/7kDMXqB7M/FPWBORyS98OJqNDswCLF8bIZYwUBEe+bRHFomoShMzaC3tvim7WCb16noDkSTMlfKO4pnvKhpcVdSgwcruATV7y+W+Lvmz2OT/Gui4JhqeoTewsxndhDDE\\n-----END CERTIFICATE-----\\n",
      "readOnly": true,
      "description": "Provide the CA certificate (read-only)."
    },
    "fingerprint": {
      "type": "string",
      "example": "E9:19:49:AA:DD:D8:1E:C1:20:2A:D8:22:BF:A5:F8:FC:1A:F7:10:9F:C7:5B:69:AB:0:31:91:8B:61:B4:BF:1C",
      "readOnly": true,
      "description": "Provide the SHA256 fingerprint of the certificate (read-only).",
      "x-auditable": true
    },
    "uploaded_on": {
      "$ref": "#/components/schemas/zero-trust-gateway_read_only_timestamp"
    },
    "binding_status": {
      "$ref": "#/components/schemas/zero-trust-gateway_binding_status"
    }
  }
}
string zero-trust-gateway_cf_account_id
{
  "type": "string",
  "example": "699d98642c564d2e855e9661899b7252",
  "maxLength": 32,
  "description": "Specify the Cloudflare account ID."
}
string zero-trust-gateway_class
{
  "enum": [
    "free",
    "premium",
    "blocked",
    "removalPending",
    "noBlock"
  ],
  "type": "string",
  "example": "premium",
  "description": "Specify which account types can create policies for this category. `blocked` Blocks unconditionally for all accounts. `removalPending` Allows removal from policies but disables addition. `noBlock` Prevents blocking.",
  "x-auditable": true
}
boolean zero-trust-gateway_client-default
{
  "type": "boolean",
  "default": false,
  "example": false,
  "description": "Indicate whether this location is the default location.",
  "x-auditable": true
}
string zero-trust-gateway_components-schemas-description
{
  "type": "string",
  "example": "Sites related to educational content that are not included in other categories such as Science, Technology or Educational institutions.",
  "description": "Provide a short summary of domains in the category.",
  "x-auditable": true
}
string zero-trust-gateway_components-schemas-identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Provide the identifier string.",
  "x-auditable": true
}
string zero-trust-gateway_components-schemas-name
{
  "type": "string",
  "example": "block bad websites",
  "description": "Specify the rule name.",
  "x-auditable": true
}
object zero-trust-gateway_components-schemas-response_collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/zero-trust-gateway_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/zero-trust-gateway_locations"
          }
        }
      }
    }
  ]
}
object zero-trust-gateway_components-schemas-single_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/zero-trust-gateway_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/zero-trust-gateway_rules"
        }
      }
    }
  ]
}
string zero-trust-gateway_components-schemas-uuid
{
  "type": "string",
  "example": "ed35569b41ce4d1facfe683550f54086",
  "x-auditable": true
}
string zero-trust-gateway_contents
{
  "type": "string",
  "example": "function FindProxyForURL(url, host) { return \"DIRECT\"; }",
  "description": "Actual contents of the PAC file",
  "x-auditable": true
}
number zero-trust-gateway_count
{
  "type": "number",
  "example": 20,
  "readOnly": true,
  "description": "Indicate the number of items in the list."
}
object zero-trust-gateway_custom-certificate-settings
{
  "type": "object",
  "nullable": true,
  "required": [
    "enabled"
  ],
  "deprecated": true,
  "properties": {
    "id": {
      "type": "string",
      "example": "d1b364c5-1311-466e-a194-f0e943e0799f",
      "description": "Specify the UUID of the certificate (ID from MTLS certificate store).",
      "x-auditable": true
    },
    "enabled": {
      "type": "boolean",
      "example": true,
      "nullable": true,
      "description": "Specify whether to enable a custom certificate authority for signing Gateway traffic.",
      "x-auditable": true
    },
    "updated_at": {
      "type": "string",
      "format": "date-time",
      "readOnly": true
    },
    "binding_status": {
      "type": "string",
      "example": "pending_deployment",
      "readOnly": true,
      "description": "Indicate the internal certificate status.",
      "x-auditable": true
    }
  },
  "description": "Specify custom certificate settings for BYO-PKI. This field is deprecated; use `certificate` instead.",
  "x-stainless-terraform-configurability": "optional"
}
string zero-trust-gateway_deleted_at
{
  "type": "string",
  "format": "date-time",
  "nullable": true,
  "readOnly": true,
  "description": "Indicate the date of deletion, if any."
}
string zero-trust-gateway_description
{
  "type": "string",
  "example": "The serial numbers for administrators",
  "description": "Provide the list description.",
  "x-auditable": true,
  "x-stainless-terraform-configurability": "computed_optional"
}
string zero-trust-gateway_description_item
{
  "type": "string",
  "example": "Austin office IP",
  "minimum": 0,
  "description": "Provide the list item description (optional)."
}
string zero-trust-gateway_device_posture
{
  "type": "string",
  "default": "",
  "example": "any(device_posture.checks.passed[*] in {\"1308749e-fcfb-4ebc-b051-fe022b632644\"})",
  "description": "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.",
  "x-auditable": true,
  "x-stainless-terraform-configurability": "computed_optional"
}
string zero-trust-gateway_dns-destination-ips-id-read
{
  "type": "string",
  "default": "0e4a32c6-6fb8-4858-9296-98f51631e8e6",
  "example": "0e4a32c6-6fb8-4858-9296-98f51631e8e6",
  "description": "Indicate the identifier of the pair of IPv4 addresses assigned to this location.",
  "x-auditable": true,
  "x-stainless-terraform-configurability": "computed_optional"
}
string zero-trust-gateway_dns-destination-ips-id-write
{
  "type": "string",
  "example": "0e4a32c6-6fb8-4858-9296-98f51631e8e6",
  "description": "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.",
  "x-auditable": true,
  "x-stainless-terraform-configurability": "computed_optional"
}
string zero-trust-gateway_dns_destination_ipv6_block_id
{
  "type": "string",
  "example": "b08f7231-d458-495c-98ef-190604c9ee83",
  "nullable": true,
  "description": "Specify the UUID of the IPv6 block brought to the gateway so that this location's IPv6 address is allocated from the Bring Your Own IPv6 (BYOIPv6) block rather than the standard Cloudflare IPv6 block.",
  "x-auditable": true,
  "x-stainless-terraform-configurability": "computed_optional"
}
object zero-trust-gateway_dns_resolver_settings_v4
{
  "type": "object",
  "required": [
    "ip"
  ],
  "properties": {
    "ip": {
      "type": "string",
      "example": "2.2.2.2",
      "description": "Specify the IPv4 address of the upstream resolver.",
      "x-auditable": true
    },
    "port": {
      "type": "integer",
      "example": 5053,
      "description": "Specify a port number to use for the upstream resolver. Defaults to 53 if unspecified.",
      "x-auditable": true
    },
    "vnet_id": {
      "type": "string",
      "example": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
      "description": "Specify an optional virtual network for this resolver. Uses default virtual network id if omitted.",
      "x-auditable": true
    },
    "route_through_private_network": {
      "type": "boolean",
      "example": true,
      "description": "Indicate whether to connect to this resolver over a private network. Must set when vnet_id set.",
      "x-auditable": true
    }
  },
  "x-stainless-terraform-configurability": "computed_optional"
}
object zero-trust-gateway_dns_resolver_settings_v6
{
  "type": "object",
  "required": [
    "ip"
  ],
  "properties": {
    "ip": {
      "type": "string",
      "example": "2001:DB8::",
      "description": "Specify the IPv6 address of the upstream resolver.",
      "x-auditable": true
    },
    "port": {
      "type": "integer",
      "example": 5053,
      "description": "Specify a port number to use for the upstream resolver. Defaults to 53 if unspecified.",
      "x-auditable": true
    },
    "vnet_id": {
      "type": "string",
      "example": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
      "description": "Specify an optional virtual network for this resolver. Uses default virtual network id if omitted.",
      "x-auditable": true
    },
    "route_through_private_network": {
      "type": "boolean",
      "example": true,
      "description": "Indicate whether to connect to this resolver over a private network. Must set when vnet_id set.",
      "x-auditable": true
    }
  },
  "x-stainless-terraform-configurability": "computed_optional"
}
object zero-trust-gateway_doh_endpoint
{
  "type": "object",
  "properties": {
    "enabled": {
      "type": "boolean",
      "example": true,
      "description": "Indicate whether the DOH endpoint is enabled for this location.",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    },
    "networks": {
      "$ref": "#/components/schemas/zero-trust-gateway_ip_networks"
    },
    "require_token": {
      "type": "boolean",
      "example": true,
      "description": "Specify whether the DOH endpoint requires user identity authentication.",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    }
  }
}
object zero-trust-gateway_dot_endpoint
{
  "type": "object",
  "properties": {
    "enabled": {
      "type": "boolean",
      "example": true,
      "description": "Indicate whether the DOT endpoint is enabled for this location.",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    },
    "networks": {
      "$ref": "#/components/schemas/zero-trust-gateway_ip_networks"
    }
  }
}
boolean zero-trust-gateway_ecs-support
{
  "type": "boolean",
  "default": false,
  "example": false,
  "description": "Indicate whether the location must resolve EDNS queries.",
  "x-auditable": true
}
object zero-trust-gateway_empty_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/zero-trust-gateway_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object"
        }
      }
    }
  ]
}
boolean zero-trust-gateway_enabled
{
  "type": "boolean",
  "default": false,
  "example": true,
  "description": "Specify whether the rule is enabled.",
  "x-auditable": true
}
boolean zero-trust-gateway_enabled_download_phase
{
  "type": "boolean",
  "example": false,
  "nullable": true,
  "description": "Specify whether to enable anti-virus scanning on downloads.",
  "x-auditable": true,
  "x-stainless-terraform-configurability": "computed_optional"
}
boolean zero-trust-gateway_enabled_upload_phase
{
  "type": "boolean",
  "example": false,
  "nullable": true,
  "description": "Specify whether to enable anti-virus scanning on uploads.",
  "x-auditable": true,
  "x-stainless-terraform-configurability": "computed_optional"
}
object zero-trust-gateway_endpoints
{
  "type": "object",
  "nullable": true,
  "required": [
    "ipv4",
    "ipv6",
    "doh",
    "dot"
  ],
  "properties": {
    "doh": {
      "$ref": "#/components/schemas/zero-trust-gateway_doh_endpoint"
    },
    "dot": {
      "$ref": "#/components/schemas/zero-trust-gateway_dot_endpoint"
    },
    "ipv4": {
      "$ref": "#/components/schemas/zero-trust-gateway_ipv4_endpoint"
    },
    "ipv6": {
      "$ref": "#/components/schemas/zero-trust-gateway_ipv6_endpoint"
    }
  },
  "description": "Configure the destination endpoints for this location.",
  "x-stainless-terraform-configurability": "optional"
}
object zero-trust-gateway_expiration
{
  "type": "object",
  "nullable": true,
  "required": [
    "expires_at"
  ],
  "properties": {
    "expired": {
      "type": "boolean",
      "example": false,
      "readOnly": true,
      "description": "Indicates whether the policy is expired.",
      "x-auditable": true
    },
    "duration": {
      "type": "integer",
      "example": 10,
      "minimum": 5,
      "description": "Defines the default duration a policy active in minutes. Must set in order to use the `reset_expiration` endpoint on this rule.",
      "x-auditable": true
    },
    "expires_at": {
      "allOf": [
        {
          "$ref": "#/components/schemas/zero-trust-gateway_timestamp"
        },
        {
          "type": "string",
          "example": "2014-01-01T05:20:20Z",
          "description": "Show the timestamp when the policy expires and stops applying.  The value must follow RFC 3339 and include a UTC offset.  The system accepts non-zero offsets but converts them to the equivalent UTC+00:00  value and returns timestamps with a trailing Z. Expiration policies ignore client  timezones and expire globally at the specified expires_at time.",
          "x-auditable": true
        }
      ]
    }
  },
  "description": "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.",
  "x-stainless-terraform-configurability": "computed_optional"
}
object zero-trust-gateway_extended-email-matching
{
  "type": "object",
  "nullable": true,
  "properties": {
    "enabled": {
      "type": "boolean",
      "example": true,
      "nullable": true,
      "description": "Specify whether to match all variants of user emails (with + or . modifiers) used as criteria in Firewall policies.",
      "x-auditable": true
    },
    "version": {
      "type": "integer",
      "example": 1,
      "readOnly": true,
      "description": "Indicate the version number of the setting.",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "optional"
    },
    "read_only": {
      "type": "boolean",
      "readOnly": true,
      "description": "Indicate that this setting was shared via the Orgs API and read only for the current account.",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "optional"
    },
    "source_account": {
      "type": "string",
      "readOnly": true,
      "description": "Indicate the account tag of the account that shared this setting.",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "optional"
    }
  },
  "description": "Configures user email settings for firewall policies. When you enable this, the system standardizes email addresses in the identity portion of the rule to match extended email variants in firewall policies. When you disable this setting, the system matches email addresses exactly as you provide them. Enable this setting if your email uses `.` or `+` modifiers.",
  "x-stainless-terraform-configurability": "optional"
}
boolean zero-trust-gateway_fail_closed
{
  "type": "boolean",
  "example": false,
  "nullable": true,
  "description": "Specify whether to block requests for unscannable files.",
  "x-auditable": true,
  "x-stainless-terraform-configurability": "computed_optional"
}
array zero-trust-gateway_filters
{
  "type": "array",
  "items": {
    "enum": [
      "http",
      "dns",
      "l4",
      "egress",
      "dns_resolver"
    ],
    "type": "string",
    "example": "http",
    "description": "Specify the protocol or layer to use.",
    "x-auditable": true
  },
  "example": [
    "http"
  ],
  "maxItems": 1,
  "minItems": 1,
  "description": "Specify the protocol or layer to evaluate the traffic, identity, and device posture expressions. Can only contain a single value."
}
object zero-trust-gateway_fips-settings
{
  "type": "object",
  "nullable": true,
  "properties": {
    "tls": {
      "type": "boolean",
      "example": true,
      "description": "Enforce cipher suites and TLS versions compliant with FIPS 140-2.",
      "x-auditable": true
    }
  },
  "description": "Specify FIPS settings.",
  "x-stainless-terraform-configurability": "optional"
}
object zero-trust-gateway_gateway-account-logging-settings
{
  "type": "object",
  "properties": {
    "redact_pii": {
      "type": "boolean",
      "default": false,
      "example": true,
      "description": "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).",
      "x-auditable": true
    },
    "settings_by_rule_type": {
      "type": "object",
      "properties": {
        "l4": {
          "allOf": [
            {
              "$ref": "#/components/schemas/zero-trust-gateway_account-log-options"
            }
          ],
          "description": "Configure logging settings for Network firewall."
        },
        "dns": {
          "allOf": [
            {
              "$ref": "#/components/schemas/zero-trust-gateway_account-log-options"
            }
          ],
          "description": "Configure logging settings for DNS firewall."
        },
        "http": {
          "allOf": [
            {
              "$ref": "#/components/schemas/zero-trust-gateway_account-log-options"
            }
          ],
          "description": "Configure logging settings for HTTP/HTTPS firewall."
        }
      },
      "description": "Configure logging settings for each rule type."
    }
  }
}
object zero-trust-gateway_gateway-account-logging-settings-response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zero-trust-gateway_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/zero-trust-gateway_gateway-account-logging-settings"
        }
      }
    }
  ]
}
object zero-trust-gateway_gateway-account-settings
{
  "properties": {
    "settings": {
      "type": "object",
      "properties": {
        "fips": {
          "$ref": "#/components/schemas/zero-trust-gateway_fips-settings"
        },
        "sandbox": {
          "$ref": "#/components/schemas/zero-trust-gateway_sandbox"
        },
        "antivirus": {
          "$ref": "#/components/schemas/zero-trust-gateway_anti-virus-settings"
        },
        "block_page": {
          "$ref": "#/components/schemas/zero-trust-gateway_block-page-settings"
        },
        "inspection": {
          "$ref": "#/components/schemas/zero-trust-gateway_inspection-settings"
        },
        "certificate": {
          "$ref": "#/components/schemas/zero-trust-gateway_certificate-settings"
        },
        "tls_decrypt": {
          "$ref": "#/components/schemas/zero-trust-gateway_tls-settings"
        },
        "activity_log": {
          "$ref": "#/components/schemas/zero-trust-gateway_activity-log-settings"
        },
        "body_scanning": {
          "$ref": "#/components/schemas/zero-trust-gateway_body-scanning-settings"
        },
        "host_selector": {
          "$ref": "#/components/schemas/zero-trust-gateway_host-selector-settings"
        },
        "browser_isolation": {
          "$ref": "#/components/schemas/zero-trust-gateway_browser-isolation-settings"
        },
        "custom_certificate": {
          "$ref": "#/components/schemas/zero-trust-gateway_custom-certificate-settings"
        },
        "protocol_detection": {
          "$ref": "#/components/schemas/zero-trust-gateway_protocol-detection"
        },
        "extended_email_matching": {
          "$ref": "#/components/schemas/zero-trust-gateway_extended-email-matching"
        }
      },
      "description": "Specify account settings."
    }
  },
  "description": "Specify account settings."
}
object zero-trust-gateway_gateway_account
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/zero-trust-gateway_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "id": {
              "$ref": "#/components/schemas/zero-trust-gateway_cf_account_id"
            },
            "gateway_tag": {
              "$ref": "#/components/schemas/zero-trust-gateway_gateway_tag"
            },
            "provider_name": {
              "$ref": "#/components/schemas/zero-trust-gateway_provider_name"
            }
          }
        }
      }
    }
  ]
}
object zero-trust-gateway_gateway_account_config
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/zero-trust-gateway_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "allOf": [
            {
              "$ref": "#/components/schemas/zero-trust-gateway_gateway-account-settings"
            },
            {
              "type": "object",
              "properties": {
                "created_at": {
                  "$ref": "#/components/schemas/zero-trust-gateway_read_only_timestamp"
                },
                "updated_at": {
                  "$ref": "#/components/schemas/zero-trust-gateway_read_only_timestamp"
                }
              }
            }
          ]
        }
      }
    }
  ]
}
string zero-trust-gateway_gateway_tag
{
  "type": "string",
  "example": "f174e90afafe4643bbbc4a0ed4fc8415",
  "maxLength": 32,
  "description": "Specify the gateway internal ID."
}
object zero-trust-gateway_generate-cert-request
{
  "type": "object",
  "properties": {
    "validity_period_days": {
      "type": "integer",
      "example": 1826,
      "description": "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.",
      "x-auditable": true
    }
  }
}
object zero-trust-gateway_host-selector-settings
{
  "type": "object",
  "nullable": true,
  "properties": {
    "enabled": {
      "type": "boolean",
      "example": false,
      "nullable": true,
      "description": "Specify whether to enable filtering via hosts for egress policies.",
      "x-auditable": true
    }
  },
  "description": "Enable host selection in egress policies.",
  "x-stainless-terraform-configurability": "optional"
}
integer zero-trust-gateway_id
{
  "type": "integer",
  "description": "Identify this category. Only one category per ID.",
  "x-auditable": true
}
string zero-trust-gateway_identifier
{
  "type": "string",
  "example": "699d98642c564d2e855e9661899b7252"
}
string zero-trust-gateway_identity
{
  "type": "string",
  "default": "",
  "example": "any(identity.groups.name[*] in {\"finance\"})",
  "description": "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.",
  "x-auditable": true,
  "x-stainless-terraform-configurability": "computed_optional"
}
array zero-trust-gateway_in_review_apps
{
  "type": "array",
  "items": {
    "type": "integer"
  },
  "description": "Contains the ids of the applications in review.",
  "x-stainless-collection-type": "set"
}
object zero-trust-gateway_inspection-settings
{
  "type": "object",
  "nullable": true,
  "properties": {
    "mode": {
      "enum": [
        "static",
        "dynamic"
      ],
      "type": "string",
      "example": "static",
      "description": "Define the proxy inspection mode.   1. static: Gateway applies static inspection to HTTP on TCP(80). With TLS decryption on, Gateway inspects HTTPS traffic on TCP(443) and UDP(443).   2. dynamic: Gateway applies protocol detection to inspect HTTP and HTTPS traffic on any port. TLS decryption must remain on to inspect HTTPS traffic.",
      "x-auditable": true
    }
  },
  "description": "Define the proxy inspection mode.",
  "x-stainless-terraform-configurability": "optional"
}
string zero-trust-gateway_ip
{
  "type": "string",
  "example": "2001:0db8:85a3:0000:0000:8a2e:0370:7334",
  "readOnly": true,
  "description": "Defines the automatically generated IPv6 destination IP assigned to this location. Gateway counts all DNS requests sent to this IP as requests under this location.",
  "x-auditable": true
}
object zero-trust-gateway_ip_network
{
  "type": "object",
  "required": [
    "network"
  ],
  "properties": {
    "network": {
      "type": "string",
      "example": "2001:85a3::/64",
      "description": "Specify the IP address or IP CIDR.",
      "x-auditable": true
    }
  }
}
array zero-trust-gateway_ip_networks
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/zero-trust-gateway_ip_network"
  },
  "nullable": true,
  "description": "Specify the list of allowed source IP network ranges for this endpoint. When the list is empty, the endpoint allows all source IPs. The list takes effect only if the endpoint is enabled for this location.",
  "x-stainless-terraform-configurability": "computed_optional"
}
array zero-trust-gateway_ips
{
  "type": "array",
  "items": {
    "type": "string",
    "example": "192.0.2.1/32",
    "description": "Specify an IPv4 or IPv6 CIDR. Limit IPv6 to a maximum of /109 and IPv4 to a maximum of /25.",
    "x-auditable": true
  },
  "description": "Specify the list of CIDRs to restrict ingress connections."
}
object zero-trust-gateway_ipv4_endpoint
{
  "type": "object",
  "properties": {
    "enabled": {
      "type": "boolean",
      "example": true,
      "description": "Indicate whether the IPv4 endpoint is enabled for this location.",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    }
  }
}
object zero-trust-gateway_ipv4_network
{
  "type": "object",
  "required": [
    "network"
  ],
  "properties": {
    "network": {
      "type": "string",
      "example": "192.0.2.1/32",
      "description": "Specify the IPv4 address or IPv4 CIDR. Limit IPv4 CIDRs to a maximum of /24.",
      "x-auditable": true
    }
  }
}
array zero-trust-gateway_ipv4_networks
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/zero-trust-gateway_ipv4_network"
  },
  "nullable": true,
  "description": "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.",
  "x-stainless-terraform-configurability": "computed_optional"
}
object zero-trust-gateway_ipv6_endpoint
{
  "type": "object",
  "properties": {
    "enabled": {
      "type": "boolean",
      "example": true,
      "description": "Indicate whether the IPV6 endpoint is enabled for this location.",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    },
    "networks": {
      "$ref": "#/components/schemas/zero-trust-gateway_ipv6_networks"
    }
  }
}
object zero-trust-gateway_ipv6_network
{
  "type": "object",
  "required": [
    "network"
  ],
  "properties": {
    "network": {
      "type": "string",
      "example": "2001:85a3::/64",
      "description": "Specify the IPv6 address or IPv6 CIDR.",
      "x-auditable": true
    }
  }
}
array zero-trust-gateway_ipv6_networks
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/zero-trust-gateway_ipv6_network"
  },
  "nullable": true,
  "description": "Specify the list of allowed source IPv6 network ranges for this endpoint. When the list is empty, the endpoint allows all source IPs. The list takes effect only if the endpoint is enabled for this location.",
  "x-stainless-terraform-configurability": "computed_optional"
}
array zero-trust-gateway_items
{
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "value": {
        "$ref": "#/components/schemas/zero-trust-gateway_value"
      },
      "created_at": {
        "$ref": "#/components/schemas/zero-trust-gateway_read_only_timestamp"
      },
      "description": {
        "$ref": "#/components/schemas/zero-trust-gateway_description_item"
      }
    }
  },
  "description": "Provide the list items.",
  "x-stainless-collection-type": "set"
}
array zero-trust-gateway_items-input
{
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "value": {
        "$ref": "#/components/schemas/zero-trust-gateway_value"
      },
      "description": {
        "$ref": "#/components/schemas/zero-trust-gateway_description_item"
      }
    }
  },
  "description": "Add items to the list.",
  "x-stainless-collection-type": "set"
}
object zero-trust-gateway_list_item_response_collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/zero-trust-gateway_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/zero-trust-gateway_items"
          }
        }
      }
    },
    {
      "type": "object",
      "properties": {
        "result_info": {
          "type": "object",
          "properties": {
            "page": {
              "type": "number",
              "example": 1,
              "description": "Show the current page within paginated list of results."
            },
            "count": {
              "type": "number",
              "example": 1,
              "description": "Shows the total results returned based on your search parameters."
            },
            "per_page": {
              "type": "number",
              "example": 20,
              "description": "Show the number of results per page of results."
            },
            "total_count": {
              "type": "number",
              "example": 2000,
              "description": "Show the total results available without any search parameters."
            }
          }
        }
      }
    }
  ]
}
object zero-trust-gateway_list_single_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/zero-trust-gateway_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/zero-trust-gateway_lists"
        }
      }
    }
  ],
  "x-auditable": true
}
object zero-trust-gateway_lists
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/zero-trust-gateway_schemas-uuid"
    },
    "name": {
      "$ref": "#/components/schemas/zero-trust-gateway_name"
    },
    "type": {
      "$ref": "#/components/schemas/zero-trust-gateway_schemas-type"
    },
    "count": {
      "$ref": "#/components/schemas/zero-trust-gateway_count"
    },
    "items": {
      "$ref": "#/components/schemas/zero-trust-gateway_items"
    },
    "created_at": {
      "$ref": "#/components/schemas/zero-trust-gateway_read_only_timestamp"
    },
    "updated_at": {
      "$ref": "#/components/schemas/zero-trust-gateway_read_only_timestamp"
    },
    "description": {
      "$ref": "#/components/schemas/zero-trust-gateway_description"
    }
  }
}
object zero-trust-gateway_locations
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/zero-trust-gateway_components-schemas-uuid"
    },
    "ip": {
      "$ref": "#/components/schemas/zero-trust-gateway_ip"
    },
    "name": {
      "$ref": "#/components/schemas/zero-trust-gateway_schemas-name"
    },
    "networks": {
      "$ref": "#/components/schemas/zero-trust-gateway_ipv4_networks"
    },
    "endpoints": {
      "$ref": "#/components/schemas/zero-trust-gateway_endpoints"
    },
    "created_at": {
      "$ref": "#/components/schemas/zero-trust-gateway_read_only_timestamp"
    },
    "updated_at": {
      "$ref": "#/components/schemas/zero-trust-gateway_read_only_timestamp"
    },
    "ecs_support": {
      "$ref": "#/components/schemas/zero-trust-gateway_ecs-support"
    },
    "doh_subdomain": {
      "$ref": "#/components/schemas/zero-trust-gateway_subdomain"
    },
    "client_default": {
      "$ref": "#/components/schemas/zero-trust-gateway_client-default"
    },
    "ipv4_destination": {
      "type": "string",
      "example": "172.64.36.1",
      "readOnly": true,
      "description": "Show the primary destination IPv4 address from the pair identified dns_destination_ips_id. This field read-only."
    },
    "dns_destination_ips_id": {
      "$ref": "#/components/schemas/zero-trust-gateway_dns-destination-ips-id-read"
    },
    "ipv4_destination_backup": {
      "type": "string",
      "example": "172.64.36.2",
      "readOnly": true,
      "description": "Show the backup destination IPv4 address from the pair identified dns_destination_ips_id. This field read-only."
    },
    "dns_destination_ipv6_block_id": {
      "$ref": "#/components/schemas/zero-trust-gateway_dns_destination_ipv6_block_id"
    }
  }
}
array zero-trust-gateway_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "message": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
string zero-trust-gateway_name
{
  "type": "string",
  "example": "Admin Serial Numbers",
  "description": "Specify the list name.",
  "x-auditable": true
}
object zero-trust-gateway_notification_settings
{
  "type": "object",
  "nullable": true,
  "properties": {
    "msg": {
      "type": "string",
      "description": "Specify the message to show in the notification.",
      "x-auditable": true
    },
    "enabled": {
      "type": "boolean",
      "description": "Specify whether to enable notifications.",
      "x-auditable": true
    },
    "support_url": {
      "type": "string",
      "description": "Specify a URL that directs users to more information. If unset, the notification opens a block page.",
      "x-auditable": true
    },
    "include_context": {
      "type": "boolean",
      "description": "Specify whether to include context information as query parameters.",
      "x-auditable": true
    }
  },
  "description": "Configure the message the user's device shows during an antivirus scan.",
  "x-stainless-terraform-configurability": "computed_optional"
}
object zero-trust-gateway_pacfile
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/zero-trust-gateway_components-schemas-uuid"
    },
    "url": {
      "$ref": "#/components/schemas/zero-trust-gateway_url"
    },
    "name": {
      "$ref": "#/components/schemas/zero-trust-gateway_pacfiles_components-schemas-name"
    },
    "slug": {
      "$ref": "#/components/schemas/zero-trust-gateway_slug"
    },
    "contents": {
      "$ref": "#/components/schemas/zero-trust-gateway_contents"
    },
    "created_at": {
      "$ref": "#/components/schemas/zero-trust-gateway_read_only_timestamp"
    },
    "updated_at": {
      "$ref": "#/components/schemas/zero-trust-gateway_read_only_timestamp"
    },
    "description": {
      "$ref": "#/components/schemas/zero-trust-gateway_pacfiles_components-schemas-description"
    }
  }
}
string zero-trust-gateway_pacfiles_components-schemas-description
{
  "type": "string",
  "example": "PAC file for Devops team",
  "description": "Detailed description of the PAC file.",
  "x-auditable": true
}
string zero-trust-gateway_pacfiles_components-schemas-name
{
  "type": "string",
  "example": "Devops team",
  "description": "Name of the PAC file.",
  "x-auditable": true
}
object zero-trust-gateway_pacfiles_components-schemas-response_collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/zero-trust-gateway_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "id": {
                "$ref": "#/components/schemas/zero-trust-gateway_components-schemas-uuid"
              },
              "url": {
                "$ref": "#/components/schemas/zero-trust-gateway_url"
              },
              "name": {
                "$ref": "#/components/schemas/zero-trust-gateway_pacfiles_components-schemas-name"
              },
              "slug": {
                "$ref": "#/components/schemas/zero-trust-gateway_slug"
              },
              "created_at": {
                "$ref": "#/components/schemas/zero-trust-gateway_read_only_timestamp"
              },
              "updated_at": {
                "$ref": "#/components/schemas/zero-trust-gateway_read_only_timestamp"
              },
              "description": {
                "$ref": "#/components/schemas/zero-trust-gateway_pacfiles_components-schemas-description"
              }
            }
          }
        }
      }
    }
  ]
}
object zero-trust-gateway_pacfiles_components-schemas-single_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/zero-trust-gateway_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/zero-trust-gateway_pacfile"
        }
      }
    }
  ]
}
integer zero-trust-gateway_precedence
{
  "type": "integer",
  "description": "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.",
  "x-auditable": true,
  "x-stainless-terraform-configurability": "computed_optional"
}
object zero-trust-gateway_protocol-detection
{
  "type": "object",
  "nullable": true,
  "properties": {
    "enabled": {
      "type": "boolean",
      "example": true,
      "nullable": true,
      "description": "Specify whether to detect protocols from the initial bytes of client traffic.",
      "x-auditable": true
    }
  },
  "description": "Specify whether to detect protocols from the initial bytes of client traffic.",
  "x-stainless-terraform-configurability": "optional"
}
string zero-trust-gateway_provider_name
{
  "type": "string",
  "example": "Cloudflare",
  "description": "Specify the provider name (usually Cloudflare)."
}
object zero-trust-gateway_proxy-endpoint-identity
{
  "type": "object",
  "required": [
    "kind",
    "name"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/zero-trust-gateway_components-schemas-uuid"
    },
    "kind": {
      "enum": [
        "identity"
      ],
      "type": "string",
      "example": "identity",
      "description": "The proxy endpoint kind",
      "x-auditable": true
    },
    "name": {
      "$ref": "#/components/schemas/zero-trust-gateway_proxy-endpoints_components-schemas-name"
    },
    "subdomain": {
      "$ref": "#/components/schemas/zero-trust-gateway_schemas-subdomain"
    },
    "created_at": {
      "$ref": "#/components/schemas/zero-trust-gateway_read_only_timestamp"
    },
    "updated_at": {
      "$ref": "#/components/schemas/zero-trust-gateway_read_only_timestamp"
    }
  }
}
object zero-trust-gateway_proxy-endpoint-identity-create
{
  "type": "object",
  "required": [
    "kind",
    "name"
  ],
  "properties": {
    "kind": {
      "enum": [
        "identity"
      ],
      "type": "string",
      "example": "identity",
      "description": "The proxy endpoint kind",
      "x-auditable": true
    },
    "name": {
      "$ref": "#/components/schemas/zero-trust-gateway_proxy-endpoints_components-schemas-name"
    }
  }
}
object zero-trust-gateway_proxy-endpoint-ip
{
  "type": "object",
  "required": [
    "name",
    "ips"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/zero-trust-gateway_components-schemas-uuid"
    },
    "ips": {
      "$ref": "#/components/schemas/zero-trust-gateway_ips"
    },
    "kind": {
      "enum": [
        "ip"
      ],
      "type": "string",
      "example": "ip",
      "description": "The proxy endpoint kind",
      "x-auditable": true
    },
    "name": {
      "$ref": "#/components/schemas/zero-trust-gateway_proxy-endpoints_components-schemas-name"
    },
    "subdomain": {
      "$ref": "#/components/schemas/zero-trust-gateway_schemas-subdomain"
    },
    "created_at": {
      "$ref": "#/components/schemas/zero-trust-gateway_read_only_timestamp"
    },
    "updated_at": {
      "$ref": "#/components/schemas/zero-trust-gateway_read_only_timestamp"
    }
  }
}
object zero-trust-gateway_proxy-endpoint-ip-create
{
  "type": "object",
  "required": [
    "name",
    "ips"
  ],
  "properties": {
    "kind": {
      "enum": [
        "ip"
      ],
      "type": "string",
      "example": "ip",
      "description": "The proxy endpoint kind",
      "x-auditable": true
    },
    "name": {
      "$ref": "#/components/schemas/zero-trust-gateway_proxy-endpoints_components-schemas-name"
    }
  }
}
object zero-trust-gateway_proxy-endpoints
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/zero-trust-gateway_proxy-endpoint-ip"
    },
    {
      "$ref": "#/components/schemas/zero-trust-gateway_proxy-endpoint-identity"
    }
  ],
  "discriminator": {
    "mapping": {
      "ip": "#/components/schemas/zero-trust-gateway_proxy-endpoint-ip",
      "identity": "#/components/schemas/zero-trust-gateway_proxy-endpoint-identity"
    },
    "propertyName": "kind"
  }
}
string zero-trust-gateway_proxy-endpoints_components-schemas-name
{
  "type": "string",
  "example": "Devops team",
  "description": "Specify the name of the proxy endpoint.",
  "x-auditable": true
}
object zero-trust-gateway_proxy-endpoints_components-schemas-response_collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/zero-trust-gateway_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/zero-trust-gateway_proxy-endpoints"
          }
        }
      }
    }
  ]
}
object zero-trust-gateway_proxy-endpoints_components-schemas-single_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/zero-trust-gateway_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/zero-trust-gateway_proxy-endpoints"
        }
      }
    }
  ]
}
string zero-trust-gateway_public_key
{
  "type": "string",
  "example": "1pyl6I1tL7xfJuFYVzXlUW8uXXlpxegHXBzGCBKaSFA=",
  "description": "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.",
  "x-auditable": true
}
boolean zero-trust-gateway_read_only
{
  "type": "boolean",
  "readOnly": true,
  "description": "Indicate that this rule is shared via the Orgs API and read only.",
  "x-auditable": true
}
string zero-trust-gateway_read_only_timestamp
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-01T05:20:00.12345Z",
  "readOnly": true
}
object zero-trust-gateway_response_collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/zero-trust-gateway_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/zero-trust-gateway_certificates"
          }
        }
      }
    }
  ]
}
object zero-trust-gateway_result_info
{
  "type": "object",
  "properties": {
    "page": {
      "type": "number",
      "example": 1,
      "description": "Indicate the current page within a paginated list of results."
    },
    "count": {
      "type": "number",
      "example": 1,
      "description": "Indicate the total number of results for the requested service."
    },
    "per_page": {
      "type": "number",
      "example": 20,
      "description": "Indicate the number of results per page."
    },
    "total_count": {
      "type": "number",
      "example": 2000,
      "description": "Indicate the total results available without any search parameters."
    }
  }
}
object zero-trust-gateway_rule-settings
{
  "type": "object",
  "properties": {
    "egress": {
      "type": "object",
      "nullable": true,
      "properties": {
        "ipv4": {
          "type": "string",
          "example": "192.0.2.2",
          "description": "Specify the IPv4 address to use for egress.",
          "x-auditable": true
        },
        "ipv6": {
          "type": "string",
          "example": "2001:DB8::/64",
          "description": "Specify the IPv6 range to use for egress.",
          "x-auditable": true
        },
        "ipv4_fallback": {
          "type": "string",
          "example": "192.0.2.3",
          "description": "Specify the fallback IPv4 address to use for egress when the primary IPv4 fails. Set '0.0.0.0' to indicate local egress via WARP IPs.",
          "x-auditable": true
        }
      },
      "description": "Configure how Gateway Proxy traffic egresses. You can enable this setting for rules with Egress actions and filters, or omit it to indicate local egress via WARP IPs. Settable only for `egress` rules.",
      "x-stainless-terraform-configurability": "optional"
    },
    "redirect": {
      "type": "object",
      "nullable": true,
      "required": [
        "target_uri"
      ],
      "properties": {
        "target_uri": {
          "type": "string",
          "format": "uri",
          "description": "Specify the URI to which the user is redirected.",
          "x-auditable": true
        },
        "include_context": {
          "type": "boolean",
          "description": "Specify whether to pass the context information as query parameters.",
          "x-auditable": true
        },
        "preserve_path_and_query": {
          "type": "boolean",
          "description": "Specify whether to append the path and query parameters from the original request to target_uri.",
          "x-auditable": true
        }
      },
      "description": "Apply settings to redirect rules. Settable only for `http` rules with the action set to `redirect`.",
      "x-stainless-terraform-configurability": "optional"
    },
    "audit_ssh": {
      "type": "object",
      "nullable": true,
      "properties": {
        "command_logging": {
          "type": "boolean",
          "example": false,
          "description": "Enable SSH command logging.",
          "x-auditable": true
        }
      },
      "description": "Define the settings for the Audit SSH action. Settable only for `l4` rules with `audit_ssh` action.",
      "x-stainless-terraform-configurability": "optional"
    },
    "block_page": {
      "type": "object",
      "nullable": true,
      "required": [
        "target_uri"
      ],
      "properties": {
        "target_uri": {
          "type": "string",
          "format": "uri",
          "description": "Specify the URI to which the user is redirected.",
          "x-auditable": true
        },
        "include_context": {
          "type": "boolean",
          "description": "Specify whether to pass the context information as query parameters.",
          "x-auditable": true
        }
      },
      "description": "Configure custom block page settings. If missing or null, use the account settings. Settable only for `http` rules with the action set to `block`.",
      "x-stainless-terraform-configurability": "optional"
    },
    "l4override": {
      "type": "object",
      "nullable": true,
      "properties": {
        "ip": {
          "type": "string",
          "example": "1.1.1.1",
          "description": "Defines the IPv4 or IPv6 address.",
          "x-auditable": true
        },
        "port": {
          "type": "integer",
          "description": "Defines a port number to use for TCP/UDP overrides.",
          "x-auditable": true
        }
      },
      "description": "Send matching traffic to the supplied destination IP address and port. Settable only for `l4` rules with the action set to `l4_override`.",
      "x-stainless-terraform-configurability": "optional"
    },
    "quarantine": {
      "type": "object",
      "nullable": true,
      "properties": {
        "file_types": {
          "type": "array",
          "items": {
            "enum": [
              "exe",
              "pdf",
              "doc",
              "docm",
              "docx",
              "rtf",
              "ppt",
              "pptx",
              "xls",
              "xlsm",
              "xlsx",
              "zip",
              "rar"
            ],
            "type": "string",
            "x-auditable": true
          },
          "description": "Specify the types of files to sandbox."
        }
      },
      "description": "Configure settings that apply to quarantine rules. Settable only for `http` rules.",
      "x-stainless-terraform-configurability": "optional"
    },
    "add_headers": {
      "type": "object",
      "example": {
        "My-Next-Header": [
          "foo",
          "bar"
        ],
        "X-Custom-Header-Name": [
          "somecustomvalue"
        ]
      },
      "nullable": true,
      "description": "Add custom headers to allowed requests as key-value pairs. Use header names as keys that map to arrays of header values. Settable only for `http` rules with the action set to `allow`.",
      "additionalProperties": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "x-auditable": true
      },
      "x-stainless-terraform-configurability": "optional"
    },
    "payload_log": {
      "type": "object",
      "nullable": true,
      "properties": {
        "enabled": {
          "type": "boolean",
          "example": true,
          "description": "Enable DLP payload logging for this rule.",
          "x-auditable": true
        }
      },
      "description": "Configure DLP payload logging. Settable only for `http` rules.",
      "x-stainless-terraform-configurability": "optional"
    },
    "block_reason": {
      "type": "string",
      "example": "This website is a security risk",
      "nullable": true,
      "description": "Explain why the rule blocks the request. The custom block page shows this text (if enabled). Settable only for `dns`, `l4`, and `http` rules when the action set to `block`.",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    },
    "override_ips": {
      "type": "array",
      "items": {
        "type": "string",
        "example": "1.1.1.1",
        "description": "Defines the IPv4 or IPv6 address.",
        "x-auditable": true
      },
      "example": [
        "1.1.1.1",
        "2.2.2.2"
      ],
      "nullable": true,
      "description": "Defines a an IP or set of IPs for overriding matched DNS queries. Settable only for `dns` rules with the action set to `override`.",
      "x-stainless-terraform-configurability": "computed_optional"
    },
    "check_session": {
      "type": "object",
      "nullable": true,
      "properties": {
        "enforce": {
          "type": "boolean",
          "example": true,
          "description": "Enable session enforcement.",
          "x-auditable": true
        },
        "duration": {
          "type": "string",
          "example": "300s",
          "description": "Sets the required session freshness threshold. The API returns a normalized version of this value.",
          "x-auditable": true
        }
      },
      "description": "Configure session check behavior. Settable only for `l4` and `http` rules with the action set to `allow`.",
      "x-stainless-terraform-configurability": "optional"
    },
    "dns_resolvers": {
      "type": "object",
      "nullable": true,
      "properties": {
        "ipv4": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/zero-trust-gateway_dns_resolver_settings_v4"
          }
        },
        "ipv6": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/zero-trust-gateway_dns_resolver_settings_v6"
          }
        }
      },
      "description": "Configure custom resolvers to route queries that match the resolver policy. Unused with 'resolve_dns_through_cloudflare' or 'resolve_dns_internally' settings. DNS queries get routed to the address closest to their origin. Only valid when a rule's action set to 'resolve'. Settable only for `dns_resolver` rules.",
      "x-stainless-terraform-configurability": "optional"
    },
    "forensic_copy": {
      "type": "object",
      "nullable": true,
      "properties": {
        "enabled": {
          "type": "boolean",
          "description": "Enable sending the copy to storage.",
          "x-auditable": true
        }
      },
      "description": "Configure whether a copy of the HTTP request will be sent to storage when the rule matches.",
      "x-stainless-terraform-configurability": "optional"
    },
    "ip_categories": {
      "type": "boolean",
      "example": true,
      "description": "Enable IPs in DNS resolver category blocks. The system blocks only domain name categories unless you enable this setting. Settable only for `dns` and `dns_resolver` rules.",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    },
    "override_host": {
      "type": "string",
      "example": "example.com",
      "description": "Defines a hostname for override, for the matching DNS queries. Settable only for `dns` rules with the action set to `override`.",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    },
    "untrusted_cert": {
      "type": "object",
      "nullable": true,
      "properties": {
        "action": {
          "enum": [
            "pass_through",
            "block",
            "error"
          ],
          "type": "string",
          "example": "error",
          "description": "Defines the action performed when an untrusted certificate seen. The default action an error with HTTP code 526.",
          "x-auditable": true
        }
      },
      "description": "Configure behavior when an upstream certificate is invalid or an SSL error occurs. Settable only for `http` rules with the action set to `allow`.",
      "x-stainless-terraform-configurability": "optional"
    },
    "allow_child_bypass": {
      "type": "boolean",
      "example": false,
      "nullable": true,
      "description": "Set to enable MSP children to bypass this rule. Only parent MSP accounts can set this. this rule. Settable for all types of rules.",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    },
    "block_page_enabled": {
      "type": "boolean",
      "example": true,
      "description": "Enable the custom block page. Settable only for `dns` rules with action `block`.",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    },
    "bypass_parent_rule": {
      "type": "boolean",
      "example": false,
      "nullable": true,
      "description": "Set to enable MSP accounts to bypass their parent's rules. Only MSP child accounts can set this. Settable for all types of rules.",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "optional"
    },
    "ip_indicator_feeds": {
      "type": "boolean",
      "example": true,
      "description": "Indicates whether to include IPs in DNS resolver indicator feed blocks. Default, indicator feeds block only domain names. Settable only for `dns` and `dns_resolver` rules.",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    },
    "biso_admin_controls": {
      "type": "object",
      "properties": {
        "dd": {
          "type": "boolean",
          "description": "Set to false to enable downloading. Only applies when `version == \"v1\"`.",
          "x-auditable": true
        },
        "dk": {
          "type": "boolean",
          "description": "Set to false to enable keyboard usage. Only applies when `version == \"v1\"`.",
          "x-auditable": true
        },
        "dp": {
          "type": "boolean",
          "example": false,
          "description": "Set to false to enable printing. Only applies when `version == \"v1\"`.",
          "x-auditable": true
        },
        "du": {
          "type": "boolean",
          "description": "Set to false to enable uploading. Only applies when `version == \"v1\"`.",
          "x-auditable": true
        },
        "dcp": {
          "type": "boolean",
          "description": "Set to false to enable copy-pasting. Only applies when `version == \"v1\"`.",
          "x-auditable": true
        },
        "copy": {
          "enum": [
            "enabled",
            "disabled",
            "remote_only"
          ],
          "type": "string",
          "example": "remote_only",
          "description": "Configure copy behavior. If set to remote_only, users cannot copy isolated content from the remote browser to the local clipboard. If this field is absent, copying remains enabled. Applies only when version == \"v2\".",
          "x-auditable": true
        },
        "paste": {
          "enum": [
            "enabled",
            "disabled",
            "remote_only"
          ],
          "type": "string",
          "example": "enabled",
          "description": "Configure paste behavior. If set to remote_only, users cannot paste content from the local clipboard into isolated pages. If this field is absent, pasting remains enabled. Applies only when version == \"v2\".",
          "x-auditable": true
        },
        "upload": {
          "enum": [
            "enabled",
            "disabled"
          ],
          "type": "string",
          "example": "enabled",
          "description": "Configure upload behavior. If this field is absent, uploading remains enabled. Applies only when version == \"v2\".",
          "x-auditable": true
        },
        "version": {
          "enum": [
            "v1",
            "v2"
          ],
          "type": "string",
          "default": "v1",
          "description": "Indicate which version of the browser isolation controls should apply.",
          "x-auditable": true
        },
        "download": {
          "enum": [
            "enabled",
            "disabled",
            "remote_only"
          ],
          "type": "string",
          "example": "enabled",
          "description": "Configure download behavior. When set to remote_only, users can view downloads but cannot save them. Applies only when version == \"v2\".",
          "x-auditable": true
        },
        "keyboard": {
          "enum": [
            "enabled",
            "disabled"
          ],
          "type": "string",
          "example": "enabled",
          "description": "Configure keyboard usage behavior. If this field is absent, keyboard usage remains enabled. Applies only when version == \"v2\".",
          "x-auditable": true
        },
        "printing": {
          "enum": [
            "enabled",
            "disabled"
          ],
          "type": "string",
          "example": "enabled",
          "description": "Configure print behavior. Default, Printing is enabled. Applies only when version == \"v2\".",
          "x-auditable": true
        }
      },
      "description": "Configure browser isolation behavior. Settable only for `http` rules with the action set to `isolate`.",
      "x-stainless-terraform-configurability": "optional"
    },
    "notification_settings": {
      "type": "object",
      "nullable": true,
      "properties": {
        "msg": {
          "type": "string",
          "description": "Customize the message shown in the notification.",
          "x-auditable": true
        },
        "enabled": {
          "type": "boolean",
          "description": "Enable notification.",
          "x-auditable": true
        },
        "support_url": {
          "type": "string",
          "description": "Defines an optional URL to direct users to additional information. If unset, the notification opens a block page.",
          "x-auditable": true
        },
        "include_context": {
          "type": "boolean",
          "description": "Indicates whether to pass the context information as query parameters.",
          "x-auditable": true
        }
      },
      "description": "Configure a notification to display on the user's device when this rule matched. Settable for all types of rules with the action set to `block`.",
      "x-stainless-terraform-configurability": "optional"
    },
    "resolve_dns_internally": {
      "type": "object",
      "nullable": true,
      "properties": {
        "view_id": {
          "type": "string",
          "description": "Specify the internal DNS view identifier to pass to the internal DNS service.",
          "x-auditable": true
        },
        "fallback": {
          "enum": [
            "none",
            "public_dns"
          ],
          "type": "string",
          "description": "Specify the fallback behavior to apply when the internal DNS response code differs from 'NOERROR' or when the response data contains only CNAME records for 'A' or 'AAAA' queries.",
          "x-auditable": true
        }
      },
      "description": "Configure to forward the query to the internal DNS service, passing the specified 'view_id' as input. Not used when 'dns_resolvers' is specified or 'resolve_dns_through_cloudflare' is set. Only valid when a rule's action set to 'resolve'. Settable only for `dns_resolver` rules.",
      "x-stainless-terraform-configurability": "optional"
    },
    "ignore_cname_category_matches": {
      "type": "boolean",
      "example": true,
      "description": "Ignore category matches at CNAME domains in a response. When off, evaluate categories in this rule against all CNAME domain categories in the response. Settable only for `dns` and `dns_resolver` rules.",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    },
    "resolve_dns_through_cloudflare": {
      "type": "boolean",
      "example": true,
      "nullable": true,
      "description": "Enable to send queries that match the policy to Cloudflare's default 1.1.1.1 DNS resolver. Cannot set when 'dns_resolvers' specified or 'resolve_dns_internally' is set. Only valid when a rule's action set to 'resolve'. Settable only for `dns_resolver` rules.",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    },
    "insecure_disable_dnssec_validation": {
      "type": "boolean",
      "example": false,
      "description": "Specify whether to disable DNSSEC validation (for Allow actions) [INSECURE]. Settable only for `dns` rules.",
      "x-auditable": true,
      "x-stainless-terraform-configurability": "computed_optional"
    }
  },
  "description": "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.",
  "x-stainless-terraform-configurability": "computed_optional"
}
object zero-trust-gateway_rules
{
  "type": "object",
  "required": [
    "name",
    "precedence",
    "enabled",
    "action",
    "traffic",
    "filters"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/zero-trust-gateway_schemas-uuid"
    },
    "name": {
      "$ref": "#/components/schemas/zero-trust-gateway_components-schemas-name"
    },
    "action": {
      "$ref": "#/components/schemas/zero-trust-gateway_action"
    },
    "enabled": {
      "$ref": "#/components/schemas/zero-trust-gateway_enabled"
    },
    "filters": {
      "$ref": "#/components/schemas/zero-trust-gateway_filters"
    },
    "traffic": {
      "$ref": "#/components/schemas/zero-trust-gateway_traffic"
    },
    "version": {
      "$ref": "#/components/schemas/zero-trust-gateway_version"
    },
    "identity": {
      "$ref": "#/components/schemas/zero-trust-gateway_identity"
    },
    "schedule": {
      "$ref": "#/components/schemas/zero-trust-gateway_schedule"
    },
    "sharable": {
      "$ref": "#/components/schemas/zero-trust-gateway_sharable"
    },
    "read_only": {
      "$ref": "#/components/schemas/zero-trust-gateway_read_only"
    },
    "created_at": {
      "$ref": "#/components/schemas/zero-trust-gateway_read_only_timestamp"
    },
    "deleted_at": {
      "$ref": "#/components/schemas/zero-trust-gateway_deleted_at"
    },
    "expiration": {
      "$ref": "#/components/schemas/zero-trust-gateway_expiration"
    },
    "precedence": {
      "$ref": "#/components/schemas/zero-trust-gateway_precedence"
    },
    "updated_at": {
      "$ref": "#/components/schemas/zero-trust-gateway_read_only_timestamp"
    },
    "description": {
      "$ref": "#/components/schemas/zero-trust-gateway_schemas-description"
    },
    "rule_settings": {
      "$ref": "#/components/schemas/zero-trust-gateway_rule-settings"
    },
    "device_posture": {
      "$ref": "#/components/schemas/zero-trust-gateway_device_posture"
    },
    "source_account": {
      "$ref": "#/components/schemas/zero-trust-gateway_source_account"
    },
    "warning_status": {
      "$ref": "#/components/schemas/zero-trust-gateway_warning_status"
    }
  }
}
object zero-trust-gateway_rules_components-schemas-response_collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/zero-trust-gateway_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/zero-trust-gateway_rules"
          }
        }
      }
    }
  ]
}
object zero-trust-gateway_sandbox
{
  "type": "object",
  "nullable": true,
  "properties": {
    "enabled": {
      "type": "boolean",
      "example": true,
      "nullable": true,
      "description": "Specify whether to enable the sandbox.",
      "x-auditable": true
    },
    "fallback_action": {
      "enum": [
        "allow",
        "block"
      ],
      "type": "string",
      "description": "Specify the action to take when the system cannot scan the file.",
      "x-auditable": true
    }
  },
  "description": "Specify whether to enable the sandbox.",
  "x-stainless-terraform-configurability": "optional"
}
object zero-trust-gateway_schedule
{
  "type": "object",
  "nullable": true,
  "properties": {
    "fri": {
      "type": "string",
      "example": "08:00-12:30,13:30-17:00",
      "description": "Specify the time intervals when the rule is active on Fridays, in the increasing order from 00:00-24:00.  If this parameter omitted, the rule is deactivated on Fridays. API returns a formatted version of this string, which may cause Terraform drift if a unformatted value is used.",
      "x-auditable": true
    },
    "mon": {
      "type": "string",
      "example": "08:00-12:30,13:30-17:00",
      "description": "Specify the time intervals when the rule is active on Mondays, in the increasing order from 00:00-24:00(capped at maximum of 6 time splits). If this parameter omitted, the rule is deactivated on Mondays. API returns a formatted version of this string, which may cause Terraform drift if a unformatted value is used.",
      "x-auditable": true
    },
    "sat": {
      "type": "string",
      "example": "08:00-12:30,13:30-17:00",
      "description": "Specify the time intervals when the rule is active on Saturdays, in the increasing order from 00:00-24:00.  If this parameter omitted, the rule is deactivated on Saturdays. API returns a formatted version of this string, which may cause Terraform drift if a unformatted value is used.",
      "x-auditable": true
    },
    "sun": {
      "type": "string",
      "example": "08:00-12:30,13:30-17:00",
      "description": "Specify the time intervals when the rule is active on Sundays, in the increasing order from 00:00-24:00. If this parameter omitted, the rule is deactivated on Sundays. API returns a formatted version of this string, which may cause Terraform drift if a unformatted value is used.",
      "x-auditable": true
    },
    "thu": {
      "type": "string",
      "example": "08:00-12:30,13:30-17:00",
      "description": "Specify the time intervals when the rule is active on Thursdays, in the increasing order from 00:00-24:00. If this parameter omitted, the rule is deactivated on Thursdays. API returns a formatted version of this string, which may cause Terraform drift if a unformatted value is used.",
      "x-auditable": true
    },
    "tue": {
      "type": "string",
      "example": "08:00-12:30,13:30-17:00",
      "description": "Specify the time intervals when the rule is active on Tuesdays, in the increasing order from 00:00-24:00. If this parameter omitted, the rule is deactivated on Tuesdays. API returns a formatted version of this string, which may cause Terraform drift if a unformatted value is used.",
      "x-auditable": true
    },
    "wed": {
      "type": "string",
      "example": "08:00-12:30,13:30-17:00",
      "description": "Specify the time intervals when the rule is active on Wednesdays, in the increasing order from 00:00-24:00. If this parameter omitted, the rule is deactivated on Wednesdays. API returns a formatted version of this string, which may cause Terraform drift if a unformatted value is used.",
      "x-auditable": true
    },
    "time_zone": {
      "type": "string",
      "example": "America/New York",
      "description": "Specify the time zone for rule evaluation. When a [valid time zone city name](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List) is provided, Gateway always uses the current time for that time zone. When this parameter is omitted, Gateway uses the time zone determined from the user's IP address. Colo time zone is used when the user's IP address does not resolve to a location.",
      "x-auditable": true
    }
  },
  "description": "Defines the schedule for activating DNS policies. Settable only for `dns` and `dns_resolver` rules.",
  "x-stainless-terraform-configurability": "computed_optional"
}
string zero-trust-gateway_schemas-description
{
  "type": "string",
  "example": "Block bad websites based on their host name.",
  "description": "Specify the rule description.",
  "x-auditable": true
}
string zero-trust-gateway_schemas-identifier
{
  "type": "string",
  "example": "699d98642c564d2e855e9661899b7252",
  "x-auditable": true
}
string zero-trust-gateway_schemas-name
{
  "type": "string",
  "example": "Austin Office Location",
  "description": "Specify the location name.",
  "x-auditable": true
}
object zero-trust-gateway_schemas-response_collection
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/zero-trust-gateway_api-response-collection"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/zero-trust-gateway_lists"
          }
        }
      }
    }
  ]
}
object zero-trust-gateway_schemas-single_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/zero-trust-gateway_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/zero-trust-gateway_locations"
        }
      }
    }
  ]
}
string zero-trust-gateway_schemas-subdomain
{
  "type": "string",
  "example": "oli3n9zkz5.proxy.cloudflare-gateway.com",
  "readOnly": true,
  "description": "Specify the subdomain to use as the destination in the proxy client.",
  "x-auditable": true
}
string zero-trust-gateway_schemas-type
{
  "enum": [
    "SERIAL",
    "URL",
    "DOMAIN",
    "EMAIL",
    "IP",
    "CATEGORY",
    "LOCATION",
    "DEVICE"
  ],
  "type": "string",
  "example": "SERIAL",
  "description": "Specify the list type.",
  "x-auditable": true
}
string zero-trust-gateway_schemas-uuid
{
  "type": "string",
  "example": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
  "maxLength": 36,
  "description": "Identify the API resource with a UUID.",
  "x-auditable": true
}
object zero-trust-gateway_settings
{
  "type": "object",
  "properties": {
    "seed_id": {
      "$ref": "#/components/schemas/zero-trust-gateway_audit_ssh_settings_components-schemas-uuid"
    },
    "created_at": {
      "$ref": "#/components/schemas/zero-trust-gateway_read_only_timestamp"
    },
    "public_key": {
      "$ref": "#/components/schemas/zero-trust-gateway_public_key"
    },
    "updated_at": {
      "$ref": "#/components/schemas/zero-trust-gateway_read_only_timestamp"
    }
  }
}
boolean zero-trust-gateway_sharable
{
  "type": "boolean",
  "readOnly": true,
  "description": "Indicate that this rule is sharable via the Orgs API.",
  "x-auditable": true
}
object zero-trust-gateway_single_response
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/zero-trust-gateway_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "$ref": "#/components/schemas/zero-trust-gateway_certificates"
        }
      }
    }
  ]
}
object zero-trust-gateway_single_response_with_list_items
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/zero-trust-gateway_api-response-single"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "properties": {
            "id": {
              "$ref": "#/components/schemas/zero-trust-gateway_schemas-uuid"
            },
            "name": {
              "$ref": "#/components/schemas/zero-trust-gateway_name"
            },
            "type": {
              "$ref": "#/components/schemas/zero-trust-gateway_schemas-type"
            },
            "items": {
              "$ref": "#/components/schemas/zero-trust-gateway_items"
            },
            "created_at": {
              "$ref": "#/components/schemas/zero-trust-gateway_read_only_timestamp"
            },
            "updated_at": {
              "$ref": "#/components/schemas/zero-trust-gateway_read_only_timestamp"
            },
            "description": {
              "$ref": "#/components/schemas/zero-trust-gateway_description"
            }
          }
        }
      }
    }
  ]
}
string zero-trust-gateway_slug
{
  "type": "string",
  "example": "pac_devops",
  "description": "URL-friendly version of the PAC file name.",
  "x-auditable": true
}
string zero-trust-gateway_source_account
{
  "type": "string",
  "readOnly": true,
  "description": "Provide the account tag of the account that created the rule.",
  "x-auditable": true
}
object zero-trust-gateway_subcategory
{
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/components/schemas/zero-trust-gateway_id"
    },
    "beta": {
      "$ref": "#/components/schemas/zero-trust-gateway_beta"
    },
    "name": {
      "$ref": "#/components/schemas/zero-trust-gateway_categories_components-schemas-name"
    },
    "class": {
      "$ref": "#/components/schemas/zero-trust-gateway_class"
    },
    "description": {
      "$ref": "#/components/schemas/zero-trust-gateway_components-schemas-description"
    }
  }
}
string zero-trust-gateway_subdomain
{
  "type": "string",
  "example": "oli3n9zkz5",
  "readOnly": true,
  "description": "Specify the DNS over HTTPS domain that receives DNS requests. Gateway automatically generates this value.",
  "x-auditable": true
}
string zero-trust-gateway_timestamp
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-01T05:20:00.12345Z"
}
object zero-trust-gateway_tls-settings
{
  "type": "object",
  "nullable": true,
  "properties": {
    "enabled": {
      "type": "boolean",
      "example": true,
      "description": "Specify whether to inspect encrypted HTTP traffic.",
      "x-auditable": true
    }
  },
  "description": "Specify whether to inspect encrypted HTTP traffic.",
  "x-stainless-terraform-configurability": "optional"
}
string zero-trust-gateway_traffic
{
  "type": "string",
  "default": "",
  "example": "http.request.uri matches \".*a/partial/uri.*\" and http.request.host in $01302951-49f9-47c9-a400-0297e60b6a10",
  "description": "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.",
  "x-auditable": true,
  "x-stainless-terraform-configurability": "computed_optional"
}
string zero-trust-gateway_type
{
  "enum": [
    "custom",
    "gateway_managed"
  ],
  "type": "string",
  "example": "gateway_managed",
  "readOnly": true,
  "description": "Indicate the read-only certificate type, BYO-PKI (custom) or Gateway-managed.",
  "x-auditable": true
}
array zero-trust-gateway_unapproved_apps
{
  "type": "array",
  "items": {
    "type": "integer"
  },
  "description": "Contains the ids of the unapproved applications.",
  "x-stainless-collection-type": "set"
}
string zero-trust-gateway_url
{
  "type": "string",
  "example": "https://pac.cloudflare-gateway.com/699d98642c564d2e855e9661899b7252/pac_devops",
  "readOnly": true,
  "description": "Unique URL to download the PAC file.",
  "x-auditable": true
}
string zero-trust-gateway_uuid
{
  "type": "string",
  "example": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
  "maxLength": 36,
  "description": "Identify the certificate with a UUID.",
  "x-auditable": true
}
string zero-trust-gateway_value
{
  "type": "string",
  "example": "8GE8721REF",
  "description": "Specify the item value.",
  "x-auditable": true
}
integer zero-trust-gateway_version
{
  "type": "integer",
  "example": 1,
  "readOnly": true,
  "description": "Indicate the version number of the rule(read-only).",
  "x-auditable": true
}
string zero-trust-gateway_warning_status
{
  "type": "string",
  "nullable": true,
  "readOnly": true,
  "description": "Indicate a warning for a misconfigured rule, if any."
}
object zone-activation_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/zone-activation_messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/zone-activation_messages"
    }
  }
}
object zone-activation_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/zone-activation_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/zone-activation_messages"
        }
      ],
      "example": []
    }
  }
}
object zone-activation_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/zone-activation_api-response-common"
    }
  ]
}
string zone-activation_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Identifier.",
  "x-auditable": true
}
array zone-activation_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
object zone-analytics-api_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/zone-analytics-api_messages"
    },
    "result": {
      "anyOf": [
        {
          "type": "object"
        },
        {
          "type": "array",
          "items": {}
        },
        {
          "type": "string"
        }
      ]
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful"
    },
    "messages": {
      "$ref": "#/components/schemas/zone-analytics-api_messages"
    }
  }
}
object zone-analytics-api_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/zone-analytics-api_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful"
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/zone-analytics-api_messages"
        }
      ],
      "example": []
    }
  }
}
object zone-analytics-api_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/zone-analytics-api_api-response-common"
    },
    {
      "properties": {
        "result": {
          "anyOf": [
            {
              "type": "object",
              "nullable": true
            },
            {
              "type": "string",
              "nullable": true
            }
          ]
        }
      }
    }
  ]
}
object zone-analytics-api_bandwidth
{
  "type": "object",
  "properties": {
    "all": {
      "type": "integer",
      "description": "The total number of bytes served within the time frame."
    },
    "ssl": {
      "type": "object",
      "properties": {
        "encrypted": {
          "type": "integer",
          "description": "The number of bytes served over HTTPS."
        },
        "unencrypted": {
          "type": "integer",
          "description": "The number of bytes served over HTTP."
        }
      },
      "description": "A break down of bytes served over HTTPS."
    },
    "cached": {
      "type": "integer",
      "description": "The number of bytes that were cached (and served) by Cloudflare."
    },
    "country": {
      "type": "object",
      "example": {
        "AG": 2342483,
        "GI": 984753,
        "US": 123145433
      },
      "description": "A variable list of key/value pairs where the key is a two-digit country code and the value is the number of bytes served to that country."
    },
    "uncached": {
      "type": "integer",
      "description": "The number of bytes that were fetched and served from the origin server."
    },
    "content_type": {
      "type": "object",
      "example": {
        "css": 237421,
        "gif": 1234242,
        "html": 1231290,
        "jpeg": 784278,
        "javascript": 123245
      },
      "description": "A variable list of key/value pairs where the key represents the type of content served, and the value is the number in bytes served."
    },
    "ssl_protocols": {
      "type": "object",
      "properties": {
        "none": {
          "type": "integer",
          "description": "The number of requests served over HTTP."
        },
        "TLSv1": {
          "type": "integer",
          "description": "The number of requests served over TLS v1.0."
        },
        "TLSv1.1": {
          "type": "integer",
          "description": "The number of requests served over TLS v1.1."
        },
        "TLSv1.2": {
          "type": "integer",
          "description": "The number of requests served over TLS v1.2."
        },
        "TLSv1.3": {
          "type": "integer",
          "description": "The number of requests served over TLS v1.3."
        }
      },
      "description": "A breakdown of requests by their SSL protocol."
    }
  },
  "description": "Breakdown of totals for bandwidth in the form of bytes."
}
object zone-analytics-api_bandwidth_by_colo
{
  "type": "object",
  "properties": {
    "all": {
      "type": "integer",
      "description": "The total number of bytes served within the time frame."
    },
    "cached": {
      "type": "integer",
      "description": "The number of bytes that were cached (and served) by Cloudflare."
    },
    "uncached": {
      "type": "integer",
      "description": "The number of bytes that were fetched and served from the origin server."
    }
  },
  "description": "Breakdown of totals for bandwidth in the form of bytes."
}
object zone-analytics-api_colo_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zone-analytics-api_api-response-single"
    },
    {
      "properties": {
        "query": {
          "$ref": "#/components/schemas/zone-analytics-api_query_response"
        },
        "result": {
          "$ref": "#/components/schemas/zone-analytics-api_datacenters"
        }
      }
    }
  ]
}
object zone-analytics-api_dashboard
{
  "type": "object",
  "title": "Dashboard response",
  "properties": {
    "totals": {
      "$ref": "#/components/schemas/zone-analytics-api_totals"
    },
    "timeseries": {
      "$ref": "#/components/schemas/zone-analytics-api_timeseries"
    }
  },
  "description": "Totals and timeseries data."
}
object zone-analytics-api_dashboard_response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zone-analytics-api_api-response-single"
    },
    {
      "properties": {
        "query": {
          "$ref": "#/components/schemas/zone-analytics-api_query_response"
        },
        "result": {
          "$ref": "#/components/schemas/zone-analytics-api_dashboard"
        }
      }
    }
  ]
}
array zone-analytics-api_datacenters
{
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "totals": {
        "$ref": "#/components/schemas/zone-analytics-api_totals_by_colo"
      },
      "colo_id": {
        "type": "string",
        "example": "SFO",
        "description": "The airport code identifer for the co-location."
      },
      "timeseries": {
        "$ref": "#/components/schemas/zone-analytics-api_timeseries_by_colo"
      }
    }
  },
  "title": "Analytics data by datacenter",
  "description": "A breakdown of all dashboard analytics data by co-locations. This is limited to Enterprise zones only."
}
string zone-analytics-api_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "readOnly": true,
  "maxLength": 32,
  "description": "Identifier"
}
array zone-analytics-api_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "message": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
object zone-analytics-api_pageviews
{
  "type": "object",
  "properties": {
    "all": {
      "type": "integer",
      "description": "The total number of pageviews served within the time range."
    },
    "search_engine": {
      "type": "object",
      "example": {
        "bingbot": 5372,
        "pingdom": 13435,
        "baidubot": 1345,
        "googlebot": 35272
      },
      "description": "A variable list of key/value pairs representing the search engine and number of hits."
    }
  },
  "description": "Breakdown of totals for pageviews."
}
object zone-analytics-api_query_response
{
  "type": "object",
  "readOnly": true,
  "properties": {
    "since": {
      "$ref": "#/components/schemas/zone-analytics-api_since"
    },
    "until": {
      "$ref": "#/components/schemas/zone-analytics-api_until"
    },
    "time_delta": {
      "type": "integer",
      "description": "The amount of time (in minutes) that each data point in the timeseries represents. The granularity of the time-series returned (e.g. each bucket in the time series representing 1-minute vs 1-day) is calculated by the API based on the time-range provided to the API."
    }
  },
  "description": "The exact parameters/timestamps the analytics service used to return data."
}
object zone-analytics-api_requests
{
  "type": "object",
  "properties": {
    "all": {
      "type": "integer",
      "description": "Total number of requests served."
    },
    "ssl": {
      "type": "object",
      "properties": {
        "encrypted": {
          "type": "integer",
          "description": "The number of requests served over HTTPS."
        },
        "unencrypted": {
          "type": "integer",
          "description": "The number of requests served over HTTP."
        }
      },
      "description": "A break down of requests served over HTTPS."
    },
    "cached": {
      "type": "integer",
      "description": "Total number of cached requests served."
    },
    "country": {
      "type": "object",
      "example": {
        "AG": 37298,
        "GI": 293846,
        "US": 4181364
      },
      "description": "A variable list of key/value pairs where the key is a two-digit country code and the value is the number of requests served to that country."
    },
    "uncached": {
      "type": "integer",
      "description": "Total number of requests served from the origin."
    },
    "http_status": {
      "type": "object",
      "example": {
        "200": 13496983,
        "301": 283,
        "400": 187936,
        "402": 1828,
        "404": 1293
      },
      "description": "Key/value pairs where the key is a HTTP status code and the value is the number of requests served with that code.",
      "additionalProperties": true
    },
    "content_type": {
      "type": "object",
      "example": {
        "css": 15343,
        "gif": 23178,
        "html": 1234213,
        "jpeg": 1982048,
        "javascript": 318236
      },
      "description": "A variable list of key/value pairs where the key represents the type of content served, and the value is the number of requests."
    },
    "ssl_protocols": {
      "type": "object",
      "properties": {
        "none": {
          "type": "integer",
          "description": "The number of requests served over HTTP."
        },
        "TLSv1": {
          "type": "integer",
          "description": "The number of requests served over TLS v1.0."
        },
        "TLSv1.1": {
          "type": "integer",
          "description": "The number of requests served over TLS v1.1."
        },
        "TLSv1.2": {
          "type": "integer",
          "description": "The number of requests served over TLS v1.2."
        },
        "TLSv1.3": {
          "type": "integer",
          "description": "The number of requests served over TLS v1.3."
        }
      },
      "description": "A breakdown of requests by their SSL protocol."
    }
  },
  "description": "Breakdown of totals for requests."
}
object zone-analytics-api_requests_by_colo
{
  "type": "object",
  "properties": {
    "all": {
      "type": "integer",
      "description": "Total number of requests served."
    },
    "cached": {
      "type": "integer",
      "description": "Total number of cached requests served."
    },
    "country": {
      "type": "object",
      "example": {
        "AG": 37298,
        "GI": 293846,
        "US": 4181364
      },
      "description": "Key/value pairs where the key is a two-digit country code and the value is the number of requests served to that country.",
      "additionalProperties": true
    },
    "uncached": {
      "type": "integer",
      "description": "Total number of requests served from the origin."
    },
    "http_status": {
      "type": "object",
      "example": {
        "200": 13496983,
        "301": 283,
        "400": 187936,
        "402": 1828,
        "404": 1293
      },
      "description": "A variable list of key/value pairs where the key is a HTTP status code and the value is the number of requests with that code served."
    }
  },
  "description": "Breakdown of totals for requests."
}
object zone-analytics-api_since
{
  "anyOf": [
    {
      "type": "string"
    },
    {
      "type": "integer"
    }
  ],
  "default": -10080,
  "example": "2015-01-01T12:23:00Z",
  "description": "The (inclusive) beginning of the requested time frame. This value can be a negative integer representing the number of minutes in the past relative to time the request is made, or can be an absolute timestamp that conforms to RFC 3339. At this point in time, it cannot exceed a time in the past greater than one year.\n\nRanges that the Cloudflare web application provides will provide the following period length for each point:\n- Last 60 minutes (from -59 to -1): 1 minute resolution\n- Last 7 hours (from -419 to -60): 15 minutes resolution\n- Last 15 hours (from -899 to -420): 30 minutes resolution\n- Last 72 hours (from -4320 to -900): 1 hour resolution\n- Older than 3 days (-525600 to -4320): 1 day resolution."
}
object zone-analytics-api_threats
{
  "type": "object",
  "properties": {
    "all": {
      "type": "integer",
      "description": "The total number of identifiable threats received over the time frame."
    },
    "type": {
      "type": "object",
      "example": {
        "user.ban.ip": 123,
        "hot.ban.unknown": 5324,
        "macro.chl.jschlErr": 5323,
        "macro.chl.captchaErr": 1341
      },
      "description": "The list of key/value pairs where the key is a threat category and the value is the number of requests."
    },
    "country": {
      "type": "object",
      "example": {
        "AU": 91,
        "CN": 523423,
        "US": 123
      },
      "description": "A list of key/value pairs where the key is a two-digit country code and the value is the number of malicious requests received from that country."
    }
  },
  "description": "Breakdown of totals for threats."
}
array zone-analytics-api_timeseries
{
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "since": {
        "$ref": "#/components/schemas/zone-analytics-api_since"
      },
      "until": {
        "$ref": "#/components/schemas/zone-analytics-api_until"
      },
      "threats": {
        "$ref": "#/components/schemas/zone-analytics-api_threats"
      },
      "uniques": {
        "$ref": "#/components/schemas/zone-analytics-api_uniques"
      },
      "requests": {
        "$ref": "#/components/schemas/zone-analytics-api_requests"
      },
      "bandwidth": {
        "$ref": "#/components/schemas/zone-analytics-api_bandwidth"
      },
      "pageviews": {
        "$ref": "#/components/schemas/zone-analytics-api_pageviews"
      }
    }
  },
  "description": "Time deltas containing metadata about each bucket of time. The number of buckets (resolution) is determined by the amount of time between the since and until parameters."
}
array zone-analytics-api_timeseries_by_colo
{
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "since": {
        "$ref": "#/components/schemas/zone-analytics-api_since"
      },
      "until": {
        "$ref": "#/components/schemas/zone-analytics-api_until"
      },
      "threats": {
        "$ref": "#/components/schemas/zone-analytics-api_threats"
      },
      "requests": {
        "$ref": "#/components/schemas/zone-analytics-api_requests_by_colo"
      },
      "bandwidth": {
        "$ref": "#/components/schemas/zone-analytics-api_bandwidth_by_colo"
      }
    }
  },
  "description": "Time deltas containing metadata about each bucket of time. The number of buckets (resolution) is determined by the amount of time between the since and until parameters."
}
object zone-analytics-api_totals
{
  "type": "object",
  "properties": {
    "since": {
      "$ref": "#/components/schemas/zone-analytics-api_since"
    },
    "until": {
      "$ref": "#/components/schemas/zone-analytics-api_until"
    },
    "threats": {
      "$ref": "#/components/schemas/zone-analytics-api_threats"
    },
    "uniques": {
      "$ref": "#/components/schemas/zone-analytics-api_uniques"
    },
    "requests": {
      "$ref": "#/components/schemas/zone-analytics-api_requests"
    },
    "bandwidth": {
      "$ref": "#/components/schemas/zone-analytics-api_bandwidth"
    },
    "pageviews": {
      "$ref": "#/components/schemas/zone-analytics-api_pageviews"
    }
  },
  "description": "Breakdown of totals by data type."
}
object zone-analytics-api_totals_by_colo
{
  "type": "object",
  "properties": {
    "since": {
      "$ref": "#/components/schemas/zone-analytics-api_since"
    },
    "until": {
      "$ref": "#/components/schemas/zone-analytics-api_until"
    },
    "threats": {
      "$ref": "#/components/schemas/zone-analytics-api_threats"
    },
    "requests": {
      "$ref": "#/components/schemas/zone-analytics-api_requests_by_colo"
    },
    "bandwidth": {
      "$ref": "#/components/schemas/zone-analytics-api_bandwidth_by_colo"
    }
  },
  "description": "Breakdown of totals by data type."
}
object zone-analytics-api_uniques
{
  "type": "object",
  "properties": {
    "all": {
      "type": "integer",
      "description": "Total number of unique IP addresses within the time range."
    }
  }
}
object zone-analytics-api_until
{
  "anyOf": [
    {
      "type": "string"
    },
    {
      "type": "integer"
    }
  ],
  "default": 0,
  "example": "2015-01-02T12:23:00Z",
  "description": "The (exclusive) end of the requested time frame. This value can be a negative integer representing the number of minutes in the past relative to time the request is made, or can be an absolute timestamp that conforms to RFC 3339. If omitted, the time of the request is used."
}
object zones_0rtt
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "0rtt"
          ],
          "example": "0rtt",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_0rtt_value"
        }
      }
    }
  ],
  "title": "0-RTT Value",
  "description": "0-RTT session resumption enabled for this zone."
}
string zones_0rtt_value
{
  "enum": [
    "on",
    "off"
  ],
  "type": "string",
  "default": "off",
  "description": "Value of the 0-RTT setting."
}
array zones_actions
{
  "type": "array",
  "items": {
    "oneOf": [
      {
        "$ref": "#/components/schemas/zones_always_use_https"
      },
      {
        "$ref": "#/components/schemas/zones_automatic_https_rewrites"
      },
      {
        "$ref": "#/components/schemas/zones_browser_cache_ttl"
      },
      {
        "$ref": "#/components/schemas/zones_browser_check"
      },
      {
        "$ref": "#/components/schemas/zones_bypass_cache_on_cookie"
      },
      {
        "$ref": "#/components/schemas/zones_cache_by_device_type"
      },
      {
        "$ref": "#/components/schemas/zones_cache_deception_armor"
      },
      {
        "$ref": "#/components/schemas/zones_cache_key_fields"
      },
      {
        "$ref": "#/components/schemas/zones_cache_level"
      },
      {
        "$ref": "#/components/schemas/zones_cache_on_cookie"
      },
      {
        "$ref": "#/components/schemas/zones_cache_ttl_by_status"
      },
      {
        "$ref": "#/components/schemas/zones_disable_apps"
      },
      {
        "$ref": "#/components/schemas/zones_disable_performance"
      },
      {
        "$ref": "#/components/schemas/zones_disable_security"
      },
      {
        "$ref": "#/components/schemas/zones_disable_zaraz"
      },
      {
        "$ref": "#/components/schemas/zones_edge_cache_ttl"
      },
      {
        "$ref": "#/components/schemas/zones_email_obfuscation"
      },
      {
        "$ref": "#/components/schemas/zones_explicit_cache_control"
      },
      {
        "$ref": "#/components/schemas/zones_forwarding_url"
      },
      {
        "$ref": "#/components/schemas/zones_host_header_override"
      },
      {
        "$ref": "#/components/schemas/zones_ip_geolocation"
      },
      {
        "$ref": "#/components/schemas/zones_mirage"
      },
      {
        "$ref": "#/components/schemas/zones_opportunistic_encryption"
      },
      {
        "$ref": "#/components/schemas/zones_origin_error_page_pass_thru"
      },
      {
        "$ref": "#/components/schemas/zones_polish"
      },
      {
        "$ref": "#/components/schemas/zones_resolve_override"
      },
      {
        "$ref": "#/components/schemas/zones_respect_strong_etag"
      },
      {
        "$ref": "#/components/schemas/zones_response_buffering"
      },
      {
        "$ref": "#/components/schemas/zones_rocket_loader"
      },
      {
        "$ref": "#/components/schemas/zones_security_level"
      },
      {
        "$ref": "#/components/schemas/zones_sort_query_string_for_cache"
      },
      {
        "$ref": "#/components/schemas/zones_ssl"
      },
      {
        "$ref": "#/components/schemas/zones_true_client_ip_header"
      },
      {
        "$ref": "#/components/schemas/zones_waf"
      }
    ],
    "discriminator": {
      "propertyName": "id"
    }
  },
  "example": [
    {
      "id": "browser_check",
      "value": "on"
    }
  ],
  "description": "The set of actions to perform if the targets of this rule match the\nrequest. Actions can redirect to another URL or override settings, but\nnot both.\n",
  "x-stainless-skip": [
    "terraform"
  ]
}
object zones_advanced_ddos
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "advanced_ddos"
          ],
          "example": "advanced_ddos",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_advanced_ddos_value"
        }
      }
    }
  ],
  "title": "Advanced DDoS Protection",
  "description": "Advanced protection from Distributed Denial of Service (DDoS) attacks on your website. This is an uneditable value that is 'on' in the case of Business and Enterprise zones."
}
string zones_advanced_ddos_value
{
  "enum": [
    "on",
    "off"
  ],
  "type": "string",
  "default": "off",
  "description": "Value of the zone setting.\nNotes: Defaults to on for Business+ plans"
}
object zones_always_online
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "always_online"
          ],
          "example": "always_online",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_always_online_value"
        }
      }
    }
  ],
  "title": "Always Online Mode",
  "description": "When enabled, Cloudflare serves limited copies of web pages available from the [Internet Archive's Wayback Machine](https://archive.org/web/) if your server is offline. Refer to [Always Online](https://developers.cloudflare.com/cache/about/always-online) for more information."
}
string zones_always_online_value
{
  "enum": [
    "on",
    "off"
  ],
  "type": "string",
  "default": "on",
  "description": "Value of the zone setting."
}
object zones_always_use_https
{
  "type": "object",
  "title": "Always Use HTTPS",
  "properties": {
    "id": {
      "enum": [
        "always_use_https"
      ],
      "type": "string",
      "description": "If enabled, any `http://`` URL is converted to `https://` through a\n301 redirect.\n",
      "x-auditable": true
    }
  },
  "x-stainless-skip": [
    "terraform"
  ]
}
string zones_always_use_https_value
{
  "enum": [
    "on",
    "off"
  ],
  "type": "string",
  "default": "off",
  "description": "Value of the zone setting."
}
object zones_api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/zones_messages"
    },
    "success": {
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/zones_messages"
    }
  }
}
object zones_api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/zones_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "type": "object",
      "nullable": true
    },
    "success": {
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/zones_messages"
        }
      ],
      "example": []
    }
  }
}
object zones_api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_schemas-api-response-common"
    }
  ]
}
object zones_api-response-single-id
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_api-response-common"
    },
    {
      "properties": {
        "result": {
          "type": "object",
          "nullable": true,
          "required": [
            "id"
          ],
          "properties": {
            "id": {
              "$ref": "#/components/schemas/zones_identifier"
            }
          }
        }
      }
    }
  ]
}
object zones_automatic_https_rewrites
{
  "type": "object",
  "title": "Automatic HTTPS Rewrites",
  "properties": {
    "id": {
      "enum": [
        "automatic_https_rewrites"
      ],
      "type": "string",
      "description": "Turn on or off Automatic HTTPS Rewrites.",
      "x-auditable": true
    },
    "value": {
      "enum": [
        "on",
        "off"
      ],
      "type": "string",
      "example": "on",
      "description": "The status of Automatic HTTPS Rewrites.\n",
      "x-auditable": true
    }
  },
  "x-stainless-skip": [
    "terraform"
  ]
}
string zones_automatic_https_rewrites_value
{
  "enum": [
    "on",
    "off"
  ],
  "type": "string",
  "default": "on",
  "description": "Value of the zone setting.\nNotes: Default value depends on the zone's plan level."
}
object zones_automatic_platform_optimization
{
  "type": "object",
  "required": [
    "enabled",
    "cf",
    "wordpress",
    "wp_plugin",
    "hostnames",
    "cache_by_device_type"
  ],
  "properties": {
    "cf": {
      "type": "boolean",
      "default": false,
      "example": true,
      "description": "Indicates whether or not Cloudflare proxy is enabled."
    },
    "enabled": {
      "type": "boolean",
      "default": false,
      "example": true,
      "description": "Indicates whether or not Automatic Platform Optimization is enabled."
    },
    "hostnames": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "hostname"
      },
      "example": [
        "www.example.com",
        "example.com",
        "shop.example.com"
      ],
      "description": "An array of hostnames where Automatic Platform Optimization for WordPress is activated."
    },
    "wordpress": {
      "type": "boolean",
      "default": false,
      "example": true,
      "description": "Indicates whether or not site is powered by WordPress."
    },
    "wp_plugin": {
      "type": "boolean",
      "default": false,
      "example": true,
      "description": "Indicates whether or not [Cloudflare for WordPress plugin](https://wordpress.org/plugins/cloudflare/) is installed."
    },
    "cache_by_device_type": {
      "type": "boolean",
      "example": false,
      "description": "Indicates whether or not [cache by device type](https://developers.cloudflare.com/automatic-platform-optimization/reference/cache-device-type/) is enabled."
    }
  }
}
object zones_base
{
  "required": [
    "id",
    "value"
  ],
  "properties": {
    "id": {
      "type": "string",
      "example": "development_mode",
      "description": "Identifier of the zone setting."
    },
    "value": {
      "example": "on",
      "description": "Current value of the zone setting."
    },
    "editable": {
      "enum": [
        true,
        false
      ],
      "type": "boolean",
      "default": true,
      "readOnly": true,
      "description": "Whether or not this setting can be modified for this zone (based on your Cloudflare plan level)."
    },
    "modified_on": {
      "type": "string",
      "format": "date-time",
      "example": "2014-01-01T05:20:00.12345Z",
      "nullable": true,
      "readOnly": true,
      "description": "last time this setting was modified."
    }
  }
}
object zones_brotli
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "brotli"
          ],
          "example": "brotli",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_brotli_value"
        }
      }
    }
  ],
  "title": "Brotli Compression",
  "description": "When the client requesting an asset supports the Brotli compression algorithm, Cloudflare will serve a Brotli compressed version of the asset."
}
string zones_brotli_value
{
  "enum": [
    "off",
    "on"
  ],
  "type": "string",
  "default": "off",
  "description": "Value of the zone setting."
}
object zones_browser_cache_ttl
{
  "type": "object",
  "title": "Browser Cache TTL",
  "properties": {
    "id": {
      "enum": [
        "browser_cache_ttl"
      ],
      "type": "string",
      "description": "Control how long resources cached by client browsers remain valid.\n",
      "x-auditable": true
    },
    "value": {
      "type": "integer",
      "example": 3600,
      "maximum": 31536000,
      "minimum": 0,
      "description": "The number of seconds to cache resources for.\nSetting this to 0 enables \"Respect Existing Headers\".\n",
      "x-auditable": true
    }
  },
  "x-stainless-skip": [
    "terraform"
  ]
}
integer zones_browser_cache_ttl_value
{
  "type": "integer",
  "default": 14400,
  "maximum": 31536000,
  "minimum": 0,
  "description": "Value of the zone setting in seconds.\nMinimum values by plan:\n- Free: 1 second\n- Pro: 1 second\n- Business: 1 second\n- Enterprise: 1 second\nSetting a TTL of 0 is equivalent to selecting `Respect Existing Headers` and is allowed for all plans."
}
object zones_browser_check
{
  "type": "object",
  "title": "Browser Integrity Check",
  "properties": {
    "id": {
      "enum": [
        "browser_check"
      ],
      "type": "string",
      "description": "Inspect the visitor's browser for headers commonly associated with\nspammers and certain bots.\n",
      "x-auditable": true
    },
    "value": {
      "enum": [
        "on",
        "off"
      ],
      "type": "string",
      "example": "on",
      "description": "The status of Browser Integrity Check.\n",
      "x-auditable": true
    }
  },
  "x-stainless-skip": [
    "terraform"
  ]
}
string zones_browser_check_value
{
  "enum": [
    "on",
    "off"
  ],
  "type": "string",
  "default": "on",
  "description": "Value of the zone setting."
}
object zones_bypass_cache_on_cookie
{
  "type": "object",
  "title": "Bypass Cache on Cookie",
  "properties": {
    "id": {
      "enum": [
        "bypass_cache_on_cookie"
      ],
      "type": "string",
      "description": "Bypass cache and fetch resources from the origin server if a regular\nexpression matches against a cookie name present in the request.\n",
      "x-auditable": true
    },
    "value": {
      "type": "string",
      "example": "bypass=.*|PHPSESSID=.*",
      "maxLength": 150,
      "minLength": 1,
      "description": "The regular expression to use for matching cookie names in the\nrequest. Refer to [Bypass Cache on Cookie\nsetting](https://developers.cloudflare.com/rules/page-rules/reference/additional-reference/#bypass-cache-on-cookie-setting)\nto learn about limited regular expression support.\n",
      "x-auditable": true
    }
  },
  "x-stainless-skip": [
    "terraform"
  ]
}
object zones_cache-rules_aegis
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_cache-rules_base"
    },
    {
      "type": "object",
      "properties": {
        "id": {
          "enum": [
            "aegis"
          ],
          "type": "string",
          "example": "aegis",
          "description": "ID of the zone setting.",
          "x-auditable": true
        },
        "value": {
          "$ref": "#/components/schemas/zones_cache-rules_aegis_value"
        }
      }
    }
  ],
  "title": "Aegis",
  "description": "Aegis provides dedicated egress IPs (from Cloudflare to your origin) for your layer 7 WAF and CDN services. The egress IPs are reserved exclusively for your account so that you can increase your origin security by only allowing traffic from a small list of IP addresses."
}
object zones_cache-rules_aegis_value
{
  "type": "object",
  "properties": {
    "enabled": {
      "type": "boolean",
      "description": "Whether the feature is enabled or not.",
      "x-auditable": true
    },
    "pool_id": {
      "type": "string",
      "example": "pool-id",
      "description": "Egress pool id which refers to a grouping of dedicated egress IPs through which Cloudflare will connect to origin.",
      "x-auditable": true
    }
  },
  "description": "Value of the zone setting."
}
object zones_cache-rules_base
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "string",
      "description": "Identifier of the zone setting.",
      "x-auditable": true
    },
    "modified_on": {
      "type": "string",
      "format": "date-time",
      "example": "2014-01-01T05:20:00.12345Z",
      "nullable": true,
      "readOnly": true,
      "description": "Last time this setting was modified.",
      "x-auditable": true
    }
  }
}
object zones_cache-rules_origin_h2_max_streams
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_cache-rules_base"
    },
    {
      "type": "object",
      "properties": {
        "id": {
          "enum": [
            "origin_h2_max_streams"
          ],
          "type": "string",
          "example": "origin_h2_max_streams",
          "description": "Value of the zone setting.",
          "x-auditable": true
        },
        "value": {
          "$ref": "#/components/schemas/zones_cache-rules_origin_h2_max_streams_value"
        }
      }
    }
  ],
  "title": "Origin H2 Max Streams",
  "description": "Origin H2 Max Streams configures the max number of concurrent requests that Cloudflare will send within the same connection when communicating with the origin server, if the origin supports it. Note that if your origin does not support H2 multiplexing, 5xx errors may be observed, particularly 520s. Also note that the default value is `100` for all plan types except Enterprise where it is `1`. `1` means that H2 multiplexing is disabled."
}
integer zones_cache-rules_origin_h2_max_streams_value
{
  "type": "integer",
  "example": 50,
  "maximum": 1000,
  "minimum": 1,
  "description": "Value of the Origin H2 Max Streams Setting.",
  "x-auditable": true
}
object zones_cache-rules_origin_max_http_version
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_cache-rules_base"
    },
    {
      "type": "object",
      "properties": {
        "id": {
          "enum": [
            "origin_max_http_version"
          ],
          "type": "string",
          "example": "origin_max_http_version",
          "description": "Value of the zone setting.",
          "x-auditable": true
        },
        "value": {
          "$ref": "#/components/schemas/zones_cache-rules_origin_max_http_version_value"
        }
      }
    }
  ],
  "title": "Origin Max HTTP Version",
  "description": "Origin Max HTTP Setting Version sets the highest HTTP version Cloudflare will attempt to use with your origin. This setting allows Cloudflare to make HTTP/2 requests to your origin. (Refer to [Enable HTTP/2 to Origin](https://developers.cloudflare.com/cache/how-to/enable-http2-to-origin/), for more information.). The default value is \"2\" for all plan types except Enterprise where it is \"1\"."
}
string zones_cache-rules_origin_max_http_version_value
{
  "enum": [
    "2",
    "1"
  ],
  "type": "string",
  "description": "Value of the Origin Max HTTP Version Setting.",
  "x-auditable": true
}
object zones_cache_by_device_type
{
  "type": "object",
  "title": "Cache By Device Type",
  "properties": {
    "id": {
      "enum": [
        "cache_by_device_type"
      ],
      "type": "string",
      "description": "Separate cached content based on the visitor's device type.\n",
      "x-auditable": true
    },
    "value": {
      "enum": [
        "on",
        "off"
      ],
      "type": "string",
      "example": "on",
      "description": "The status of Cache By Device Type.\n",
      "x-auditable": true
    }
  },
  "x-stainless-skip": [
    "terraform"
  ]
}
object zones_cache_deception_armor
{
  "type": "object",
  "title": "Cache Deception Armor",
  "properties": {
    "id": {
      "enum": [
        "cache_deception_armor"
      ],
      "type": "string",
      "description": "Protect from web cache deception attacks while still allowing static\nassets to be cached. This setting verifies that the URL's extension\nmatches the returned `Content-Type`.\n",
      "x-auditable": true
    },
    "value": {
      "enum": [
        "on",
        "off"
      ],
      "type": "string",
      "example": "on",
      "description": "The status of Cache Deception Armor.\n",
      "x-auditable": true
    }
  },
  "x-stainless-skip": [
    "terraform"
  ]
}
object zones_cache_key_fields
{
  "type": "object",
  "title": "Custom Cache Key",
  "properties": {
    "id": {
      "enum": [
        "cache_key_fields"
      ],
      "type": "string",
      "description": "Control specifically what variables to include when deciding which\nresources to cache. This allows customers to determine what to cache\nbased on something other than just the URL.\n"
    },
    "value": {
      "type": "object",
      "properties": {
        "host": {
          "type": "object",
          "properties": {
            "resolved": {
              "type": "boolean",
              "description": "Whether to include the Host header in the HTTP request sent\nto the origin.\n"
            }
          },
          "description": "Determines which host header to include in the Cache Key.\n"
        },
        "user": {
          "type": "object",
          "properties": {
            "geo": {
              "type": "boolean",
              "description": "Includes the client's country, derived from the IP address.\n"
            },
            "lang": {
              "type": "boolean",
              "description": "Includes the first language code contained in the\n`Accept-Language` header sent by the client.\n"
            },
            "device_type": {
              "type": "boolean",
              "description": "Classifies a request as `mobile`, `desktop`, or `tablet`\nbased on the User Agent.\n"
            }
          },
          "description": "Feature fields to add features about the end-user (client) into\nthe Cache Key.\n"
        },
        "cookie": {
          "type": "object",
          "properties": {
            "include": {
              "type": "array",
              "items": {
                "type": "string",
                "example": "foo",
                "minLength": 1
              },
              "example": [
                "foo",
                "bar"
              ],
              "maxItems": 50,
              "minItems": 1,
              "description": "A list of cookies to include.\n"
            },
            "check_presence": {
              "type": "array",
              "items": {
                "type": "string",
                "example": "foo",
                "minLength": 1
              },
              "example": [
                "foo",
                "bar"
              ],
              "maxItems": 50,
              "minItems": 1,
              "description": "A list of cookies to check for the presence of, without\nincluding their actual values.\n"
            }
          },
          "description": "Controls which cookies appear in the Cache Key.\n"
        },
        "header": {
          "type": "object",
          "properties": {
            "exclude": {
              "type": "array",
              "items": {
                "type": "string",
                "example": "foo",
                "minLength": 1
              },
              "example": [
                "foo",
                "bar"
              ],
              "maxItems": 50,
              "minItems": 1,
              "description": "A list of headers to ignore.\n"
            },
            "include": {
              "type": "array",
              "items": {
                "type": "string",
                "example": "foo",
                "minLength": 1
              },
              "example": [
                "foo",
                "bar"
              ],
              "maxItems": 50,
              "minItems": 1,
              "description": "A list of headers to include.\n"
            },
            "check_presence": {
              "type": "array",
              "items": {
                "type": "string",
                "example": "foo",
                "minLength": 1
              },
              "example": [
                "foo",
                "bar"
              ],
              "maxItems": 50,
              "minItems": 1,
              "description": "A list of headers to check for the presence of, without\nincluding their actual values.\n"
            }
          },
          "description": "Controls which headers go into the Cache Key. Exactly one of\n`include` or `exclude` is expected.\n"
        },
        "query_string": {
          "type": "object",
          "properties": {
            "exclude": {
              "oneOf": [
                {
                  "enum": [
                    "*"
                  ],
                  "type": "string",
                  "description": "Ignore all query string parameters.\n"
                },
                {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "example": "foo",
                    "minLength": 1
                  },
                  "example": [
                    "foo",
                    "bar"
                  ],
                  "maxItems": 50,
                  "minItems": 1,
                  "description": "A list of query string parameters to ignore.\n"
                }
              ]
            },
            "include": {
              "oneOf": [
                {
                  "enum": [
                    "*"
                  ],
                  "type": "string",
                  "description": "Include all query string parameters.\n"
                },
                {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "example": "foo",
                    "minLength": 1
                  },
                  "example": [
                    "foo",
                    "bar"
                  ],
                  "maxItems": 50,
                  "minItems": 1,
                  "description": "A list of query string parameters to include.\n"
                }
              ]
            }
          },
          "description": "Controls which URL query string parameters go into the Cache\nKey. Exactly one of `include` or `exclude` is expected.\n"
        }
      }
    }
  },
  "x-stainless-skip": [
    "terraform"
  ]
}
object zones_cache_level
{
  "type": "object",
  "title": "Cache Level",
  "properties": {
    "id": {
      "enum": [
        "cache_level"
      ],
      "type": "string",
      "description": "Apply custom caching based on the option selected.\n",
      "x-auditable": true
    },
    "value": {
      "enum": [
        "bypass",
        "basic",
        "simplified",
        "aggressive",
        "cache_everything"
      ],
      "type": "string",
      "example": "bypass",
      "description": "* `bypass`: Cloudflare does not cache.\n* `basic`: Delivers resources from cache when there is no query\n  string.\n* `simplified`: Delivers the same resource to everyone independent\n  of the query string.\n* `aggressive`: Caches all static content that has a query string.\n* `cache_everything`: Treats all content as static and caches all\n  file types beyond the [Cloudflare default cached\n  content](https://developers.cloudflare.com/cache/concepts/default-cache-behavior/#default-cached-file-extensions).\n",
      "x-auditable": true
    }
  },
  "x-stainless-skip": [
    "terraform"
  ]
}
string zones_cache_level_value
{
  "enum": [
    "aggressive",
    "basic",
    "simplified"
  ],
  "type": "string",
  "default": "aggressive",
  "description": "Value of the zone setting."
}
object zones_cache_on_cookie
{
  "type": "object",
  "title": "Cache on Cookie",
  "properties": {
    "id": {
      "enum": [
        "cache_on_cookie"
      ],
      "type": "string",
      "description": "Apply the Cache Everything option (Cache Level setting) based on a\nregular expression match against a cookie name.\n",
      "x-auditable": true
    },
    "value": {
      "type": "string",
      "example": "bypass=.*|PHPSESSID=.*",
      "maxLength": 150,
      "minLength": 1,
      "description": "The regular expression to use for matching cookie names in the\nrequest.\n",
      "x-auditable": true
    }
  },
  "x-stainless-skip": [
    "terraform"
  ]
}
object zones_cache_ttl_by_status
{
  "type": "object",
  "title": "Cache TTL by Status Code",
  "properties": {
    "id": {
      "enum": [
        "cache_ttl_by_status"
      ],
      "type": "string",
      "description": "Enterprise customers can set cache time-to-live (TTL) based on the\nresponse status from the origin web server. Cache TTL refers to the\nduration of a resource in the Cloudflare network before being\nmarked as stale or discarded from cache. Status codes are returned\nby a resource's origin. Setting cache TTL based on response status\noverrides the default cache behavior (standard caching) for static\nfiles and overrides cache instructions sent by the origin web\nserver. To cache non-static assets, set a Cache Level of Cache\nEverything using a Page Rule. Setting no-store Cache-Control or a\nlow TTL (using `max-age`/`s-maxage`) increases requests to origin\nweb servers and decreases performance.\n",
      "x-auditable": true
    },
    "value": {
      "type": "object",
      "example": {
        "200-299": 86400,
        "300-499": "no-cache",
        "500-599": "no-store"
      },
      "description": "A JSON object containing status codes and their corresponding TTLs.\nEach key-value pair in the cache TTL by status cache rule has the\nfollowing syntax\n- `status_code`: An integer value such as 200 or 500. status_code\n  matches the exact status code from the origin web server. Valid\n  status codes are between 100-999.\n- `status_code_range`: Integer values for from and to.\n  status_code_range matches any status code from the origin web\n  server within the specified range.\n- `value`: An integer value that defines the duration an asset is\n  valid in seconds or one of the following strings: no-store\n  (equivalent to -1), no-cache (equivalent to 0).\n",
      "additionalProperties": {
        "anyOf": [
          {
            "enum": [
              "no-cache",
              "no-store"
            ],
            "type": "string",
            "example": "no-cache",
            "description": "`no-store` (equivalent to -1), `no-cache` (equivalent to 0)\n"
          },
          {
            "type": "integer",
            "example": 86400,
            "description": "An integer value that defines the duration an asset is valid in\nseconds.\n"
          }
        ]
      }
    }
  },
  "x-stainless-skip": [
    "terraform"
  ]
}
object zones_challenge_ttl
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "challenge_ttl"
          ],
          "example": "challenge_ttl",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_challenge_ttl_value"
        }
      }
    }
  ],
  "title": "Challenge Page TTL",
  "description": "Specify how long a visitor is allowed access to your site after successfully completing a challenge (such as a CAPTCHA). After the TTL has expired the visitor will have to complete a new challenge. We recommend a 15 - 45 minute setting and will attempt to honor any setting above 45 minutes. (https://support.cloudflare.com/hc/en-us/articles/200170136)."
}
number zones_challenge_ttl_value
{
  "enum": [
    300,
    900,
    1800,
    2700,
    3600,
    7200,
    10800,
    14400,
    28800,
    57600,
    86400,
    604800,
    2592000,
    31536000
  ],
  "type": "number",
  "default": 1800,
  "description": "Value of the zone setting."
}
object zones_china_network_enabled
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "china_network_enabled"
          ],
          "example": "china_network_enabled",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_china_network_enabled_value"
        }
      }
    }
  ],
  "title": "China Network Enabled",
  "description": "Determines whether or not the china network is enabled.\n"
}
string zones_china_network_enabled_value
{
  "enum": [
    "on",
    "off"
  ],
  "type": "string",
  "default": "off",
  "readOnly": true,
  "description": "Value of the zone setting."
}
object zones_ciphers
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "ciphers"
          ],
          "example": "ciphers",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_ciphers_value"
        }
      }
    }
  ],
  "title": "Zone ciphers allowed for TLS termination",
  "default": [],
  "description": "An allowlist of ciphers for TLS termination. These ciphers must be in the BoringSSL format."
}
array zones_ciphers_value
{
  "type": "array",
  "items": {
    "type": "string"
  },
  "default": [],
  "example": [
    "ECDHE-RSA-AES128-GCM-SHA256",
    "AES128-SHA"
  ],
  "description": "Value of the zone setting.",
  "uniqueItems": true
}
object zones_cname_flattening
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "cname_flattening"
          ],
          "description": "How to flatten the cname destination."
        },
        "value": {
          "$ref": "#/components/schemas/zones_cname_flattening_value"
        }
      }
    }
  ],
  "title": "Cloudflare CNAME Flattening",
  "deprecated": true,
  "description": "Whether or not cname flattening is on.",
  "x-stainless-deprecation-message": "This zone setting is deprecated; please use the DNS Settings route instead. More information at https://developers.cloudflare.com/fundamentals/api/reference/deprecations/#2025-03-21"
}
string zones_cname_flattening_value
{
  "enum": [
    "flatten_at_root",
    "flatten_all"
  ],
  "type": "string",
  "default": "flatten_at_root",
  "deprecated": true,
  "description": "Value of the cname flattening setting.",
  "x-stainless-deprecation-message": "This zone setting is deprecated; please use the DNS Settings route instead. More information at https://developers.cloudflare.com/fundamentals/api/reference/deprecations/#2025-03-21"
}
object zones_components-schemas-api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/zones_messages"
    },
    "result": {
      "anyOf": [
        {
          "type": "object"
        },
        {
          "type": "array",
          "items": {}
        },
        {
          "type": "string"
        }
      ]
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful"
    },
    "messages": {
      "$ref": "#/components/schemas/zones_messages"
    }
  }
}
object zones_components-schemas-api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/zones_messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "type": "object",
      "nullable": true
    },
    "success": {
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful"
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/zones_messages"
        }
      ],
      "example": []
    }
  }
}
object zones_content_converter
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "content_converter"
          ],
          "example": "content_converter",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_content_converter_value"
        }
      }
    }
  ],
  "title": "Content Converter",
  "description": "When enabled and the client sends an Accept header requesting text/markdown,\nCloudflare will convert HTML responses to Markdown format using the toMarkdown() service.\nRefer to the [developer documentation](https://developers.cloudflare.com/workers-ai/features/markdown-conversion/) for more information."
}
string zones_content_converter_value
{
  "enum": [
    "off",
    "on"
  ],
  "type": "string",
  "default": "off",
  "description": "Value of the zone setting."
}
string zones_created_on
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-01T05:20:00.12345Z",
  "readOnly": true,
  "description": "The timestamp of when the Page Rule was created.",
  "x-auditable": true
}
object zones_development_mode
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "development_mode"
          ],
          "example": "development_mode",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_development_mode_value"
        },
        "time_remaining": {
          "type": "number",
          "example": 3600,
          "readOnly": true,
          "description": "Value of the zone setting.\nNotes: The interval (in seconds) from when development mode expires (positive integer) or last expired (negative integer) for the domain. If development mode has never been enabled, this value is false."
        }
      }
    }
  ],
  "title": "Development Mode",
  "description": "Development Mode temporarily allows you to enter development mode for your websites if you need to make changes to your site. This will bypass Cloudflare's accelerated cache and slow down your site, but is useful if you are making changes to cacheable content (like images, css, or JavaScript) and would like to see those changes right away. Once entered, development mode will last for 3 hours and then automatically toggle off."
}
string zones_development_mode_value
{
  "enum": [
    "on",
    "off"
  ],
  "type": "string",
  "default": "off",
  "description": "Value of the zone setting."
}
object zones_disable_apps
{
  "type": "object",
  "title": "Disable Apps",
  "properties": {
    "id": {
      "enum": [
        "disable_apps"
      ],
      "type": "string",
      "description": "Turn off all active [Cloudflare Apps](https://developers.cloudflare.com/support/more-dashboard-apps/cloudflare-apps/)\n(deprecated).\n",
      "x-auditable": true
    }
  },
  "x-stainless-skip": [
    "terraform"
  ]
}
object zones_disable_performance
{
  "type": "object",
  "title": "Disable Performance",
  "properties": {
    "id": {
      "enum": [
        "disable_performance"
      ],
      "type": "string",
      "description": "Turn off\n[Rocket Loader](https://developers.cloudflare.com/speed/optimization/content/rocket-loader/), and\n[Polish](https://developers.cloudflare.com/images/polish/).\n",
      "x-auditable": true
    }
  },
  "x-stainless-skip": [
    "terraform"
  ]
}
object zones_disable_security
{
  "type": "object",
  "title": "Disable Security",
  "properties": {
    "id": {
      "enum": [
        "disable_security"
      ],
      "type": "string",
      "description": "Turn off\n[Email Obfuscation](https://developers.cloudflare.com/waf/tools/scrape-shield/email-address-obfuscation/),\n[Rate Limiting (previous version, deprecated)](https://developers.cloudflare.com/waf/reference/legacy/old-rate-limiting/),\n[Scrape Shield](https://developers.cloudflare.com/waf/tools/scrape-shield/),\n[URL (Zone) Lockdown](https://developers.cloudflare.com/waf/tools/zone-lockdown/), and\n[WAF managed rules (previous version, deprecated)](https://developers.cloudflare.com/waf/reference/legacy/old-waf-managed-rules/).\n",
      "x-auditable": true
    }
  },
  "x-stainless-skip": [
    "terraform"
  ]
}
object zones_disable_zaraz
{
  "type": "object",
  "title": "Disable Zaraz",
  "properties": {
    "id": {
      "enum": [
        "disable_zaraz"
      ],
      "type": "string",
      "description": "Turn off [Zaraz](https://developers.cloudflare.com/zaraz/).\n",
      "x-auditable": true
    }
  },
  "x-stainless-skip": [
    "terraform"
  ]
}
object zones_early_hints
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "early_hints"
          ],
          "example": "early_hints",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_early_hints_value"
        }
      }
    }
  ],
  "title": "Early Hints",
  "description": "When enabled, Cloudflare will attempt to speed up overall page loads by serving `103` responses with `Link` headers from the final response. Refer to [Early Hints](https://developers.cloudflare.com/cache/about/early-hints) for more information."
}
string zones_early_hints_value
{
  "enum": [
    "on",
    "off"
  ],
  "type": "string",
  "default": "off",
  "description": "Value of the zone setting."
}
object zones_edge_cache_ttl
{
  "type": "object",
  "title": "Edge Cache TTL",
  "properties": {
    "id": {
      "enum": [
        "edge_cache_ttl"
      ],
      "type": "string",
      "description": "Specify how long to cache a resource in the Cloudflare global\nnetwork. *Edge Cache TTL* is not visible in response headers.\n",
      "x-auditable": true
    },
    "value": {
      "type": "integer",
      "maximum": 31536000,
      "minimum": 1,
      "x-auditable": true
    }
  },
  "x-stainless-skip": [
    "terraform"
  ]
}
number zones_edge_cache_ttl_value
{
  "enum": [
    30,
    60,
    300,
    1200,
    1800,
    3600,
    7200,
    10800,
    14400,
    18000,
    28800,
    43200,
    57600,
    72000,
    86400,
    172800,
    259200,
    345600,
    432000,
    518400,
    604800
  ],
  "type": "number",
  "default": 7200,
  "description": "Value of the zone setting.\nNotes: The minimum TTL available depends on the plan level of the zone. (Enterprise = 30, Business = 1800, Pro = 3600, Free = 7200)"
}
object zones_email_obfuscation
{
  "type": "object",
  "title": "Email Obfuscation",
  "properties": {
    "id": {
      "enum": [
        "email_obfuscation"
      ],
      "type": "string",
      "description": "Turn on or off **Email Obfuscation**.",
      "x-auditable": true
    },
    "value": {
      "enum": [
        "on",
        "off"
      ],
      "type": "string",
      "example": "on",
      "description": "The status of Email Obfuscation.\n",
      "x-auditable": true
    }
  },
  "x-stainless-skip": [
    "terraform"
  ]
}
string zones_email_obfuscation_value
{
  "enum": [
    "on",
    "off"
  ],
  "type": "string",
  "default": "on",
  "description": "Value of the zone setting."
}
object zones_explicit_cache_control
{
  "type": "object",
  "title": "Origin Cache Control",
  "properties": {
    "id": {
      "enum": [
        "explicit_cache_control"
      ],
      "type": "string",
      "description": "Origin Cache Control is enabled by default for Free, Pro, and\nBusiness domains and disabled by default for Enterprise domains.\n",
      "x-auditable": true
    },
    "value": {
      "enum": [
        "on",
        "off"
      ],
      "type": "string",
      "example": "on",
      "description": "The status of Origin Cache Control.\n",
      "x-auditable": true
    }
  },
  "x-stainless-skip": [
    "terraform"
  ]
}
object zones_forwarding_url
{
  "type": "object",
  "title": "Forwarding URL",
  "properties": {
    "id": {
      "enum": [
        "forwarding_url"
      ],
      "type": "string",
      "example": "forwarding_url",
      "description": "Redirects one URL to another using an `HTTP 301/302` redirect. Refer\nto [Wildcard matching and referencing](https://developers.cloudflare.com/rules/page-rules/reference/wildcard-matching/).\n",
      "x-auditable": true
    },
    "value": {
      "properties": {
        "url": {
          "type": "string",
          "example": "http://www.example.com/somewhere/$1/astring/$2/anotherstring/$3",
          "maxLength": 1500,
          "description": "The URL to redirect the request to.\nNotes: ${num} refers to the position of '*' in the constraint value.",
          "x-auditable": true
        },
        "status_code": {
          "enum": [
            301,
            302
          ],
          "type": "integer",
          "example": "temporary",
          "description": "The status code to use for the URL redirect. 301 is a permanent\nredirect. 302 is a temporary redirect.\n",
          "x-auditable": true
        }
      }
    }
  },
  "x-stainless-skip": [
    "terraform"
  ]
}
object zones_h2_prioritization
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "h2_prioritization"
          ],
          "example": "h2_prioritization",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_h2_prioritization_value"
        }
      }
    }
  ],
  "title": "HTTP/2 Edge Prioritization",
  "description": "HTTP/2 Edge Prioritization optimises the delivery of resources served through HTTP/2 to improve page load performance. It also supports fine control of content delivery when used in conjunction with Workers."
}
string zones_h2_prioritization_value
{
  "enum": [
    "on",
    "off",
    "custom"
  ],
  "type": "string",
  "default": "off",
  "description": "Value of the zone setting."
}
object zones_host_header_override
{
  "type": "object",
  "title": "Host Header Override",
  "properties": {
    "id": {
      "enum": [
        "host_header_override"
      ],
      "type": "string",
      "description": "Apply a specific host header.",
      "x-auditable": true
    },
    "value": {
      "type": "string",
      "example": "example.com",
      "minLength": 1,
      "description": "The hostname to use in the `Host` header",
      "x-auditable": true
    }
  },
  "x-stainless-skip": [
    "terraform"
  ]
}
object zones_hotlink_protection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "hotlink_protection"
          ],
          "example": "hotlink_protection",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_hotlink_protection_value"
        }
      }
    }
  ],
  "title": "Hotlink Protection",
  "description": "When enabled, the Hotlink Protection option ensures that other sites cannot suck up your bandwidth by building pages that use images hosted on your site. Anytime a request for an image on your site hits Cloudflare, we check to ensure that it's not another site requesting them. People will still be able to download and view images from your page, but other sites won't be able to steal them for use on their own pages. (https://support.cloudflare.com/hc/en-us/articles/200170026)."
}
string zones_hotlink_protection_value
{
  "enum": [
    "on",
    "off"
  ],
  "type": "string",
  "default": "off",
  "description": "Value of the zone setting."
}
object zones_http2
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "http2"
          ],
          "example": "http2",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_http2_value"
        }
      }
    }
  ],
  "title": "HTTP2 Value",
  "description": "HTTP2 enabled for this zone."
}
string zones_http2_value
{
  "enum": [
    "on",
    "off"
  ],
  "type": "string",
  "default": "off",
  "description": "Value of the HTTP2 setting."
}
object zones_http3
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "http3"
          ],
          "example": "http3",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_http3_value"
        }
      }
    }
  ],
  "title": "HTTP3 Value",
  "description": "HTTP3 enabled for this zone."
}
string zones_http3_value
{
  "enum": [
    "on",
    "off"
  ],
  "type": "string",
  "default": "off",
  "description": "Value of the HTTP3 setting."
}
string zones_identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Identifier"
}
object zones_image_resizing
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "image_resizing"
          ],
          "example": "image_resizing",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_image_resizing_value"
        }
      }
    }
  ],
  "title": "Image Transformations",
  "description": "Image Transformations provides on-demand resizing, conversion and optimization for images served through Cloudflare's network. Refer to the [Image Transformations documentation](https://developers.cloudflare.com/images/) for more information."
}
string zones_image_resizing_value
{
  "enum": [
    "on",
    "off",
    "open"
  ],
  "type": "string",
  "default": "off",
  "description": "Whether the feature is enabled, disabled, or enabled in `open proxy` mode."
}
object zones_ip_geolocation
{
  "type": "object",
  "title": "IP Geolocation Header",
  "properties": {
    "id": {
      "enum": [
        "ip_geolocation"
      ],
      "type": "string",
      "example": "ip_geolocation",
      "description": "Cloudflare adds a CF-IPCountry HTTP header containing the country code that corresponds to the visitor.\n",
      "x-auditable": true
    },
    "value": {
      "enum": [
        "on",
        "off"
      ],
      "type": "string",
      "example": "on",
      "description": "The status of adding the IP Geolocation Header.\n",
      "x-auditable": true
    }
  },
  "x-stainless-skip": [
    "terraform"
  ]
}
string zones_ip_geolocation_value
{
  "enum": [
    "on",
    "off"
  ],
  "type": "string",
  "default": "on",
  "description": "Value of the zone setting."
}
object zones_ipv6
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "ipv6"
          ],
          "example": "ipv6",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_ipv6_value"
        }
      }
    }
  ],
  "title": "IPv6",
  "description": "Enable IPv6 on all subdomains that are Cloudflare enabled.  (https://support.cloudflare.com/hc/en-us/articles/200168586)."
}
string zones_ipv6_value
{
  "enum": [
    "off",
    "on"
  ],
  "type": "string",
  "default": "off",
  "description": "Value of the zone setting."
}
object zones_max_upload
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "max_upload"
          ],
          "example": "max_upload",
          "description": "identifier of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_max_upload_value"
        }
      }
    }
  ],
  "title": "Max Upload",
  "description": "Maximum size of an allowable upload."
}
integer zones_max_upload_value
{
  "enum": [
    100,
    125,
    150,
    175,
    200,
    225,
    250,
    275,
    300,
    325,
    350,
    375,
    400,
    425,
    450,
    475,
    500,
    1000
  ],
  "type": "integer",
  "default": 100,
  "description": "Value of the zone setting.\nNotes: The size depends on the plan level of the zone. (Enterprise = 500, Business = 200, Pro = 100, Free = 100)"
}
array zones_messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "message": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
object zones_min_tls_version
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "min_tls_version"
          ],
          "example": "min_tls_version",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_min_tls_version_value"
        }
      }
    }
  ],
  "title": "Zone Minimum TLS Version value",
  "default": "1.0",
  "description": "Only accepts HTTPS requests that use at least the TLS protocol version specified. For example, if TLS 1.1 is selected, TLS 1.0 connections will be rejected, while 1.1, 1.2, and 1.3 (if enabled) will be permitted."
}
string zones_min_tls_version_value
{
  "enum": [
    "1.0",
    "1.1",
    "1.2",
    "1.3"
  ],
  "type": "string",
  "default": "1.0",
  "description": "Value of the zone setting."
}
object zones_mirage
{
  "type": "object",
  "title": "Mirage",
  "deprecated": true,
  "properties": {
    "id": {
      "enum": [
        "mirage"
      ],
      "type": "string",
      "example": "mirage",
      "description": "Cloudflare Mirage reduces bandwidth used by images in mobile browsers.\nIt can accelerate loading of image-heavy websites on very slow mobile connections and HTTP/1.\n",
      "x-auditable": true
    },
    "value": {
      "enum": [
        "on",
        "off"
      ],
      "type": "string",
      "example": "on",
      "description": "The status of Mirage.\n",
      "x-auditable": true
    }
  },
  "x-stainless-skip": [
    "terraform"
  ],
  "x-stainless-deprecation-message": "Mirage is deprecated. This functionality is no longer supported. \nSee https://developers.cloudflare.com/fundamentals/api/reference/deprecations/#2025-11-03 for further details.\n"
}
string zones_mirage_value
{
  "enum": [
    "on",
    "off"
  ],
  "type": "string",
  "default": "off",
  "deprecated": true,
  "description": "Value of the zone setting.",
  "x-stainless-deprecation-message": "Mirage is being deprecated. More information at https://developers.cloudflare.com/speed/optimization/images/mirage/"
}
string zones_modified_on
{
  "type": "string",
  "format": "date-time",
  "example": "2014-01-01T05:20:00.12345Z",
  "readOnly": true,
  "description": "The timestamp of when the Page Rule was last modified.",
  "x-auditable": true
}
array zones_multiple_settings
{
  "type": "array",
  "items": {
    "anyOf": [
      {
        "$ref": "#/components/schemas/zones_0rtt"
      },
      {
        "$ref": "#/components/schemas/zones_advanced_ddos"
      },
      {
        "$ref": "#/components/schemas/zones_cache-rules_aegis"
      },
      {
        "$ref": "#/components/schemas/zones_always_online"
      },
      {
        "$ref": "#/components/schemas/zones_schemas-always_use_https"
      },
      {
        "$ref": "#/components/schemas/zones_schemas-automatic_https_rewrites"
      },
      {
        "$ref": "#/components/schemas/zones_brotli"
      },
      {
        "$ref": "#/components/schemas/zones_schemas-browser_cache_ttl"
      },
      {
        "$ref": "#/components/schemas/zones_schemas-browser_check"
      },
      {
        "$ref": "#/components/schemas/zones_schemas-cache_level"
      },
      {
        "$ref": "#/components/schemas/zones_challenge_ttl"
      },
      {
        "$ref": "#/components/schemas/zones_china_network_enabled"
      },
      {
        "$ref": "#/components/schemas/zones_content_converter"
      },
      {
        "$ref": "#/components/schemas/zones_ciphers"
      },
      {
        "$ref": "#/components/schemas/zones_cname_flattening"
      },
      {
        "$ref": "#/components/schemas/zones_development_mode"
      },
      {
        "$ref": "#/components/schemas/zones_early_hints"
      },
      {
        "$ref": "#/components/schemas/zones_schemas-edge_cache_ttl"
      },
      {
        "$ref": "#/components/schemas/zones_schemas-email_obfuscation"
      },
      {
        "$ref": "#/components/schemas/zones_h2_prioritization"
      },
      {
        "$ref": "#/components/schemas/zones_hotlink_protection"
      },
      {
        "$ref": "#/components/schemas/zones_http2"
      },
      {
        "$ref": "#/components/schemas/zones_http3"
      },
      {
        "$ref": "#/components/schemas/zones_schemas-ip_geolocation"
      },
      {
        "$ref": "#/components/schemas/zones_ipv6"
      },
      {
        "$ref": "#/components/schemas/zones_max_upload"
      },
      {
        "$ref": "#/components/schemas/zones_min_tls_version"
      },
      {
        "$ref": "#/components/schemas/zones_schemas-mirage"
      },
      {
        "$ref": "#/components/schemas/zones_nel"
      },
      {
        "$ref": "#/components/schemas/zones_schemas-opportunistic_encryption"
      },
      {
        "$ref": "#/components/schemas/zones_opportunistic_onion"
      },
      {
        "$ref": "#/components/schemas/zones_orange_to_orange"
      },
      {
        "$ref": "#/components/schemas/zones_schemas-origin_error_page_pass_thru"
      },
      {
        "$ref": "#/components/schemas/zones_cache-rules_origin_h2_max_streams"
      },
      {
        "$ref": "#/components/schemas/zones_cache-rules_origin_max_http_version"
      },
      {
        "$ref": "#/components/schemas/zones_schemas-polish"
      },
      {
        "$ref": "#/components/schemas/zones_prefetch_preload"
      },
      {
        "$ref": "#/components/schemas/zones_privacy_pass"
      },
      {
        "$ref": "#/components/schemas/zones_proxy_read_timeout"
      },
      {
        "$ref": "#/components/schemas/zones_pseudo_ipv4"
      },
      {
        "$ref": "#/components/schemas/zones_redirects_for_ai_training"
      },
      {
        "$ref": "#/components/schemas/zones_replace_insecure_js"
      },
      {
        "$ref": "#/components/schemas/zones_schemas-response_buffering"
      },
      {
        "$ref": "#/components/schemas/zones_schemas-rocket_loader"
      },
      {
        "$ref": "#/components/schemas/zones_schemas-automatic_platform_optimization"
      },
      {
        "$ref": "#/components/schemas/zones_security_header"
      },
      {
        "$ref": "#/components/schemas/zones_schemas-security_level"
      },
      {
        "$ref": "#/components/schemas/zones_server_side_exclude"
      },
      {
        "$ref": "#/components/schemas/zones_sha1_support"
      },
      {
        "$ref": "#/components/schemas/zones_schemas-sort_query_string_for_cache"
      },
      {
        "$ref": "#/components/schemas/zones_schemas-ssl"
      },
      {
        "$ref": "#/components/schemas/zones_ssl_recommender"
      },
      {
        "$ref": "#/components/schemas/zones_tls_1_2_only"
      },
      {
        "$ref": "#/components/schemas/zones_tls_1_3"
      },
      {
        "$ref": "#/components/schemas/zones_tls_client_auth"
      },
      {
        "$ref": "#/components/schemas/zones_schemas-true_client_ip_header"
      },
      {
        "$ref": "#/components/schemas/zones_schemas-waf"
      },
      {
        "$ref": "#/components/schemas/zones_webp"
      },
      {
        "$ref": "#/components/schemas/zones_websockets"
      }
    ]
  }
}
string zones_name
{
  "type": "string",
  "example": "example.com",
  "pattern": "^([a-zA-Z0-9][\\-a-zA-Z0-9]*\\.)+[\\-a-zA-Z0-9]{2,20}$",
  "maxLength": 253,
  "description": "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."
}
object zones_nel
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "nel"
          ],
          "example": "nel",
          "description": "Zone setting identifier."
        },
        "value": {
          "$ref": "#/components/schemas/zones_nel_value"
        }
      }
    }
  ],
  "title": "Network Error Logging",
  "description": "Enable Network Error Logging reporting on your zone. (Beta) "
}
object zones_nel_value
{
  "type": "object",
  "default": {
    "enabled": false
  },
  "properties": {
    "enabled": {
      "type": "boolean",
      "default": false,
      "example": false
    }
  },
  "description": "Value of the zone setting."
}
object zones_opportunistic_encryption
{
  "type": "object",
  "title": "Opportunistic Encryption",
  "properties": {
    "id": {
      "enum": [
        "opportunistic_encryption"
      ],
      "type": "string",
      "example": "opportunistic_encryption",
      "description": "Opportunistic Encryption allows browsers to access HTTP URIs over an encrypted TLS channel.\nIt's not a substitute for HTTPS, but provides additional security for otherwise vulnerable requests.\n",
      "x-auditable": true
    },
    "value": {
      "enum": [
        "on",
        "off"
      ],
      "type": "string",
      "example": "on",
      "description": "The status of Opportunistic Encryption.\n",
      "x-auditable": true
    }
  },
  "x-stainless-skip": [
    "terraform"
  ]
}
string zones_opportunistic_encryption_value
{
  "enum": [
    "on",
    "off"
  ],
  "type": "string",
  "default": "on",
  "description": "Value of the zone setting.\nNotes: Default value depends on the zone's plan level."
}
object zones_opportunistic_onion
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "opportunistic_onion"
          ],
          "example": "opportunistic_onion",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_opportunistic_onion_value"
        }
      }
    }
  ],
  "title": "Zone Enable Onion Routing",
  "default": "off",
  "description": "Add an Alt-Svc header to all legitimate requests from Tor, allowing the connection to use our onion services instead of exit nodes."
}
string zones_opportunistic_onion_value
{
  "enum": [
    "on",
    "off"
  ],
  "type": "string",
  "default": "off",
  "description": "Value of the zone setting.\nNotes: Default value depends on the zone's plan level."
}
object zones_orange_to_orange
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "orange_to_orange"
          ],
          "example": "orange_to_orange",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_orange_to_orange_value"
        }
      }
    }
  ],
  "title": "Orange to Orange",
  "description": "Orange to Orange (O2O) allows zones on Cloudflare to CNAME to other zones also on Cloudflare."
}
string zones_orange_to_orange_value
{
  "enum": [
    "on",
    "off"
  ],
  "type": "string",
  "default": "on",
  "description": "Value of the zone setting."
}
object zones_origin_error_page_pass_thru
{
  "type": "object",
  "title": "Origin Error Page Passthru",
  "properties": {
    "id": {
      "enum": [
        "origin_error_page_pass_thru"
      ],
      "type": "string",
      "example": "origin_error_page_pass_thru",
      "description": "Turn on or off Cloudflare error pages generated from issues sent from the origin server. If enabled, this setting triggers error pages issued by the origin.\n",
      "x-auditable": true
    },
    "value": {
      "enum": [
        "on",
        "off"
      ],
      "type": "string",
      "example": "on",
      "description": "The status of Origin Error Page Passthru.\n",
      "x-auditable": true
    }
  },
  "x-stainless-skip": [
    "terraform"
  ]
}
string zones_origin_error_page_pass_thru_value
{
  "enum": [
    "on",
    "off"
  ],
  "type": "string",
  "default": "off",
  "description": "Value of the zone setting."
}
object zones_page_rule
{
  "type": "object",
  "required": [
    "id",
    "targets",
    "actions",
    "priority",
    "status",
    "modified_on",
    "created_on"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/zones_schemas-identifier"
    },
    "status": {
      "$ref": "#/components/schemas/zones_status"
    },
    "actions": {
      "$ref": "#/components/schemas/zones_actions"
    },
    "targets": {
      "$ref": "#/components/schemas/zones_targets"
    },
    "priority": {
      "$ref": "#/components/schemas/zones_priority"
    },
    "created_on": {
      "$ref": "#/components/schemas/zones_created_on"
    },
    "modified_on": {
      "$ref": "#/components/schemas/zones_modified_on"
    }
  }
}
boolean zones_paused
{
  "type": "boolean",
  "default": false,
  "description": "Indicates whether the zone is only using Cloudflare DNS services. A\ntrue value means the zone will not receive security or performance\nbenefits.\n"
}
object zones_polish
{
  "type": "object",
  "title": "Polish",
  "properties": {
    "id": {
      "enum": [
        "polish"
      ],
      "type": "string",
      "example": "polish",
      "description": "Apply options from the Polish feature of the Cloudflare Speed app.\n",
      "x-auditable": true
    },
    "value": {
      "enum": [
        "off",
        "lossless",
        "lossy"
      ],
      "type": "string",
      "example": "lossless",
      "description": "The level of Polish you want applied to your origin.\n",
      "x-auditable": true
    }
  },
  "x-stainless-skip": [
    "terraform"
  ]
}
string zones_polish_value
{
  "enum": [
    "off",
    "lossless",
    "lossy"
  ],
  "type": "string",
  "default": "off",
  "description": "Value of the zone setting."
}
object zones_prefetch_preload
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "prefetch_preload"
          ],
          "example": "prefetch_preload",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_prefetch_preload_value"
        }
      }
    }
  ],
  "title": "Prefetch preload",
  "default": "off",
  "description": "Cloudflare will prefetch any URLs that are included in the response headers. This is limited to Enterprise Zones."
}
string zones_prefetch_preload_value
{
  "enum": [
    "on",
    "off"
  ],
  "type": "string",
  "default": "off",
  "description": "Value of the zone setting."
}
integer zones_priority
{
  "type": "integer",
  "default": 1,
  "description": "The priority of the rule, used to define which Page Rule is processed\nover another. A higher number indicates a higher priority. For example,\nif you have a catch-all Page Rule (rule A: `/images/*`) but want a more\nspecific Page Rule to take precedence (rule B: `/images/special/*`),\nspecify a higher priority for rule B so it overrides rule A.\n",
  "x-auditable": true
}
object zones_privacy_pass
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "privacy_pass"
          ],
          "example": "privacy_pass",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_privacy_pass_value"
        }
      }
    }
  ],
  "title": "Privacy Pass v1 (deprecated)",
  "default": "off",
  "deprecated": true,
  "description": "Privacy Pass v1 was a browser extension developed by the Privacy Pass Team to improve the browsing experience for your visitors by allowing users to reduce the number of CAPTCHAs shown. (https://support.cloudflare.com/hc/en-us/articles/115001992652-Privacy-Pass).",
  "x-stainless-deprecation-message": "Privacy Pass v1 was deprecated in 2023. (Announcement - https://blog.cloudflare.com/privacy-pass-standard/) and (API deprecation details - https://developers.cloudflare.com/fundamentals/api/reference/deprecations/#2024-03-31)"
}
string zones_privacy_pass_value
{
  "enum": [
    "on",
    "off"
  ],
  "type": "string",
  "default": "off",
  "deprecated": true,
  "description": "Value of the Privacy Pass v1 (deprecated) zone setting",
  "x-stainless-deprecation-message": "Privacy Pass v1 was deprecated in 2023. (Announcement - https://blog.cloudflare.com/privacy-pass-standard/) and (API deprecation details - https://developers.cloudflare.com/fundamentals/api/reference/deprecations/#2024-03-31)"
}
object zones_proxy_read_timeout
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "proxy_read_timeout"
          ],
          "example": "proxy_read_timeout",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_proxy_read_timeout_value"
        }
      }
    }
  ],
  "title": "Proxy Read Timeout",
  "description": "Maximum time between two read operations from origin."
}
number zones_proxy_read_timeout_value
{
  "type": "number",
  "default": 100,
  "description": "Value of the zone setting.\nNotes: Value must be between 1 and 6000"
}
object zones_pseudo_ipv4
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "pseudo_ipv4"
          ],
          "default": "pseudo_ipv4",
          "description": "Value of the Pseudo IPv4 setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_pseudo_ipv4_value"
        }
      }
    }
  ],
  "title": "Pseudo IPv4 Value",
  "description": "The value set for the Pseudo IPv4 setting."
}
string zones_pseudo_ipv4_value
{
  "enum": [
    "off",
    "add_header",
    "overwrite_header"
  ],
  "type": "string",
  "default": "off",
  "description": "Value of the Pseudo IPv4 setting."
}
object zones_redirects_for_ai_training
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "redirects_for_ai_training"
          ],
          "example": "redirects_for_ai_training",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_redirects_for_ai_training_value"
        }
      }
    }
  ],
  "title": "Redirects for AI Training",
  "description": "When enabled, Cloudflare will redirect verified AI training crawlers to canonical URLs\nfound in the HTML response, ensuring AI models train on authoritative content."
}
string zones_redirects_for_ai_training_value
{
  "enum": [
    "off",
    "on"
  ],
  "type": "string",
  "default": "off",
  "description": "Value of the zone setting."
}
object zones_replace_insecure_js
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "replace_insecure_js"
          ],
          "example": "replace_insecure_js",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_replace_insecure_js_value"
        }
      }
    }
  ],
  "title": "Replace insecure JavaScript libraries",
  "description": "Automatically replace insecure JavaScript libraries with safer and faster alternatives provided under cdnjs and powered by Cloudflare. Currently supports the following libraries: Polyfill under polyfill.io.\n"
}
string zones_replace_insecure_js_value
{
  "enum": [
    "on",
    "off"
  ],
  "type": "string",
  "default": "off",
  "description": "Value of the zone setting."
}
object zones_resolve_override
{
  "type": "object",
  "title": "Resolve Override",
  "properties": {
    "id": {
      "enum": [
        "resolve_override"
      ],
      "type": "string",
      "example": "resolve_override",
      "description": "Change the origin address to the value specified in this setting.\n",
      "x-auditable": true
    },
    "value": {
      "type": "string",
      "example": "example.com",
      "description": "The origin address you want to override with.\n",
      "x-auditable": true
    }
  },
  "x-stainless-skip": [
    "terraform"
  ]
}
object zones_respect_strong_etag
{
  "type": "object",
  "title": "Respect Strong ETags",
  "properties": {
    "id": {
      "enum": [
        "respect_strong_etag"
      ],
      "type": "string",
      "description": "Turn on or off byte-for-byte equivalency checks between the\nCloudflare cache and the origin server.\n",
      "x-auditable": true
    },
    "value": {
      "enum": [
        "on",
        "off"
      ],
      "type": "string",
      "example": "on",
      "description": "The status of Respect Strong ETags\n",
      "x-auditable": true
    }
  },
  "x-stainless-skip": [
    "terraform"
  ]
}
object zones_response_buffering
{
  "type": "object",
  "title": "Response Buffering",
  "deprecated": true,
  "properties": {
    "id": {
      "enum": [
        "response_buffering"
      ],
      "type": "string",
      "description": "Turn on or off whether Cloudflare should wait for an entire file\nfrom the origin server before forwarding it to the site visitor. By\ndefault, Cloudflare sends packets to the client as they arrive from\nthe origin server.\n",
      "x-auditable": true
    },
    "value": {
      "enum": [
        "on",
        "off"
      ],
      "type": "string",
      "example": "on",
      "description": "The status of Response Buffering\n",
      "x-auditable": true
    }
  },
  "x-stainless-skip": [
    "terraform"
  ],
  "x-stainless-deprecation-message": "This page rule is deprecated. This functionality is no longer supported."
}
string zones_response_buffering_value
{
  "enum": [
    "on",
    "off"
  ],
  "type": "string",
  "default": "off",
  "description": "Value of the zone setting."
}
object zones_result_info
{
  "type": "object",
  "properties": {
    "page": {
      "type": "number",
      "example": 1,
      "description": "Current page within paginated list of results."
    },
    "count": {
      "type": "number",
      "example": 1,
      "description": "Total number of results for the requested service."
    },
    "per_page": {
      "type": "number",
      "example": 20,
      "description": "Number of results per page of results."
    },
    "total_count": {
      "type": "number",
      "example": 2000,
      "description": "Total results available without any search parameters."
    },
    "total_pages": {
      "type": "number",
      "example": 100,
      "description": "Total number of pages"
    }
  }
}
object zones_rocket_loader
{
  "type": "object",
  "title": "Rocket Loader",
  "properties": {
    "id": {
      "enum": [
        "rocket_loader"
      ],
      "type": "string",
      "description": "Turn on or off Rocket Loader in the Cloudflare Speed app.\n",
      "x-auditable": true
    },
    "value": {
      "enum": [
        "on",
        "off"
      ],
      "type": "string",
      "example": "on",
      "description": "The status of Rocket Loader\n",
      "x-auditable": true
    }
  },
  "x-stainless-skip": [
    "terraform"
  ]
}
string zones_rocket_loader_value
{
  "enum": [
    "on",
    "off"
  ],
  "type": "string",
  "default": "off",
  "description": "Value of the zone setting."
}
object zones_schemas-always_use_https
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "always_use_https"
          ],
          "example": "always_use_https",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_always_use_https_value"
        }
      }
    }
  ],
  "title": "Zone Enable Always Use HTTPS",
  "default": "off",
  "description": "Reply to all requests for URLs that use \"http\" with a 301 redirect to the equivalent \"https\" URL. If you only want to redirect for a subset of requests, consider creating an \"Always use HTTPS\" page rule."
}
object zones_schemas-api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/zones_schemas-messages"
    },
    "success": {
      "enum": [
        true
      ],
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "$ref": "#/components/schemas/zones_schemas-messages"
    }
  }
}
object zones_schemas-api-response-common-failure
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages",
    "result"
  ],
  "properties": {
    "errors": {
      "allOf": [
        {
          "$ref": "#/components/schemas/zones_schemas-messages"
        }
      ],
      "example": [
        {
          "code": 7003,
          "message": "No route for the URI"
        }
      ],
      "minLength": 1
    },
    "result": {
      "enum": [
        null
      ],
      "type": "object",
      "nullable": true
    },
    "success": {
      "enum": [
        false
      ],
      "type": "boolean",
      "example": false,
      "description": "Whether the API call was successful."
    },
    "messages": {
      "allOf": [
        {
          "$ref": "#/components/schemas/zones_schemas-messages"
        }
      ],
      "example": []
    }
  }
}
object zones_schemas-api-response-single
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_components-schemas-api-response-common"
    },
    {
      "properties": {
        "result": {
          "anyOf": [
            {
              "type": "object"
            },
            {
              "type": "string"
            }
          ]
        }
      }
    }
  ]
}
object zones_schemas-api-response-single-id
{
  "type": "object",
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_schemas-api-response-common"
    },
    {
      "type": "object",
      "properties": {
        "result": {
          "type": "object",
          "nullable": true,
          "required": [
            "id"
          ],
          "properties": {
            "id": {
              "$ref": "#/components/schemas/zones_schemas-identifier"
            }
          }
        }
      }
    }
  ]
}
object zones_schemas-automatic_https_rewrites
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "automatic_https_rewrites"
          ],
          "example": "automatic_https_rewrites",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_automatic_https_rewrites_value"
        }
      }
    }
  ],
  "title": "Zone Enable Automatic HTTPS Rewrites",
  "default": "off",
  "description": "Enable the Automatic HTTPS Rewrites feature for this zone."
}
object zones_schemas-automatic_platform_optimization
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_schemas-base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "automatic_platform_optimization"
          ],
          "example": "automatic_platform_optimization",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_automatic_platform_optimization"
        }
      }
    }
  ],
  "title": "Automatic Platform Optimization for WordPress",
  "description": "[Automatic Platform Optimization for WordPress](https://developers.cloudflare.com/automatic-platform-optimization/) serves your WordPress site from Cloudflare's edge network and caches third-party fonts."
}
object zones_schemas-base
{
  "required": [
    "id",
    "value"
  ],
  "properties": {
    "id": {
      "type": "string",
      "example": "development_mode",
      "description": "Identifier of the zone setting."
    },
    "value": {
      "example": "on",
      "description": "Current value of the zone setting."
    },
    "editable": {
      "enum": [
        true,
        false
      ],
      "type": "boolean",
      "readOnly": true,
      "description": "Whether or not this setting can be modified for this zone (based on your Cloudflare plan level)."
    },
    "modified_on": {
      "type": "string",
      "format": "date-time",
      "example": "2014-01-01T05:20:00.12345Z",
      "nullable": true,
      "readOnly": true,
      "description": "last time this setting was modified."
    }
  }
}
object zones_schemas-browser_cache_ttl
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "browser_cache_ttl"
          ],
          "example": "browser_cache_ttl",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_browser_cache_ttl_value"
        }
      }
    }
  ],
  "title": "Browser Cache TTL",
  "description": "Browser Cache TTL (in seconds) specifies how long Cloudflare-cached resources will remain on your visitors' computers. Cloudflare will honor any larger times specified by your server. (https://support.cloudflare.com/hc/en-us/articles/200168276)."
}
object zones_schemas-browser_check
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "browser_check"
          ],
          "example": "browser_check",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_browser_check_value"
        }
      }
    }
  ],
  "title": "Browser Check",
  "description": "Browser Integrity Check is similar to Bad Behavior and looks for common HTTP headers abused most commonly by spammers and denies access to your page.  It will also challenge visitors that do not have a user agent or a non standard user agent (also commonly used by abuse bots, crawlers or visitors). (https://support.cloudflare.com/hc/en-us/articles/200170086)."
}
object zones_schemas-cache_level
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "cache_level"
          ],
          "example": "cache_level",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_cache_level_value"
        }
      }
    }
  ],
  "title": "Cloudflare Cache Level",
  "description": "Cache Level functions based off the setting level. The basic setting will cache most static resources (i.e., css, images, and JavaScript). The simplified setting will ignore the query string when delivering a cached resource. The aggressive setting will cache all static resources, including ones with a query string. (https://support.cloudflare.com/hc/en-us/articles/200168256)."
}
object zones_schemas-edge_cache_ttl
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "edge_cache_ttl"
          ],
          "example": "edge_cache_ttl",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_edge_cache_ttl_value"
        }
      }
    }
  ],
  "title": "Edge Cache TTL",
  "description": "Time (in seconds) that a resource will be ensured to remain on Cloudflare's cache servers."
}
object zones_schemas-email_obfuscation
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "email_obfuscation"
          ],
          "example": "email_obfuscation",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_email_obfuscation_value"
        }
      }
    }
  ],
  "title": "Email Obfuscation",
  "description": "Encrypt email adresses on your web page from bots, while keeping them visible to humans. (https://support.cloudflare.com/hc/en-us/articles/200170016)."
}
string zones_schemas-identifier
{
  "type": "string",
  "example": "023e105f4ecef8ad9ca31a8372d0c353",
  "maxLength": 32,
  "description": "Identifier.",
  "x-auditable": true
}
object zones_schemas-ip_geolocation
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "ip_geolocation"
          ],
          "example": "ip_geolocation",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_ip_geolocation_value"
        }
      }
    }
  ],
  "title": "IP Geolocation",
  "description": "Enable IP Geolocation to have Cloudflare geolocate visitors to your website and pass the country code to you. (https://support.cloudflare.com/hc/en-us/articles/200168236)."
}
array zones_schemas-messages
{
  "type": "array",
  "items": {
    "type": "object",
    "required": [
      "code",
      "message"
    ],
    "properties": {
      "code": {
        "type": "integer",
        "minimum": 1000
      },
      "source": {
        "type": "object",
        "properties": {
          "pointer": {
            "type": "string"
          }
        }
      },
      "message": {
        "type": "string"
      },
      "documentation_url": {
        "type": "string"
      }
    },
    "uniqueItems": true
  },
  "example": []
}
object zones_schemas-mirage
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "mirage"
          ],
          "example": "mirage",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_mirage_value"
        }
      }
    }
  ],
  "title": "Mirage Image Optimization",
  "deprecated": true,
  "description": "Automatically optimize image loading for website visitors on mobile\ndevices. Refer to [our blog post](http://blog.cloudflare.com/mirage2-solving-mobile-speed)\nfor more information.\n",
  "x-stainless-deprecation-message": "Mirage is being deprecated. More information at https://developers.cloudflare.com/speed/optimization/images/mirage/"
}
object zones_schemas-opportunistic_encryption
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "opportunistic_encryption"
          ],
          "example": "opportunistic_encryption",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_opportunistic_encryption_value"
        }
      }
    }
  ],
  "title": "Enable Opportunistic Encryption for a zone",
  "description": "Enables the Opportunistic Encryption feature for a zone."
}
object zones_schemas-origin_error_page_pass_thru
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "origin_error_page_pass_thru"
          ],
          "example": "origin_error_page_pass_thru",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_origin_error_page_pass_thru_value"
        }
      }
    }
  ],
  "title": "Error Pages On",
  "default": "off",
  "description": "Cloudflare will proxy customer error pages on any 502,504 errors on origin server instead of showing a default Cloudflare error page. This does not apply to 522 errors and is limited to Enterprise Zones."
}
object zones_schemas-polish
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "polish"
          ],
          "example": "polish",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_polish_value"
        }
      }
    }
  ],
  "title": "Polish Image Optimization",
  "description": "Removes metadata and compresses your images for faster page load times. Basic (Lossless): Reduce the size of PNG, JPEG, and GIF files - no impact on visual quality. Basic + JPEG (Lossy): Further reduce the size of JPEG files for faster image loading. Larger JPEGs are converted to progressive images, loading a lower-resolution image first and ending in a higher-resolution version. Not recommended for hi-res photography sites."
}
object zones_schemas-response_buffering
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "response_buffering"
          ],
          "example": "response_buffering",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_response_buffering_value"
        }
      }
    }
  ],
  "title": "Response Buffering",
  "default": "off",
  "deprecated": true,
  "description": "Enables or disables buffering of responses from the proxied server. Cloudflare may buffer the whole payload to deliver it at once to the client versus allowing it to be delivered in chunks. By default, the proxied server streams directly and is not buffered by Cloudflare. This is limited to Enterprise Zones.",
  "x-stainless-deprecation-message": "This zone setting is deprecated. This functionality is no longer supported."
}
object zones_schemas-rocket_loader
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "rocket_loader"
          ],
          "example": "rocket_loader",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_rocket_loader_value"
        }
      }
    }
  ],
  "title": "Rocket Loader",
  "description": "Rocket Loader is a general-purpose asynchronous JavaScript optimisation that prioritises rendering your content while loading your site's Javascript asynchronously. Turning on Rocket Loader will immediately improve a web page's rendering time sometimes measured as Time to First Paint (TTFP), and also the `window.onload` time (assuming there is JavaScript on the page). This can have a positive impact on your Google search ranking. When turned on, Rocket Loader will automatically defer the loading of all Javascript referenced in your HTML, with no configuration required. Refer to [Understanding Rocket Loader](https://support.cloudflare.com/hc/articles/200168056) for more information."
}
object zones_schemas-security_level
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "security_level"
          ],
          "example": "security_level",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_security_level_value"
        }
      }
    }
  ],
  "title": "Security Level",
  "description": "Choose the appropriate security profile for your website, which will automatically adjust each of the security settings. If you choose to customize an individual security setting, the profile will become Custom. (https://support.cloudflare.com/hc/en-us/articles/200170056)."
}
object zones_schemas-sort_query_string_for_cache
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "sort_query_string_for_cache"
          ],
          "example": "sort_query_string_for_cache",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_sort_query_string_for_cache_value"
        }
      }
    }
  ],
  "title": "Get String Sort",
  "default": "off",
  "description": "Cloudflare will treat files with the same query strings as the same file in cache, regardless of the order of the query strings. This is limited to Enterprise Zones."
}
object zones_schemas-ssl
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "ssl"
          ],
          "example": "ssl",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_ssl_value"
        }
      }
    }
  ],
  "title": "SSL",
  "description": "SSL encrypts your visitor's connection and safeguards credit card numbers and other personal data to and from your website. SSL can take up to 5 minutes to fully activate. Requires Cloudflare active on your root domain or www domain. Off: no SSL between the visitor and Cloudflare, and no SSL between Cloudflare and your web server  (all HTTP traffic). Flexible: SSL between the visitor and Cloudflare -- visitor sees HTTPS on your site, but no SSL between Cloudflare and your web server. You don't need to have an SSL cert on your web server, but your vistors will still see the site as being HTTPS enabled. Full:  SSL between the visitor and Cloudflare -- visitor sees HTTPS on your site, and SSL between Cloudflare and your web server. You'll need to have your own SSL cert or self-signed cert at the very least. Full (Strict): SSL between the visitor and Cloudflare -- visitor sees HTTPS on your site, and SSL between Cloudflare and your web server. You'll need to have a valid SSL certificate installed on your web server. This certificate must be signed by a certificate authority, have an expiration date in the future, and respond for the request domain name (hostname). (https://support.cloudflare.com/hc/en-us/articles/200170416)."
}
object zones_schemas-true_client_ip_header
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "true_client_ip_header"
          ],
          "example": "true_client_ip_header",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_true_client_ip_header_value"
        }
      }
    }
  ],
  "title": "True Client IP Header",
  "default": "off",
  "description": "Allows customer to continue to use True Client IP (Akamai feature) in the headers we send to the origin. This is limited to Enterprise Zones."
}
object zones_schemas-waf
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "waf"
          ],
          "example": "waf",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_waf_value"
        }
      }
    }
  ],
  "title": "Web Application Firewall",
  "description": "The WAF examines HTTP requests to your website.  It inspects both GET and POST requests and applies rules to help filter out illegitimate traffic from legitimate website visitors. The Cloudflare WAF inspects website addresses or URLs to detect anything out of the ordinary. If the Cloudflare WAF determines suspicious user behavior, then the WAF will 'challenge' the web visitor with a page that asks them to submit a CAPTCHA successfully  to continue their action. If the challenge is failed, the action will be stopped. What this means is that Cloudflare's WAF will block any traffic identified as illegitimate before it reaches your origin web server. (https://support.cloudflare.com/hc/en-us/articles/200172016)."
}
object zones_security_header
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "security_header"
          ],
          "example": "security_header",
          "description": "ID of the zone's security header."
        },
        "value": {
          "$ref": "#/components/schemas/zones_security_header_value"
        }
      }
    }
  ],
  "title": "Security Header",
  "description": "Cloudflare security header for a zone."
}
object zones_security_header_value
{
  "type": "object",
  "default": {
    "strict_transport_security": {
      "enabled": true,
      "max_age": 86400,
      "nosniff": true,
      "preload": false,
      "include_subdomains": true
    }
  },
  "properties": {
    "strict_transport_security": {
      "type": "object",
      "properties": {
        "enabled": {
          "type": "boolean",
          "example": true,
          "description": "Whether or not strict transport security is enabled."
        },
        "max_age": {
          "type": "number",
          "example": 86400,
          "description": "Max age in seconds of the strict transport security."
        },
        "nosniff": {
          "type": "boolean",
          "example": true,
          "description": "Whether or not to include 'X-Content-Type-Options: nosniff' header."
        },
        "preload": {
          "type": "boolean",
          "example": true,
          "description": "Enable automatic preload of the HSTS configuration."
        },
        "include_subdomains": {
          "type": "boolean",
          "example": true,
          "description": "Include all subdomains for strict transport security."
        }
      },
      "description": "Strict Transport Security."
    }
  }
}
object zones_security_level
{
  "type": "object",
  "title": "Security Level",
  "properties": {
    "id": {
      "enum": [
        "security_level"
      ],
      "type": "string",
      "description": "Control options for the **Security Level** feature from the **Security** app.\n",
      "x-auditable": true
    },
    "value": {
      "enum": [
        "off",
        "essentially_off",
        "low",
        "medium",
        "high",
        "under_attack"
      ],
      "type": "string",
      "example": "under_attack",
      "x-auditable": true
    }
  },
  "x-stainless-skip": [
    "terraform"
  ]
}
string zones_security_level_value
{
  "enum": [
    "off",
    "essentially_off",
    "low",
    "medium",
    "high",
    "under_attack"
  ],
  "type": "string",
  "default": "medium",
  "description": "Value of the zone setting."
}
object zones_server_side_exclude
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "server_side_exclude"
          ],
          "example": "server_side_exclude",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_server_side_exclude_value"
        }
      }
    }
  ],
  "title": "Server Side Exclude",
  "description": "If there is sensitive content on your website that you want visible to real visitors, but that you want to hide from suspicious visitors, all you have to do is wrap the content with Cloudflare SSE tags. Wrap any content that you want to be excluded from suspicious visitors in the following SSE tags: <!--sse--><!--/sse-->. For example: <!--sse-->  Bad visitors won't see my phone number, 555-555-5555 <!--/sse-->. Note: SSE only will work with HTML. If you have HTML minification enabled, you won't see the SSE tags in your HTML source when it's served through Cloudflare. SSE will still function in this case, as Cloudflare's HTML minification and SSE functionality occur on-the-fly as the resource moves through our network to the visitor's computer. (https://support.cloudflare.com/hc/en-us/articles/200170036)."
}
string zones_server_side_exclude_value
{
  "enum": [
    "on",
    "off"
  ],
  "type": "string",
  "default": "on",
  "description": "Value of the zone setting."
}
object zones_setting
{
  "type": "object",
  "oneOf": [
    {
      "$ref": "#/components/schemas/zones_0rtt"
    },
    {
      "$ref": "#/components/schemas/zones_advanced_ddos"
    },
    {
      "$ref": "#/components/schemas/zones_cache-rules_aegis"
    },
    {
      "$ref": "#/components/schemas/zones_always_online"
    },
    {
      "$ref": "#/components/schemas/zones_schemas-always_use_https"
    },
    {
      "$ref": "#/components/schemas/zones_schemas-automatic_https_rewrites"
    },
    {
      "$ref": "#/components/schemas/zones_brotli"
    },
    {
      "$ref": "#/components/schemas/zones_schemas-browser_cache_ttl"
    },
    {
      "$ref": "#/components/schemas/zones_schemas-browser_check"
    },
    {
      "$ref": "#/components/schemas/zones_schemas-cache_level"
    },
    {
      "$ref": "#/components/schemas/zones_challenge_ttl"
    },
    {
      "$ref": "#/components/schemas/zones_china_network_enabled"
    },
    {
      "$ref": "#/components/schemas/zones_content_converter"
    },
    {
      "$ref": "#/components/schemas/zones_ciphers"
    },
    {
      "$ref": "#/components/schemas/zones_cname_flattening"
    },
    {
      "$ref": "#/components/schemas/zones_development_mode"
    },
    {
      "$ref": "#/components/schemas/zones_early_hints"
    },
    {
      "$ref": "#/components/schemas/zones_schemas-edge_cache_ttl"
    },
    {
      "$ref": "#/components/schemas/zones_schemas-email_obfuscation"
    },
    {
      "$ref": "#/components/schemas/zones_h2_prioritization"
    },
    {
      "$ref": "#/components/schemas/zones_hotlink_protection"
    },
    {
      "$ref": "#/components/schemas/zones_http2"
    },
    {
      "$ref": "#/components/schemas/zones_http3"
    },
    {
      "$ref": "#/components/schemas/zones_image_resizing"
    },
    {
      "$ref": "#/components/schemas/zones_schemas-ip_geolocation"
    },
    {
      "$ref": "#/components/schemas/zones_ipv6"
    },
    {
      "$ref": "#/components/schemas/zones_max_upload"
    },
    {
      "$ref": "#/components/schemas/zones_min_tls_version"
    },
    {
      "$ref": "#/components/schemas/zones_schemas-mirage"
    },
    {
      "$ref": "#/components/schemas/zones_nel"
    },
    {
      "$ref": "#/components/schemas/zones_schemas-opportunistic_encryption"
    },
    {
      "$ref": "#/components/schemas/zones_opportunistic_onion"
    },
    {
      "$ref": "#/components/schemas/zones_orange_to_orange"
    },
    {
      "$ref": "#/components/schemas/zones_schemas-origin_error_page_pass_thru"
    },
    {
      "$ref": "#/components/schemas/zones_cache-rules_origin_h2_max_streams"
    },
    {
      "$ref": "#/components/schemas/zones_cache-rules_origin_max_http_version"
    },
    {
      "$ref": "#/components/schemas/zones_schemas-polish"
    },
    {
      "$ref": "#/components/schemas/zones_prefetch_preload"
    },
    {
      "$ref": "#/components/schemas/zones_privacy_pass"
    },
    {
      "$ref": "#/components/schemas/zones_proxy_read_timeout"
    },
    {
      "$ref": "#/components/schemas/zones_pseudo_ipv4"
    },
    {
      "$ref": "#/components/schemas/zones_redirects_for_ai_training"
    },
    {
      "$ref": "#/components/schemas/zones_replace_insecure_js"
    },
    {
      "$ref": "#/components/schemas/zones_schemas-response_buffering"
    },
    {
      "$ref": "#/components/schemas/zones_schemas-rocket_loader"
    },
    {
      "$ref": "#/components/schemas/zones_schemas-automatic_platform_optimization"
    },
    {
      "$ref": "#/components/schemas/zones_security_header"
    },
    {
      "$ref": "#/components/schemas/zones_schemas-security_level"
    },
    {
      "$ref": "#/components/schemas/zones_server_side_exclude"
    },
    {
      "$ref": "#/components/schemas/zones_sha1_support"
    },
    {
      "$ref": "#/components/schemas/zones_schemas-sort_query_string_for_cache"
    },
    {
      "$ref": "#/components/schemas/zones_schemas-ssl"
    },
    {
      "$ref": "#/components/schemas/zones_ssl_recommender"
    },
    {
      "$ref": "#/components/schemas/zones_tls_1_2_only"
    },
    {
      "$ref": "#/components/schemas/zones_tls_1_3"
    },
    {
      "$ref": "#/components/schemas/zones_tls_client_auth"
    },
    {
      "$ref": "#/components/schemas/zones_transformations"
    },
    {
      "$ref": "#/components/schemas/zones_transformations_allowed_origins"
    },
    {
      "$ref": "#/components/schemas/zones_schemas-true_client_ip_header"
    },
    {
      "$ref": "#/components/schemas/zones_schemas-waf"
    },
    {
      "$ref": "#/components/schemas/zones_webp"
    },
    {
      "$ref": "#/components/schemas/zones_websockets"
    }
  ]
}
string zones_setting_name
{
  "type": "string",
  "example": "always_online",
  "description": "Setting name"
}
boolean zones_setting_readonly
{
  "enum": [
    false
  ],
  "type": "boolean"
}
string zones_setting_toggle
{
  "enum": [
    "on",
    "off"
  ],
  "type": "string",
  "description": "Value of the zone setting."
}
object zones_setting_value
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/zones_0rtt_value"
    },
    {
      "$ref": "#/components/schemas/zones_advanced_ddos_value"
    },
    {
      "$ref": "#/components/schemas/zones_cache-rules_aegis_value"
    },
    {
      "$ref": "#/components/schemas/zones_always_online_value"
    },
    {
      "$ref": "#/components/schemas/zones_always_use_https_value"
    },
    {
      "$ref": "#/components/schemas/zones_automatic_https_rewrites_value"
    },
    {
      "$ref": "#/components/schemas/zones_brotli_value"
    },
    {
      "$ref": "#/components/schemas/zones_browser_cache_ttl_value"
    },
    {
      "$ref": "#/components/schemas/zones_browser_check_value"
    },
    {
      "$ref": "#/components/schemas/zones_cache_level_value"
    },
    {
      "$ref": "#/components/schemas/zones_challenge_ttl_value"
    },
    {
      "$ref": "#/components/schemas/zones_china_network_enabled_value"
    },
    {
      "$ref": "#/components/schemas/zones_content_converter_value"
    },
    {
      "$ref": "#/components/schemas/zones_ciphers_value"
    },
    {
      "$ref": "#/components/schemas/zones_cname_flattening_value"
    },
    {
      "$ref": "#/components/schemas/zones_development_mode_value"
    },
    {
      "$ref": "#/components/schemas/zones_early_hints_value"
    },
    {
      "$ref": "#/components/schemas/zones_edge_cache_ttl_value"
    },
    {
      "$ref": "#/components/schemas/zones_email_obfuscation_value"
    },
    {
      "$ref": "#/components/schemas/zones_h2_prioritization_value"
    },
    {
      "$ref": "#/components/schemas/zones_hotlink_protection_value"
    },
    {
      "$ref": "#/components/schemas/zones_http2_value"
    },
    {
      "$ref": "#/components/schemas/zones_http3_value"
    },
    {
      "$ref": "#/components/schemas/zones_image_resizing_value"
    },
    {
      "$ref": "#/components/schemas/zones_ip_geolocation_value"
    },
    {
      "$ref": "#/components/schemas/zones_ipv6_value"
    },
    {
      "$ref": "#/components/schemas/zones_max_upload_value"
    },
    {
      "$ref": "#/components/schemas/zones_min_tls_version_value"
    },
    {
      "$ref": "#/components/schemas/zones_mirage_value"
    },
    {
      "$ref": "#/components/schemas/zones_nel_value"
    },
    {
      "$ref": "#/components/schemas/zones_opportunistic_encryption_value"
    },
    {
      "$ref": "#/components/schemas/zones_opportunistic_onion_value"
    },
    {
      "$ref": "#/components/schemas/zones_orange_to_orange_value"
    },
    {
      "$ref": "#/components/schemas/zones_origin_error_page_pass_thru_value"
    },
    {
      "$ref": "#/components/schemas/zones_cache-rules_origin_h2_max_streams_value"
    },
    {
      "$ref": "#/components/schemas/zones_cache-rules_origin_max_http_version_value"
    },
    {
      "$ref": "#/components/schemas/zones_polish_value"
    },
    {
      "$ref": "#/components/schemas/zones_prefetch_preload_value"
    },
    {
      "$ref": "#/components/schemas/zones_privacy_pass_value"
    },
    {
      "$ref": "#/components/schemas/zones_proxy_read_timeout_value"
    },
    {
      "$ref": "#/components/schemas/zones_pseudo_ipv4_value"
    },
    {
      "$ref": "#/components/schemas/zones_redirects_for_ai_training_value"
    },
    {
      "$ref": "#/components/schemas/zones_replace_insecure_js_value"
    },
    {
      "$ref": "#/components/schemas/zones_response_buffering_value"
    },
    {
      "$ref": "#/components/schemas/zones_rocket_loader_value"
    },
    {
      "$ref": "#/components/schemas/zones_automatic_platform_optimization"
    },
    {
      "$ref": "#/components/schemas/zones_security_header_value"
    },
    {
      "$ref": "#/components/schemas/zones_security_level_value"
    },
    {
      "$ref": "#/components/schemas/zones_server_side_exclude_value"
    },
    {
      "$ref": "#/components/schemas/zones_sha1_support_value"
    },
    {
      "$ref": "#/components/schemas/zones_sort_query_string_for_cache_value"
    },
    {
      "$ref": "#/components/schemas/zones_ssl_value"
    },
    {
      "$ref": "#/components/schemas/zones_tls_1_2_only_value"
    },
    {
      "$ref": "#/components/schemas/zones_tls_1_3_value"
    },
    {
      "$ref": "#/components/schemas/zones_tls_client_auth_value"
    },
    {
      "$ref": "#/components/schemas/zones_true_client_ip_header_value"
    },
    {
      "$ref": "#/components/schemas/zones_waf_value"
    },
    {
      "$ref": "#/components/schemas/zones_webp_value"
    },
    {
      "$ref": "#/components/schemas/zones_websockets_value"
    }
  ]
}
boolean zones_setting_writable
{
  "enum": [
    true
  ],
  "type": "boolean"
}
array zones_settings
{
  "type": "array",
  "items": {
    "type": "object"
  },
  "example": [
    {
      "id": "browser_check",
      "properties": [
        {
          "name": "value",
          "type": "toggle"
        }
      ]
    },
    {
      "id": "browser_cache_ttl",
      "properties": [
        {
          "max": 31536000,
          "min": 1800,
          "name": "value",
          "type": "range",
          "suggested_values": [
            1800,
            3600,
            7200,
            10800,
            14400,
            18000,
            28800,
            43200,
            57600,
            72000,
            86400,
            172800,
            259200,
            345600,
            432000,
            691200,
            1382400,
            2073600,
            2678400,
            5356800,
            16070400,
            31536000
          ]
        }
      ]
    },
    {
      "id": "browser_check",
      "properties": [
        {
          "name": "value",
          "type": "toggle"
        }
      ]
    },
    {
      "id": "cache_key_fields",
      "properties": [
        {
          "name": "value",
          "type": "object",
          "properties": [
            {
              "name": "query_string",
              "type": "select",
              "choices": [
                "include",
                "exclude"
              ],
              "multiple": false,
              "allowEmpty": true
            },
            {
              "name": "header",
              "type": "select",
              "choices": [
                "include",
                "exclude",
                "check_presence"
              ],
              "multiple": true,
              "allowEmpty": true
            },
            {
              "name": "host",
              "type": "select",
              "choices": [
                "resolved"
              ],
              "multiple": true,
              "allowEmpty": false
            },
            {
              "name": "cookie",
              "type": "select",
              "choices": [
                "include",
                "check_presence"
              ],
              "multiple": true,
              "allowEmpty": true
            },
            {
              "name": "user",
              "type": "select",
              "choices": [
                "device_type",
                "geo",
                "lang"
              ],
              "multiple": true,
              "allowEmpty": false
            }
          ]
        }
      ]
    },
    {
      "id": "cache_deception_armor",
      "properties": [
        {
          "name": "value",
          "type": "toggle"
        }
      ]
    },
    {
      "id": "cache_level",
      "properties": [
        {
          "name": "value",
          "type": "select",
          "choices": [
            "bypass",
            "basic",
            "simplified",
            "aggressive",
            "cache_everything"
          ],
          "multiple": false
        }
      ]
    },
    {
      "id": "cache_ttl_by_status",
      "properties": [
        {
          "name": "value",
          "type": "object",
          "allowEmpty": false
        }
      ]
    },
    {
      "id": "disable_apps",
      "properties": []
    },
    {
      "id": "disable_performance",
      "properties": []
    },
    {
      "id": "disable_security",
      "properties": []
    },
    {
      "id": "edge_cache_ttl",
      "properties": [
        {
          "max": 2419200,
          "min": 7200,
          "name": "value",
          "type": "range",
          "suggested_values": [
            7200,
            10800,
            14400,
            18000,
            28800,
            43200,
            57600,
            72000,
            86400,
            172800,
            259200,
            345600,
            432000,
            518400,
            604800,
            1209600,
            2419200
          ]
        }
      ]
    },
    {
      "id": "email_obfuscation",
      "properties": [
        {
          "name": "value",
          "type": "toggle"
        }
      ]
    },
    {
      "id": "forwarding_url",
      "properties": [
        {
          "name": "status_code",
          "type": "choice",
          "choices": [
            301,
            302
          ],
          "multiple": false
        },
        {
          "name": "url",
          "type": "forwardingUrl"
        }
      ]
    },
    {
      "id": "ip_geolocation",
      "properties": [
        {
          "name": "value",
          "type": "toggle"
        }
      ]
    },
    {
      "id": "explicit_cache_control",
      "properties": [
        {
          "name": "value",
          "type": "toggle"
        }
      ]
    },
    {
      "id": "rocket_loader",
      "properties": [
        {
          "name": "value",
          "type": "toggle"
        }
      ]
    },
    {
      "id": "security_level",
      "properties": [
        {
          "name": "value",
          "type": "select",
          "choices": [
            "essentially_off",
            "low",
            "medium",
            "high",
            "under_attack"
          ],
          "multiple": false
        }
      ]
    },
    {
      "id": "server_side_exclude",
      "properties": [
        {
          "name": "value",
          "type": "toggle"
        }
      ]
    },
    {
      "id": "ssl",
      "properties": [
        {
          "name": "value",
          "type": "choice",
          "choices": [
            "off",
            "flexible",
            "full",
            "strict"
          ],
          "multiple": false
        }
      ]
    }
  ],
  "description": "Settings available for the zone."
}
object zones_settings-api_components-schemas-api-response-common
{
  "type": "object",
  "required": [
    "success",
    "errors",
    "messages"
  ],
  "properties": {
    "errors": {
      "$ref": "#/components/schemas/zones_messages"
    },
    "success": {
      "type": "boolean",
      "example": true,
      "description": "Whether the API call was successful"
    },
    "messages": {
      "$ref": "#/components/schemas/zones_messages"
    }
  }
}
object zones_sha1_support
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "sha1_support"
          ],
          "example": "sha1_support",
          "description": "Zone setting identifier."
        },
        "value": {
          "$ref": "#/components/schemas/zones_sha1_support_value"
        }
      }
    }
  ],
  "title": "Toggle SHA1 support",
  "description": "Allow SHA1 support."
}
string zones_sha1_support_value
{
  "enum": [
    "off",
    "on"
  ],
  "type": "string",
  "default": "off",
  "description": "Value of the zone setting."
}
object zones_sort_query_string_for_cache
{
  "type": "object",
  "title": "Query String Sort",
  "properties": {
    "id": {
      "enum": [
        "sort_query_string_for_cache"
      ],
      "type": "string",
      "example": "sort_query_string_for_cache",
      "description": "Turn on or off the reordering of query strings. When query strings have the same structure, caching improves.\n",
      "x-auditable": true
    },
    "value": {
      "enum": [
        "on",
        "off"
      ],
      "type": "string",
      "example": "on",
      "description": "The status of Query String Sort\n",
      "x-auditable": true
    }
  },
  "x-stainless-skip": [
    "terraform"
  ]
}
string zones_sort_query_string_for_cache_value
{
  "enum": [
    "on",
    "off"
  ],
  "type": "string",
  "default": "off",
  "description": "Value of the zone setting."
}
object zones_ssl
{
  "type": "object",
  "title": "SSL",
  "properties": {
    "id": {
      "enum": [
        "ssl"
      ],
      "type": "string",
      "description": "Control options for the SSL feature of the Edge Certificates tab in the Cloudflare SSL/TLS app.\n",
      "x-auditable": true
    },
    "value": {
      "enum": [
        "off",
        "flexible",
        "full",
        "strict",
        "origin_pull"
      ],
      "type": "string",
      "example": "full",
      "description": "The encryption mode that Cloudflare uses to connect to your origin server.\n",
      "x-auditable": true
    }
  },
  "x-stainless-skip": [
    "terraform"
  ]
}
object zones_ssl_recommender
{
  "allOf": [
    {
      "properties": {
        "id": {
          "enum": [
            "ssl_recommender"
          ],
          "example": "ssl_recommender",
          "description": "Enrollment value for SSL/TLS Recommender."
        },
        "enabled": {
          "$ref": "#/components/schemas/zones_ssl_recommender_enabled"
        }
      }
    }
  ],
  "title": "SSL/TLS Recommender",
  "description": "Enrollment in the SSL/TLS Recommender service which tries to detect and recommend (by sending periodic emails) the most secure SSL/TLS setting your origin servers support."
}
boolean zones_ssl_recommender_enabled
{
  "type": "boolean",
  "default": false,
  "description": "ssl-recommender enrollment setting."
}
string zones_ssl_value
{
  "enum": [
    "off",
    "flexible",
    "full",
    "strict"
  ],
  "type": "string",
  "default": "off",
  "description": "Value of the zone setting.\nNotes: Depends on the zone's plan level"
}
string zones_status
{
  "enum": [
    "active",
    "disabled"
  ],
  "type": "string",
  "default": "disabled",
  "example": "active",
  "description": "The status of the Page Rule.",
  "x-auditable": true
}
object zones_string_constraint
{
  "type": "object",
  "required": [
    "operator",
    "value"
  ],
  "properties": {
    "value": {
      "type": "string",
      "description": "The value to apply the operator to.",
      "x-auditable": true
    },
    "operator": {
      "enum": [
        "matches",
        "contains",
        "equals",
        "not_equal",
        "not_contain"
      ],
      "default": "contains",
      "description": "The matches operator can use asterisks and pipes as wildcard and 'or' operators.",
      "x-auditable": true
    }
  },
  "description": "String constraint."
}
object zones_target
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/zones_url_target"
    }
  ],
  "required": [
    "target",
    "constraint"
  ],
  "description": "A request condition target."
}
array zones_targets
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/zones_target"
  },
  "example": [
    {
      "target": "url",
      "constraint": {
        "value": "*example.com/images/*",
        "operator": "matches"
      }
    }
  ],
  "description": "The rule targets to evaluate on each request.",
  "x-stainless-skip": [
    "terraform"
  ]
}
object zones_tls_1_2_only
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "tls_1_2_only"
          ],
          "example": "tls_1_2_only",
          "description": "Zone setting identifier."
        },
        "value": {
          "$ref": "#/components/schemas/zones_tls_1_2_only_value"
        }
      }
    }
  ],
  "title": "TLS1.2 only",
  "description": "Only allows TLS1.2."
}
string zones_tls_1_2_only_value
{
  "enum": [
    "off",
    "on"
  ],
  "type": "string",
  "default": "off",
  "description": "Value of the zone setting."
}
object zones_tls_1_3
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "tls_1_3"
          ],
          "example": "tls_1_3",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_tls_1_3_value"
        }
      }
    }
  ],
  "title": "Enable TLS 1.3 value for a zone",
  "default": "off",
  "description": "Enables Crypto TLS 1.3 feature for a zone."
}
string zones_tls_1_3_value
{
  "enum": [
    "on",
    "off",
    "zrt"
  ],
  "type": "string",
  "default": "off",
  "description": "Value of the zone setting.\nNotes: Default value depends on the zone's plan level."
}
object zones_tls_client_auth
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "tls_client_auth"
          ],
          "example": "tls_client_auth",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_tls_client_auth_value"
        }
      }
    }
  ],
  "title": "TLS Client Authentication",
  "description": "TLS Client Auth requires Cloudflare to connect to your origin server using a client certificate (Enterprise Only)."
}
string zones_tls_client_auth_value
{
  "enum": [
    "on",
    "off"
  ],
  "type": "string",
  "default": "on",
  "description": "value of the zone setting."
}
object zones_transformations
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "transformations"
          ],
          "example": "transformations",
          "description": "ID of the zone setting. Shared between Image Transformations and Video Transformations."
        },
        "value": {
          "$ref": "#/components/schemas/zones_image_resizing_value"
        }
      }
    }
  ],
  "title": "Media Transformations",
  "description": "Media Transformations provides on-demand resizing, conversion and optimization for images and video served through Cloudflare's network. Refer to the [Image Transformations](https://developers.cloudflare.com/images/) and [Video Transformations](https://developers.cloudflare.com/stream/transform-videos/#getting-started) documentation for more information."
}
object zones_transformations_allowed_origins
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "transformations_allowed_origins"
          ],
          "example": "transformations_allowed_origins",
          "description": "ID of the zone setting. Shared between Image Transformations and Video Transformations."
        },
        "value": {
          "$ref": "#/components/schemas/zones_transformations_allowed_origins_value"
        }
      }
    }
  ],
  "title": "Media Transformations Allowed Origins",
  "description": "Media Transformations Allowed Origins restricts transformations for images and video served through Cloudflare's network. Refer to the [Image Transformations](https://developers.cloudflare.com/images/) and [Video Transformations](https://developers.cloudflare.com/stream/transform-videos/#getting-started) documentation for more information."
}
string zones_transformations_allowed_origins_value
{
  "type": "string",
  "description": "Comma-separated list of allowed origins.\nRefer to the [Image Transformations](https://developers.cloudflare.com/images/transform-images/sources/) and [Video Transformations](https://developers.cloudflare.com/stream/transform-videos/#getting-started) documentation for more information."
}
object zones_true_client_ip_header
{
  "type": "object",
  "title": "True Client IP Header",
  "properties": {
    "id": {
      "enum": [
        "true_client_ip_header"
      ],
      "type": "string",
      "example": "true_client_ip_header",
      "description": "Turn on or off the True-Client-IP Header feature of the Cloudflare Network app.\n",
      "x-auditable": true
    },
    "value": {
      "enum": [
        "on",
        "off"
      ],
      "type": "string",
      "example": "on",
      "description": "The status of True Client IP Header.\n",
      "x-auditable": true
    }
  },
  "x-stainless-skip": [
    "terraform"
  ]
}
string zones_true_client_ip_header_value
{
  "enum": [
    "on",
    "off"
  ],
  "type": "string",
  "default": "off",
  "description": "Value of the zone setting."
}
string zones_type
{
  "enum": [
    "full",
    "partial",
    "secondary",
    "internal"
  ],
  "type": "string",
  "default": "full",
  "example": "full",
  "description": "A full zone implies that DNS is hosted with Cloudflare. A partial zone is\ntypically a partner-hosted zone or a CNAME setup.\n"
}
object zones_url_target
{
  "type": "object",
  "properties": {
    "target": {
      "enum": [
        "url"
      ],
      "example": "url",
      "description": "A target based on the URL of the request.",
      "x-auditable": true
    },
    "constraint": {
      "type": "object",
      "allOf": [
        {
          "$ref": "#/components/schemas/zones_string_constraint"
        },
        {
          "properties": {
            "value": {
              "type": "string",
              "example": "*example.com/images/*",
              "pattern": "^(https?://)?(([-a-zA-Z0-9*]*\\.)+[-a-zA-Z0-9]{2,20})(:(8080|8443|443|80))?(/[\\S]+)?$",
              "description": "The URL pattern to match against the current request. The pattern may contain up to four asterisks ('*') as placeholders.",
              "x-auditable": true
            }
          }
        }
      ],
      "description": "The constraint of a target."
    }
  },
  "description": "URL target."
}
array zones_vanity_name_servers
{
  "type": "array",
  "items": {
    "type": "string",
    "format": "hostname",
    "maxLength": 253
  },
  "default": [],
  "example": [
    "ns1.example.com",
    "ns2.example.com"
  ],
  "description": "An array of domains used for custom name servers. This is only\navailable for Business and Enterprise plans."
}
object zones_waf
{
  "type": "object",
  "title": "WAF",
  "properties": {
    "id": {
      "enum": [
        "waf"
      ],
      "type": "string",
      "example": "waf",
      "description": "Turn on or off [WAF managed rules (previous version, deprecated)](https://developers.cloudflare.com/waf/reference/legacy/old-waf-managed-rules/).\nYou cannot enable or disable individual WAF managed rules via Page Rules.\n",
      "x-auditable": true
    },
    "value": {
      "enum": [
        "on",
        "off"
      ],
      "type": "string",
      "example": "on",
      "description": "The status of WAF managed rules (previous version).\n",
      "x-auditable": true
    }
  },
  "x-stainless-skip": [
    "terraform"
  ]
}
string zones_waf_value
{
  "enum": [
    "on",
    "off"
  ],
  "type": "string",
  "default": "off",
  "description": "Value of the zone setting."
}
object zones_webp
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "webp"
          ],
          "example": "webp",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_webp_value"
        }
      }
    }
  ],
  "title": "Polish WebP Conversion",
  "description": "When the client requesting the image supports the WebP image codec, and WebP offers a performance advantage over the original image format, Cloudflare will serve a WebP version of the original image."
}
string zones_webp_value
{
  "enum": [
    "off",
    "on"
  ],
  "type": "string",
  "default": "off",
  "description": "Value of the zone setting."
}
object zones_websockets
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_base"
    },
    {
      "properties": {
        "id": {
          "enum": [
            "websockets"
          ],
          "example": "websockets",
          "description": "ID of the zone setting."
        },
        "value": {
          "$ref": "#/components/schemas/zones_websockets_value"
        }
      }
    }
  ],
  "title": "WebSockets",
  "description": "WebSockets are open connections sustained between the client and the origin server. Inside a WebSockets connection, the client and the origin can pass data back and forth without having to reestablish sessions. This makes exchanging data within a WebSockets connection fast. WebSockets are often used for real-time applications such as live chat and gaming. For more information refer to [Can I use Cloudflare with Websockets](https://support.cloudflare.com/hc/en-us/articles/200169466-Can-I-use-Cloudflare-with-WebSockets-)."
}
string zones_websockets_value
{
  "enum": [
    "off",
    "on"
  ],
  "type": "string",
  "default": "off",
  "description": "Value of the zone setting."
}
object zones_zone
{
  "type": "object",
  "required": [
    "id",
    "name",
    "development_mode",
    "owner",
    "account",
    "meta",
    "name_servers",
    "original_name_servers",
    "original_registrar",
    "original_dnshost",
    "created_on",
    "modified_on",
    "activated_on",
    "plan"
  ],
  "properties": {
    "id": {
      "$ref": "#/components/schemas/zones_identifier"
    },
    "meta": {
      "type": "object",
      "properties": {
        "step": {
          "type": "integer",
          "example": 2
        },
        "cdn_only": {
          "type": "boolean",
          "example": true,
          "description": "The zone is only configured for CDN."
        },
        "dns_only": {
          "type": "boolean",
          "example": true,
          "description": "The zone is only configured for DNS."
        },
        "foundation_dns": {
          "type": "boolean",
          "example": true,
          "description": "The zone is setup with Foundation DNS."
        },
        "page_rule_quota": {
          "type": "integer",
          "example": 100,
          "description": "Number of Page Rules a zone can have."
        },
        "phishing_detected": {
          "type": "boolean",
          "example": false,
          "description": "The zone has been flagged for phishing."
        },
        "custom_certificate_quota": {
          "type": "integer",
          "example": 1,
          "description": "Number of Custom Certificates the zone can have."
        }
      },
      "description": "Metadata about the zone."
    },
    "name": {
      "type": "string",
      "example": "example.com",
      "pattern": "^([a-zA-Z0-9][\\-a-zA-Z0-9]*\\.)+[\\-a-zA-Z0-9]{2,20}$",
      "maxLength": 253,
      "description": "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."
    },
    "plan": {
      "deprecated": true,
      "properties": {
        "id": {
          "$ref": "#/components/schemas/zones_identifier"
        },
        "name": {
          "type": "string",
          "example": "Example Org",
          "description": "Name of the owner."
        },
        "price": {
          "type": "number",
          "example": 10.99,
          "description": "How much the customer is paying."
        },
        "currency": {
          "type": "string",
          "example": "USD",
          "description": "The denomination of the customer."
        },
        "frequency": {
          "type": "string",
          "example": "monthly",
          "description": "How often the customer is billed."
        },
        "legacy_id": {
          "type": "string",
          "example": "free",
          "description": "The legacy name of the plan."
        },
        "can_subscribe": {
          "type": "boolean",
          "example": false,
          "description": "States if the subscription can be activated."
        },
        "is_subscribed": {
          "type": "boolean",
          "example": false,
          "description": "States if the subscription active."
        },
        "legacy_discount": {
          "type": "boolean",
          "example": false,
          "description": "If the legacy discount applies to this Zone."
        },
        "externally_managed": {
          "type": "boolean",
          "example": false,
          "description": "If this Zone is managed by another company."
        }
      },
      "description": "A Zones subscription information.",
      "x-stainless-deprecation-message": "Please use the `/zones/{zone_id}/subscription` API\nto update a zone's plan. Changing this value will create/cancel\nassociated subscriptions. To view available plans for this zone,\nsee [Zone Plans](https://developers.cloudflare.com/api/resources/zones/subresources/plans/)."
    },
    "type": {
      "$ref": "#/components/schemas/zones_type"
    },
    "owner": {
      "type": "object",
      "properties": {
        "id": {
          "$ref": "#/components/schemas/zones_identifier"
        },
        "name": {
          "type": "string",
          "example": "Example Org",
          "description": "Name of the owner."
        },
        "type": {
          "type": "string",
          "example": "organization",
          "description": "The type of owner."
        }
      },
      "description": "The owner of the zone."
    },
    "paused": {
      "$ref": "#/components/schemas/zones_paused"
    },
    "status": {
      "enum": [
        "initializing",
        "pending",
        "active",
        "moved"
      ],
      "type": "string",
      "example": "active",
      "readOnly": true,
      "description": "The zone status on Cloudflare."
    },
    "tenant": {
      "properties": {
        "id": {
          "$ref": "#/components/schemas/zones_identifier"
        },
        "name": {
          "type": "string",
          "example": "Example Account Name",
          "description": "The name of the Tenant account."
        }
      },
      "description": "The root organizational unit that this zone belongs to (such as a tenant or organization)."
    },
    "account": {
      "type": "object",
      "properties": {
        "id": {
          "$ref": "#/components/schemas/zones_identifier"
        },
        "name": {
          "type": "string",
          "example": "Example Account Name",
          "description": "The name of the account."
        }
      },
      "description": "The account the zone belongs to."
    },
    "created_on": {
      "type": "string",
      "format": "date-time",
      "example": "2014-01-01T05:20:00.12345Z",
      "readOnly": true,
      "description": "When the zone was created."
    },
    "modified_on": {
      "type": "string",
      "format": "date-time",
      "example": "2014-01-01T05:20:00.12345Z",
      "readOnly": true,
      "description": "When the zone was last modified."
    },
    "permissions": {
      "type": "array",
      "items": {
        "type": "string",
        "example": "#worker:read"
      },
      "deprecated": true,
      "description": "Legacy permissions based on legacy user membership information.",
      "x-stainless-deprecation-message": "This has been replaced by Account memberships."
    },
    "tenant_unit": {
      "properties": {
        "id": {
          "$ref": "#/components/schemas/zones_identifier"
        }
      },
      "description": "The immediate parent organizational unit that this zone belongs to (such as under a tenant or sub-organization)."
    },
    "activated_on": {
      "type": "string",
      "format": "date-time",
      "example": "2014-01-02T00:01:00.12345Z",
      "nullable": true,
      "readOnly": true,
      "description": "The last time proof of ownership was detected and the zone was made\nactive."
    },
    "cname_suffix": {
      "type": "string",
      "example": "cdn.cloudflare.com",
      "description": "Allows the customer to use a custom apex.\n*Tenants Only Configuration*."
    },
    "name_servers": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "hostname"
      },
      "example": [
        "bob.ns.cloudflare.com",
        "lola.ns.cloudflare.com"
      ],
      "readOnly": true,
      "description": "The name servers Cloudflare assigns to a zone."
    },
    "development_mode": {
      "type": "number",
      "example": 7200,
      "readOnly": true,
      "description": "The interval (in seconds) from when development mode expires\n(positive integer) or last expired (negative integer) for the\ndomain. If development mode has never been enabled, this value is 0."
    },
    "original_dnshost": {
      "type": "string",
      "example": "NameCheap",
      "nullable": true,
      "readOnly": true,
      "maxLength": 50,
      "description": "DNS host at the time of switching to Cloudflare."
    },
    "verification_key": {
      "type": "string",
      "example": "284344499-1084221259",
      "readOnly": true,
      "description": "Verification key for partial zone setup."
    },
    "original_registrar": {
      "type": "string",
      "example": "GoDaddy",
      "nullable": true,
      "readOnly": true,
      "description": "Registrar for the domain at the time of switching to Cloudflare."
    },
    "vanity_name_servers": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "hostname",
        "maxLength": 253
      },
      "default": [],
      "example": [
        "ns1.example.com",
        "ns2.example.com"
      ],
      "description": "An array of domains used for custom name servers. This is only available for Business and Enterprise plans."
    },
    "original_name_servers": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "hostname"
      },
      "example": [
        "ns1.originaldnshost.com",
        "ns2.originaldnshost.com"
      ],
      "nullable": true,
      "readOnly": true,
      "description": "Original name servers before moving to Cloudflare."
    }
  }
}
object zones_zone_settings_response_collection
{
  "allOf": [
    {
      "$ref": "#/components/schemas/zones_settings-api_components-schemas-api-response-common"
    },
    {
      "properties": {
        "result": {
          "type": "array",
          "items": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/zones_0rtt"
              },
              {
                "$ref": "#/components/schemas/zones_advanced_ddos"
              },
              {
                "$ref": "#/components/schemas/zones_cache-rules_aegis"
              },
              {
                "$ref": "#/components/schemas/zones_always_online"
              },
              {
                "$ref": "#/components/schemas/zones_schemas-always_use_https"
              },
              {
                "$ref": "#/components/schemas/zones_schemas-automatic_https_rewrites"
              },
              {
                "$ref": "#/components/schemas/zones_brotli"
              },
              {
                "$ref": "#/components/schemas/zones_schemas-browser_cache_ttl"
              },
              {
                "$ref": "#/components/schemas/zones_schemas-browser_check"
              },
              {
                "$ref": "#/components/schemas/zones_schemas-cache_level"
              },
              {
                "$ref": "#/components/schemas/zones_challenge_ttl"
              },
              {
                "$ref": "#/components/schemas/zones_ciphers"
              },
              {
                "$ref": "#/components/schemas/zones_content_converter"
              },
              {
                "$ref": "#/components/schemas/zones_cname_flattening"
              },
              {
                "$ref": "#/components/schemas/zones_development_mode"
              },
              {
                "$ref": "#/components/schemas/zones_early_hints"
              },
              {
                "$ref": "#/components/schemas/zones_schemas-edge_cache_ttl"
              },
              {
                "$ref": "#/components/schemas/zones_schemas-email_obfuscation"
              },
              {
                "$ref": "#/components/schemas/zones_h2_prioritization"
              },
              {
                "$ref": "#/components/schemas/zones_hotlink_protection"
              },
              {
                "$ref": "#/components/schemas/zones_http2"
              },
              {
                "$ref": "#/components/schemas/zones_http3"
              },
              {
                "$ref": "#/components/schemas/zones_image_resizing"
              },
              {
                "$ref": "#/components/schemas/zones_schemas-ip_geolocation"
              },
              {
                "$ref": "#/components/schemas/zones_ipv6"
              },
              {
                "$ref": "#/components/schemas/zones_max_upload"
              },
              {
                "$ref": "#/components/schemas/zones_min_tls_version"
              },
              {
                "$ref": "#/components/schemas/zones_schemas-mirage"
              },
              {
                "$ref": "#/components/schemas/zones_nel"
              },
              {
                "$ref": "#/components/schemas/zones_schemas-opportunistic_encryption"
              },
              {
                "$ref": "#/components/schemas/zones_opportunistic_onion"
              },
              {
                "$ref": "#/components/schemas/zones_orange_to_orange"
              },
              {
                "$ref": "#/components/schemas/zones_schemas-origin_error_page_pass_thru"
              },
              {
                "$ref": "#/components/schemas/zones_cache-rules_origin_h2_max_streams"
              },
              {
                "$ref": "#/components/schemas/zones_cache-rules_origin_max_http_version"
              },
              {
                "$ref": "#/components/schemas/zones_schemas-polish"
              },
              {
                "$ref": "#/components/schemas/zones_prefetch_preload"
              },
              {
                "$ref": "#/components/schemas/zones_privacy_pass"
              },
              {
                "$ref": "#/components/schemas/zones_proxy_read_timeout"
              },
              {
                "$ref": "#/components/schemas/zones_pseudo_ipv4"
              },
              {
                "$ref": "#/components/schemas/zones_redirects_for_ai_training"
              },
              {
                "$ref": "#/components/schemas/zones_replace_insecure_js"
              },
              {
                "$ref": "#/components/schemas/zones_schemas-response_buffering"
              },
              {
                "$ref": "#/components/schemas/zones_schemas-rocket_loader"
              },
              {
                "$ref": "#/components/schemas/zones_schemas-automatic_platform_optimization"
              },
              {
                "$ref": "#/components/schemas/zones_security_header"
              },
              {
                "$ref": "#/components/schemas/zones_schemas-security_level"
              },
              {
                "$ref": "#/components/schemas/zones_server_side_exclude"
              },
              {
                "$ref": "#/components/schemas/zones_sha1_support"
              },
              {
                "$ref": "#/components/schemas/zones_schemas-sort_query_string_for_cache"
              },
              {
                "$ref": "#/components/schemas/zones_schemas-ssl"
              },
              {
                "$ref": "#/components/schemas/zones_ssl_recommender"
              },
              {
                "$ref": "#/components/schemas/zones_tls_1_2_only"
              },
              {
                "$ref": "#/components/schemas/zones_tls_1_3"
              },
              {
                "$ref": "#/components/schemas/zones_tls_client_auth"
              },
              {
                "$ref": "#/components/schemas/zones_transformations"
              },
              {
                "$ref": "#/components/schemas/zones_transformations_allowed_origins"
              },
              {
                "$ref": "#/components/schemas/zones_schemas-true_client_ip_header"
              },
              {
                "$ref": "#/components/schemas/zones_schemas-waf"
              },
              {
                "$ref": "#/components/schemas/zones_webp"
              },
              {
                "$ref": "#/components/schemas/zones_websockets"
              }
            ]
          }
        }
      }
    }
  ]
}
object zones_zone_settings_single_request
{
  "oneOf": [
    {
      "type": "object",
      "properties": {
        "enabled": {
          "$ref": "#/components/schemas/zones_ssl_recommender_enabled"
        }
      }
    },
    {
      "type": "object",
      "properties": {
        "value": {
          "$ref": "#/components/schemas/zones_setting_value"
        }
      }
    }
  ]
}