A webhook lets an external system of yours get notified by HTTP POST when one of your processes finishes, instead of you having to check the app or your email.
Where to configure a webhook
Open My Account → Web Hooks ("Define your web hooks here"). Today there's a single event available: Process End.
Set up a webhook
- Process End — your endpoint's URL, placeholder "Your API URL". It must start with https:// — a plain http:// address is rejected.
- Your secret — placeholder "Your API secret". Hover its info icon for the hint, but the real rule is stricter than it sounds: lowercase letters a–z and digits 0–9 only, at least 32 characters — no uppercase, spaces or punctuation.
Click Save changes at the bottom of the My Account page. A "The changes have been saved" confirmation appears.
Save changes re-validates and re-saves the whole My Account page at once — if any other field on the page has an error, nothing on the page is saved, including your webhook, and you won't get an error message, just red text under the problem field. Scroll the page for that before assuming something else went wrong.
Removing or replacing a webhook
There's no on/off switch — clear the URL field and click Save changes to remove it. You can only have one URL per event: saving a new one for Process End replaces whatever was there before.
When it fires
A Process End webhook fires every time one of your processes' runs reaches Finished or Failed — independent of your My Account → Notifications email preference (see Monitor and manage a run in DQE One Standalone). It uses whichever of your webhooks is registered for whoever last saved that process's configuration, not necessarily whoever started that particular run.
Inside a DataPipeline (see Configure a DataPipeline in DQE One Standalone), each step is its own process run, so a webhook fires once per step that reaches Finished or Failed — but there's no separate event for the DataPipeline's overall completion.
What gets sent
A POST request with a JSON body:
{"event": "process_end", "proces_status": "Finished"}That field is really spelled proces_status (one "s") — not a typo in this article, that's what's sent on the wire.
Headers X-Hook-Signature and X-Hook-Timestamp let you verify the request: the signature is an HMAC-SHA256 of the timestamp plus the raw body, using your secret. Your endpoint must answer with a success status (2xx) within 10 seconds.
There's no automatic retry. If your endpoint is down, times out, or answers with an error, that delivery is final — fix your endpoint before the next run triggers another one.
Checking delivery status
Only failures are shown, as a message under the webhook's fields on My Account: "Webhook's last delivery failed. API status code: {code}. Error: {error}. Received on: {date} at {time}." (in your own local time).
A successful delivery shows nothing at all — no confirmation, no log. If you don't see a failure message, treat it as working. There's also no button to send a test delivery; the only way to check is to let a real process run.
Related to