Internal supports the latest versions of PostgreSQL 11 and 12.

How to connect

  • Display Name: Give your data source a name for use within Internal. 
  • Host: The hostname or IP address of your data source. 
  • Port: Port to connect to. By default, this is prefilled with standard values (PostgreSQL:5432).  
  • Username: Credentials for this data source.
  • Password: Credentials for this data source.
  • Database: The name of the database (this must match the actual name of your PostgreSQL database). 
Note: To connect with Internal, your data source must be publicly accessible, with SSL encryption enabled, and configured to accept connections from Internal’s IP addresses. 

What happens when you connect

When you connect PostgreSQL to Internal, we'll generate the following for you automatically:

  1. A resource for each table in your database. Think of these as prebuilt SQL queries, so you don't have to write queries for everything.
  2. An insert, update, and delete function for each table in the database (if the connecting user account has these privileges).
Note: Functions will not be generated if no primary keys are found in the connected database.

Custom Resources and Functions

In some cases, you may want to create a view that combines data from various tables or elevates nested JSON fields to top-level attributes. To accomplish this, create a custom SQL Resource (a.k.a. SQL Query). To enable custom operations that write directly to your database (e.g. bulk actions), create a custom Function.

Filtering and Sorting

While Internal enables filtering and sorting on all columns, we recommend indexing columns on large tables to improve performance.