2
2
3
3
from __future__ import annotations
4
4
5
- from typing import List , Union
6
- from typing_extensions import Literal , Required , Annotated , TypedDict
5
+ from typing import List , Union , Iterable
6
+ from typing_extensions import Literal , Required , Annotated , TypeAlias , TypedDict
7
7
8
8
from .._utils import PropertyInfo
9
9
14
14
"BrowserSettingsFingerprint" ,
15
15
"BrowserSettingsFingerprintScreen" ,
16
16
"BrowserSettingsViewport" ,
17
+ "ProxiesUnionMember1" ,
18
+ "ProxiesUnionMember1BrowserbaseProxyConfig" ,
19
+ "ProxiesUnionMember1BrowserbaseProxyConfigGeolocation" ,
20
+ "ProxiesUnionMember1ExternalProxyConfig" ,
17
21
]
18
22
19
23
@@ -38,7 +42,7 @@ class SessionCreateParams(TypedDict, total=False):
38
42
This is available on the Startup plan only.
39
43
"""
40
44
41
- proxies : Union [bool , object ]
45
+ proxies : Union [bool , Iterable [ ProxiesUnionMember1 ] ]
42
46
"""Proxy configuration.
43
47
44
48
Can be true for default proxy, or an array of proxy configurations.
@@ -127,3 +131,56 @@ class BrowserSettings(TypedDict, total=False):
127
131
"""Enable or disable captcha solving in the browser. Defaults to `true`."""
128
132
129
133
viewport : BrowserSettingsViewport
134
+
135
+
136
+ class ProxiesUnionMember1BrowserbaseProxyConfigGeolocation (TypedDict , total = False ):
137
+ country : Required [str ]
138
+ """Country code in ISO 3166-1 alpha-2 format"""
139
+
140
+ city : str
141
+ """Name of the city. Use spaces for multi-word city names. Optional."""
142
+
143
+ state : str
144
+ """US state code (2 characters). Must also specify US as the country. Optional."""
145
+
146
+
147
+ class ProxiesUnionMember1BrowserbaseProxyConfig (TypedDict , total = False ):
148
+ type : Required [Literal ["browserbase" ]]
149
+ """Type of proxy.
150
+
151
+ Always use 'browserbase' for the Browserbase managed proxy network.
152
+ """
153
+
154
+ domain_pattern : Annotated [str , PropertyInfo (alias = "domainPattern" )]
155
+ """Domain pattern for which this proxy should be used.
156
+
157
+ If omitted, defaults to all domains. Optional.
158
+ """
159
+
160
+ geolocation : ProxiesUnionMember1BrowserbaseProxyConfigGeolocation
161
+ """Configuration for geolocation"""
162
+
163
+
164
+ class ProxiesUnionMember1ExternalProxyConfig (TypedDict , total = False ):
165
+ server : Required [str ]
166
+ """Server URL for external proxy. Required."""
167
+
168
+ type : Required [Literal ["external" ]]
169
+ """Type of proxy. Always 'external' for this config."""
170
+
171
+ domain_pattern : Annotated [str , PropertyInfo (alias = "domainPattern" )]
172
+ """Domain pattern for which this proxy should be used.
173
+
174
+ If omitted, defaults to all domains. Optional.
175
+ """
176
+
177
+ password : str
178
+ """Password for external proxy authentication. Optional."""
179
+
180
+ username : str
181
+ """Username for external proxy authentication. Optional."""
182
+
183
+
184
+ ProxiesUnionMember1 : TypeAlias = Union [
185
+ ProxiesUnionMember1BrowserbaseProxyConfig , ProxiesUnionMember1ExternalProxyConfig
186
+ ]
0 commit comments