Connections are either SQL databases or APIs that are used to create pages.
You can connect an SQL database to Basedash as well as define what APIs will be used for actions.
Currently, Basedash supports all SQL database with other integrations planned in the future. Stripe and Airtable data can be connected in Basedash via Sequin in read-only mode, which creates a real-time sync of data to a PostgreSQL.
- SQL Server
- Via Sequin (read-only postgres)
- Via Whalesync (coming soon)
Database connection guides
We’ve created guides for various hosting providers on how to find the necessary information about your database so that you can connect it to Basedash.
Database tables for a given connection can be found on the Connection Page. The sidebar lists all the connections and you can expand a connection to view its corresponding tables.
Database connection configuration
There are three levels of configuration within a database connection: connection, table, and attribute level configurations.
- Display name The name used for display purposes in the user interface. Useful in the case where the format of your connection name is not the most human-readable.
- Connected Determines whether data should be gathered from the connection. It’s useful to disconnect a connection if you aren’t using it, but want to keep the credentials for the connection saved in Basedash. By disconnecting a connection, Basedash won’t put any effort to synchronize the data source with Basedash which could help speed up the loading of your app.
- Editable Determines if data can be changed. Takes priority over the table and attribute configurations when set to non-editable.
- Display name The name used for display purposes in the user interface. Useful in the case where the format of your table name is not the most human-readable.
- Primary attribute Allows you to specify which column should act as the primary attribute. By default, the primary key column is used as the primary attribute.
- Connected Determines whether table should be used within Basedash. It’s useful to disconnect a table if you don’t intend to read from or edit it. Disconnected tables will not show up in the sidebar underneath their corresponding data source.
- Editable Determines if data can be changed. Takes priority over the attribute configurations when set to non-editable.
- Display name The name used for display purposes in the user interface. Useful in the case where the format of your attribute name is not the most human-readable.
- Description Used to provide better context about the purpose for an attribute. Attribute descriptions are viewable when hovering over the attribute name in a table header.
- Connected Determines whether the attribute should be used within Basedash. For example, you might want to disconnect a “password” attribute if you would prefer not to have that available within Basedash.
- Editable Determines if data can be changed.
- Obscured Obscured attributes will not show their true value in the user interface. Our own “Basehash” font will be used to display the values in the user interface. The values are hashed on the server so you can rest assured you cannot access the original values from the browser.
- Allowed values (only available for text columns) Allows you to specify a list of available options that can be used when setting a value for the attribute. When editing the attribute value, a dropdown will appear with the available options.
Updating credentials and removing connections
To update your data source credentials, click on “Manage connection” within the data source configuration panel. Then see buttons to “Manage credential” or “Remove connection”.
Connecting via SSH
It’s possible to connect a database that requires SSH access. SSH authentication can be done with a password or via an SSH key. If using an SSH key, you must save your SSH public key on your database server and then upload your SSH private key to Basedash. Don’t worry, Basedash saves your SSH private key as an encrypted value in our database.
Could not connect to the SSH server. Check your credentials and ensure your firewall is set to allow Basedash.
If you get this message, it could be that you need to tweak your server’s SSH configuration to allow Basedash to properly connect. If your database server is on a linux OS, add the following line to your
Databases connected with Sequin
Sequin works by synchronizing data from third party APIs such as Airtable and Stripe into a Postgres database. This is what allows Sequin data sources to be connected to Basedash.
Connections connected with Sequin are read-only since Sequin doesn’t allow to update data using SQL. You are still able to leverage all the features in Basedash that aren’t related to editing data, such as filtering, sorting, and creating views.
Users may want to be able to use Basedash with their local database since Basedash is a pleasant way to manage and view data. This is currently not something that is natively supported by Basedash. However, it is possible to use a third party service like ngrok or localhost.run to expose your local database to the internet and use it within Basedash.
You should be aware that there are several drawbacks to using local databases with Basedash:
- Must have an always-on process running on the computer that has the running database
- Unless the third party service provides you with a reserved domain (which is a paid ngrok feature), then you will need to update your database credentials in Basedash anytime the third party process restarts on the local computer
Given the above limitations of using Basedash with local databases, we recommend using a different app to manage you local database that doesn’t have the limitations that Basedash does. Two of our favorites are TablePlus and Postico.
Synchronizing database columns and tables with Basedash
Basedash synchronizes your database columns and tables with Basedash every 24 hours. If you’ve modified your database schema and want to force a synchronization with Basedash right away, it’s possible to do so from the sidebar.
APIs are used for Basedash actions. When creating a new API connection in Basedash, you must provide the base URL used for API calls as well as headers required for API calls (e.g. authorization headers). It’s also possible to create an API connection from one of our templates that we provide.