Integrations · monday.com
Storm leads in your monday.com pipeline
Minutes after NOAA radar confirms hail in your territory, a storm item appears on your monday.com board — hail size, county, and a link to every affected property.
Get a free Swath key
Sign up at swathapi.com/signup — one email field, no credit card. Your key (it starts with sk_) comes back instantly and is shown once, so paste it somewhere safe. The free plan includes 100 credits a month; storm webhooks themselves cost nothing.
Get a webhook URL to give Swath
- In Zapier, click Create Zap
- Trigger app: Webhooks by Zapier → event: Catch Hook
- Zapier shows a unique webhook URL — copy it; that's the URL for step 3
- Leave the Zap open; you'll add the monday.com action in step 5
Catch Hook is a Zapier premium trigger, so it needs a paid Zapier plan. A native Swath app for Zapier is built and headed for the directory — until it's live, Webhooks by Zapier does the same job with one extra copy-paste.
WHY NOT MONDAY'S OWN WEBHOOKS: monday.com's built-in Integrations → Webhooks sends data out of monday when something changes on a board. It is not an inbound endpoint, so it can't receive a storm. Creating an item from an outside event goes through Zapier (or monday's API, if you have a developer).
Tell Swath to watch your territory
Path A · Ask your AI — no code, recommended
Connect Swath to Claude or ChatGPT first (a 2-minute paste-one-URL setup — steps here), then say:
Create a Swath storm monitor covering [YOUR COUNTY OR CITY] for hail 1 inch and up. Use this webhook URL: [PASTE THE WEBHOOK URL FROM STEP 2]. Name it "[TERRITORY NAME]".
The AI draws the box around your territory, creates the monitor, and confirms. Ask it to save the webhook_secret it gets back.
Path B · Or paste this in any terminal
curl -X POST https://swathapi.com/v1/monitors \ -H "Authorization: Bearer sk_YOUR_KEY" \ -H "content-type: application/json" \ -d '{ "name": "My territory", "bbox": [-97.5, 32.5, -96.4, 33.3], "hail_min_in": 1.0, "webhook_url": "PASTE_THE_WEBHOOK_URL_FROM_STEP_2" }'
Swap in your sk_ key and the webhook URL from step 2. The bbox is the [west, south, east, north] corners of a box around your territory — the example roughly covers Dallas–Fort Worth. The response includes a webhook_secret, shown once — save it.
Send a test storm so the fields get mapped
These tools map fields from a request they have actually seen — and you can't make it hail on demand. Send a realistic sample to your webhook URL: either ask your AI ("Send a test POST to [the webhook URL] with this exact JSON: …") or paste this in any terminal:
curl -X POST "PASTE_THE_WEBHOOK_URL_FROM_STEP_2" \
-H "content-type: application/json" \
-d '{
"event": "storm.verified",
"storm_id": "sw_db69f3ae",
"monitor_id": "mon_1a2b3c4d",
"type": "hail",
"mesh_in": 1.75,
"wind_mph": null,
"verified_at": "2026-07-24T19:42:00Z",
"county": "Dallas, TX",
"swath_geometry_url": "/v1/swaths/sw_db69f3ae/geometry",
"report_url": "/v1/swaths/sw_db69f3ae/properties",
"parcels_in_swath_est": null
}'
The sample then shows up as the test record, and you map from its fields. Every field Swath sends, and what it means:
| Field | What it is |
|---|---|
| event | Always storm.verified — the only event Swath sends today |
| storm_id | The storm's permanent ID, e.g. sw_db69f3ae |
| monitor_id | Which of your territories it hit, e.g. mon_1a2b3c4d |
| type | hail or wind |
| mesh_in | Largest radar-measured hail in the swath, in inches (null on wind events) |
| wind_mph | Peak measured wind, mph (null on hail events) |
| verified_at | When radar confirmed it, UTC — e.g. 2026-07-24T19:42:00Z |
| county | County the swath centers on — e.g. Dallas, TX (null only offshore / outside the US) |
| swath_geometry_url | Path to the storm's shape on a map: /v1/swaths/{storm_id}/geometry |
| report_url | Path to the affected-property list: /v1/swaths/{storm_id}/properties |
| parcels_in_swath_est | Reserved for a future estimate — currently always null |
Finish the automation
Back in the Zap, add a monday.com action step and point it at a board — a "Storms" board works well:
- Create Item — name it from county + mesh_in, e.g. "Storm — Dallas, TX — 1.75″ hail"
- Map verified_at to a date column and type (hail / wind) to a status column so the board sorts itself
- Put report_url in a link column — that's the property list
HONEST NOTE: the webhook is the storm, not a homeowner list — you get one new record per verified storm, with hail size and county. The leads live behind report_url: the Swath Report lists every affected property with the hail size measured at that address (billed per property — ask for a quote first). Easiest pull: ask your AI "Pull the Swath Report for storm sw_… and give me a CSV."
The fine print (plain English)
One storm, one POST. Each verified storm that crosses a monitor produces exactly one webhook to that monitor — no duplicates. If your endpoint is down, Swath retries with increasing delays.
Every POST is signed. Swath adds an X-Swath-Signature header (t=<unix>,v1=<HMAC-SHA256>, keyed by the webhook_secret you got when the monitor was created) plus X-Swath-Event: storm.verified. monday.com (and Zapier) doesn't check signatures on inbound webhooks — that's normal for this kind of setup; the long, unguessable webhook URL is the gate.
Turning it off. Delete the monitor any time — ask your AI ("delete my Swath monitor") or call DELETE /v1/monitors/{id}.
monday.com steps verified against Zapier's webhook-to-monday item creation template and monday.com's own webhook integration article (which describes sending payloads to an external system, i.e. outbound) as of July 27, 2026. Swath itself has no monday.com-specific code — a monitor posts to whatever webhook URL you give it, which is why this page is instructions rather than a connector. Vendors rename menus periodically; if a label here doesn't match your screen, look for the inbound-webhook trigger. Webhook payload fields on this page are copied verbatim from the Swath dispatcher and stay current with the docs.