Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .stats.yml
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
configured_endpoints: 1416
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/cloudflare%2Fcloudflare-3f87896b62cce36e33c03f416ad98add2717ccd78f1743925c160a6c6a67ff15.yml
configured_endpoints: 1417
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/cloudflare%2Fcloudflare-4396f2b615f2349cc28c23e9df6cf66c1c0fd8257d18df0ce54d7e74c839bf9f.yml
14 changes: 14 additions & 0 deletions api.md
Original file line number Diff line number Diff line change
Expand Up @@ -2298,6 +2298,20 @@ Methods:
- <code title="delete /accounts/{account_id}/workers/scripts/{script_name}">client.workers.scripts.<a href="./src/cloudflare/resources/workers/scripts/scripts.py">delete</a>(script_name, \*, account_id, \*\*<a href="src/cloudflare/types/workers/script_delete_params.py">params</a>) -> None</code>
- <code title="get /accounts/{account_id}/workers/scripts/{script_name}">client.workers.scripts.<a href="./src/cloudflare/resources/workers/scripts/scripts.py">get</a>(script_name, \*, account_id) -> BinaryAPIResponse</code>

### Assets

#### Upload

Types:

```python
from cloudflare.types.workers.scripts.assets import UploadCreateResponse
```

Methods:

- <code title="post /accounts/{account_id}/workers/scripts/{script_name}/assets-upload-session">client.workers.scripts.assets.upload.<a href="./src/cloudflare/resources/workers/scripts/assets/upload.py">create</a>(script_name, \*, account_id, \*\*<a href="src/cloudflare/types/workers/scripts/assets/upload_create_params.py">params</a>) -> <a href="./src/cloudflare/types/workers/scripts/assets/upload_create_response.py">Optional</a></code>

### Subdomain

Types:
Expand Down
14 changes: 14 additions & 0 deletions src/cloudflare/resources/workers/scripts/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,14 @@
TailResourceWithStreamingResponse,
AsyncTailResourceWithStreamingResponse,
)
from .assets import (
AssetsResource,
AsyncAssetsResource,
AssetsResourceWithRawResponse,
AsyncAssetsResourceWithRawResponse,
AssetsResourceWithStreamingResponse,
AsyncAssetsResourceWithStreamingResponse,
)
from .content import (
ContentResource,
AsyncContentResource,
Expand Down Expand Up @@ -66,6 +74,12 @@
)

