Webhooks
SINCE VERSION 8.0
- 1 What is a Webhook?
- 2 Create a Webhook endpoint
- 3 Calling a Webhook
- 3.1 Result JSON
- 3.1.1 Processing response
- 3.1.2 OK response
- 3.2 Polling for result
- 3.1 Result JSON
- 4 Consume a webhook call (trigger pipeline by a webhook)
- 5 List existing Webhooks
- 6 Edit a Webhook
- 7 Delete a Webhook
- 8 Receiving uploaded files via Webhook
- 9 Logging and Tracing of Webhooks
What is a Webhook?
A webhook is a unique HTTP URL in PIPEFORCE which can be called by an external system. In case the external system calls the webhook url, this will trigger any custom action inside PIPEFORCE.
This is a very effective and straight forward possibility to integrate external systems into PIPEFORCE using a push / listening approach, with a very low requirements barrier to the caller system. Nearly every modern system can be integrated this way.
The URL of such an webhook, which gets called by the external system, has a format similar to this:
https://hub-<your-domain>/api/v3/command/webhook.receive?token=<token>
Replace
<token>
by the token of your webhook. See below to get such an token.The token is sometimes also referred to as the uuid, the unique id, of a webhook.
It's also possible to place the
token
param as request header instead (recommended, because it is more secure).
You can create and manage multiple custom webhooks and URLs each with individual settings. When called, a webhook will be validated first and after this an internal message gets produced. Pipelines can listen to this message using event.listen
or message.receive
to consume and process the incoming webhook finally. This way you can make sure, webhooks comply with a given set of rules before they will be passed across multiple pipelines, queues and optional microservices: