PostgreSQL
Run queries, insert, update, and delete rows in a PostgreSQL database.
Connect
Auth type: Credentials form (custom_auth). Fill in the fields the provider needs (listed below). They are stored encrypted in the vault.
| Field | Type | Description |
|---|---|---|
hostrequired | text | Database server hostname or IP address |
portrequired | text | Database server port (default 5432) |
userrequired | text | Database username |
passwordrequired | secret | Database password |
databaserequired | text | Database name to connect to |
- In the editor: Backend panel, Integrations tab, then Connect. This connects it for the project.
- For every project in a workspace: Workspace settings, Integrations.
- Owners and admins choose which integrations members may connect in the admin panel (Integrations tab), and can attach their own OAuth app there.
Call it from a workflow
Pass the action name and its input. The call resolves with { success, output, error? }; a missing connection resolves with success false and the reason. See ctx.integrations.invoke and ctx.integrations.call.
// .workflow.js (native ctx)
export async function run(ctx) {
const res = await ctx.integrations.invoke("postgres", "run-query", {
"query": "<query>"
});
if (!res.success) throw new Error(res.error);
ctx.log.info("PostgreSQL answered", { output: res.output });
}// defineWorkflow module (@app/sdk ctx)
import { defineWorkflow } from "@app/sdk";
export default defineWorkflow({
id: "postgres-run-query",
name: "PostgreSQL: Run Query",
description: "Calls PostgreSQL when a row is created.",
trigger: { type: "entity_event", entity: "tickets", event: "created" },
async run(ctx, event) {
const res = await ctx.integrations.call("postgres", {
"action": "run-query",
"query": "<query>"
}) as { success: boolean; error?: string };
if (!res.success) throw new Error(res.error);
},
});curl -X POST "$APP_ORIGIN/__appbricx/connector-proxy/postgres/run-query" \
-H "Authorization: Bearer $APP_KEY" \
-H "content-type: application/json" \
-d '{"props":{"query":"<query>"}}'Actions
run-queryin catalog
Run Query. Run Query
Also accepted as run_query.
| Input | Type | Description |
|---|---|---|
queryrequired | text | Please use $1, $2, etc. for parameterized queries to avoid SQL injection. |
argsoptional | array | Arguments to be used in the query |
query_timeoutoptional | number | An integer indicating the maximum number of milliseconds to wait for a query to complete before timing out. |
connection_timeout_msoptional | number | An integer indicating the maximum number of milliseconds to wait for a connection to be established before timing out. |
application_nameoptional | text | A string indicating the name of the client application connecting to the server. |
Env keys
When connected, these credential fields are exposed to the project's runtime as environment variables (PostgreSQL database connection.). Server keys never reach the browser.
| Variable | Field | Where |
|---|---|---|
PGHOST | host | server only |
PGPORT | port | server only |
PGDATABASE | database | server only |
PGUSER | user | server only |
PGPASSWORD | password | server only |
Details
- Id
postgres- Category
- Data and storage
- Tags
- database, sql, relational, open-source
- Package
@activepieces/piece-postgres@0.2.3- Tier
- Built in