__all__ = [
"AssetsResource",
"AsyncAssetsResource",
"AssetsResourceWithRawResponse",
"AsyncAssetsResourceWithRawResponse",
"AssetsResourceWithStreamingResponse",
"AsyncAssetsResourceWithStreamingResponse",
"SubdomainResource",
"AsyncSubdomainResource",
"SubdomainResourceWithRawResponse",
Expand Down
33 changes: 33 additions & 0 deletions src/cloudflare/resources/workers/scripts/assets/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.

from .assets import (
AssetsResource,
AsyncAssetsResource,
AssetsResourceWithRawResponse,
AsyncAssetsResourceWithRawResponse,
AssetsResourceWithStreamingResponse,
AsyncAssetsResourceWithStreamingResponse,
)
from .upload import (
UploadResource,
AsyncUploadResource,
UploadResourceWithRawResponse,
AsyncUploadResourceWithRawResponse,
UploadResourceWithStreamingResponse,
AsyncUploadResourceWithStreamingResponse,
)

__all__ = [
"UploadResource",
"AsyncUploadResource",
"UploadResourceWithRawResponse",
"AsyncUploadResourceWithRawResponse",
"UploadResourceWithStreamingResponse",
"AsyncUploadResourceWithStreamingResponse",
"AssetsResource",
"AsyncAssetsResource",
"AssetsResourceWithRawResponse",
"AsyncAssetsResourceWithRawResponse",
"AssetsResourceWithStreamingResponse",
"AsyncAssetsResourceWithStreamingResponse",
]
102 changes: 102 additions & 0 deletions src/cloudflare/resources/workers/scripts/assets/assets.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,102 @@
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.

from __future__ import annotations

from .upload import (
UploadResource,
AsyncUploadResource,
UploadResourceWithRawResponse,
AsyncUploadResourceWithRawResponse,
UploadResourceWithStreamingResponse,
AsyncUploadResourceWithStreamingResponse,
)
from ....._compat import cached_property
from ....._resource import SyncAPIResource, AsyncAPIResource

__all__ = ["AssetsResource", "AsyncAssetsResource"]


class AssetsResource(SyncAPIResource):
@cached_property
def upload(self) -> UploadResource:
return UploadResource(self._client)

@cached_property
def with_raw_response(self) -> AssetsResourceWithRawResponse:
"""
This property can be used as a prefix for any HTTP method call to return the
the raw response object instead of the parsed content.

For more information, see https://www.github.com/cloudflare/cloudflare-python#accessing-raw-response-data-eg-headers
"""
return AssetsResourceWithRawResponse(self)

@cached_property
def with_streaming_response(self) -> AssetsResourceWithStreamingResponse:
"""
An alternative to `.with_raw_response` that doesn't eagerly read the response body.

For more information, see https://www.github.com/cloudflare/cloudflare-python#with_streaming_response
"""
return AssetsResourceWithStreamingResponse(self)


class AsyncAssetsResource(AsyncAPIResource):
@cached_property
def upload(self) -> AsyncUploadResource:
return AsyncUploadResource(self._client)

@cached_property
def with_raw_response(self) -> AsyncAssetsResourceWithRawResponse:
"""
This property can be used as a prefix for any HTTP method call to return the
the raw response object instead of the parsed content.

For more information, see https://www.github.com/cloudflare/cloudflare-python#accessing-raw-response-data-eg-headers
"""
return AsyncAssetsResourceWithRawResponse(self)

@cached_property
def with_streaming_response(self) -> AsyncAssetsResourceWithStreamingResponse:
"""
An alternative to `.with_raw_response` that doesn't eagerly read the response body.

For more information, see https://www.github.com/cloudflare/cloudflare-python#with_streaming_response
"""
return AsyncAssetsResourceWithStreamingResponse(self)


class AssetsResourceWithRawResponse:
def __init__(self, assets: AssetsResource) -> None:
self._assets = assets

@cached_property
def upload(self) -> UploadResourceWithRawResponse:
return UploadResourceWithRawResponse(self._assets.upload)


class AsyncAssetsResourceWithRawResponse:
def __init__(self, assets: AsyncAssetsResource) -> None:
self._assets = assets

@cached_property
def upload(self) -> AsyncUploadResourceWithRawResponse:
return AsyncUploadResourceWithRawResponse(self._assets.upload)


class AssetsResourceWithStreamingResponse:
def __init__(self, assets: AssetsResource) -> None:
self._assets = assets

@cached_property
def upload(self) -> UploadResourceWithStreamingResponse:
return UploadResourceWithStreamingResponse(self._assets.upload)


class AsyncAssetsResourceWithStreamingResponse:
def __init__(self, assets: AsyncAssetsResource) -> None:
self._assets = assets

@cached_property
def upload(self) -> AsyncUploadResourceWithStreamingResponse:
return AsyncUploadResourceWithStreamingResponse(self._assets.upload)
203 changes: 203 additions & 0 deletions src/cloudflare/resources/workers/scripts/assets/upload.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,203 @@
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.

from __future__ import annotations

from typing import Dict, Type, Optional, cast

import httpx

from ....._types import NOT_GIVEN, Body, Query, Headers, NotGiven
from ....._utils import (
maybe_transform,
async_maybe_transform,
)
from ....._compat import cached_property
from ....._resource import SyncAPIResource, AsyncAPIResource
from ....._response import (
to_raw_response_wrapper,
to_streamed_response_wrapper,
async_to_raw_response_wrapper,
async_to_streamed_response_wrapper,
)
from ....._wrappers import ResultWrapper
from ....._base_client import make_request_options
from .....types.workers.scripts.assets import upload_create_params
from .....types.workers.scripts.assets.upload_create_response import UploadCreateResponse

__all__ = ["UploadResource", "AsyncUploadResource"]


class UploadResource(SyncAPIResource):
@cached_property
def with_raw_response(self) -> UploadResourceWithRawResponse:
"""
This property can be used as a prefix for any HTTP method call to return the
the raw response object instead of the parsed content.

For more information, see https://www.github.com/cloudflare/cloudflare-python#accessing-raw-response-data-eg-headers
"""
return UploadResourceWithRawResponse(self)

@cached_property
def with_streaming_response(self) -> UploadResourceWithStreamingResponse:
"""
An alternative to `.with_raw_response` that doesn't eagerly read the response body.

For more information, see https://www.github.com/cloudflare/cloudflare-python#with_streaming_response
"""
return UploadResourceWithStreamingResponse(self)

def create(
self,
script_name: str,
*,
account_id: str,
manifest: Dict[str, upload_create_params.Manifest] | NotGiven = NOT_GIVEN,
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
# The extra values given here take precedence over values defined on the client or passed to this method.
extra_headers: Headers | None = None,
extra_query: Query | None = None,
extra_body: Body | None = None,
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
) -> Optional[UploadCreateResponse]:
"""
Start uploading a collection of assets for use in a Worker version.

Args:
account_id: Identifier

script_name: Name of the script, used in URLs and route configuration.

manifest: A manifest ([path]: {hash, size}) map of files to upload. As an example,
`/blog/hello-world.html` would be a valid path key.

extra_headers: Send extra headers

extra_query: Add additional query parameters to the request

extra_body: Add additional JSON properties to the request

timeout: Override the client-level default timeout for this request, in seconds
"""
if not account_id:
raise ValueError(f"Expected a non-empty value for `account_id` but received {account_id!r}")
if not script_name:
raise ValueError(f"Expected a non-empty value for `script_name` but received {script_name!r}")
return self._post(
f"/accounts/{account_id}/workers/scripts/{script_name}/assets-upload-session",
body=maybe_transform({"manifest": manifest}, upload_create_params.UploadCreateParams),
options=make_request_options(
extra_headers=extra_headers,
extra_query=extra_query,
extra_body=extra_body,
timeout=timeout,
post_parser=ResultWrapper[Optional[UploadCreateResponse]]._unwrapper,
),
cast_to=cast(Type[Optional[UploadCreateResponse]], ResultWrapper[UploadCreateResponse]),
)


class AsyncUploadResource(AsyncAPIResource):
@cached_property
def with_raw_response(self) -> AsyncUploadResourceWithRawResponse:
"""
This property can be used as a prefix for any HTTP method call to return the
the raw response object instead of the parsed content.

For more information, see https://www.github.com/cloudflare/cloudflare-python#accessing-raw-response-data-eg-headers
"""
return AsyncUploadResourceWithRawResponse(self)

@cached_property
def with_streaming_response(self) -> AsyncUploadResourceWithStreamingResponse:
"""
An alternative to `.with_raw_response` that doesn't eagerly read the response body.

For more information, see https://www.github.com/cloudflare/cloudflare-python#with_streaming_response
"""
return AsyncUploadResourceWithStreamingResponse(self)

async def create(
self,
script_name: str,
*,
account_id: str,
manifest: Dict[str, upload_create_params.Manifest] | NotGiven = NOT_GIVEN,
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
# The extra values given here take precedence over values defined on the client or passed to this method.
extra_headers: Headers | None = None,
extra_query: Query | None = None,
extra_body: Body | None = None,
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
) -> Optional[UploadCreateResponse]:
"""
Start uploading a collection of assets for use in a Worker version.

Args:
account_id: Identifier

script_name: Name of the script, used in URLs and route configuration.

manifest: A manifest ([path]: {hash, size}) map of files to upload. As an example,
`/blog/hello-world.html` would be a valid path key.

extra_headers: Send extra headers

extra_query: Add additional query parameters to the request

extra_body: Add additional JSON properties to the request

timeout: Override the client-level default timeout for this request, in seconds
"""
if not account_id:
raise ValueError(f"Expected a non-empty value for `account_id` but received {account_id!r}")
if not script_name:
raise ValueError(f"Expected a non-empty value for `script_name` but received {script_name!r}")
return await self._post(
f"/accounts/{account_id}/workers/scripts/{script_name}/assets-upload-session",
body=await async_maybe_transform({"manifest": manifest}, upload_create_params.UploadCreateParams),
options=make_request_options(
extra_headers=extra_headers,
extra_query=extra_query,
extra_body=extra_body,
timeout=timeout,
post_parser=ResultWrapper[Optional[UploadCreateResponse]]._unwrapper,
),
cast_to=cast(Type[Optional[UploadCreateResponse]], ResultWrapper[UploadCreateResponse]),
)


class UploadResourceWithRawResponse:
def __init__(self, upload: UploadResource) -> None:
self._upload = upload

self.create = to_raw_response_wrapper(
upload.create,
)


class AsyncUploadResourceWithRawResponse:
def __init__(self, upload: AsyncUploadResource) -> None:
self._upload = upload

self.create = async_to_raw_response_wrapper(
upload.create,
)


class UploadResourceWithStreamingResponse:
def __init__(self, upload: UploadResource) -> None:
self._upload = upload

self.create = to_streamed_response_wrapper(
upload.create,
)


class AsyncUploadResourceWithStreamingResponse:
def __init__(self, upload: AsyncUploadResource) -> None:
self._upload = upload

self.create = async_to_streamed_response_wrapper(
upload.create,
)
Loading