Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
38 commits
Select commit Hold shift + click to select a range
0be54b1
codegen metadata
stainless-app[bot] Mar 2, 2026
c5144a0
codegen metadata
stainless-app[bot] Mar 2, 2026
3ed409f
codegen metadata
stainless-app[bot] Mar 3, 2026
559adb6
codegen metadata
stainless-app[bot] Mar 4, 2026
c1fdeae
feat: feat(workers): WO-989 Adds Workers>Observability>Destinations r…
stainless-app[bot] Mar 4, 2026
bcafc86
feat: feat(zero_trust_device_subnet): onboard new terraform resource …
stainless-app[bot] Mar 4, 2026
fe2b21d
feat: feat(ip_profile): onboard new terraform resource cloudflare_zer…
stainless-app[bot] Mar 5, 2026
2358e0a
feat: chore(zero_trust_device_ip_profile): skip go prism tests
stainless-app[bot] Mar 5, 2026
76eacbb
codegen metadata
stainless-app[bot] Mar 5, 2026
31cc167
chore(api): update composite API spec
stainless-app[bot] Mar 5, 2026
d0805c4
chore(api): update composite API spec
stainless-app[bot] Mar 5, 2026
e6917d2
feat: feat(tags): GRM-385 add resource_tagging routes
stainless-app[bot] Mar 5, 2026
160c7be
chore(api): update composite API spec
stainless-app[bot] Mar 6, 2026
1c6ee63
chore(api): update composite API spec
stainless-app[bot] Mar 6, 2026
fe38437
codegen metadata
stainless-app[bot] Mar 6, 2026
8270297
feat: feat: add billable usage PayGo endpoint to billing resource
stainless-app[bot] Mar 6, 2026
df8b0db
chore(api): update composite API spec
stainless-app[bot] Mar 6, 2026
f29b337
codegen metadata
stainless-app[bot] Mar 6, 2026
3e08ae0
codegen metadata
stainless-app[bot] Mar 6, 2026
f7bd429
codegen metadata
stainless-app[bot] Mar 9, 2026
22abcb9
chore(api): update composite API spec
stainless-app[bot] Mar 9, 2026
9c384f3
chore(api): update composite API spec
stainless-app[bot] Mar 9, 2026
049acfc
codegen metadata
stainless-app[bot] Mar 10, 2026
9dac694
chore(api): update composite API spec
stainless-app[bot] Mar 10, 2026
ce6abd1
chore(api): update composite API spec
stainless-app[bot] Mar 10, 2026
f79025e
feat: feat: DISCO-101 add google_tag_gateway resource
stainless-app[bot] Mar 10, 2026
c22dae8
codegen metadata
stainless-app[bot] Mar 10, 2026
b6e4985
codegen metadata
stainless-app[bot] Mar 10, 2026
d7fb232
chore(api): update composite API spec
stainless-app[bot] Mar 11, 2026
b558171
codegen metadata
stainless-app[bot] Mar 12, 2026
2cd5464
codegen metadata
stainless-app[bot] Mar 12, 2026
e38d97d
codegen metadata
stainless-app[bot] Mar 12, 2026
4b6739a
codegen metadata
stainless-app[bot] Mar 12, 2026
e57f80d
codegen metadata
stainless-app[bot] Mar 13, 2026
294b2fe
codegen metadata
stainless-app[bot] Mar 13, 2026
c525e9c
feat: feat(brand_protection): add v2 endpoints
stainless-app[bot] Mar 13, 2026
e05c02f
chore(api): update composite API spec
stainless-app[bot] Mar 13, 2026
1b205b5
chore(api): update composite API spec
stainless-app[bot] Mar 13, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
8 changes: 4 additions & 4 deletions .stats.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
configured_endpoints: 2041
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/cloudflare%2Fcloudflare-9ba099b7936091cc984d2a24fc4d32c3ffcb1d71d86412c8c9084d201e16b3ac.yml
openapi_spec_hash: 45edc9a107cf5a5e3b204b230b0d336d
config_hash: be3f6e9410db673744447f9dbe92d922
configured_endpoints: 2063
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/cloudflare%2Fcloudflare-33d37f2ed84298196a44a165e47c25b58a775770e4f24f6e4008c336547aabaa.yml
openapi_spec_hash: bad503bd605d9e3fc814f6fa7dc4dd90
config_hash: 436dbbeb18db3b6d221f37bf7054a839
191 changes: 153 additions & 38 deletions api.md

Large diffs are not rendered by default.

