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.

Configuration

Navigate to Settings → API Token & Webhooks → Outbound Webhooks to set up your endpoint to receive webhook events from Peliqan pipelines.

image.png

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

Event Types

Connection Events

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.

Pipeline Events

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_startedpipeline_run_completed

Payload

Every webhook event sends a JSON body with the following shape: