Unified Lead Capture is a webhook that lets any lead source that can send data — Angi, Thumbtack, Facebook Lead Ads, your website forms, or anything connected through Zapier or Make — create leads in Scaffold automatically. Leads arrive in your pipeline the moment they come in, and speed-to-lead follow-up fires right away.
The honest boundary first: this is for lead sources that PUSH data in. It does not create two-way syncs, connect suppliers or accounting, or replace OAuth integrations like Google Calendar. It's one direction — leads flowing into Scaffold. (It's also different from Integrations → Webhooks, which is the opposite direction: Scaffold notifying your other tools.)
Get your webhook URL and API key. Your URL is https://scaffoldcrm.com/api/webhooks/leads — same for every source you connect. Your API key is shown in Integrations → Google Form tab (the key is shared between the Google Form integration and Unified Lead Capture).
Choose how to connect. The universal path is Zapier: your lead source triggers a Zap, and the Zap POSTs the lead to Scaffold. Use this for Angi, Thumbtack, Facebook Lead Ads, Google Ads lead forms, Typeform, and anything else with a Zapier app. If you control the code (your own website form), you can POST directly instead.
Zapier setup: create a Zap with your lead source's 'New Lead' trigger. Add an action: Webhooks by Zapier → Custom Request. Method POST, URL https://scaffoldcrm.com/api/webhooks/leads, and add a header named X-Api-Key with your key (plus Content-Type: application/json).
Map the fields in the Zap's JSON body. Only first_name and last_name are required. Optional fields: email, phone, address_line1, address_line2, city, state, zip_code, source, service_type, assigned_rep, estimated_value, sms_consent, sms_consent_method. Extra fields your source sends are ignored — they won't cause errors.
estimated_value is in CENTS, not dollars — 1250000 means $12,500.00. If your source reports dollars, multiply by 100 in the Zap (Formatter → Numbers) or leave the field out. And email must be a real email address or the lead is rejected — leave email unmapped rather than sending blanks.
source and service_type only accept fixed values. source: website, referral, google_ads, facebook, door_to_door, yard_sign, home_show, repeat_customer, other. service_type: roofing, siding, windows, gutters, roofing_siding, full_exterior, other. There is no 'angi' or 'thumbtack' value yet — use 'other' for marketplaces.
Test it. Send a test lead from the Zap. A successful request returns status 201 with a lead_id, and the lead appears in your pipeline within seconds. Then turn the Zap on.
Angi specifically: the recommended path today is Angi → Zapier → Scaffold, which Angi itself supports. Angi also offers direct delivery — email crmintegrations@angi.com from your Angi account email with your Angi account ID and your webhook URL including the key (https://scaffoldcrm.com/api/webhooks/leads?api_key=YOUR_KEY). Direct delivery only works if Angi's field names match Scaffold's, so send yourself a test lead after setup — if it doesn't appear, use the Zapier path, where you control the field mapping.
What happens after a lead arrives: it enters your pipeline at the New stage tagged with its source, AI lead scoring runs, the address is geocoded onto your maps, manager alerts and speed-to-lead SMS fire (if enabled and Twilio is configured and the lead has a phone number), and your outbound Zapier/Make subscriptions get a lead.created event.
Troubleshooting: 401 means your API key is missing or wrong — copy the current one from Integrations → Google Form tab. 403 means your plan's lead limit is reached and the lead was NOT saved — upgrade or wait for the quota reset. 422 means the payload failed validation — the response says which field; the usual culprits are a missing name, an invalid email, or a source/service_type value not on the allowed list.
Keep your API key secret — anyone who has it can create leads in your account. Don't put it in public website JavaScript; send from your form's server side or through Zapier. Regenerating the key updates it for ALL connected sources at once (including the Google Form integration), so update every Zap after rotating.
More in Leads & CRM