Learn

Workflow automation, APIs & webhooks

Connect the GTM stack so data moves on its own, and fails loudly when it can't.

Roadmap: CRM, RevOps & automation

Why it matters

A typical GTM stack has a CRM, a data platform, one or two sequencers, a calendar tool, Slack, a warehouse and several data providers. Without automation, people copy data between them by hand and things fall through the cracks. Tools like n8n, Make and Zapier, plus small bits of code, let you connect them. The difference between a demo and a system is what happens on the bad day: the API times out, the webhook fires twice, the record doesn't exist.

What it's made of

  • Triggers: webhooks, polling, schedules and CRM events
  • Choosing between Zapier, Make, n8n and code
  • Retries, backoff and rate limits
  • Idempotency: making repeated runs safe
  • Error branches, alerts and dead-letter handling
  • Secrets, permissions and audit trails
  • Logging and run history you can debug from
  • Documenting workflows so others can own them

Picking the tool

There's no single right answer, but the trade-offs are predictable:

  • Zapier: fastest to build simple flows, huge app catalogue, gets expensive at high volume.
  • Make: visual and flexible with branching and iteration, cheaper per operation than many alternatives.
  • n8n: can be self-hosted, allows code steps, good for higher volumes and data you'd rather keep in-house.
  • Code (a serverless function or small service): best for heavy volume, complex logic, or when you need tests and version control.
  • Rule of thumb: start no-code to learn the process, then move the hot path to code once volume or complexity demands it.

Make every step safe to repeat

Webhooks are often delivered more than once, and retries re-run steps. Design for it. Look up before you create (find contact by email; create only if missing). Store an idempotency key, such as the event ID, and skip events you've already processed. Prefer "set field to X" over "increment field". Then a retry is harmless.

Failures are part of the design

For each step, decide what happens when it fails. Temporary errors (timeouts, 429s, 5xx) get retried with growing delays and a cap. Permanent errors (bad input, missing record) go to an error branch that logs the payload and alerts a channel someone watches. Keep failed items somewhere you can replay them from after fixing the cause, instead of rebuilding them by hand.

Leave it maintainable

Before calling a workflow done:

  • Connections use a shared service account, not your personal login.
  • A short doc says what triggers it, what it changes, who owns it and how to pause it.
  • Run history is kept long enough to debug last week's problem.
  • There's an alert when it stops running entirely, not just when a step errors.

Mid-level looks like

Builds multi-step automations that connect two or three tools, with basic filters and error notifications.

Senior looks like

Designs automations that are idempotent, rate-limit aware and observable, chooses the right tool for volume and cost, and leaves documentation and alerts someone else can act on.

Common pitfalls

  • No error path, so failures vanish silently and someone notices weeks later.
  • A webhook delivered twice creates two contacts, two tasks and two emails.
  • Running high-volume jobs on per-task-priced tools until the bill arrives.
  • Workflows only one person understands, with API keys tied to their personal account.

Practice drills

  1. Drill 1

    Build a flow: a demo form submission triggers enrichment, account matching, owner assignment, a CRM record and a Slack alert. Then send the same webhook three times.

    A strong answer: One record and one alert, not three; a lookup-before-create pattern; and an error branch that captures the payload.

  2. Drill 2

    A nightly job syncs 20,000 rows to an API limited to 100 requests per 10 seconds. Design it so it finishes reliably and can resume after failing halfway.

    A strong answer: Batching, throttling under the limit with arithmetic, checkpointing, retries with backoff, and a completion report.

  3. Drill 3

    Take an existing automation you built and write the one-page runbook a colleague would need to own it while you're on holiday.

    A strong answer: Trigger, purpose, systems touched, credentials, how to pause, common failures and fixes, and who to ask.

  1. 1Intro to GTM Engineering (Live Session & Live Clay Workflow Build)146 min
  2. 21,000 Hours of GTM Engineering in 20 Minutes20 min
  3. 3GTM Engineering secrets | Clay.com, Make.com vs. n8n, CRMs, and scalable systems56 min

Best resources for this skill

Repos, courses, articles and podcasts, ranked by how much they teach.

Read next

Next skillAI agents for GTM