Skip to content

Commit 4c6b0ce

Browse files
stainless-app[bot]stainless-bot
authored andcommitted
feat(api): OpenAPI spec update via Stainless API (#330)
1 parent 0c0db5b commit 4c6b0ce

File tree

10 files changed

+59
-82
lines changed

10 files changed

+59
-82
lines changed

api.md

+3-3
Original file line numberDiff line numberDiff line change
@@ -2050,7 +2050,7 @@ from cloudflare.types.logpush.datasets import JobGetResponse
20502050

20512051
Methods:
20522052

2053-
- <code title="get /{account_or_zone}/{account_or_zone_id}/logpush/datasets/{dataset_id}/jobs">client.logpush.datasets.jobs.<a href="./src/cloudflare/resources/logpush/datasets/jobs.py">get</a>(dataset_id, \*, account_id, zone_id) -> <a href="./src/cloudflare/types/logpush/datasets/job_get_response.py">JobGetResponse</a></code>
2053+
- <code title="get /{account_or_zone}/{account_or_zone_id}/logpush/datasets/{dataset_id}/jobs">client.logpush.datasets.jobs.<a href="./src/cloudflare/resources/logpush/datasets/jobs.py">get</a>(dataset_id, \*, account_id, zone_id) -> <a href="./src/cloudflare/types/logpush/datasets/job_get_response.py">Optional</a></code>
20542054

20552055
## Edge
20562056

@@ -2063,7 +2063,7 @@ from cloudflare.types.logpush import InstantLogpushJob, EdgeGetResponse
20632063
Methods:
20642064

20652065
- <code title="post /zones/{zone_id}/logpush/edge">client.logpush.edge.<a href="./src/cloudflare/resources/logpush/edge.py">create</a>(\*, zone_id, \*\*<a href="src/cloudflare/types/logpush/edge_create_params.py">params</a>) -> <a href="./src/cloudflare/types/logpush/instant_logpush_job.py">Optional</a></code>
2066-
- <code title="get /zones/{zone_id}/logpush/edge">client.logpush.edge.<a href="./src/cloudflare/resources/logpush/edge.py">get</a>(\*, zone_id) -> <a href="./src/cloudflare/types/logpush/edge_get_response.py">EdgeGetResponse</a></code>
2066+
- <code title="get /zones/{zone_id}/logpush/edge">client.logpush.edge.<a href="./src/cloudflare/resources/logpush/edge.py">get</a>(\*, zone_id) -> <a href="./src/cloudflare/types/logpush/edge_get_response.py">Optional</a></code>
20672067

20682068
## Jobs
20692069

@@ -2078,7 +2078,7 @@ Methods:
20782078
- <code title="post /{account_or_zone}/{account_or_zone_id}/logpush/jobs">client.logpush.jobs.<a href="./src/cloudflare/resources/logpush/jobs.py">create</a>(\*, account_id, zone_id, \*\*<a href="src/cloudflare/types/logpush/job_create_params.py">params</a>) -> <a href="./src/cloudflare/types/logpush/logpush_job.py">Optional</a></code>
20792079
- <code title="put /{account_or_zone}/{account_or_zone_id}/logpush/jobs/{job_id}">client.logpush.jobs.<a href="./src/cloudflare/resources/logpush/jobs.py">update</a>(job_id, \*, account_id, zone_id, \*\*<a href="src/cloudflare/types/logpush/job_update_params.py">params</a>) -> <a href="./src/cloudflare/types/logpush/logpush_job.py">Optional</a></code>
20802080
- <code title="get /{account_or_zone}/{account_or_zone_id}/logpush/jobs">client.logpush.jobs.<a href="./src/cloudflare/resources/logpush/jobs.py">list</a>(\*, account_id, zone_id) -> <a href="./src/cloudflare/types/logpush/logpush_job.py">SyncSinglePage[Optional]</a></code>
2081-
- <code title="delete /{account_or_zone}/{account_or_zone_id}/logpush/jobs/{job_id}">client.logpush.jobs.<a href="./src/cloudflare/resources/logpush/jobs.py">delete</a>(job_id, \*, account_id, zone_id, \*\*<a href="src/cloudflare/types/logpush/job_delete_params.py">params</a>) -> <a href="./src/cloudflare/types/logpush/job_delete_response.py">Optional</a></code>
2081+
- <code title="delete /{account_or_zone}/{account_or_zone_id}/logpush/jobs/{job_id}">client.logpush.jobs.<a href="./src/cloudflare/resources/logpush/jobs.py">delete</a>(job_id, \*, account_id, zone_id, \*\*<a href="src/cloudflare/types/logpush/job_delete_params.py">params</a>) -> <a href="./src/cloudflare/types/logpush/job_delete_response.py">object</a></code>
20822082
- <code title="get /{account_or_zone}/{account_or_zone_id}/logpush/jobs/{job_id}">client.logpush.jobs.<a href="./src/cloudflare/resources/logpush/jobs.py">get</a>(job_id, \*, account_id, zone_id) -> <a href="./src/cloudflare/types/logpush/logpush_job.py">Optional</a></code>
20832083

20842084
## Ownership

src/cloudflare/resources/logpush/datasets/jobs.py

+4-4
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ def get(
4545
extra_query: Query | None = None,
4646
extra_body: Body | None = None,
4747
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
48-
) -> JobGetResponse:
48+
) -> Optional[JobGetResponse]:
4949
"""
5050
Lists Logpush jobs for an account or zone for a dataset.
5151
@@ -87,7 +87,7 @@ def get(
8787
timeout=timeout,
8888
post_parser=ResultWrapper._unwrapper,
8989
),
90-
cast_to=cast(Type[JobGetResponse], ResultWrapper[JobGetResponse]),
90+
cast_to=cast(Type[Optional[JobGetResponse]], ResultWrapper[JobGetResponse]),
9191
)
9292

9393

@@ -112,7 +112,7 @@ async def get(
112112
extra_query: Query | None = None,
113113
extra_body: Body | None = None,
114114
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
115-
) -> JobGetResponse:
115+
) -> Optional[JobGetResponse]:
116116
"""
117117
Lists Logpush jobs for an account or zone for a dataset.
118118
@@ -154,7 +154,7 @@ async def get(
154154
timeout=timeout,
155155
post_parser=ResultWrapper._unwrapper,
156156
),
157-
cast_to=cast(Type[JobGetResponse], ResultWrapper[JobGetResponse]),
157+
cast_to=cast(Type[Optional[JobGetResponse]], ResultWrapper[JobGetResponse]),
158158
)
159159

