agentleFS
alectivismalectivism/maven-template/.claude/skills/zapier-workflow-builder/SKILL.md

zapier-workflow-builder

Skill1 starsChanged 6 months agoMITView on GitHub

Design Zapier workflows (Zaps) for MMA staff — architecture, troubleshooting, Copilot prompts. Use for "build a Zap", "Zapier help", or any automation Zapier could solve.

The file

Show its rules and text

We split this skill into the rules it gives an agent

17 rules. About 0 are common, 16 are distinctive, and 1 is very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈16

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 1

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Ask the user to describe what they want to automate.

    line 18
  2. Distinctive:

    Use Formatter steps for data transformation — also zero task cost

    line 32
  3. Distinctive:

    Only use AI or Code steps when Formatter can't handle it

    line 33
  4. Distinctive:

    Use Digest by Zapier to batch high-volume triggers into periodic summaries

    line 34
  5. Distinctive:

    All steps relate to the same business event

    line 50
  6. Distinctive:

    After designing the Zap, generate a structured Copilot prompt the user can paste directly into Zapier.

    line 76
  7. Distinctive:

    Use consistent field names throughout — if you say "Company Size" once, keep calling it that

    line 97
  8. Distinctive:

    Always test after building — Copilot can't predict trigger behavior

    line 107
  9. Distinctive:

    Cost optimization rule: Put filters and formatters before action steps.

    line 141
  10. Distinctive:

    Add an error handler on action steps: click the three dots on any step -> "Add error handler" -> send a Slack message with error details to …

    line 199
  11. Very specific:

    Add a guard field (e.g., processed_by_zap = true) and filter on it

    line 210
  12. Distinctive:

    Never have two Zaps that read/write the same data without loop guards

    line 212
  13. Distinctive:

    Option B — External AI (fallback): Ask Claude/ChatGPT to write the code, then paste it into the Code step.

    line 241
  14. Distinctive:

    Before turning on any Zap:

    line 253
  15. Distinctive:

    Name the version: before publishing (this is your changelog)

    line 260
  16. Distinctive:

    Monitor Zap History: after the first few live runs — filter by "Errored" to catch issues early

    line 261
  17. Distinctive:

    Zapier Blog: Search for app-specific recipes and templates

    line 320

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Zapier Workflow Builder

Guide MMA staff through designing and building effective Zapier workflows. Your role is to help the user think through their automation need, design the right Zap architecture, and produce either step-by-step instructions or a Copilot prompt they can paste into Zapier to build it.

Reference document: The full MMA Zapier Guide with detailed setup instructions, API configurations, and HTML templates is on SharePoint: Zapier Guide for MMA Staff. Point users there for detailed app-specific setup (Google Search API keys, Outlook HTML signatures, Salesforce field mappings, etc.).


Workflow: Helping a User Build a Zap

Step 1: Understand the Automation Need

Ask the user to describe what they want to automate. Clarify:

  1. The trigger event — What starts this? (new email, form submission, schedule, transcript ready, spreadsheet row, RSS item, etc.)
  2. The desired outcome — What should happen? (Slack notification, CRM update, email sent, task created, data logged, etc.)
  3. Conditions/filters — Should it run every time, or only when specific criteria are met?
  4. Volume — How often does this trigger fire? (determines task efficiency strategy)
  5. Apps involved — Which apps need to connect? (Check if the user has access to shared connections in MMA's Zapier workspace)

Step 2: Design the Zap Architecture

Based on the user's needs, design the workflow following these principles:

Keep it lean:

  • Filter as step 2 (right after the trigger) — filters cost zero tasks and stop bad data early
  • Use Formatter steps for data transformation — also zero task cost
  • Only use AI or Code steps when Formatter can't handle it
  • Use Digest by Zapier to batch high-volume triggers into periodic summaries

Naming convention:

[PREFIX] Trigger App: Event -> Action App: Result

Prefixes: [MARKETING], [MEMBERSHIP], [SALES], [OPS], [EVENTS], [DAILY], [WEEKLY]

When to split into multiple Zaps:

  • More than 8 steps — hard to debug
  • Unrelated actions for different teams
  • Different parts need different error handling
  • Reusable sequences — use Sub-Zaps instead

When to keep as one Zap:

  • Linear logic (trigger + 2-5 sequential actions)
  • All steps relate to the same business event
  • Later steps need data from earlier steps

Step 3: Present the Design

Show the user their Zap design as a numbered step list:

[MEMBERSHIP] Typeform: New Registration -> HubSpot + Slack

1. Trigger: Typeform — New Entry (form: "Event Registration")
2. Filter: Only continue if "Company Size" is not blank
3. Formatter: Split "Full Name" into First Name / Last Name
4. Action: HubSpot — Create Contact (map: first name, last name, email, company)
5. Action: Slack — Send Channel Message (#events-team: "{Name} from {Company} registered")

Include:

  • Estimated tasks per run (only action steps count — triggers, filters, formatters, delays, paths, loops, sub-zap calls are free)
  • Any shared connections they'll need (FullEnrich, Apollo, OpenAI are pre-shared in MMA's workspace)
  • Potential issues or edge cases

Step 4: Generate a Copilot Prompt

Zapier has a built-in AI assistant called Copilot that can build Zaps from natural language. It's available in the Zap editor (icon in lower left) and on Zapier's home page.

After designing the Zap, generate a structured Copilot prompt the user can paste directly into Zapier. Structure complex prompts with XML tags to prevent instruction bleed:

Example Copilot prompt:

<trigger>
New Typeform submission on the form "Event Registration"
</trigger>

<filter>
Only continue if the "Company Size" field is not blank
</filter>

<actions>
1. Use Formatter to split the "Full Name" field into First Name and Last Name (split on space, take first and last segments)
2. Create a contact in HubSpot with: First Name, Last Name, Email, Company Name, Company Size
3. Send a message to the Slack channel #events-team with the text: "[First Name] [Last Name] from [Company Name] just registered for [Event Name]"
</actions>

Copilot prompting tips:

  • Use consistent field names throughout — if you say "Company Size" once, keep calling it that
  • Frame positively: "Send notifications Monday through Friday" not "Don't send on weekends"
  • Be specific about apps — vague prompts produce generic results
  • For simple Zaps, one-liners work: "When a new Typeform response comes in, add the person to HubSpot and send a Slack message to #membership"
  • Iterate — keep the conversation going with Copilot to refine steps rather than starting over
  • Copilot can also accept voice input and image/sketch attachments

Copilot limitations:

  • Won't connect app accounts — users still authenticate each app themselves
  • Complex field mappings often need manual refinement after the draft is built
  • Always test after building — Copilot can't predict trigger behavior

Step 5: Provide Setup Guidance

Walk the user through any configuration that Copilot won't handle:

  • App authentication (point to shared connections in MMA's workspace where available)
  • Filter conditions and field mapping verification
  • Testing each step with real data
  • Renaming steps descriptively (e.g., "AI by Zapier" -> "Extract CMO name and company from article")
  • Version naming before publishing (e.g., "2026-03-20: initial setup for event registration")

Task Cost Reference

Understanding what counts as a task prevents billing surprises:

ComponentCosts a Task?
Trigger firingNo
Filter stepNo
Formatter stepNo
Delay stepNo
Path step (branching)No
Looping step (the loop itself)No
Sub-Zap call stepNo
Digest stepNo
Storage / Tables stepNo
Each action step that completesYes
Each loop iteration's actionsYes
AI by ZapierYes
Code by ZapierYes
Webhooks by ZapierYes

Cost optimization rule: Put filters and formatters before action steps. A 5-step Zap (1 trigger + 1 filter + 1 formatter + 2 actions) costs only 2 tasks per run.


Common MMA Patterns

Lead Capture + Enrichment

Trigger: Form submission (Typeform/Gravity Forms)
-> Filter: Company field is not blank
-> Action: FullEnrich — Enrich contact (shared connection available)
-> Action: Create/update HubSpot or Salesforce contact
-> Action: Slack notification to #sales with lead summary

Copilot prompt: "When a new Typeform submission comes in on [form name], enrich the contact email using FullEnrich, then create a contact in HubSpot with the enriched data, and send a summary to #sales on Slack"

Meeting Recap Automation

Trigger: Fireflies — New transcript
-> Filter: Participants contain yourname@mmaglobal.com
-> Code: Extract external attendee emails (filter out @mmaglobal.com and notetaker domains)
-> AI: Summarize key decisions and action items
-> Action: Post summary to Slack DM or channel
-> Action: Create Asana tasks for action items

CMO News Monitoring

Trigger: RSS by Zapier — Google News RSS feed
-> Filter: Exclude blacklisted publishers
-> AI: Extract CMO name, company, appointment details from article
-> Action: Log to Google Sheets or Zapier Tables
-> Action: Slack notification to #sales

Refer user to the SharePoint guide for Google News RSS feed setup and search operators.

Automated Email Sequences with Human Review

Trigger: New CRM contact or scheduled
-> AI: Draft personalized email
-> Action: Slack "Request Approval" with draft preview
-> Path A (Approved): Send via Outlook
-> Path B (Rejected): Log and stop

Weekly Digest / Reporting

Trigger: Schedule — Every Monday at 9 AM
-> Action: Pull data from Google Sheets/Airtable
-> Formatter: Format dates and numbers
-> Action: Send compiled email or Slack message

Error Handling

For Critical Zaps (lead capture, member data, outreach)

Add an error handler on action steps: click the three dots on any step -> "Add error handler" -> send a Slack message with error details to the owner.

Important tradeoff: Zaps with custom error handlers will NOT use Autoreplay (automatic retry). Choose one per Zap:

  • Autoreplay — best for transient failures (API timeouts, rate limits). Retries up to 3 times automatically.
  • Error handlers — best when you need immediate notification or alternate logic on failure.

For Non-Critical Zaps

Rely on Zapier's default email notifications for errors.

Avoiding Loops

A Zap loop happens when Zap A triggers Zap B which triggers Zap A. Prevention:

  • Add a guard field (e.g., processed_by_zap = true) and filter on it
  • For Google Sheets: use "Trigger Column" to only fire on specific column changes
  • Never have two Zaps that read/write the same data without loop guards

AI Steps: When to Use What

NeedUse ThisWhy
Summarize text, draft emails, extract infoAI by Zapier (GPT-5 Mini)Free model, customizable inputs/outputs
Web search within a ZapChatGPT/Gemini/Claude/Perplexity appAI by Zapier can't search the web
Conversation memory across stepsChatGPT app with Conversation IDAI by Zapier has no memory between steps
Predictable logic (date math, email parsing, URL cleaning)Code by ZapierCode never hallucinates — use for deterministic transforms
Data formatting (split names, reformat dates, lookup tables)Formatter by ZapierZero task cost, handles most transformations

AI by Zapier model selection:

  • GPT-5 Mini (free, no API key) — suitable for 80% of tasks
  • Gemini 2.5 Flash Lite (free, no API key) — alternative free option
  • GPT-5.2 (requires shared OpenAI connection) — use only for heavy reasoning or high-stakes data

MMA has shared OpenAI connections for each region. Select "Zapier-provided" credentials for the free models.


Code by Zapier: No Coding Required

Users don't need to write code themselves. Two approaches:

Option A — Zapier Copilot (fastest): Click "Generate with AI" inside the Code step and describe what you need. Copilot writes the code and maps variables automatically.

Option B — External AI (fallback): Ask Claude/ChatGPT to write the code, then paste it into the Code step. Always specify: "Write a Zapier JavaScript code block" and describe input variable names and expected outputs.

When to suggest Code over AI:

  • Splitting email lists into internal/external (deterministic, no hallucination risk)
  • Calculating business days (date math needs precision)
  • URL/domain extraction (parsing logic, not interpretation)
  • Any transform where the answer must be exactly right every time

Testing Checklist

Before turning on any Zap:

  1. Test the trigger with real data (not just the default sample)
  2. Test each action — remember, action tests are live (they create real records, send real messages). Use test data where impact is reversible.
  3. Run end-to-end using "Test run" (top right of editor) on a selected record
  4. Check edge cases: records with blank optional fields, unusual characters, conditions that should halt the Zap
  5. Rename every step descriptively — makes debugging dramatically faster
  6. Name the version before publishing (this is your changelog)
  7. Monitor Zap History after the first few live runs — filter by "Errored" to catch issues early

Debugging workflow:

  1. Open Zap History -> filter by "Errored"
  2. Click the failed run -> see which step failed
  3. Click "Troubleshoot" tab — Zapier's built-in AI generates specific fix instructions
  4. Click "Logs" tab for raw HTTP details if needed
  5. Fix, re-test the step, re-publish

Folder Organization

MMA's Zapier workspace uses this structure:

MMA Zaps/
+-- Marketing/
|   +-- Lead Capture
|   +-- Social & Content
+-- Membership/
|   +-- Onboarding
|   +-- Renewals
+-- Events/
+-- Operations/
|   +-- Reporting
|   +-- Notifications
+-- _Archive/
+-- MMA TEMPLATES (DO NOT EDIT - duplicate to use)

Template usage: Duplicate templates, never edit originals. Click the workflow name -> "Duplicate" -> rename -> move out of MMA TEMPLATES folder.


Quick Reference

GoalTool/Approach
Stop Zap early without errorFilter (step 2)
Transform data formatFormatter (free)
Run action on each list itemLooping by Zapier
Reuse steps across ZapsSub-Zaps
Handle failures gracefullyError Handler on step
Retry failed runs automaticallyAutoreplay
Batch notificationsDigest by Zapier
Instant triggers (no polling)Webhooks by Zapier
Process historical dataTransfer
Build from descriptionCopilot
Debug failuresZap History -> Troubleshoot tab
Branch to different actionsPaths (if/else)

Resources

  • MMA Zapier Workspace: Sign up form
  • Full MMA Zapier Guide (SharePoint): Zapier Guide for MMA Staff — detailed setup for Google Search API, Outlook HTML signatures, Salesforce, FullEnrich, Apollo, Webhooks, and more
  • MMA Zap Template Library (Excel): Available in MMA's Zapier workspace
  • Zapier University: Short video courses (start with "Zapier 101")
  • Zapier Blog: Search for app-specific recipes and templates

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.