Skip to content

Commit fb43f24

Browse files
stainless-app[bot]stainless-bot
authored andcommitted
feat(api): update via SDK Studio (#299)
1 parent 413836b commit fb43f24

13 files changed

+160
-656
lines changed

api.md

+2-1
Original file line numberDiff line numberDiff line change
@@ -4595,12 +4595,13 @@ Methods:
45954595
- <code title="delete /accounts/{account_id}/r2/buckets/{bucket_name}/sippy">client.r2.sippy.<a href="./src/cloudflare/resources/r2/sippy.py">delete</a>(bucket_name, \*, account_id) -> <a href="./src/cloudflare/types/r2/sippy_delete_response.py">SippyDeleteResponse</a></code>
45964596
- <code title="get /accounts/{account_id}/r2/buckets/{bucket_name}/sippy">client.r2.sippy.<a href="./src/cloudflare/resources/r2/sippy.py">get</a>(bucket_name, \*, account_id) -> <a href="./src/cloudflare/types/r2/sippy.py">Sippy</a></code>
45974597

4598-
# WARPConnector
4598+
# WARPConnectorResource
45994599

46004600
Types:
46014601

46024602
```python
46034603
from cloudflare.types import (
4604+
WARPConnector,
46044605
WARPConnectorCreateResponse,
46054606
WARPConnectorListResponse,
46064607
WARPConnectorDeleteResponse,

src/cloudflare/_client.py

+8-8
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,7 @@ class Cloudflare(SyncAPIClient):
110110
alerting: resources.Alerting
111111
d1: resources.D1Resource
112112
r2: resources.R2
113-
warp_connector: resources.WARPConnector
113+
warp_connector: resources.WARPConnectorResource
114114
workers_for_platforms: resources.WorkersForPlatforms
115115
zero_trust: resources.ZeroTrust
116116
challenges: resources.Challenges
@@ -265,7 +265,7 @@ def __init__(
265265
self.alerting = resources.Alerting(self)
266266
self.d1 = resources.D1Resource(self)
267267
self.r2 = resources.R2(self)
268-
self.warp_connector = resources.WARPConnector(self)
268+
self.warp_connector = resources.WARPConnectorResource(self)
269269
self.workers_for_platforms = resources.WorkersForPlatforms(self)
270270
self.zero_trust = resources.ZeroTrust(self)
271271
self.challenges = resources.Challenges(self)
@@ -523,7 +523,7 @@ class AsyncCloudflare(AsyncAPIClient):
523523
alerting: resources.AsyncAlerting
524524
d1: resources.AsyncD1Resource
525525
r2: resources.AsyncR2
526-
warp_connector: resources.AsyncWARPConnector
526+
warp_connector: resources.AsyncWARPConnectorResource
527527
workers_for_platforms: resources.AsyncWorkersForPlatforms
528528
zero_trust: resources.AsyncZeroTrust
529529
challenges: resources.AsyncChallenges
@@ -678,7 +678,7 @@ def __init__(
678678
self.alerting = resources.AsyncAlerting(self)
679679
self.d1 = resources.AsyncD1Resource(self)
680680
self.r2 = resources.AsyncR2(self)
681-
self.warp_connector = resources.AsyncWARPConnector(self)
681+
self.warp_connector = resources.AsyncWARPConnectorResource(self)
682682
self.workers_for_platforms = resources.AsyncWorkersForPlatforms(self)
683683
self.zero_trust = resources.AsyncZeroTrust(self)
684684
self.challenges = resources.AsyncChallenges(self)
@@ -937,7 +937,7 @@ def __init__(self, client: Cloudflare) -> None:
937937
self.alerting = resources.AlertingWithRawResponse(client.alerting)
938938
self.d1 = resources.D1ResourceWithRawResponse(client.d1)
939939
self.r2 = resources.R2WithRawResponse(client.r2)
940-
self.warp_connector = resources.WARPConnectorWithRawResponse(client.warp_connector)
940+
self.warp_connector = resources.WARPConnectorResourceWithRawResponse(client.warp_connector)
941941
self.workers_for_platforms = resources.WorkersForPlatformsWithRawResponse(client.workers_for_platforms)
942942
self.zero_trust = resources.ZeroTrustWithRawResponse(client.zero_trust)
943943
self.challenges = resources.ChallengesWithRawResponse(client.challenges)
@@ -1027,7 +1027,7 @@ def __init__(self, client: AsyncCloudflare) -> None:
10271027
self.alerting = resources.AsyncAlertingWithRawResponse(client.alerting)
10281028
self.d1 = resources.AsyncD1ResourceWithRawResponse(client.d1)
10291029
self.r2 = resources.AsyncR2WithRawResponse(client.r2)
1030-
self.warp_connector = resources.AsyncWARPConnectorWithRawResponse(client.warp_connector)
1030+
self.warp_connector = resources.AsyncWARPConnectorResourceWithRawResponse(client.warp_connector)
10311031
self.workers_for_platforms = resources.AsyncWorkersForPlatformsWithRawResponse(client.workers_for_platforms)
10321032
self.zero_trust = resources.AsyncZeroTrustWithRawResponse(client.zero_trust)
10331033
self.challenges = resources.AsyncChallengesWithRawResponse(client.challenges)
@@ -1117,7 +1117,7 @@ def __init__(self, client: Cloudflare) -> None:
11171117
self.alerting = resources.AlertingWithStreamingResponse(client.alerting)
11181118
self.d1 = resources.D1ResourceWithStreamingResponse(client.d1)
11191119
self.r2 = resources.R2WithStreamingResponse(client.r2)
1120-
self.warp_connector = resources.WARPConnectorWithStreamingResponse(client.warp_connector)
1120+
self.warp_connector = resources.WARPConnectorResourceWithStreamingResponse(client.warp_connector)
11211121
self.workers_for_platforms = resources.WorkersForPlatformsWithStreamingResponse(client.workers_for_platforms)
11221122
self.zero_trust = resources.ZeroTrustWithStreamingResponse(client.zero_trust)
11231123
self.challenges = resources.ChallengesWithStreamingResponse(client.challenges)
@@ -1211,7 +1211,7 @@ def __init__(self, client: AsyncCloudflare) -> None:
12111211
self.alerting = resources.AsyncAlertingWithStreamingResponse(client.alerting)
12121212
self.d1 = resources.AsyncD1ResourceWithStreamingResponse(client.d1)
12131213
self.r2 = resources.AsyncR2WithStreamingResponse(client.r2)
1214-
self.warp_connector = resources.AsyncWARPConnectorWithStreamingResponse(client.warp_connector)
1214+
self.warp_connector = resources.AsyncWARPConnectorResourceWithStreamingResponse(client.warp_connector)
12151215
self.workers_for_platforms = resources.AsyncWorkersForPlatformsWithStreamingResponse(
12161216
client.workers_for_platforms
12171217
)

src/cloudflare/resources/__init__.py

+12-12
Original file line numberDiff line numberDiff line change
@@ -497,12 +497,12 @@
497497
AsyncLoadBalancersWithStreamingResponse,
498498
)
499499
from .warp_connector import (
500-
WARPConnector,
501-
AsyncWARPConnector,
502-
WARPConnectorWithRawResponse,
503-
AsyncWARPConnectorWithRawResponse,
504-
WARPConnectorWithStreamingResponse,
505-
AsyncWARPConnectorWithStreamingResponse,
500+
WARPConnectorResource,
501+
AsyncWARPConnectorResource,
502+
WARPConnectorResourceWithRawResponse,
503+
AsyncWARPConnectorResourceWithRawResponse,
504+
WARPConnectorResourceWithStreamingResponse,
505+
AsyncWARPConnectorResourceWithStreamingResponse,
506506
)
507507
from .durable_objects import (
508508
DurableObjects,
@@ -1020,12 +1020,12 @@
10201020
"AsyncR2WithRawResponse",
10211021
"R2WithStreamingResponse",
10221022
"AsyncR2WithStreamingResponse",
1023-
"WARPConnector",
1024-
"AsyncWARPConnector",
1025-
"WARPConnectorWithRawResponse",
1026-
"AsyncWARPConnectorWithRawResponse",
1027-
"WARPConnectorWithStreamingResponse",
1028-
"AsyncWARPConnectorWithStreamingResponse",
1023+
"WARPConnectorResource",
1024+
"AsyncWARPConnectorResource",
1025+
"WARPConnectorResourceWithRawResponse",
1026+
"AsyncWARPConnectorResourceWithRawResponse",
1027+
"WARPConnectorResourceWithStreamingResponse",
1028+
"AsyncWARPConnectorResourceWithStreamingResponse",
10291029
"WorkersForPlatforms",
10301030
"AsyncWorkersForPlatforms",
10311031
"WorkersForPlatformsWithRawResponse",

src/cloudflare/resources/warp_connector.py

+19-19
Original file line numberDiff line numberDiff line change
@@ -39,17 +39,17 @@
3939
make_request_options,
4040
)
4141

42-
__all__ = ["WARPConnector", "AsyncWARPConnector"]
42+
__all__ = ["WARPConnectorResource", "AsyncWARPConnectorResource"]
4343

4444

45-
class WARPConnector(SyncAPIResource):
45+
class WARPConnectorResource(SyncAPIResource):
4646
@cached_property
47-
def with_raw_response(self) -> WARPConnectorWithRawResponse:
48-
return WARPConnectorWithRawResponse(self)
47+
def with_raw_response(self) -> WARPConnectorResourceWithRawResponse:
48+
return WARPConnectorResourceWithRawResponse(self)
4949

5050
@cached_property
51-
def with_streaming_response(self) -> WARPConnectorWithStreamingResponse:
52-
return WARPConnectorWithStreamingResponse(self)
51+
def with_streaming_response(self) -> WARPConnectorResourceWithStreamingResponse:
52+
return WARPConnectorResourceWithStreamingResponse(self)
5353

5454
def create(
5555
self,
@@ -393,14 +393,14 @@ def token(
393393
)
394394

395395

396-
class AsyncWARPConnector(AsyncAPIResource):
396+
class AsyncWARPConnectorResource(AsyncAPIResource):
397397
@cached_property
398-
def with_raw_response(self) -> AsyncWARPConnectorWithRawResponse:
399-
return AsyncWARPConnectorWithRawResponse(self)
398+
def with_raw_response(self) -> AsyncWARPConnectorResourceWithRawResponse:
399+
return AsyncWARPConnectorResourceWithRawResponse(self)
400400

401401
@cached_property
402-
def with_streaming_response(self) -> AsyncWARPConnectorWithStreamingResponse:
403-
return AsyncWARPConnectorWithStreamingResponse(self)
402+
def with_streaming_response(self) -> AsyncWARPConnectorResourceWithStreamingResponse:
403+
return AsyncWARPConnectorResourceWithStreamingResponse(self)
404404

405405
async def create(
406406
self,
@@ -746,8 +746,8 @@ async def token(
746746
)
747747

748748

749-
class WARPConnectorWithRawResponse:
750-
def __init__(self, warp_connector: WARPConnector) -> None:
749+
class WARPConnectorResourceWithRawResponse:
750+
def __init__(self, warp_connector: WARPConnectorResource) -> None:
751751
self._warp_connector = warp_connector
752752

753753
self.create = to_raw_response_wrapper(
@@ -770,8 +770,8 @@ def __init__(self, warp_connector: WARPConnector) -> None:
770770
)
771771

772772

773-
class AsyncWARPConnectorWithRawResponse:
774-
def __init__(self, warp_connector: AsyncWARPConnector) -> None:
773+
class AsyncWARPConnectorResourceWithRawResponse:
774+
def __init__(self, warp_connector: AsyncWARPConnectorResource) -> None:
775775
self._warp_connector = warp_connector
776776

777777
self.create = async_to_raw_response_wrapper(
@@ -794,8 +794,8 @@ def __init__(self, warp_connector: AsyncWARPConnector) -> None:
794794
)
795795

796796

797-
class WARPConnectorWithStreamingResponse:
798-
def __init__(self, warp_connector: WARPConnector) -> None:
797+
class WARPConnectorResourceWithStreamingResponse:
798+
def __init__(self, warp_connector: WARPConnectorResource) -> None:
799799
self._warp_connector = warp_connector
800800

801801
self.create = to_streamed_response_wrapper(
@@ -818,8 +818,8 @@ def __init__(self, warp_connector: WARPConnector) -> None:
818818
)
819819

820820

821-
class AsyncWARPConnectorWithStreamingResponse:
822-
def __init__(self, warp_connector: AsyncWARPConnector) -> None:
821+
class AsyncWARPConnectorResourceWithStreamingResponse:
822+
def __init__(self, warp_connector: AsyncWARPConnectorResource) -> None:
823823
self._warp_connector = warp_connector
824824

825825
self.create = async_to_streamed_response_wrapper(

src/cloudflare/types/__init__.py

+1
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,7 @@
7878
from .ip_list_params import IPListParams as IPListParams
7979
from .labeled_region import LabeledRegion as LabeledRegion
8080
from .migration_step import MigrationStep as MigrationStep
81+
from .warp_connector import WARPConnector as WARPConnector
8182
from .allowed_origins import AllowedOrigins as AllowedOrigins
8283
from .firewall_filter import FirewallFilter as FirewallFilter
8384
from .origin_steering import OriginSteering as OriginSteering
+90
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,90 @@
1+
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2+
3+
from typing import List, Optional
4+
from datetime import datetime
5+
from typing_extensions import Literal
6+
7+
from .._models import BaseModel
8+
9+
__all__ = ["WARPConnector", "Connection"]
10+
11+
12+
class Connection(BaseModel):
13+
id: Optional[str] = None
14+
"""UUID of the Cloudflare Tunnel connection."""
15+
16+
client_id: Optional[object] = None
17+
"""UUID of the cloudflared instance."""
18+
19+
client_version: Optional[str] = None
20+
"""The cloudflared version used to establish this connection."""
21+
22+
colo_name: Optional[str] = None
23+
"""The Cloudflare data center used for this connection."""
24+
25+
is_pending_reconnect: Optional[bool] = None
26+
"""
27+
Cloudflare continues to track connections for several minutes after they
28+
disconnect. This is an optimization to improve latency and reliability of
29+
reconnecting. If `true`, the connection has disconnected but is still being
30+
tracked. If `false`, the connection is actively serving traffic.
31+
"""
32+
33+
opened_at: Optional[datetime] = None
34+
"""Timestamp of when the connection was established."""
35+
36+
origin_ip: Optional[str] = None
37+
"""The public IP address of the host running cloudflared."""
38+
39+
uuid: Optional[str] = None
40+
"""UUID of the Cloudflare Tunnel connection."""
41+
42+
43+
class WARPConnector(BaseModel):
44+
id: Optional[str] = None
45+
"""UUID of the tunnel."""
46+
47+
account_tag: Optional[str] = None
48+
"""Cloudflare account ID"""
49+
50+
connections: Optional[List[Connection]] = None
51+
"""The Cloudflare Tunnel connections between your origin and Cloudflare's edge."""
52+
53+
conns_active_at: Optional[datetime] = None
54+
"""
55+
Timestamp of when the tunnel established at least one connection to Cloudflare's
56+
edge. If `null`, the tunnel is inactive.
57+
"""
58+
59+
conns_inactive_at: Optional[datetime] = None
60+
"""
61+
Timestamp of when the tunnel became inactive (no connections to Cloudflare's
62+
edge). If `null`, the tunnel is active.
63+
"""
64+
65+
created_at: Optional[datetime] = None
66+
"""Timestamp of when the tunnel was created."""
67+
68+
deleted_at: Optional[datetime] = None
69+
"""Timestamp of when the tunnel was deleted.
70+
71+
If `null`, the tunnel has not been deleted.
72+
"""
73+
74+
metadata: Optional[object] = None
75+
"""Metadata associated with the tunnel."""
76+
77+
name: Optional[str] = None
78+
"""A user-friendly name for the tunnel."""
79+
80+
status: Optional[str] = None
81+
"""The status of the tunnel.
82+
83+
Valid values are `inactive` (tunnel has never been run), `degraded` (tunnel is
84+
active and able to serve traffic but in an unhealthy state), `healthy` (tunnel
85+
is active and able to serve traffic), or `down` (tunnel can not serve traffic as
86+
it has no connections to the Cloudflare Edge).
87+
"""
88+
89+
tun_type: Optional[Literal["cfd_tunnel", "warp_connector", "ip_sec", "gre", "cni"]] = None
90+
"""The type of tunnel."""

0 commit comments

Comments
 (0)