160160

src/cloudflare/resources/logpush/edge.py

+4-4
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,7 @@ def get(
105105
extra_query: Query | None = None,
106106
extra_body: Body | None = None,
107107
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
108-
) -> EdgeGetResponse:
108+
) -> Optional[EdgeGetResponse]:
109109
"""
110110
Lists Instant Logs jobs for a zone.
111111
@@ -131,7 +131,7 @@ def get(
131131
timeout=timeout,
132132
post_parser=ResultWrapper._unwrapper,
133133
),
134-
cast_to=cast(Type[EdgeGetResponse], ResultWrapper[EdgeGetResponse]),
134+
cast_to=cast(Type[Optional[EdgeGetResponse]], ResultWrapper[EdgeGetResponse]),
135135
)
136136

137137

@@ -212,7 +212,7 @@ async def get(
212212
extra_query: Query | None = None,
213213
extra_body: Body | None = None,
214214
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
215-
) -> EdgeGetResponse:
215+
) -> Optional[EdgeGetResponse]:
216216
"""
217217
Lists Instant Logs jobs for a zone.
218218
@@ -238,7 +238,7 @@ async def get(
238238
timeout=timeout,
239239
post_parser=ResultWrapper._unwrapper,
240240
),
241-
cast_to=cast(Type[EdgeGetResponse], ResultWrapper[EdgeGetResponse]),
241+
cast_to=cast(Type[Optional[EdgeGetResponse]], ResultWrapper[EdgeGetResponse]),
242242
)
243243

244244

src/cloudflare/resources/logpush/jobs.py

+23-34
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
from __future__ import annotations
44

5-
from typing import Any, Type, Optional, cast
5+
from typing import Type, Optional, cast
66
from typing_extensions import Literal
77

88
import httpx
@@ -28,7 +28,6 @@
2828
)
2929
from ...types.logpush import (
3030
LogpushJob,
31-
JobDeleteResponse,
3231
OutputOptionsParam,
3332
job_create_params,
3433
job_delete_params,
@@ -302,7 +301,7 @@ def delete(
302301
extra_query: Query | None = None,
303302
extra_body: Body | None = None,
304303
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
305-
) -> Optional[JobDeleteResponse]:
304+
) -> object:
306305
"""
307306
Deletes a Logpush job.
308307
@@ -333,22 +332,17 @@ def delete(
333332

334333
account_or_zone = "zones"
335334
account_or_zone_id = zone_id
336-
return cast(
337-
Optional[JobDeleteResponse],
338-
self._delete(
339-
f"/{account_or_zone}/{account_or_zone_id}/logpush/jobs/{job_id}",
340-
body=maybe_transform(body, job_delete_params.JobDeleteParams),
341-
options=make_request_options(
342-
extra_headers=extra_headers,
343-
extra_query=extra_query,
344-
extra_body=extra_body,
345-
timeout=timeout,
346-
post_parser=ResultWrapper._unwrapper,
347-
),
348-
cast_to=cast(
349-
Any, ResultWrapper[JobDeleteResponse]
350-
), # Union types cannot be passed in as arguments in the type system
335+
return self._delete(
336+
f"/{account_or_zone}/{account_or_zone_id}/logpush/jobs/{job_id}",
337+
body=maybe_transform(body, job_delete_params.JobDeleteParams),
338+
options=make_request_options(
339+
extra_headers=extra_headers,
340+
extra_query=extra_query,
341+
extra_body=extra_body,
342+
timeout=timeout,
343+
post_parser=ResultWrapper._unwrapper,
351344
),
345+
cast_to=cast(Type[object], ResultWrapper[object]),
352346
)
353347

354348
def get(
@@ -671,7 +665,7 @@ async def delete(
671665
extra_query: Query | None = None,
672666
extra_body: Body | None = None,
673667
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
674-
) -> Optional[JobDeleteResponse]:
668+
) -> object:
675669
"""
676670
Deletes a Logpush job.
677671
@@ -702,22 +696,17 @@ async def delete(
702696

703697
account_or_zone = "zones"
704698
account_or_zone_id = zone_id
705-
return cast(
706-
Optional[JobDeleteResponse],
707-
await self._delete(
708-
f"/{account_or_zone}/{account_or_zone_id}/logpush/jobs/{job_id}",
709-
body=await async_maybe_transform(body, job_delete_params.JobDeleteParams),
710-
options=make_request_options(
711-
extra_headers=extra_headers,
712-
extra_query=extra_query,
713-
extra_body=extra_body,
714-
timeout=timeout,
715-
post_parser=ResultWrapper._unwrapper,
716-
),
717-
cast_to=cast(
718-
Any, ResultWrapper[JobDeleteResponse]
719-
), # Union types cannot be passed in as arguments in the type system
699+
return await self._delete(
700+
f"/{account_or_zone}/{account_or_zone_id}/logpush/jobs/{job_id}",
701+
body=await async_maybe_transform(body, job_delete_params.JobDeleteParams),
702+
options=make_request_options(
703+
extra_headers=extra_headers,
704+
extra_query=extra_query,
705+
extra_body=extra_body,
706+
timeout=timeout,
707+
post_parser=ResultWrapper._unwrapper,
720708
),
709+
cast_to=cast(Type[object], ResultWrapper[object]),
721710
)
722711

723712
async def get(

src/cloudflare/types/logpush/__init__.py

-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@
1010
from .job_update_params import JobUpdateParams as JobUpdateParams
1111
from .edge_create_params import EdgeCreateParams as EdgeCreateParams
1212
from .instant_logpush_job import InstantLogpushJob as InstantLogpushJob
13-
from .job_delete_response import JobDeleteResponse as JobDeleteResponse
1413
from .output_options_param import OutputOptionsParam as OutputOptionsParam
1514
from .ownership_validation import OwnershipValidation as OwnershipValidation
1615
from .validate_origin_params import ValidateOriginParams as ValidateOriginParams

src/cloudflare/types/logpush/job_delete_response.py

-7
This file was deleted.
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
22

33
from typing import Optional
4-
from typing_extensions import Literal
54

65
__all__ = ["OutgoingStatus"]
76

8-
OutgoingStatus = Optional[Literal]
7+
OutgoingStatus = Optional[str]

tests/api_resources/logpush/datasets/test_jobs.py

+9-9
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
from __future__ import annotations
44

55
import os
6-
from typing import Any, cast
6+
from typing import Any, Optional, cast
77

88
import pytest
99

@@ -25,7 +25,7 @@ def test_method_get(self, client: Cloudflare) -> None:
2525
account_id="string",
2626
zone_id="string",
2727
)
28-
assert_matches_type(JobGetResponse, job, path=["response"])
28+
assert_matches_type(Optional[JobGetResponse], job, path=["response"])
2929

3030
@pytest.mark.skip()
3131
@parametrize
@@ -35,7 +35,7 @@ def test_method_get_with_all_params(self, client: Cloudflare) -> None:
3535
account_id="string",
3636
zone_id="string",
3737
)
38-
assert_matches_type(JobGetResponse, job, path=["response"])
38+
assert_matches_type(Optional[JobGetResponse], job, path=["response"])
3939

4040
@pytest.mark.skip()
4141
@parametrize
@@ -49,7 +49,7 @@ def test_raw_response_get(self, client: Cloudflare) -> None:
4949
assert response.is_closed is True
5050
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
5151
job = response.parse()
52-
assert_matches_type(JobGetResponse, job, path=["response"])
52+
assert_matches_type(Optional[JobGetResponse], job, path=["response"])
5353

5454
@pytest.mark.skip()
5555
@parametrize
@@ -63,7 +63,7 @@ def test_streaming_response_get(self, client: Cloudflare) -> None:
6363
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
6464

6565
job = response.parse()
66-
assert_matches_type(JobGetResponse, job, path=["response"])
66+
assert_matches_type(Optional[JobGetResponse], job, path=["response"])
6767

6868
assert cast(Any, response.is_closed) is True
6969

@@ -103,7 +103,7 @@ async def test_method_get(self, async_client: AsyncCloudflare) -> None:
103103
account_id="string",
104104
zone_id="string",
105105
)
106-
assert_matches_type(JobGetResponse, job, path=["response"])
106+
assert_matches_type(Optional[JobGetResponse], job, path=["response"])
107107

108108
@pytest.mark.skip()
109109
@parametrize
@@ -113,7 +113,7 @@ async def test_method_get_with_all_params(self, async_client: AsyncCloudflare) -
113113
account_id="string",
114114
zone_id="string",
115115
)
116-
assert_matches_type(JobGetResponse, job, path=["response"])
116+
assert_matches_type(Optional[JobGetResponse], job, path=["response"])
117117

