How webhooks work
DreamApply uses webhooks to communicate with clients in the following way:
- The client subscribes to specific events and sets up a webhook in DreamApply.
- When a subscribed event occurs, DreamApply prepares a payload containing event information and related data. The payload uses the same format as the
GET/api/journalrequest. - DreamApply sends a
POSTrequest with the payload to the client’s webhook endpoint. - The client receives the data and performs an action, for example, triggers a workflow.
- The client returns a success status code to DreamApply to confirm receipt.
Webhook endpoint
To receive event data in JSON format, you must set up an HTTP endpoint that can handle POST requests.
The endpoint must meet the following requirements:
- POST request handling: The endpoint must accept
POSTrequests and correctly parse the JSON payload. - HTTPS access: The endpoint must be accessible over the internet via HTTPS.
- Secure communication: The endpoint must support secure communication using modern TLS.
- Confirmation response: Upon successful receipt, the endpoint must return one of the following HTTP status codes: 200, 201, 202 or 204.
- Authorization: To ensure secure communication, DreamApply supports authorization headers for webhooks.
If data delivery fails or the client returns an incorrect status code, DreamApply retries the request 5 times at 1-minute intervals.