# PostgreSQL - Workflow trigger | Docs - nodulz

Source: https://nodulz.com/docs/nodes/postgres_trigger

Language: en

Starts the workflow on INSERT, UPDATE, DELETE, or TRUNCATE on a table (NOTIFY)

## Usage and specifics

Publishing configures a PostgreSQL NOTIFY listener for the selected events. The database account must be able to install the required objects on the target table.

Technical type : `postgres_trigger`. Runtime : `nodulz`.

## Credentials and prerequisites

- [Create and configure the credential : postgres](/docs/credentials/postgres)

Create credentials in your nodulz instance’s Credentials area, then select them on the node. Availability depends on ownership and sharing. See the [credentials guide](/docs/credentials) for access and rotation.

## Parameters

Names below are technical keys. Defaults are not a ready-to-run configuration: complete fields required by your operation. Paths containing [] describe list items; some fields depend on the selected mode.

| Parameter | Type | Default | Values / limits |
| --- | --- | --- | --- |
| `connectionSource` | `enum` | `"credential"` | `credential`, `service` |
| `credentialId` | `string` | `""` | - |
| `serviceInstanceId` | `string` | `""` | - |
| `schema` | `string` | `"public"` | - |
| `table` | `string` | `""` | - |
| `events` | `array` | `["insert","update","delete","truncate"]` | - |
| `testPayload` | `string` | `""` | - |
| `notifyChannel` | `string` | - | - |
| `setupStatus` | `enum` | - | `pending`, `installed`, `error` |
| `setupError` | `string` | - | - |
| `connectionStatus` | `enum` | - | `disconnected`, `listening`, `error` |
| `lastError` | `string` | - | - |

## Configuration help

| Setting | Purpose and guidance |
| --- | --- |
| `connectionSource`<br>Connection source | Use a manual credential or a service deployed in the Services space. |
| `serviceInstanceId`<br>Service instance | Only Available services matching the app binding are listed. |
| `credentialId`<br>Database credential | Connection settings are stored on the Credentials page. |
| `schema`<br>PostgreSQL schema | Schema that contains the watched table (usually public). |
| `table`<br>Table | Table name without schema - letters, numbers, underscore. |
| `testPayload`<br>Test payload | Used when manually testing the trigger in the editor. |

## Examples

- Output includes operation, schema, table, row, and previousRow when available.

## Initial configuration

Initial catalog configuration example, to adapt before running. Keep secrets in credentials.

```json
{
  "connectionSource": "credential",
  "credentialId": "",
  "serviceInstanceId": "",
  "schema": "public",
  "table": "",
  "events": [
    "insert",
    "update",
    "delete",
    "truncate"
  ],
  "testPayload": ""
}
```

## Verification

Test with representative data. Check node output in the inspector and logs, then use editor mapping for downstream fields. A trigger test with a simulated payload does not validate external service delivery.

See also : [Expressions and data](/docs/expressions), [Executions](/docs/executions), [Node catalog](/docs/nodes).

## Explore further

- [Features - nodulz](https://nodulz.com/product/overview)
- [Node catalog - nodulz](https://nodulz.com/product/catalog)
- [MCP server - nodulz](https://nodulz.com/product/mcp)
- [Pricing - nodulz](https://nodulz.com/pricing)
- [Use cases and workflow automation - nodulz](https://nodulz.com/use-cases)
- [Choose what your workflows can do. - nodulz](https://nodulz.com/compare)
- [Documentation - nodulz](https://nodulz.com/docs)
