Skip to content

Commit 9647eb3

Browse files
feat: [STG-1798] feat: support Browserbase verified sessions
1 parent 5cb6ecb commit 9647eb3

4 files changed

Lines changed: 185 additions & 4 deletions

File tree

.stats.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
configured_endpoints: 8
2-
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/browserbase%2Fstagehand-7773ef4ca29c983daafb787ee918cfa6b5b12c5bbdc088308653f2737c26e51f.yml
3-
openapi_spec_hash: 47fc8f2540be0b6374e4230c021072d9
4-
config_hash: 0cc516caf1432087f40654336e0fa8cd
2+
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/browserbase%2Fstagehand-a8db51c6460b3daff67b35262517848a0d4e783c6805c2edd531b155a5db71dd.yml
3+
openapi_spec_hash: c6e7127f211f946673d6389e1d8db1ba
4+
config_hash: a962ae71493deb11a1c903256fb25386

lib/stagehand/models/session_start_params.rb

Lines changed: 40 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -415,6 +415,16 @@ class BrowserSettings < Stagehand::Internal::Type::BaseModel
415415
# @return [Boolean, nil]
416416
optional :block_ads, Stagehand::Internal::Type::Boolean, api_name: :blockAds
417417

418+
# @!attribute captcha_image_selector
419+
#
420+
# @return [String, nil]
421+
optional :captcha_image_selector, String, api_name: :captchaImageSelector
422+
423+
# @!attribute captcha_input_selector
424+
#
425+
# @return [String, nil]
426+
optional :captcha_input_selector, String, api_name: :captchaInputSelector
427+
418428
# @!attribute context
419429
#
420430
# @return [Stagehand::Models::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Context, nil]
@@ -437,6 +447,12 @@ class BrowserSettings < Stagehand::Internal::Type::BaseModel
437447
# @return [Boolean, nil]
438448
optional :log_session, Stagehand::Internal::Type::Boolean, api_name: :logSession
439449

450+
# @!attribute os
451+
#
452+
# @return [Symbol, Stagehand::Models::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Os, nil]
453+
optional :os,
454+
enum: -> { Stagehand::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Os }
455+
440456
# @!attribute record_session
441457
#
442458
# @return [Boolean, nil]
@@ -447,21 +463,30 @@ class BrowserSettings < Stagehand::Internal::Type::BaseModel
447463
# @return [Boolean, nil]
448464
optional :solve_captchas, Stagehand::Internal::Type::Boolean, api_name: :solveCaptchas
449465

466+
# @!attribute verified
467+
#
468+
# @return [Boolean, nil]
469+
optional :verified, Stagehand::Internal::Type::Boolean
470+
450471
# @!attribute viewport
451472
#
452473
# @return [Stagehand::Models::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Viewport, nil]
453474
optional :viewport,
454475
-> { Stagehand::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Viewport }
455476

456-
# @!method initialize(advanced_stealth: nil, block_ads: nil, context: nil, extension_id: nil, fingerprint: nil, log_session: nil, record_session: nil, solve_captchas: nil, viewport: nil)
477+
# @!method initialize(advanced_stealth: nil, block_ads: nil, captcha_image_selector: nil, captcha_input_selector: nil, context: nil, extension_id: nil, fingerprint: nil, log_session: nil, os: nil, record_session: nil, solve_captchas: nil, verified: nil, viewport: nil)
457478
# @param advanced_stealth [Boolean]
458479
# @param block_ads [Boolean]
480+
# @param captcha_image_selector [String]
481+
# @param captcha_input_selector [String]
459482
# @param context [Stagehand::Models::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Context]
460483
# @param extension_id [String]
461484
# @param fingerprint [Stagehand::Models::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Fingerprint]
462485
# @param log_session [Boolean]
486+
# @param os [Symbol, Stagehand::Models::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Os]
463487
# @param record_session [Boolean]
464488
# @param solve_captchas [Boolean]
489+
# @param verified [Boolean]
465490
# @param viewport [Stagehand::Models::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Viewport]
466491

467492
# @see Stagehand::Models::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings#context
@@ -610,6 +635,20 @@ class Screen < Stagehand::Internal::Type::BaseModel
610635
end
611636
end
612637

638+
# @see Stagehand::Models::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings#os
639+
module Os
640+
extend Stagehand::Internal::Type::Enum
641+
642+
WINDOWS = :windows
643+
MAC = :mac
644+
LINUX = :linux
645+
MOBILE = :mobile
646+
TABLET = :tablet
647+
648+
# @!method self.values
649+
# @return [Array<Symbol>]
650+
end
651+
613652
# @see Stagehand::Models::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings#viewport
614653
class Viewport < Stagehand::Internal::Type::BaseModel
615654
# @!attribute height

