The Theme Options → Webhook URL section allows WPResidence to send contact form submissions to an external system such as a CRM, Zapier, Make, or a custom API endpoint.
When enabled, each supported form will send a JSON payload to the webhook URL you provide.
Webhook URL
- Field: Webhook URL
- What to enter: the full endpoint that will receive the request, for example:
https://example.com/webhook
- Requests are sent as JSON with Content-Type:
application/json
Why you see multiple Yes/No switches
Each Yes/No option controls a different form source. Data is only sent when that specific switch is set to Yes.
In the current UI, some options appear with the same label (for example, Property Agent Form) but they are different form sources internally.
Form switches and what they control
- Property Agent Form
Sends submissions from the general contact flow. - Property Agent Form
Sends submissions from the property page contact form. - Property Schedule Tour Form
Sends schedule tour submissions. - Property Agent Form
Sends submissions from the agent profile contact form. - Property Agency Form
Sends submissions from the agency profile contact form. - Property Developer Form
Sends submissions from the developer profile contact form.
Note: Repeated labels in the interface are expected. Use the mapping above to understand which form is being controlled.
What data is sent
The webhook payload includes the fields submitted by the user, plus helpful context about where the submission happened.
Typical keys include:
nameemailphonesubjectmessagepermalinkschedule_hourschedule_dayschedule_mode
Empty values are removed before sending.
How to enable and test
- Go to Theme Options → Webhook URL.
- Add your webhook endpoint in Webhook URL.
- Set Yes for the form(s) you want to send.
- Save the Theme Options.
- Submit a test message on the front end using the same form.
- Check your webhook receiver logs (Zapier, Make, CRM, or your server logs) to confirm the request arrived.
Troubleshooting
- Nothing is received
- Confirm the switch for that exact form is set to Yes.
- Confirm you saved Theme Options after changing the setting.
- Confirm the webhook URL is reachable over HTTPS from your server.
- Temporarily disable security or firewall rules that may block outgoing requests.
- Webhook receives requests, but data is missing
- Only fields present in the form and filled by the user are sent.
- Empty fields are removed from the payload.
- Receiver shows a 400/401/403 error
- Your endpoint may require authentication or specific headers.
- Use an endpoint that accepts anonymous requests or implement a receiver that validates requests.
Security note
A webhook sends data to whatever URL you enter. Make sure the URL is trusted and owned by you or your client.