118118
@pytest.mark.skip()
119119
@parametrize
@@ -127,7 +127,7 @@ async def test_raw_response_get(self, async_client: AsyncCloudflare) -> None:
127127
assert response.is_closed is True
128128
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
129129
job = await response.parse()
130-
assert_matches_type(JobGetResponse, job, path=["response"])
130+
assert_matches_type(Optional[JobGetResponse], job, path=["response"])
131131

132132
@pytest.mark.skip()
133133
@parametrize
@@ -141,7 +141,7 @@ async def test_streaming_response_get(self, async_client: AsyncCloudflare) -> No
141141
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
142142

143143
job = await response.parse()
144-
assert_matches_type(JobGetResponse, job, path=["response"])
144+
assert_matches_type(Optional[JobGetResponse], job, path=["response"])
145145

146146
assert cast(Any, response.is_closed) is True
147147

tests/api_resources/logpush/test_edge.py

+6-6
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ def test_method_get(self, client: Cloudflare) -> None:
7676
edge = client.logpush.edge.get(
7777
zone_id="023e105f4ecef8ad9ca31a8372d0c353",
7878
)
79-
assert_matches_type(EdgeGetResponse, edge, path=["response"])
79+
assert_matches_type(Optional[EdgeGetResponse], edge, path=["response"])
8080

8181
@pytest.mark.skip()
8282
@parametrize
@@ -88,7 +88,7 @@ def test_raw_response_get(self, client: Cloudflare) -> None:
8888
assert response.is_closed is True
8989
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
9090
edge = response.parse()
91-
assert_matches_type(EdgeGetResponse, edge, path=["response"])
91+
assert_matches_type(Optional[EdgeGetResponse], edge, path=["response"])
9292

9393
@pytest.mark.skip()
9494
@parametrize
@@ -100,7 +100,7 @@ def test_streaming_response_get(self, client: Cloudflare) -> None:
100100
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
101101

102102
edge = response.parse()
103-
assert_matches_type(EdgeGetResponse, edge, path=["response"])
103+
assert_matches_type(Optional[EdgeGetResponse], edge, path=["response"])
104104

105105
assert cast(Any, response.is_closed) is True
106106

@@ -175,7 +175,7 @@ async def test_method_get(self, async_client: AsyncCloudflare) -> None:
175175
edge = await async_client.logpush.edge.get(
176176
zone_id="023e105f4ecef8ad9ca31a8372d0c353",
177177
)
178-
assert_matches_type(EdgeGetResponse, edge, path=["response"])
178+
assert_matches_type(Optional[EdgeGetResponse], edge, path=["response"])
179179

180180
@pytest.mark.skip()
181181
@parametrize
@@ -187,7 +187,7 @@ async def test_raw_response_get(self, async_client: AsyncCloudflare) -> None:
187187
assert response.is_closed is True
188188
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
189189
edge = await response.parse()
190-
assert_matches_type(EdgeGetResponse, edge, path=["response"])
190+
assert_matches_type(Optional[EdgeGetResponse], edge, path=["response"])
191191

192192
@pytest.mark.skip()
193193
@parametrize
@@ -199,7 +199,7 @@ async def test_streaming_response_get(self, async_client: AsyncCloudflare) -> No
199199
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
200200

201201
edge = await response.parse()
202-
assert_matches_type(EdgeGetResponse, edge, path=["response"])
202+
assert_matches_type(Optional[EdgeGetResponse], edge, path=["response"])
203203

204204
assert cast(Any, response.is_closed) is True
205205

0 commit comments

Comments
 (0)