WebDriver BiDi Protocol Reference
This page provides a comprehensive cross-reference between the W3C WebDriver BiDi specification protocol methods and their implementation in WebDriverBiDi.NET.
For each protocol method, this reference links to:
- The API documentation for command parameters and result types
- The module guide with usage examples and best practices
How to Use This Reference
- Find a protocol method from the W3C spec (e.g.,
browsingContext.navigate) - Look up the row in the appropriate module table below
- Click the API link to see the command parameters, result type, and method signature
- Click the Guide link to see usage examples and patterns
Module List
- Session Module
- Browser Module
- Browsing Context Module
- Network Module
- Script Module
- Input Module
- Storage Module
- Log Module
- Bluetooth Module
- Emulation Module
- Permissions Module
- Speculation Module
- User Agent Client Hints Module
- Web Extension Module
- Digital Credentials Module
Session Module
Commands for managing WebDriver BiDi sessions and event subscriptions.
| Protocol Method | Command API | Result API | Module Guide |
|---|---|---|---|
session.end |
EndCommandParameters | EndCommandResult | Session Guide |
session.new |
NewCommandParameters | NewCommandResult | Session Guide |
session.status |
StatusCommandParameters | StatusCommandResult | Session Guide |
session.subscribe |
SubscribeCommandParameters | SubscribeCommandResult | Session Guide |
session.unsubscribe |
UnsubscribeCommandParameters | UnsubscribeCommandResult | Session Guide |
Browser Module
Commands for browser-level operations including user contexts and client windows.
| Protocol Method | Command API | Result API | Module Guide |
|---|---|---|---|
browser.close |
CloseCommandParameters | CloseCommandResult | Browser Guide |
browser.createUserContext |
CreateUserContextCommandParameters | CreateUserContextCommandResult | Browser Guide |
browser.getClientWindows |
GetClientWindowsCommandParameters | GetClientWindowsCommandResult | Browser Guide |
browser.getUserContexts |
GetUserContextsCommandParameters | GetUserContextsCommandResult | Browser Guide |
browser.removeUserContext |
RemoveUserContextCommandParameters | RemoveUserContextCommandResult | Browser Guide |
browser.setClientWindowState |
SetClientWindowStateCommandParameters | SetClientWindowStateCommandResult | Browser Guide |
browser.setDownloadBehavior |
SetDownloadBehaviorCommandParameters | SetDownloadBehaviorCommandResult | Browser Guide |
Browsing Context Module
Commands for managing browsing contexts (tabs/windows), navigation, and capturing content.
Browsing Context Events
Network Module
Commands for intercepting, modifying, and monitoring network traffic.
Network Events
| Protocol Event | EventArgs API | Module Guide |
|---|---|---|
network.authRequired |
AuthRequiredEventArgs | Network Guide |
network.beforeRequestSent |
BeforeRequestSentEventArgs | Network Guide |
network.fetchError |
FetchErrorEventArgs | Network Guide |
network.responseCompleted |
ResponseCompletedEventArgs | Network Guide |
network.responseStarted |
ResponseStartedEventArgs | Network Guide |
Script Module
Commands for script evaluation, realm management, and preload scripts.
| Protocol Method | Command API | Result API | Module Guide |
|---|---|---|---|
script.addPreloadScript |
AddPreloadScriptCommandParameters | AddPreloadScriptCommandResult | Script Guide |
script.callFunction |
CallFunctionCommandParameters | EvaluateResult | Script Guide |
script.disown |
DisownCommandParameters | DisownCommandResult | Script Guide |
script.evaluate |
EvaluateCommandParameters | EvaluateResult | Script Guide |
script.getRealms |
GetRealmsCommandParameters | GetRealmsCommandResult | Script Guide |
script.removePreloadScript |
RemovePreloadScriptCommandParameters | RemovePreloadScriptCommandResult | Script Guide |
Script Events
| Protocol Event | EventArgs API | Module Guide |
|---|---|---|
script.message |
MessageEventArgs | Script Guide |
script.realmCreated |
RealmCreatedEventArgs | Script Guide |
script.realmDestroyed |
RealmDestroyedEventArgs | Script Guide |
Input Module
Commands for simulating user input actions.
| Protocol Method | Command API | Result API | Module Guide |
|---|---|---|---|
input.performActions |
PerformActionsCommandParameters | PerformActionsCommandResult | Input Guide |
input.releaseActions |
ReleaseActionsCommandParameters | ReleaseActionsCommandResult | Input Guide |
input.setFiles |
SetFilesCommandParameters | SetFilesCommandResult | Input Guide |
Input Events
| Protocol Event | EventArgs API | Module Guide |
|---|---|---|
input.fileDialogOpened |
FileDialogOpenedEventArgs | Input Guide |
Storage Module
Commands for managing cookies and other storage mechanisms.
| Protocol Method | Command API | Result API | Module Guide |
|---|---|---|---|
storage.deleteCookies |
DeleteCookiesCommandParameters | DeleteCookiesCommandResult | Storage Guide |
storage.getCookies |
GetCookiesCommandParameters | GetCookiesCommandResult | Storage Guide |
storage.setCookie |
SetCookieCommandParameters | SetCookieCommandResult | Storage Guide |
Log Module
Monitoring console log entries.
Log Events
| Protocol Event | EventArgs API | Module Guide |
|---|---|---|
log.entryAdded |
EntryAddedEventArgs | Log Guide |
Bluetooth Module
Commands for simulating Bluetooth adapter and device behavior.
Bluetooth Events
| Protocol Event | EventArgs API | Module Guide |
|---|---|---|
bluetooth.characteristicEventGenerated |
CharacteristicEventGeneratedEventArgs | Bluetooth Guide |
bluetooth.descriptorEventGenerated |
DescriptorEventGeneratedEventArgs | Bluetooth Guide |
bluetooth.gattConnectionAttempted |
GattConnectionAttemptedEventArgs | Bluetooth Guide |
bluetooth.requestDevicePromptUpdated |
RequestDevicePromptUpdatedEventArgs | Bluetooth Guide |
Emulation Module
Commands for device emulation and environment overrides.
Permissions Module
Commands for simulating permission grants and denials.
| Protocol Method | Command API | Result API | Module Guide |
|---|---|---|---|
permissions.setPermission |
SetPermissionCommandParameters | SetPermissionCommandResult | Permissions Guide |
Speculation Module
Monitoring speculative navigation (prefetch) status. The WebDriver BiDi Speculation module defines no commands; it is event-only.
Speculation Events
| Protocol Event | EventArgs API | Module Guide |
|---|---|---|
speculation.prefetchStatusUpdated |
PrefetchStatusUpdatedEventArgs | Speculation Guide |
User Agent Client Hints Module
Commands for overriding User-Agent Client Hints.
| Protocol Method | Command API | Result API | Module Guide |
|---|---|---|---|
userAgentClientHints.setClientHintsOverride |
SetClientHintsOverrideCommandParameters | SetClientHintsOverrideCommandResult | User Agent Client Hints Guide |
Web Extension Module
Commands for managing browser extensions.
| Protocol Method | Command API | Result API | Module Guide |
|---|---|---|---|
webExtension.install |
InstallCommandParameters | InstallCommandResult | Web Extension Guide |
webExtension.uninstall |
UninstallCommandParameters | UninstallCommandResult | Web Extension Guide |
Digital Credentials Module
Commands for simulating a virtual digital wallet during credential presentation testing.
| Protocol Method | Command API | Result API | Module Guide |
|---|---|---|---|
digitalCredentials.setVirtualWalletBehavior |
SetVirtualWalletBehaviorCommandParameters | SetVirtualWalletBehaviorCommandResult | Digital Credentials Guide |