Tutorial 1 — Create a Connection
This tutorial builds a working PostgreSQL pipeline from scratch — one of the most common real-world setups. By the end you'll have a connection, an operator, a payload, a scheduled task, and a dependency chain.
Prefer the fast path? See the Quickstart. New to the model? Read Core concepts first.
What a connection is
A connection holds credentials and resource settings for an external system, plus concurrency controls. It's the WHERE of a task.
Create it
- Navigate to your project folder in the UI.
- Click Create Connection.
- Fill in the form:
- Name — descriptive, e.g.
postgresql(the name of the bundled demo connection) - Description — optional
- Content — JSON with credentials
- Max Parallelism — max concurrent tasks using this connection (e.g.
10)
- Name — descriptive, e.g.
Example content:
{
"host": "postgres-demo",
"port": 5432,
"database": "postgres_demo_db",
"user": "postgres",
"password": "postgres"
}
These are the bundled demo values (the
postgres-demodatabase that ships with the docker stack). Pointhost/database/user/passwordat your own PostgreSQL instance when you're ready.
Security: connection values are passed to the operator exactly as stored — LeastAction does not expand
${...}placeholders.PostgresqlExecuteSQLreadspasswordliterally, so put the real value here and protect the connection with catalog permissions. For credential-free auth use IAM roles / managed identities, or an operator that takes a native secret reference (e.g.secret_arn). See How secrets work and Configuration.
Connections take whatever fields your operator expects — AWS connections use region, aws_access_key_id, etc.; a dbt connection uses dbt_server_url. The full field reference per system is in the Connection concept.
Or create it with the AI
Anything you can do in the UI you can also do through the AI. There's no AI > Connection wizard, so create connections by asking the assistant (Service AI chat) or any MCP-connected client:
"create a postgres connection named
postgresqlpointing atpostgres-demo:5432, databasepostgres_demo_db, userpostgres."
The agent calls create_catalog_item with item_type: connection and reports the new item's laui. See MCP.