Connect Jotform, Google Forms, or Any HTML Form to Revamp365
Send Jotform, Google Forms, or HTML form submissions into Revamp365 as contacts using the inbound lead webhook, with optional HMAC signing.
Create the inbound source
Go to Integrations & Apps -> Webhooks, then open the Receive Data tab (marked BETA). Click New source and name it (for example, "Jotform - Seller Form") so you can spot it in logs. Optionally set a Default lead source and Default tags. Tags here are unioned with any the payload sends. Click Save and continue. On the Done step, copy your Webhook URL — it looks like /api/webhooks/inbound-leads/{token}.
Point your form at the URL
Send a POST with header Content-Type: application/json. Either email or phone is required; everything else is optional. { "first_name": "Jane", "last_name": "Doe", "email": "jane@example.com", "phone": "5125550100", "address": "123 Main St", "city": "Austin", "state": "TX", "zip": "78701", "tags": ["website-lead"], "notes": "Submitted via Jotform" } Jotform: add a Webhooks integration, but because Jotform posts form-encoded data, route it through a middle layer (Zapier, Make, or a small script) that re-sends JSON. Google Forms: use a Google Apps Script onFormSubmit trigger with UrlFetchApp.fetch(url, { contentType: 'application/json', payload: JSON.stringify(...) }). HTML form: post via fetch() from JavaScript with a JSON body.
Field names Revamp365 understands
With no mapping configured, these keys map automatically. Aliases are also accepted. Canonical key Common aliases first_name / last_name name, full_name, firstName phone mobile, cell, phone_number email emails[] address, city, state, zip mailing_address, postal_code tags, notes, lead_source source For odd payload shapes, use the wizard's Field mapping step to point any JSON path (including static: values) at a canonical field.
Add a signature (recommended)
On the Security step, enable Require an HMAC signature. Copy the secret immediately — it is shown once. Your sender must then include header X-Revamp-Signature equal to hmac_sha256(rawBody, secret), or the request is rejected.
Test, then go live
Use the wizard's Test step to paste a sample payload and preview the canonical result plus whether it would create or merge — no contact is written. A live submission returns HTTP 202 with an event_id. Validation errors return 400. Limits: 200 requests/minute per source, 128 KB max body, and identical bodies within 24 hours are treated as duplicates. After a real submission, confirm it in Webhooks -> Logs. To preview payloads safely first, see test an inbound lead payload without creating a contact.