How do I connect Tines to a database like Postgres or MySQL?

Some of the data I need to work with lives in internal databases rather than APIs. I’m wondering whether Tines can query or write to databases directly, or whether everything has to go through an API layer. Has anyone connected Tines to Postgres, MySQL, or similar? What does that setup look like?

Good question, and this comes up a lot since so much useful data lives in internal databases rather than tidy APIs!

The short answer: Tines doesn’t ship native direct database connectors the way some ETL tools do. It’s built around the HTTP Request action, so it speaks to things over HTTP rather than raw database protocols. In practice, that means one of a few patterns depending on your setup.

Put a lightweight API layer in front of the database (most common). The typical approach is to stand up a thin API over your database, then have Tines call that with the HTTP Request action. That could be a simple internal REST service you write, or something like PostgREST, which auto-generates a REST API for Postgres. This keeps the database safely behind your network boundary and helps you avoid exposing DB credentials to your automation tooling.

Reaching it when it’s on a private network: the Tines Tunnel. If that API (or database service) isn’t publicly accessible, the Tines Tunnel is how you bridge the gap. It’s a small container you run inside your network (Docker, Kubernetes, etc.) that gives Tines cloud secure access to internal services, using only an outbound connection, so you don’t have to open any inbound firewall rules. It’s specifically designed for reaching on-prem HTTP APIs like internal REST services, Jira Server, or GitLab. Once set up, you just select the tunnel on your HTTP Request action to route the call into your network.

If you need to run actual queries/scripts: Command-over-HTTP. For cases where wrapping everything in an API isn’t practical, there’s Command-over-HTTP. It deploys as a container in your network and can execute Python, Bash, or PowerShell scripts there, so a script could connect to Postgres or MySQL using a standard driver and return the results to your story. It’s handy when the system doesn’t have an HTTP interface of its own.

Cloud-hosted databases. If you’re on a managed service that already exposes an HTTP API (for example AWS RDS via the Data API), Tines can call that directly with no tunnel required.

These are also worth a read!