Skip to content

Commit 39bd39c

Browse files
feat(content_scanning): introduce support (#2254)
1 parent 89e9982 commit 39bd39c

18 files changed

+1677
-1
lines changed

.stats.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
1-
configured_endpoints: 1454
1+
configured_endpoints: 1460
22
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/cloudflare%2Fcloudflare-24f32ff8cc230aecb28b850e99ed99f6f66fba898e64194d21052c4c2b869a24.yml

api.md

+43
Original file line numberDiff line numberDiff line change
@@ -8353,3 +8353,46 @@ Methods:
83538353
- <code title="put /zones/{zone_id}/leaked-credential-checks/detections/{detection_id}">client.leaked_credential_checks.detections.<a href="./src/cloudflare/resources/leaked_credential_checks/detections.py">update</a>(detection_id, \*, zone_id, \*\*<a href="src/cloudflare/types/leaked_credential_checks/detection_update_params.py">params</a>) -> <a href="./src/cloudflare/types/leaked_credential_checks/detection_update_response.py">DetectionUpdateResponse</a></code>
83548354
- <code title="get /zones/{zone_id}/leaked-credential-checks/detections">client.leaked_credential_checks.detections.<a href="./src/cloudflare/resources/leaked_credential_checks/detections.py">list</a>(\*, zone_id) -> <a href="./src/cloudflare/types/leaked_credential_checks/detection_list_response.py">SyncSinglePage[DetectionListResponse]</a></code>
83558355
- <code title="delete /zones/{zone_id}/leaked-credential-checks/detections/{detection_id}">client.leaked_credential_checks.detections.<a href="./src/cloudflare/resources/leaked_credential_checks/detections.py">delete</a>(detection_id, \*, zone_id) -> <a href="./src/cloudflare/types/leaked_credential_checks/detection_delete_response.py">object</a></code>
8356+
8357+
# ContentScanning
8358+
8359+
Types:
8360+
8361+
```python
8362+
from cloudflare.types import ContentScanningDisableResponse, ContentScanningEnableResponse
8363+
```
8364+
8365+
Methods:
8366+
8367+
- <code title="post /zones/{zone_id}/content-upload-scan/disable">client.content_scanning.<a href="./src/cloudflare/resources/content_scanning/content_scanning.py">disable</a>(\*, zone_id) -> <a href="./src/cloudflare/types/content_scanning_disable_response.py">object</a></code>
8368+
- <code title="post /zones/{zone_id}/content-upload-scan/enable">client.content_scanning.<a href="./src/cloudflare/resources/content_scanning/content_scanning.py">enable</a>(\*, zone_id) -> <a href="./src/cloudflare/types/content_scanning_enable_response.py">object</a></code>
8369+
8370+
## Payloads
8371+
8372+
Types:
8373+
8374+
```python
8375+
from cloudflare.types.content_scanning import (
8376+
PayloadCreateResponse,
8377+
PayloadListResponse,
8378+
PayloadDeleteResponse,
8379+
)
8380+
```
8381+
8382+
Methods:
8383+
8384+
- <code title="post /zones/{zone_id}/content-upload-scan/payloads">client.content_scanning.payloads.<a href="./src/cloudflare/resources/content_scanning/payloads.py">create</a>(\*, zone_id, \*\*<a href="src/cloudflare/types/content_scanning/payload_create_params.py">params</a>) -> <a href="./src/cloudflare/types/content_scanning/payload_create_response.py">Optional[PayloadCreateResponse]</a></code>
8385+
- <code title="get /zones/{zone_id}/content-upload-scan/payloads">client.content_scanning.payloads.<a href="./src/cloudflare/resources/content_scanning/payloads.py">list</a>(\*, zone_id) -> <a href="./src/cloudflare/types/content_scanning/payload_list_response.py">SyncSinglePage[PayloadListResponse]</a></code>
8386+
- <code title="delete /zones/{zone_id}/content-upload-scan/payloads/{expression_id}">client.content_scanning.payloads.<a href="./src/cloudflare/resources/content_scanning/payloads.py">delete</a>(expression_id, \*, zone_id) -> <a href="./src/cloudflare/types/content_scanning/payload_delete_response.py">Optional[PayloadDeleteResponse]</a></code>
8387+
8388+
## Settings
8389+
8390+
Types:
8391+
8392+
```python
8393+
from cloudflare.types.content_scanning import SettingGetResponse
8394+
```
8395+
8396+
Methods:
8397+
8398+
- <code title="get /zones/{zone_id}/content-upload-scan/settings">client.content_scanning.settings.<a href="./src/cloudflare/resources/content_scanning/settings.py">get</a>(\*, zone_id) -> <a href="./src/cloudflare/types/content_scanning/setting_get_response.py">SettingGetResponse</a></code>

src/cloudflare/_client.py

+37
Original file line numberDiff line numberDiff line change
@@ -103,6 +103,7 @@
103103
durable_objects,
104104
request_tracers,
105105
brand_protection,
106+
content_scanning,
106107
custom_hostnames,
107108
resource_sharing,
108109
mtls_certificates,
@@ -704,6 +705,12 @@ def leaked_credential_checks(self) -> leaked_credential_checks.LeakedCredentialC
704705

705706
return LeakedCredentialChecksResource(self)
706707

708+
@cached_property
709+
def content_scanning(self) -> content_scanning.ContentScanningResource:
710+
from .resources.content_scanning import ContentScanningResource
711+
712+
return ContentScanningResource(self)
713+
707714
@cached_property
708715
def with_raw_response(self) -> CloudflareWithRawResponse:
709716
return CloudflareWithRawResponse(self)
@@ -1457,6 +1464,12 @@ def leaked_credential_checks(self) -> leaked_credential_checks.AsyncLeakedCreden
14571464

14581465
return AsyncLeakedCredentialChecksResource(self)
14591466

1467+
@cached_property
1468+
def content_scanning(self) -> content_scanning.AsyncContentScanningResource:
1469+
from .resources.content_scanning import AsyncContentScanningResource
1470+
1471+
return AsyncContentScanningResource(self)
1472+
14601473
@cached_property
14611474
def with_raw_response(self) -> AsyncCloudflareWithRawResponse:
14621475
return AsyncCloudflareWithRawResponse(self)
@@ -2145,6 +2158,12 @@ def leaked_credential_checks(self) -> leaked_credential_checks.LeakedCredentialC
21452158

21462159
return LeakedCredentialChecksResourceWithRawResponse(self._client.leaked_credential_checks)
21472160

2161+
@cached_property
2162+
def content_scanning(self) -> content_scanning.ContentScanningResourceWithRawResponse:
2163+
from .resources.content_scanning import ContentScanningResourceWithRawResponse
2164+
2165+
return ContentScanningResourceWithRawResponse(self._client.content_scanning)
2166+
21482167

21492168
class AsyncCloudflareWithRawResponse:
21502169
_client: AsyncCloudflare
@@ -2652,6 +2671,12 @@ def leaked_credential_checks(self) -> leaked_credential_checks.AsyncLeakedCreden
26522671

26532672
return AsyncLeakedCredentialChecksResourceWithRawResponse(self._client.leaked_credential_checks)
26542673

2674+
@cached_property
2675+
def content_scanning(self) -> content_scanning.AsyncContentScanningResourceWithRawResponse:
2676+
from .resources.content_scanning import AsyncContentScanningResourceWithRawResponse
2677+
2678+
return AsyncContentScanningResourceWithRawResponse(self._client.content_scanning)
2679+
26552680

26562681
class CloudflareWithStreamedResponse:
26572682
_client: Cloudflare
@@ -3159,6 +3184,12 @@ def leaked_credential_checks(self) -> leaked_credential_checks.LeakedCredentialC
31593184

31603185
return LeakedCredentialChecksResourceWithStreamingResponse(self._client.leaked_credential_checks)
31613186

3187+
@cached_property
3188+
def content_scanning(self) -> content_scanning.ContentScanningResourceWithStreamingResponse:
3189+
from .resources.content_scanning import ContentScanningResourceWithStreamingResponse
3190+
3191+
return ContentScanningResourceWithStreamingResponse(self._client.content_scanning)
3192+
31623193

31633194
class AsyncCloudflareWithStreamedResponse:
31643195
_client: AsyncCloudflare
@@ -3676,6 +3707,12 @@ def leaked_credential_checks(
36763707

36773708
return AsyncLeakedCredentialChecksResourceWithStreamingResponse(self._client.leaked_credential_checks)
36783709

3710+
@cached_property
3711+
def content_scanning(self) -> content_scanning.AsyncContentScanningResourceWithStreamingResponse:
3712+
from .resources.content_scanning import AsyncContentScanningResourceWithStreamingResponse
3713+
3714+
return AsyncContentScanningResourceWithStreamingResponse(self._client.content_scanning)
3715+
36793716

36803717
Client = Cloudflare
36813718

src/cloudflare/resources/__init__.py

+14
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,13 @@
11
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
22

3+
from .content_scanning import (
4+
ContentScanningResource,
5+
AsyncContentScanningResource,
6+
ContentScanningResourceWithRawResponse,
7+
AsyncContentScanningResourceWithRawResponse,
8+
ContentScanningResourceWithStreamingResponse,
9+
AsyncContentScanningResourceWithStreamingResponse,
10+
)
311
from .leaked_credential_checks import (
412
LeakedCredentialChecksResource,
513
AsyncLeakedCredentialChecksResource,
@@ -16,4 +24,10 @@
1624
"AsyncLeakedCredentialChecksResourceWithRawResponse",
1725
"LeakedCredentialChecksResourceWithStreamingResponse",
1826
"AsyncLeakedCredentialChecksResourceWithStreamingResponse",
27+
"ContentScanningResource",
28+
"AsyncContentScanningResource",
29+
"ContentScanningResourceWithRawResponse",
30+
"AsyncContentScanningResourceWithRawResponse",
31+
"ContentScanningResourceWithStreamingResponse",
32+
"AsyncContentScanningResourceWithStreamingResponse",
1933
]
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2+
3+
from .payloads import (
4+
PayloadsResource,
5+
AsyncPayloadsResource,
6+
PayloadsResourceWithRawResponse,
7+
AsyncPayloadsResourceWithRawResponse,
8+
PayloadsResourceWithStreamingResponse,
9+
AsyncPayloadsResourceWithStreamingResponse,
10+
)
11+
from .settings import (
12+
SettingsResource,
13+
AsyncSettingsResource,
14+
SettingsResourceWithRawResponse,
15+
AsyncSettingsResourceWithRawResponse,
16+
SettingsResourceWithStreamingResponse,
17+
AsyncSettingsResourceWithStreamingResponse,
18+
)
19+
from .content_scanning import (
20+
ContentScanningResource,
21+
AsyncContentScanningResource,
22+
ContentScanningResourceWithRawResponse,
23+
AsyncContentScanningResourceWithRawResponse,
24+
ContentScanningResourceWithStreamingResponse,
25+
AsyncContentScanningResourceWithStreamingResponse,
26+
)
27+
28+
__all__ = [
29+
"PayloadsResource",
30+
"AsyncPayloadsResource",
31+
"PayloadsResourceWithRawResponse",
32+
"AsyncPayloadsResourceWithRawResponse",
33+
"PayloadsResourceWithStreamingResponse",
34+
"AsyncPayloadsResourceWithStreamingResponse",
35+
"SettingsResource",
36+
"AsyncSettingsResource",
37+
"SettingsResourceWithRawResponse",
38+
"AsyncSettingsResourceWithRawResponse",
39+
"SettingsResourceWithStreamingResponse",
40+
"AsyncSettingsResourceWithStreamingResponse",
41+
"ContentScanningResource",
42+
"AsyncContentScanningResource",
43+
"ContentScanningResourceWithRawResponse",
44+
"AsyncContentScanningResourceWithRawResponse",
45+
"ContentScanningResourceWithStreamingResponse",
46+
"AsyncContentScanningResourceWithStreamingResponse",
47+
]

0 commit comments

Comments
 (0)