Webhook destination
Renta sends events collected by Renta Tracker to an HTTP endpoint you own, one request per event, with a JSON body you assemble from the event fields.
You pick the event type and name, add filters, and map event fields to the keys of the body. Renta sends every matching event as soon as it arrives.
Endpoint requirements
The endpoint has to accept the requests Renta sends during the connection check and during delivery.
- URL with a protocol.
The hostname starts withhttp://orhttps://. - HTTP 200 on the test request.
When you save the connection, Renta sends one request to the hostname with the method and headers you set and an empty body. Renta saves the connection only if the endpoint answers with status 200 within 10 seconds. Any other status, including 201 and 204, fails the check. - A 2xx status on delivery.
Each event is one request with the same method and headers and a JSON body. Any status from 200 to 299 counts as delivered. Any other status marks the run as failed. - Reachable from the internet.
Renta sends requests from its own IP addresses. If the endpoint sits behind an allow list, add the Renta IP addresses.
Authentication
Renta authenticates to your endpoint with the headers you add to the connection. Every request, including the test request, carries them.
A common setup is a secret in a custom header, such as x-webhook-secret, that the endpoint compares with its own value.
Connect Webhook destination
- Navigate to the Connections > Catalog section in the left sidebar.
- Open the Event stream category and click the Webhook card marked Destination.
The category also contains a Webhooks card marked Source. That connector receives events into Renta and is described on the Webhooks source page.
Fill in the fields and click Save.
| Field | Description |
|---|---|
| Destination name | The name of the connection in the Renta interface. |
| Hostname | The full URL of the endpoint, including the protocol, for example https://example.com/renta/events. |
| Webhook sending method | The HTTP method of every request: GET, POST, PUT, or DELETE. Pick POST to send the event in the request body. |
| Headers | Turn on the switch and add key and value pairs. Renta adds them to every request. Click Add field for another header. |
Renta sends the test request and saves the connection when the endpoint answers with status 200. If the check fails, the connection is not saved. Compare the status your endpoint returned with the table below.
| Status the endpoint returned | What to check |
|---|---|
| 401 or 403 | The header values do not match what the endpoint expects. Check the secret and the header name. |
| 404 | The path does not exist. Check the hostname, including the path after the domain. |
| 405 | The endpoint does not accept the selected method. Change Webhook sending method or allow the method on the endpoint. |
| 500 | The endpoint failed while handling the request. Most often it parses the body before checking that it is empty. |
| No answer | Renta could not reach the hostname within 10 seconds. Check DNS, the allow list, and that the service is running. |
Create a Webhook pipeline
The Webhook destination and a Renta Tracker source have to exist before you start.
In the left sidebar, click New pipeline. On the Source step, select your Renta Tracker source under Already connected and click Next step. Then choose the source connection and click Next step.
On the Destination step, select Webhook under Already connected, choose the connection you created, and click Next step.
Select the Event Type and the Event names that trigger the request. Add Filters to send only events whose properties match the condition, for example a specific page or a minimum order value.
Add a row for every key of the JSON body: the key name and the event field that fills it. Top-level fields and the event properties are both available. Click Save to activate the pipeline.
Delivery
Renta sends a request for every event that matches the pipeline, as soon as Renta Tracker receives the event.
The body contains only the keys you mapped. A key whose event field is empty is left out of the body, so the endpoint receives no null values. Renta adds the header User-Agent: renta.im 2.0 unless you set your own User-Agent in the connection.
Each request is a run of the pipeline. The run shows the status and the response text the endpoint returned, so a rejected event is visible in pipeline monitoring with the reason. Renta does not retry a failed delivery.
Limits
Renta does not limit the number of Webhook destinations or pipelines in a workspace. The endpoint receives one request per event, so make sure it can handle the event rate of your site.
Ready to get started?
Build your data pipeline today or get a personalized demo. Start free!
Need help?
Get expert support to ensure your project succeeds. We're here to help!
Feature requests?
Help shape our product! Share your ideas for new features and integrations.