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 API. For a deeper dive into creating and managing data connections within Streamlit apps, read Connecting to data.

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.experimental_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.

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

This method can be useful when a connection has become stale, an auth token has expired, or in similar scenarios where a broken connection might be fixed by reinitializing it. Note that some connection methods may already use reset() in their error handling code.

Function signature[source]



import streamlit as st

conn = st.experimental_connection("my_conn")

# Reset the connection before using it if it isn't healthy
# Note: is_healthy() isn't a real method and is just shown for example here.
if not conn.is_healthy():

# Do stuff with conn...

Still have questions?

Our forums are full of helpful information and Streamlit experts.

Was this page helpful?

editEdit this page on GitHub