JobNimbus's own Automation module can send data straight to a LettrLabs webhook URL, without Zapier. This guide assumes you've already read Setup Guide: JobNimbus for the trigger concepts (Contact vs. Job) — this version swaps the "how it's wired" step for JobNimbus's native automation instead of Zapier.
Before you start
A LettrLabs Open API key and an inbound webhook connection (see Setup Guide: Open API & Webhooks if you haven't set these up yet).
A JobNimbus user with access to Settings > Automation.
Knowing whether you're triggering off Contacts or Jobs (same distinction as the Setup Guide and Best Practices articles).
Step 1: Create your LettrLabs webhook connection
In LettrLabs, go to Automations > Open API and generate an Open API key (or reuse an existing one).
Go to Active Webhooks > Data Streams (Inbound), click Create, and name the connection (e.g., "JobNimbus — Job Complete").
Copy the generated Webhook URL.
Turn on OpenAPI Key authentication — JobNimbus's automation webhook action supports a single custom auth header, which lines up with this option directly.
Step 2: Build the JobNimbus Automation
In JobNimbus, go to Settings > Automation and click Add Automation.
For Trigger type, choose Events Based, then select the record type and event — Contact Created, Job Updated, or whichever matches the pattern you're building.
Add any conditions you want scoped at the JobNimbus level — for example, Status equals a completed milestone, or Job Type equals Roofing.
Click Add Action, and choose Webhook from the action type dropdown.
Paste in the LettrLabs Webhook URL from Step 1.
Turn on the Auth toggle if present, set the Auth Key field to
X-API-KEY, and the Auth Value field to the Open API key you generated in Step 1.Save the automation.
Step 3: Send a test event and confirm receipt
Trigger the automation once — update a test Contact or Job so it matches your condition — then check the History tab on your LettrLabs webhook connection to confirm the payload arrived. JobNimbus's webhook payload uses its own field names, most notably:
Contacts: first name, last name, address line1, address line2, city, state text, zip, company, email, plus JobNimbus internal fields like jnid.
Jobs: address line1, address line2, city, state text, zip, date created, date status change, status name, type, plus the same jnid reference.
Note the field is called state text, not state — an easy one to miss when mapping.
Step 4: Wire the connection to a mailing and map fields
Open the Automation (Integration Order) or Radius Mail setup this webhook should feed, and under Select Webhook Connection, choose the JobNimbus connection.
Choose Mail to Recipients for Contact-based mail, or Radius Mail for Job-based neighbor campaigns — using the Job's address fields as the pin address.
Map JobNimbus's field names onto LettrLabs' recipient fields. See the Inbound Webhook Reference for the full list.
Optionally add Inbound Filters here as a second layer, in addition to (or instead of) the condition you set in JobNimbus Step 2.
Step 5: Go live
Save the webhook connection with a name (turns off Test Mode), and confirm the automation is active in JobNimbus.
Zapier or native webhook — which should you use?
Zapier (Setup Guide: JobNimbus) is a reasonable default if you're already comfortable with Zapier's UI and want its own task-history debugging view.
Native webhook (this guide) is likely the better fit for high-volume, job-completion-triggered campaigns — no Zapier task consumption, and everything lives in two systems instead of three.
Want help wiring your first JobNimbus automation to a LettrLabs webhook? Reach out to our team.