76 changes: 76 additions & 0 deletions src/cloudflare/_client.py
Original file line number Diff line number Diff line change
Expand Up @@ -117,12 +117,14 @@
content_scanning,
custom_hostnames,
resource_sharing,
resource_tagging,
token_validation,
browser_rendering,
mtls_certificates,
schema_validation,
url_normalization,
custom_nameservers,
google_tag_gateway,
managed_transforms,
client_certificates,
custom_certificates,
Expand Down Expand Up @@ -230,10 +232,12 @@
from .resources.content_scanning.content_scanning import ContentScanningResource, AsyncContentScanningResource
from .resources.custom_hostnames.custom_hostnames import CustomHostnamesResource, AsyncCustomHostnamesResource
from .resources.resource_sharing.resource_sharing import ResourceSharingResource, AsyncResourceSharingResource
from .resources.resource_tagging.resource_tagging import ResourceTaggingResource, AsyncResourceTaggingResource
from .resources.token_validation.token_validation import TokenValidationResource, AsyncTokenValidationResource
from .resources.browser_rendering.browser_rendering import BrowserRenderingResource, AsyncBrowserRenderingResource
from .resources.mtls_certificates.mtls_certificates import MTLSCertificatesResource, AsyncMTLSCertificatesResource
from .resources.schema_validation.schema_validation import SchemaValidationResource, AsyncSchemaValidationResource
from .resources.google_tag_gateway.google_tag_gateway import GoogleTagGatewayResource, AsyncGoogleTagGatewayResource
from .resources.custom_certificates.custom_certificates import (
CustomCertificatesResource,
AsyncCustomCertificatesResource,
Expand Down Expand Up @@ -807,6 +811,12 @@ def origin_post_quantum_encryption(self) -> OriginPostQuantumEncryptionResource:

return OriginPostQuantumEncryptionResource(self)

@cached_property
def google_tag_gateway(self) -> GoogleTagGatewayResource:
from .resources.google_tag_gateway import GoogleTagGatewayResource

return GoogleTagGatewayResource(self)

@cached_property
def zaraz(self) -> ZarazResource:
from .resources.zaraz import ZarazResource
Expand Down Expand Up @@ -897,6 +907,12 @@ def resource_sharing(self) -> ResourceSharingResource:

return ResourceSharingResource(self)

@cached_property
def resource_tagging(self) -> ResourceTaggingResource:
from .resources.resource_tagging import ResourceTaggingResource

return ResourceTaggingResource(self)

@cached_property
def leaked_credential_checks(self) -> LeakedCredentialChecksResource:
from .resources.leaked_credential_checks import LeakedCredentialChecksResource
Expand Down Expand Up @@ -1673,6 +1689,12 @@ def origin_post_quantum_encryption(self) -> AsyncOriginPostQuantumEncryptionReso

return AsyncOriginPostQuantumEncryptionResource(self)

@cached_property
def google_tag_gateway(self) -> AsyncGoogleTagGatewayResource:
from .resources.google_tag_gateway import AsyncGoogleTagGatewayResource

return AsyncGoogleTagGatewayResource(self)

@cached_property
def zaraz(self) -> AsyncZarazResource:
from .resources.zaraz import AsyncZarazResource
Expand Down Expand Up @@ -1763,6 +1785,12 @@ def resource_sharing(self) -> AsyncResourceSharingResource:

return AsyncResourceSharingResource(self)

@cached_property
def resource_tagging(self) -> AsyncResourceTaggingResource:
from .resources.resource_tagging import AsyncResourceTaggingResource

return AsyncResourceTaggingResource(self)

@cached_property
def leaked_credential_checks(self) -> AsyncLeakedCredentialChecksResource:
from .resources.leaked_credential_checks import AsyncLeakedCredentialChecksResource
Expand Down Expand Up @@ -2469,6 +2497,12 @@ def origin_post_quantum_encryption(

return OriginPostQuantumEncryptionResourceWithRawResponse(self._client.origin_post_quantum_encryption)

@cached_property
def google_tag_gateway(self) -> google_tag_gateway.GoogleTagGatewayResourceWithRawResponse:
from .resources.google_tag_gateway import GoogleTagGatewayResourceWithRawResponse

return GoogleTagGatewayResourceWithRawResponse(self._client.google_tag_gateway)

@cached_property
def zaraz(self) -> zaraz.ZarazResourceWithRawResponse:
from .resources.zaraz import ZarazResourceWithRawResponse
Expand Down Expand Up @@ -2559,6 +2593,12 @@ def resource_sharing(self) -> resource_sharing.ResourceSharingResourceWithRawRes

return ResourceSharingResourceWithRawResponse(self._client.resource_sharing)

@cached_property
def resource_tagging(self) -> resource_tagging.ResourceTaggingResourceWithRawResponse:
from .resources.resource_tagging import ResourceTaggingResourceWithRawResponse

return ResourceTaggingResourceWithRawResponse(self._client.resource_tagging)

@cached_property
def leaked_credential_checks(self) -> leaked_credential_checks.LeakedCredentialChecksResourceWithRawResponse:
from .resources.leaked_credential_checks import LeakedCredentialChecksResourceWithRawResponse
Expand Down Expand Up @@ -3090,6 +3130,12 @@ def origin_post_quantum_encryption(

return AsyncOriginPostQuantumEncryptionResourceWithRawResponse(self._client.origin_post_quantum_encryption)

@cached_property
def google_tag_gateway(self) -> google_tag_gateway.AsyncGoogleTagGatewayResourceWithRawResponse:
from .resources.google_tag_gateway import AsyncGoogleTagGatewayResourceWithRawResponse

return AsyncGoogleTagGatewayResourceWithRawResponse(self._client.google_tag_gateway)

@cached_property
def zaraz(self) -> zaraz.AsyncZarazResourceWithRawResponse:
from .resources.zaraz import AsyncZarazResourceWithRawResponse
Expand Down Expand Up @@ -3180,6 +3226,12 @@ def resource_sharing(self) -> resource_sharing.AsyncResourceSharingResourceWithR

return AsyncResourceSharingResourceWithRawResponse(self._client.resource_sharing)

@cached_property
def resource_tagging(self) -> resource_tagging.AsyncResourceTaggingResourceWithRawResponse:
from .resources.resource_tagging import AsyncResourceTaggingResourceWithRawResponse

return AsyncResourceTaggingResourceWithRawResponse(self._client.resource_tagging)

@cached_property
def leaked_credential_checks(self) -> leaked_credential_checks.AsyncLeakedCredentialChecksResourceWithRawResponse:
from .resources.leaked_credential_checks import AsyncLeakedCredentialChecksResourceWithRawResponse
Expand Down Expand Up @@ -3711,6 +3763,12 @@ def origin_post_quantum_encryption(

return OriginPostQuantumEncryptionResourceWithStreamingResponse(self._client.origin_post_quantum_encryption)

@cached_property
def google_tag_gateway(self) -> google_tag_gateway.GoogleTagGatewayResourceWithStreamingResponse:
from .resources.google_tag_gateway import GoogleTagGatewayResourceWithStreamingResponse

return GoogleTagGatewayResourceWithStreamingResponse(self._client.google_tag_gateway)

@cached_property
def zaraz(self) -> zaraz.ZarazResourceWithStreamingResponse:
from .resources.zaraz import ZarazResourceWithStreamingResponse
Expand Down Expand Up @@ -3801,6 +3859,12 @@ def resource_sharing(self) -> resource_sharing.ResourceSharingResourceWithStream

return ResourceSharingResourceWithStreamingResponse(self._client.resource_sharing)

@cached_property
def resource_tagging(self) -> resource_tagging.ResourceTaggingResourceWithStreamingResponse:
from .resources.resource_tagging import ResourceTaggingResourceWithStreamingResponse

return ResourceTaggingResourceWithStreamingResponse(self._client.resource_tagging)

@cached_property
def leaked_credential_checks(self) -> leaked_credential_checks.LeakedCredentialChecksResourceWithStreamingResponse:
from .resources.leaked_credential_checks import LeakedCredentialChecksResourceWithStreamingResponse
Expand Down Expand Up @@ -4340,6 +4404,12 @@ def origin_post_quantum_encryption(
self._client.origin_post_quantum_encryption
)

@cached_property
def google_tag_gateway(self) -> google_tag_gateway.AsyncGoogleTagGatewayResourceWithStreamingResponse:
from .resources.google_tag_gateway import AsyncGoogleTagGatewayResourceWithStreamingResponse

return AsyncGoogleTagGatewayResourceWithStreamingResponse(self._client.google_tag_gateway)

@cached_property
def zaraz(self) -> zaraz.AsyncZarazResourceWithStreamingResponse:
from .resources.zaraz import AsyncZarazResourceWithStreamingResponse
Expand Down Expand Up @@ -4430,6 +4500,12 @@ def resource_sharing(self) -> resource_sharing.AsyncResourceSharingResourceWithS

return AsyncResourceSharingResourceWithStreamingResponse(self._client.resource_sharing)

@cached_property
def resource_tagging(self) -> resource_tagging.AsyncResourceTaggingResourceWithStreamingResponse:
from .resources.resource_tagging import AsyncResourceTaggingResourceWithStreamingResponse

return AsyncResourceTaggingResourceWithStreamingResponse(self._client.resource_tagging)

@cached_property
def leaked_credential_checks(
self,
Expand Down
8 changes: 4 additions & 4 deletions src/cloudflare/resources/abuse_reports/abuse_reports.py
Original file line number Diff line number Diff line change
Expand Up @@ -273,7 +273,7 @@ def create(
host_notification: Literal["send", "send-anon"],
justification: str,
name: str,
owner_notification: Literal["send", "send-anon", "none"],
owner_notification: Literal["send", "send-anon"],
urls: str,
comments: str | Omit = omit,
company: str | Omit = omit,
Expand Down Expand Up @@ -866,7 +866,7 @@ def create(
host_notification: Literal["send"] | Literal["send", "send-anon"] | Omit = omit,
name: str,
original_work: str | Omit = omit,
owner_notification: Literal["send"] | Literal["send", "send-anon", "none"] | Literal["send", "send-anon"],
owner_notification: Literal["send"] | Literal["send", "send-anon"] | Literal["send", "send-anon", "none"],
signature: str | Omit = omit,
state: str | Omit = omit,
urls: str,
Expand Down Expand Up @@ -1299,7 +1299,7 @@ async def create(
host_notification: Literal["send", "send-anon"],
justification: str,
name: str,
owner_notification: Literal["send", "send-anon", "none"],
owner_notification: Literal["send", "send-anon"],
urls: str,
comments: str | Omit = omit,
company: str | Omit = omit,
Expand Down Expand Up @@ -1892,7 +1892,7 @@ async def create(
host_notification: Literal["send"] | Literal["send", "send-anon"] | Omit = omit,
name: str,
original_work: str | Omit = omit,
owner_notification: Literal["send"] | Literal["send", "send-anon", "none"] | Literal["send", "send-anon"],
owner_notification: Literal["send"] | Literal["send", "send-anon"] | Literal["send", "send-anon", "none"],
signature: str | Omit = omit,
state: str | Omit = omit,
urls: str,
Expand Down
2 changes: 2 additions & 0 deletions src/cloudflare/resources/abuse_reports/mitigations.py
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,7 @@ def list(
status: Literal["pending", "active", "in_review", "cancelled", "removed"] | Omit = omit,
type: Literal[
"legal_block",
"misleading_interstitial",
"phishing_interstitial",
"network_block",
"rate_limit_cache",
Expand Down Expand Up @@ -230,6 +231,7 @@ def list(
status: Literal["pending", "active", "in_review", "cancelled", "removed"] | Omit = omit,
type: Literal[
"legal_block",
"misleading_interstitial",
"phishing_interstitial",
"network_block",
"rate_limit_cache",
Expand Down
4 changes: 2 additions & 2 deletions src/cloudflare/resources/ai/models/schema.py
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ def get(
timeout: float | httpx.Timeout | None | NotGiven = not_given,
) -> SchemaGetResponse:
"""
Get Model Schema
Retrieves the input and output JSON schema definition for a Workers AI model.

Args:
model: Model Name
Expand Down Expand Up @@ -119,7 +119,7 @@ async def get(
timeout: float | httpx.Timeout | None | NotGiven = not_given,
) -> SchemaGetResponse:
"""
Get Model Schema
Retrieves the input and output JSON schema definition for a Workers AI model.

Args:
model: Model Name
Expand Down
8 changes: 4 additions & 4 deletions src/cloudflare/resources/ai/to_markdown.py
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ def supported(
timeout: float | httpx.Timeout | None | NotGiven = not_given,
) -> SyncSinglePage[ToMarkdownSupportedResponse]:
"""
Get all converted formats supported
Lists all file formats supported for conversion to Markdown.

Args:
extra_headers: Send extra headers
Expand Down Expand Up @@ -92,7 +92,7 @@ def transform(
timeout: float | httpx.Timeout | None | NotGiven = not_given,
) -> SyncSinglePage[ToMarkdownTransformResponse]:
"""
Convert Files into Markdown
Converts uploaded files into Markdown format using Workers AI.

Args:
extra_headers: Send extra headers
Expand Down Expand Up @@ -156,7 +156,7 @@ def supported(
timeout: float | httpx.Timeout | None | NotGiven = not_given,
) -> AsyncPaginator[ToMarkdownSupportedResponse, AsyncSinglePage[ToMarkdownSupportedResponse]]:
"""
Get all converted formats supported
Lists all file formats supported for conversion to Markdown.

Args:
extra_headers: Send extra headers
Expand Down Expand Up @@ -191,7 +191,7 @@ def transform(
timeout: float | httpx.Timeout | None | NotGiven = not_given,
) -> AsyncPaginator[ToMarkdownTransformResponse, AsyncSinglePage[ToMarkdownTransformResponse]]:
"""
Convert Files into Markdown
Converts uploaded files into Markdown format using Workers AI.

Args:
extra_headers: Send extra headers
Expand Down
Loading
Loading