Jeffrey Castro
All work

How I build an automation workflow

A job that used to be somebody’s morning now runs on a trigger, validates its own input, and reports when it fails.

A walkthrough of the build itself, not a single engagement. Client names and numbers go up here as clients sign off on them.

Service
Automation workflow build
What it covers
Triggers, validation, routing, retries
Runs on
n8n

The system that got built

Webhook

Called by the upstream system

Scheduled run

Fires on its own interval

New GoHighLevel contact

Triggers on contact create

Validate and enrich

Bad input stops here, loudly

Retry on failure

Backoff, then hand it to a human

Route by condition

One branch per case

GoHighLevel

Contact, tag, or pipeline update

Google Sheets

Appends the run’s row

Slack alert

Only when a human is needed

The problem

Someone opens a laptop every morning and moves the same data between the same three tools. It takes an hour, it gets skipped whenever they are away, and when it goes wrong nobody finds out until a customer does.

What I built

  • An n8n workflow with one branch per real case
  • A webhook, a schedule, or a new contact as the entry point
  • Input validation that fails loudly, not silently
  • Enrichment before anything downstream runs
  • Conditional routing, so each case does only what it needs
  • Retry with backoff, then a Slack alert to a human
  • Writes back to GoHighLevel, Sheets, and Slack
  • Run logging, so a failed run can be traced

How it’s wired

  1. Trigger

    The run starts from a webhook, a schedule, or a new contact rather than from someone remembering. That is the whole point of the build.

  2. Validate

    Input is checked before anything downstream runs, so bad data fails in one place instead of corrupting three systems.

  3. Route

    Conditions split the run into one branch per case, each doing only what that case needs.

  4. Recover

    Failures loop back through validation with backoff; if they still fail, a Slack alert names the run so a human can pick it up. Silent failure is the thing being designed out.

What you get

  • The workflow lives in your own n8n, not rented from me
  • Every run logged, and every failure named
  • A retry path that runs before a human is involved
  • n8n
  • Zapier
  • GoHighLevel

Want this build?

Tell me what you're trying to build, and I'll tell you how to get there.

Get in touch

© 2026 Jeffrey Brian Castro. All rights reserved.