rbi/stagehand/models/session_start_params.rbi

Lines changed: 98 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -842,6 +842,18 @@ module Stagehand
842842
sig { params(block_ads: T::Boolean).void }
843843
attr_writer :block_ads
844844

845+
sig { returns(T.nilable(String)) }
846+
attr_reader :captcha_image_selector
847+
848+
sig { params(captcha_image_selector: String).void }
849+
attr_writer :captcha_image_selector
850+
851+
sig { returns(T.nilable(String)) }
852+
attr_reader :captcha_input_selector
853+
854+
sig { params(captcha_input_selector: String).void }
855+
attr_writer :captcha_input_selector
856+
845857
sig do
846858
returns(
847859
T.nilable(
@@ -888,6 +900,23 @@ module Stagehand
888900
sig { params(log_session: T::Boolean).void }
889901
attr_writer :log_session
890902

903+
sig do
904+
returns(
905+
T.nilable(
906+
Stagehand::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Os::OrSymbol
907+
)
908+
)
909+
end
910+
attr_reader :os
911+
912+
sig do
913+
params(
914+
os:
915+
Stagehand::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Os::OrSymbol
916+
).void
917+
end
918+
attr_writer :os
919+
891920
sig { returns(T.nilable(T::Boolean)) }
892921
attr_reader :record_session
893922

@@ -900,6 +929,12 @@ module Stagehand
900929
sig { params(solve_captchas: T::Boolean).void }
901930
attr_writer :solve_captchas
902931

932+
sig { returns(T.nilable(T::Boolean)) }
933+
attr_reader :verified
934+
935+
sig { params(verified: T::Boolean).void }
936+
attr_writer :verified
937+
903938
sig do
904939
returns(
905940
T.nilable(
@@ -921,27 +956,36 @@ module Stagehand
921956
params(
922957
advanced_stealth: T::Boolean,
923958
block_ads: T::Boolean,
959+
captcha_image_selector: String,
960+
captcha_input_selector: String,
924961
context:
925962
Stagehand::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Context::OrHash,
926963
extension_id: String,
927964
fingerprint:
928965
Stagehand::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Fingerprint::OrHash,
929966
log_session: T::Boolean,
967+
os:
968+
Stagehand::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Os::OrSymbol,
930969
record_session: T::Boolean,
931970
solve_captchas: T::Boolean,
971+
verified: T::Boolean,
932972
viewport:
933973
Stagehand::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Viewport::OrHash
934974
).returns(T.attached_class)
935975
end
936976
def self.new(
937977
advanced_stealth: nil,
938978
block_ads: nil,
979+
captcha_image_selector: nil,
980+
captcha_input_selector: nil,
939981
context: nil,
940982
extension_id: nil,
941983
fingerprint: nil,
942984
log_session: nil,
985+
os: nil,
943986
record_session: nil,
944987
solve_captchas: nil,
988+
verified: nil,
945989
viewport: nil
946990
)
947991
end
@@ -951,14 +995,19 @@ module Stagehand
951995
{
952996
advanced_stealth: T::Boolean,
953997
block_ads: T::Boolean,
998+
captcha_image_selector: String,
999+
captcha_input_selector: String,
9541000
context:
9551001
Stagehand::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Context,
9561002
extension_id: String,
9571003
fingerprint:
9581004
Stagehand::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Fingerprint,
9591005
log_session: T::Boolean,
1006+
os:
1007+
Stagehand::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Os::OrSymbol,
9601008
record_session: T::Boolean,
9611009
solve_captchas: T::Boolean,
1010+
verified: T::Boolean,
9621011
viewport:
9631012
Stagehand::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Viewport
9641013
}
@@ -1390,6 +1439,55 @@ module Stagehand
13901439
end
13911440
end
13921441

1442+
module Os
1443+
extend Stagehand::Internal::Type::Enum
1444+
1445+
TaggedSymbol =
1446+
T.type_alias do
1447+
T.all(
1448+
Symbol,
1449+
Stagehand::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Os
1450+
)
1451+
end
1452+
OrSymbol = T.type_alias { T.any(Symbol, String) }
1453+
1454+
WINDOWS =
1455+
T.let(
1456+
:windows,
1457+
Stagehand::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Os::TaggedSymbol
1458+
)
1459+
MAC =
1460+
T.let(
1461+
:mac,
1462+
Stagehand::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Os::TaggedSymbol
1463+
)
1464+
LINUX =
1465+
T.let(
1466+
:linux,
1467+
Stagehand::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Os::TaggedSymbol
1468+
)
1469+
MOBILE =
1470+
T.let(
1471+
:mobile,
1472+
Stagehand::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Os::TaggedSymbol
1473+
)
1474+
TABLET =
1475+
T.let(
1476+
:tablet,
1477+
Stagehand::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Os::TaggedSymbol
1478+
)
1479+
1480+
sig do
1481+
override.returns(
1482+
T::Array[
1483+
Stagehand::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Os::TaggedSymbol
1484+
]
1485+
)
1486+
end
1487+
def self.values
1488+
end
1489+
end
1490+
13931491
class Viewport < Stagehand::Internal::Type::BaseModel
13941492
OrHash =
13951493
T.type_alias do

sig/stagehand/models/session_start_params.rbs

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -459,12 +459,16 @@ module Stagehand
459459
{
460460
advanced_stealth: bool,
461461
block_ads: bool,
462+
captcha_image_selector: String,
463+
captcha_input_selector: String,
462464
context: Stagehand::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Context,
463465
extension_id: String,
464466
fingerprint: Stagehand::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Fingerprint,
465467
log_session: bool,
468+
os: Stagehand::Models::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::os,
466469
record_session: bool,
467470
solve_captchas: bool,
471+
verified: bool,
468472
viewport: Stagehand::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Viewport
469473
}
470474

@@ -477,6 +481,14 @@ module Stagehand
477481

478482
def block_ads=: (bool) -> bool
479483

484+
attr_reader captcha_image_selector: String?
485+
486+
def captcha_image_selector=: (String) -> String
487+
488+
attr_reader captcha_input_selector: String?
489+
490+
def captcha_input_selector=: (String) -> String
491+
480492
attr_reader context: Stagehand::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Context?
481493

482494
def context=: (
@@ -497,6 +509,12 @@ module Stagehand
497509

498510
def log_session=: (bool) -> bool
499511

512+
attr_reader os: Stagehand::Models::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::os?
513+
514+
def os=: (
515+
Stagehand::Models::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::os
516+
) -> Stagehand::Models::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::os
517+
500518
attr_reader record_session: bool?
501519

502520
def record_session=: (bool) -> bool
@@ -505,6 +523,10 @@ module Stagehand
505523

506524
def solve_captchas=: (bool) -> bool
507525

526+
attr_reader verified: bool?
527+
528+
def verified=: (bool) -> bool
529+
508530
attr_reader viewport: Stagehand::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Viewport?
509531

510532
def viewport=: (
@@ -514,24 +536,32 @@ module Stagehand
514536
def initialize: (
515537
?advanced_stealth: bool,
516538
?block_ads: bool,
539+
?captcha_image_selector: String,
540+
?captcha_input_selector: String,
517541
?context: Stagehand::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Context,
518542
?extension_id: String,
519543
?fingerprint: Stagehand::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Fingerprint,
520544
?log_session: bool,
545+
?os: Stagehand::Models::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::os,
521546
?record_session: bool,
522547
?solve_captchas: bool,
548+
?verified: bool,
523549
?viewport: Stagehand::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Viewport
524550
) -> void
525551

526552
def to_hash: -> {
527553
advanced_stealth: bool,
528554
block_ads: bool,
555+
captcha_image_selector: String,
556+
captcha_input_selector: String,
529557
context: Stagehand::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Context,
530558
extension_id: String,
531559
fingerprint: Stagehand::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Fingerprint,
532560
log_session: bool,
561+
os: Stagehand::Models::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::os,
533562
record_session: bool,
534563
solve_captchas: bool,
564+
verified: bool,
535565
viewport: Stagehand::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::Viewport
536566
}
537567

@@ -702,6 +732,20 @@ module Stagehand
702732
end
703733
end
704734

735+
type os = :windows | :mac | :linux | :mobile | :tablet
736+
737+
module Os
738+
extend Stagehand::Internal::Type::Enum
739+
740+
WINDOWS: :windows
741+
MAC: :mac
742+
LINUX: :linux
743+
MOBILE: :mobile
744+
TABLET: :tablet
745+
746+
def self?.values: -> ::Array[Stagehand::Models::SessionStartParams::BrowserbaseSessionCreateParams::BrowserSettings::os]
747+
end
748+
705749
type viewport = { height: Float, width: Float }
706750

707751
class Viewport < Stagehand::Internal::Type::BaseModel

0 commit comments

Comments
 (0)