I have set up a ParseHub scraping project that should send results to Zapier through a webhook connection. The webhook trigger is working and I can see that calls are coming through to Zapier, but I’m having trouble getting the actual scraped data.
Instead of receiving the parsed JSON data that I expect from my scraping project, I only get metadata and configuration details. Here’s what shows up in the Zapier webhook:
execution_start: "2022-02-17T04:13:53.829982"
current_status: "running"
template_name: "main_template"
data_available: 0
webhook_url: "https://hooks.zapier.com/hooks/catch/9583384/brhtvvh/"
settings: {
format: "csv",
javascript_enabled: true,
email_notifications: true,
ip_rotation: false,
worker_limit: 0,
page_limit: 0
}
source_url: "https://www.dice.com/jobs?q=salesforce%20developer&location=Austin"
token: "tNbDh2np_ZA6"
run_id: "tchOcTzTQbYf"
The actual scraped content is missing from the webhook payload. Has anyone successfully configured ParseHub to send the complete JSON results to Zapier? What settings might I be missing?
yeah, the webhook’s firing too early. parsehub sends metadata first when it starts scraping, then the actual data comes later. check your dashboard settings - make sure it’s set to trigger on “run_finished” not “run_started”. that’ll fix it!
Had this exact problem a few months ago - drove me nuts for days. ParseHub’s webhook system is weird - it sends multiple HTTP requests during one scraping run. What you’re seeing is just the initial ping that the scraper started. The actual data comes in a separate webhook once scraping finishes. See how data_available: 0? That means no records scraped yet. When the job’s done, you’ll get another webhook with the real content and data_available will show the right count. Most people miss this because Zapier only shows the first webhook in the test interface by default. Wait for your scraper to finish completely, then check if Zapier got more webhook calls. The completed one will have your JSON data in a results field that’s missing from what you showed.
Your webhook payload shows current_status: "running" - that’s exactly the timing issue you’re hitting. Here’s what fixed it for me: go into your ParseHub project settings and change the webhook trigger. Don’t use the default - set it to fire only when data_available matches your expected record count. You can also add a second webhook that triggers on completion status. Here’s the thing - ParseHub fires multiple webhooks during one scraping session. The first one just has metadata (what you’re seeing now), then later ones have your actual scraped data. Your Zapier webhook is probably grabbing that first payload and missing the good stuff.