Selenium marks some APIs so your IDE or compiler can warn you about how they’re meant to be used. These pages explain what each warning means and what to use instead.
This is the multi-page printable view of this section. Click here to print.
Warnings
1 - BiDi implementation API is internal
If your IDE strikes through a Selenium BiDi class or method, shows an “Internal API” tooltip, or (in .NET) emits a compiler warning, you’ve reached one of Selenium’s internal BiDi implementation APIs.
These are the low-level classes that map directly onto the BiDi (and CDP) wire protocol,
under namespaces like org.openqa.selenium.bidi.* (Java), OpenQA.Selenium.BiDi.*
(.NET), selenium.webdriver.common.bidi.* (Python), and Selenium::WebDriver::BiDi::*
(Ruby). They are public only because the higher-level features need them.
Why they are marked internal
The goal is for the high-level APIs to cover everything you need, so you never have to reach for these low-level classes directly. They are marked internal to steer you toward those high-level APIs — but they remain available as an escape hatch if you have a use case the high-level APIs don’t yet cover.
What to use instead
Use the high-level BiDi APIs:
If your use case is only possible through the internal classes, please open an issue so the high-level API can cover it.




