You can configure webhooks from ELT pipelines running in Peliqan, to receive events when pipelines completed, failed etc. This is useful in combination with embedding and the Partner API, to integrate Peliqan’s ELT connectivity into your own platform.
Navigate to Settings → API Token & Webhooks → Outbound Webhooks to set up your endpoint to receive webhook events from Peliqan pipelines.

| Field | Description |
|---|---|
| Webhook URL | Your HTTPS endpoint. Must be publicly reachable. |
| Signing Secret | Random string you generate — used to sign every request with HMAC-SHA256. Optional but strongly recommended. |
Generate a strong secret:
openssl rand -hex 32
Subscriptions: Event subscriptions default to all events. You can restrict to a specific subset as well in the UI
Fired when data connections are created or deleted.
These use a slightly different payload shape — see the Payload section below.
| Event type | When it fires |
|---|---|
connection_added |
A new data connection has been created on the account. |
connection_removed |
A data connection has been deleted from the account. |
Fired by Peliqan's pipeline runner as a sync progresses from start to a terminal state.
| Event type | Run status | When it fires |
|---|---|---|
pipeline_run_started |
RUNNING |
The Peliqan worker picks up the run and execution begins. Fires once per run, before any data is fetched. |
pipeline_run_completed |
COMPLETED |
All enabled streams synced to the destination without any row-level errors. |
pipeline_run_completed_with_errors |
COMPLETED_WITH_ERRORS |
Sync finished but at least one stream had row-level write failures. Data was partially synced — other streams may be complete. |
pipeline_run_internal_error |
INTERNAL_ERROR |
Peliqan's own task runner crashed — unhandled exception inside the pipeline orchestrator, not inside the connector. |
pipeline_run_error |
ERROR |
The Singer tap/connector process exited with a non-zero code or raised an exception during execution. |
pipeline_run_remote_error |
REMOTE_ERROR |
The remote data source returned an error — e.g. database connection refused, credentials rejected, or the source API returned a 5xx. |
pipeline_run_killed |
KILLED |
A user manually cancelled the run via the UI or API. |
pipeline_run_killed_for_system_upgrade |
KILLED_FOR_SYSTEM_UPGRADE |
Peliqan stopped the run automatically to perform a rolling system upgrade. Safe to re-trigger; no data corruption occurs. |
pipeline_run_timeout |
TIMEOUT |
The run exceeded the maximum execution duration configured for the connector. The process was force-terminated. |
pipeline_run_rate_limited |
RATE_LIMITED |
The source API returned an HTTP 429 or a connector-specific rate limit that cannot be retried within the allowed window. |
pipeline_run_no_streams |
NO_STREAMS |
The connector found no streams/tables to sync — either none are enabled on the connection, or discovery returned an empty catalog. |
pipeline_run_failed |
(unexpected) | Catch-all for any terminal status not covered above. Should not occur in normal operation. |
Typical event sequence for a normal scheduled run:
pipeline_run_started → pipeline_run_completed
Every webhook event sends a JSON body with the following shape: