Guides

How to send Facebook Marketplace listings to Zapier

Paste a Zapier Catch Hook into Crawlbench webhooks, map listing fields to Slack or Google Sheets, and know the paid-plan gate before you publish.

Crawlbench's outbound webhooks send every alertable listing from your search to Zapier, with the listing, the search that found it, and why it passed. Point the webhook at a Zapier Catch Hook URL, prove the payload with a test ping, then map fields into Slack, Google Sheets, or another action app and publish the Zap. Zapier’s Catch Hook path needs a paid Zapier plan to go live (Zapier's pricing page, read 18 October 2026). Crawlbench outbound webhooks come with Pro and Scale.

If you only need Slack, Discord, Telegram, or email, use the built-in channels first. Zapier is for the next hop: a deal log in Sheets, a CRM row, a Notion board, or a custom team workflow Facebook never offers.

When Zapier helps (and when it does not)

Zapier is worth the extra hop when a listing must land in a tool of your own, outside the channels Crawlbench delivers to natively. A Google Sheets sourcing log, HubSpot note, or Airtable queue are the usual reasons.

Skip Zapier when your team already checks Telegram or email. Those channels are faster to set up, and they do not depend on a second subscription. Start with Telegram alerts for Marketplace if the goal is a phone interrupt. Channel tradeoffs live in Telegram vs email.

Zapier also does not replace your filters. They still live on the Crawlbench search. The Zap only routes listings that already passed.

Prerequisites

Before you open Zapier:

  • A Crawlbench account on Pro or Scale, the plans that include outbound webhooks (see pricing for what each plan includes)
  • At least one active search with filters tight enough that you want every listing it finds logged elsewhere
  • A Zapier account that can use Webhooks by Zapier (paid plan that includes webhooks, often Professional or higher, or a trial with that feature)
  • A destination app already connected in Zapier (Slack workspace, Google account, and so on)

Crawlbench POSTs once per alertable listing to the HTTPS endpoint on your account, so every listing becomes exactly one event. Keep your filters tight before you automate a second inbox. Loud Zaps train people to ignore every row.

Step 1: Create a Catch Hook Zap in Zapier

In Zapier:

  1. Create a Zap
  2. Choose Webhooks by Zapier as the trigger
  3. Pick Catch Hook
  4. Continue until Zapier shows a unique URL that starts with https://hooks.zapier.com/hooks/catch/
  5. Copy that URL

Treat the URL like a password. Anyone who has it can POST into your Zap. Do not paste it into public docs, screenshots, or chat threads you cannot control. If it leaks, delete the trigger and mint a new Catch Hook.

Zapier may let you build and test the editor on a free account, then block Publish. That is expected. Webhooks by Zapier are a paid-plan feature on Zapier’s current pricing page. You can still finish the Crawlbench side and test delivery into the hook before you upgrade.

Step 2: Connect the URL in Crawlbench Settings → Webhooks

In Crawlbench:

  1. Open Settings
  2. Open the Webhooks section
  3. Paste the Catch Hook URL
  4. Click Connect webhook (first-time connect). If you already have an endpoint, use Save to update the URL
  5. Copy the signing secret shown once after connect, then store it offline
  6. Send a test ping from that same panel

A successful test means Crawlbench reached Zapier over HTTPS. In the Zap editor, run Test trigger until you see a sample event. You want either webhook.test from the ping or a later match.created from a real match.

If the test fails, check that the URL is exactly the Catch Hook string (no trailing junk), that the Zap trigger step still exists, and that your Crawlbench plan includes outbound webhooks (pricing).

Step 3: Map the match payload to your action

Crawlbench posts nested JSON. The live event is match.created. A test ping uses webhook.test with sample data so you can wire fields without waiting for a real listing. Open the sample JSON on Settings → Webhooks if Zapier’s field picker is hard to read.

Zapier often flattens nested keys. Map from these paths (or the flattened names Zapier shows from the sample):

  • data.listing.title → Slack text or Sheets Title
  • data.listing.price and data.listing.currency → Price / Currency
  • data.listing.url → link column or Slack body
  • data.listing.location → city column
  • data.monitor.name → which search produced the row
  • data.matched_at → when Crawlbench accepted it
  • data.id → dedupe key (skip if you already acted on this match)

Slack here means a Zapier Slack action, not Crawlbench Settings → Notifications.

Concrete Slack message shape that stays readable:

New match · {{data.monitor.name}} · {{data.listing.title}} · {{data.listing.price}} {{data.listing.currency}} · {{data.listing.location}} · {{data.listing.url}}

Concrete Sheets columns for a Tacoma sourcing log: Matched at, Monitor, Title, Price, Currency, Location, URL, Match id. One row per match. Do not flatten every match_reasons key on day one.

Crawlbench signs every delivery. Settings → Webhooks shows the signing secret once at connect and documents how to verify it in a Code step (Make, n8n, or Zapier). For a first Catch Hook Zap you can map body fields only, then add signature checks when the endpoint is shared or long-lived.

Step 4: Publish when Zapier allows it

Publishing is the paid gate.

  1. Confirm the action step (Slack channel message, Sheets create row, and so on) uses fields from the Catch Hook sample
  2. Publish the Zap on a Zapier plan that includes webhooks
  3. From Crawlbench, send another test ping
  4. Confirm the Slack message or Sheets row appears

Until the Zap is published, Catch Hook may still accept HTTP POSTs (Zapier acknowledges receipt), but your Slack or Sheets step will not run for every live match. That is the difference between “URL works” and “automation works.”

A Monday drill that proves the pipe

Run this once after publish:

  1. Keep one known-good search active
  2. Confirm Settings → Webhooks shows recent successful deliveries
  3. For the next few real listings, check that Sheets (or Slack) gets a row for each Crawlbench alert
  4. If Crawlbench shows success but Zapier is quiet, the Zap is off, on the wrong account, or still unpublished
  5. If both are quiet, the search found no listing that passed. Fix filters or wait for inventory, do not rebuild the Zap

Your delivery log beats a screenshot of a green Zap editor.

What this automation is not

  • It is not a Facebook Marketplace API. Crawlbench checks busy cities every 2 minutes on Pro and every minute on Scale, the plans with webhooks, as pricing shows on 18 October 2026. The Zap fires after a check finds a listing that passes your filters.
  • It does not message sellers. Crawlbench never messages sellers: you open Messenger yourself, so your Facebook account stays safe. See what to automate on Marketplace.
  • It is not needed when the only job is “interrupt me on my phone.” Crawlbench's built-in Telegram alerts do that. Zapier shines when the match must become a spreadsheet row or a CRM artifact.

The takeaway

Catch Hook is the whole integration: Crawlbench POSTs match.created, Zapier routes it on. Use built-in Slack or Telegram when those channels are enough. Use Zapier when the team needs a log or a tool of its own choosing, and budget for Zapier Professional (or equivalent) so you can publish. When your search is ready, start from pricing and wire Settings → Webhooks to a Catch Hook you keep private.

Keep reading

More guides.

All posts

Get this check
on every new listing.

Crawlbench compares each new listing with similar ones nearby and alerts you when a good one appears. Your first search goes live at signup.

Free for 24 hours. No credit card.