22
33from __future__ import annotations
44
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
77
88from .._utils import PropertyInfo
99
1414 "BrowserSettingsFingerprint" ,
1515 "BrowserSettingsFingerprintScreen" ,
1616 "BrowserSettingsViewport" ,
17+ "ProxiesUnionMember1" ,
18+ "ProxiesUnionMember1BrowserbaseProxyConfig" ,
19+ "ProxiesUnionMember1BrowserbaseProxyConfigGeolocation" ,
20+ "ProxiesUnionMember1ExternalProxyConfig" ,
1721]
1822
1923
@@ -38,7 +42,7 @@ class SessionCreateParams(TypedDict, total=False):
3842 This is available on the Startup plan only.
3943 """
4044
41- proxies : Union [bool , object ]
45+ proxies : Union [bool , Iterable [ ProxiesUnionMember1 ] ]
4246 """Proxy configuration.
4347
4448 Can be true for default proxy, or an array of proxy configurations.
@@ -127,3 +131,56 @@ class BrowserSettings(TypedDict, total=False):
127131 """Enable or disable captcha solving in the browser. Defaults to `true`."""
128132
129133 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