Skip to content

Commit

Permalink
feat(api): api update (#2146)
Browse files Browse the repository at this point in the history
  • Loading branch information
stainless-app[bot] authored and stainless-bot committed Nov 14, 2024
1 parent 6473ee6 commit c1e8143
Show file tree
Hide file tree
Showing 12 changed files with 593 additions and 2 deletions.
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

0 comments on commit c1e8143

Please sign in to comment.