Database users

DX supports direct SQL access to your data lake, enabling direct read and write operations to be performed outside of the DX interface.

Read access allows you to query DX-managed and custom tables—ideal for building custom applications, integrating with platforms like Snowflake or BI tools.

Write access lets you load custom data into DX. To maintain separation from DX-managed tables, custom tables must reside in the “custom” namespace and follow the naming custom.tablename. Foreign key constraints that reference DX-managed tables are not supported. See the Custom tables article for a full guide to creating and using these tables.

Setup instructions

Step 1 – Create a database user

  1. Log in to DX as an admin user.
  2. Navigate to the DB Access admin screen, under the DB Users tab.
  3. Add a new user with either the read or read_write scope.
  4. Copy your database credentials.

Step 2 – Connect to your database

Use a Postgres-compatible database client and connect to the database with the credentials you generated in Step 1. For desktop clients, we recommend Postico and pgAdmin. If your database user was granted the read_write scope, you can create tables in the custom. namespace and write to them.

The credentials are provided as a single connection string (URL). If your database client requires you to enter connection details separately, you can extract them from the URL using the following pattern:

postgres://<user>:<password>@<host>:<port>/<database>

  • User: Appears after postgres:// and before :
  • Password: Appears after the user and : and before @
  • Host: Appears after @ and before the port number
  • Port: Appears after the host and : (typically 5432)
  • Database: Appears at the end of the string after /

A note on allowlisting
Some corporate security teams require employees to add the IP address of external databases to an internal allowlist before connecting. If this applies to your organization, please note that DX guarantees consistency of the hostname (<customer_name>.<uid>.db.getdx.net) but not the underlying IP address, which is subject to change due to infrastructure resizes or upgrades. We recommend allowlisting by hostname rather than IP address where possible.

BI tool example

The images below demonstrate connecting to DX from a business intelligence tool (e.g., Mode Analytics) and creating a custom cycle time report using data from the DX data lake.