This is an experimental feature. Experimental features and their APIs may change or be removed at any time. To learn more, click here.



This page only contains information on the st.connections.ExperimentalBaseConnection class. For a deeper dive into creating and managing data connections within Streamlit apps, read Connecting to data.


Deprecation notice

st.connections.ExperimentalBaseConnection was deprecated in version 1.28.0. Use st.connections.BaseConnection instead.

The abstract base class that all Streamlit Connections must inherit from.

This base class provides connection authors with a standardized way to hook into the st.connection() factory function: connection authors are required to provide an implementation for the abstract method _connect in their subclasses.

Additionally, it also provides a few methods/properties designed to make implementation of connections more convenient. See the docstrings for each of the methods of this class for more information


While providing an implementation of _connect is technically all that's required to define a valid connection, connections should also provide the user with context-specific ways of interacting with the underlying connection object. For example, the first-party SQLConnection provides a query() method for reads and a session property for more complex operations.

Class description[source]

st.connections.ExperimentalBaseConnection(connection_name, **kwargs)



Reset this connection so that it gets reinitialized the next time it's used.



This method did not exist in version 1.33.0 of Streamlit.


Still have questions?

Our forums are full of helpful information and Streamlit experts.