SarudoResearch Path
FeaturesHow It WorksPricing↗ SwitchReseller↗ SwitchDocsAbout
Get Started
Sarudo logo — AI Employee platformSarudo

AI Employees for Modern Businesses

Product

  • Features
  • How It Works
  • Documentation
  • Pricing
  • WordPress plugin
  • Reseller Program
  • FAQ

Company

  • About
  • Careers
  • Blog
  • Contact

Legal

  • Terms of Service
  • Privacy Policy
  • Refund Policy
  • SLA
  • Acceptable Use
  • Data Processing

© 2026 Sarudo. All rights reserved.

hello@sarudo.com
What is Sarudo?Onboarding ProcessSetting Up TelegramYour First InteractionWhat Your AI Employee Can DoSecurity & PrivacyYour First Conversation with SarudoWhat's Under the HoodBackups & Data Export
Telegram Commands ReferenceManaging ConversationsFile SharingApproval WorkflowTips for Effective CommunicationMulti-User Access
Email Setup & ConfigurationSending & Drafting EmailsReading & Searching InboxEmail Approval FlowEmail Use Cases
Voice Call SetupMaking Outbound CallsCall TranscriptionAI-Powered ConversationsCall History & RecordingsVoice Providers & Options
What Meetings Can DoUploading a RecordingAutomatic TranscriptionAction Items & AttendeesFollowing Up on Action Items
Managing Your CalendarReminders & NotificationsScheduling for OthersDaily Briefings
How Sarudo LearnsStoring & Retrieving KnowledgeDocument IngestionSemantic SearchKnowledge CategoriesContradiction HandlingSettings vs Knowledge
Web SearchWebsite BrowsingCompetitor ResearchYouTube & Video AnalysisLocal Business SearchImage Search
SEO Tools OverviewKeyword ResearchTrending Topics & Blog Gap AnalysisSERP Analysis & Competitor TrackingPutting It Together — A Content Research Workflow
Creating DocumentsPDF OperationsFormat ConversionOCR & Text ExtractionPresentationsDiagrams & Visuals
Built-in TemplatesCustom TemplatesRendering DocumentsBulk Mail Merge
CRM OverviewManaging ContactsCompanies & OrganizationsDeals & PipelineActivity TrackingFollow-ups & RemindersHow Deletion Works
Email EnrichmentDomain & Company LookupEmail FinderLinkedIn Enrichment
Automation OverviewCreating WorkflowsPre-Built TemplatesManaging WorkflowsBuilt-in AutomationsWorkflow Reliability FeaturesDry-Run Mode
How the Pipeline WorksStage 1 — Monthly ResearchStage 2 — Daily DrafterStage 3 — Publish LoopSupported CMS TargetsTuning the Pipeline
Social Media SetupDrafting PostsScheduling & PublishingSocial Post CalendarApproval WorkflowPublishing to Your Own Blog
Stripe Integration SetupCreating Checkout LinksSending InvoicesPayment TrackingProcessing Refunds
Notion IntegrationGoogle Sheets IntegrationAirtable IntegrationWebhook EventsBrowser AutomationMedia ProcessingGoogle Docs IntegrationBrowser Automation — Local vs Cloud
  1. Docs
  2. >
  3. Automation & Workflows
  4. >
  5. Pre-Built Templates

Pre-Built Templates

The four composable workflow patterns Sarudo ships with — scheduled-with-heartbeat, llm-with-retry, sheet-driven-fanout, and approval-loop-drafter.

Last updated: April 22, 2026
templatespre-builtscheduled-with-heartbeatllm-with-retrysheet-driven-fanoutapproval-loop-draftercomposableready-made

Available Templates

Sarudo ships with four pre-built workflow patterns that cover almost every automation you are likely to build. Each template is a complete, production-grade shape with the important reliability primitives already wired in — cron scheduling in your configured timezone, silent-failure tripwires (heartbeats) on every non-success exit, and schema-aware HTTP calls that the automation validator can check before activation. You pick a template, fill in its parameters (URL, cron, sheet ID, etc.), and your AI employee hands the rest to n8n. Templates can also be customized after deployment for edge cases the defaults do not cover.

ℹ️

Why four templates and not forty? Hand-rolled n8n workflows — building a graph from scratch, wiring nodes together — is where automation failures come from. Starting every workflow from one of these four patterns collapses the risk: the tricky plumbing (cron timezones, heartbeat on silent skip, column-name sheet reads, LLM truncation retry) is already correct.

scheduled-with-heartbeat

The generic scheduled pipeline — a cron trigger, then an ordered list of HTTP calls to any Sarudo endpoints, then a terminal heartbeat that confirms the run completed. Use this when none of the specialized templates fits your shape. Every HTTP step targets a Sarudo endpoint you choose, so you can compose pretty much any routine chore out of it — scrape a page and log the result, poll an external API and update a CRM deal, run a weekly backup and email a confirmation. The built-in success heartbeat means you get a Telegram ping every time the workflow runs, so a silently broken schedule cannot go unnoticed.

Deploying a scheduled check

Hourly competitor price check with notification.

You say:
Every hour during business hours, fetch competitor.com/pricing and Telegram me a summary of what changed since last time.
Sarudo responds:
Built from the scheduled-with-heartbeat template. Cron: 0 9-17 * * 1-5 (hourly on weekdays, 9am-5pm in your timezone). Two steps wired: (1) POST /web/fetch with the URL, (2) POST /data/query to diff against the last snapshot and POST /telegram/send with the summary. Success heartbeat on the tail. Workflow active — first check at the top of the next hour.

llm-with-retry

A trigger (manual, schedule, or webhook) plus an LLM generation step plus truncation-aware auto-retry plus delivery. Use this when you need an LLM output on a schedule or on demand — a weekly LinkedIn post, a monthly newsletter draft, an on-demand research brief. The retry-on-truncation is the important part: LLMs silently cut off long responses when they hit their token budget, and this template detects that and tries again with fresh context before declaring the run complete. If the retry still truncates, you get a partial-run heartbeat telling you the output may be missing its tail, so you can review before publishing.

Weekly LinkedIn post generator

Auto-generate and publish a thought leadership post every Monday.

You say:
Every Monday at 8 AM, generate a LinkedIn post about the week ahead in our industry and post it via Publer.
Sarudo responds:
Built from the llm-with-retry template. Schedule trigger: 0 8 * * 1 (Mondays, your timezone). LLM endpoint: /enrichment/generate_full_article with retry_on_truncation=true. Delivery endpoint: /publer/post targeting LinkedIn. Two heartbeats wired — success if the post lands cleanly, partial if the LLM was still truncated after retry. Every post still goes through the approval workflow before actually hitting LinkedIn.

sheet-driven-fanout

Schedule → read a Google Sheet by column header → filter rows → run a task per matching row → optionally mark those rows done. Use this whenever "the list of things to work on" lives in a spreadsheet — leads to enrich, clients to follow up with, webhooks to replay. The column-name read (not positional index) means you can rearrange the sheet without breaking the workflow, and the "mark done" step means each row is processed exactly once even if the workflow runs again before you finish reviewing. Zero-match heartbeats tell you when your filter caught nothing — useful for catching "I accidentally capitalized the status column" drift before it silently ignores every row.

Hourly lead enrichment from a sheet

Enrich leads marked "new" and flip them to "enriched".

You say:
Every hour, read my leads sheet, find rows where Status is "new", enrich each one by email, and update the Status to "enriched".
Sarudo responds:
Built from the sheet-driven-fanout template. Cron: 0 * * * * (hourly). Reads by header from your leads sheet, filters Status=new, runs /enrichment/email per matching row, writes "enriched" back into the Status column. Two heartbeats — success with the row count when matches are processed, zero-match ping if the filter ever catches nothing. Activated.

approval-loop-drafter

The most specific of the four — the full "pick an approved topic from a calendar, draft it, email it for final approval" drafter pattern. Used for the daily article drafter shipped in the Content Calendar Pipeline, but also applicable to any human-approval-gated content workflow. Schedule fires → reads the calendar sheet by column header → picks the first row where Status=Approved AND Draft Status=Pending → calls the LLM with retry-on-truncation → builds the email (with a truncation banner in the subject if the LLM output came back cut off) → sends the draft to the reviewer → marks the row as sent so it is not picked twice. Success, zero-row, and truncation heartbeats are all wired in.

ℹ️

The approval-loop-drafter backs the daily article workflow in the Content Calendar Pipeline. If that category describes the end-to-end flow you want (research → approval → draft → publish), you do not need to deploy this template manually — the pipeline sets it up for you.

Daily blog article drafter

Draft one approved topic every morning and email it for review.

You say:
Every day at 6 AM, pick the next approved blog topic from my content calendar, generate the full article, and email the draft to me for approval.
Sarudo responds:
Built from the approval-loop-drafter template. Cron: 0 6 * * * (your timezone). Reads your content calendar sheet by header. Picks the first row where Status=Approved AND Draft Status=Pending. Calls /enrichment/generate_full_article with retry_on_truncation=true. Emails the draft to you with a truncation banner in the subject line if the LLM output came back cut off. Marks the row's Draft Status as "sent" on success. Four heartbeats — draft-sent, zero-pending-rows, truncated-output, and failure. Active — first run tomorrow at 6 AM.

Composing Templates

Each template is a complete workflow on its own, but the HTTP-call slots inside each template (the "step URLs" in scheduled-with-heartbeat, the "task endpoint" in sheet-driven-fanout, the "delivery endpoint" in llm-with-retry, and so on) can target any Sarudo endpoint — including endpoints that trigger other workflows. That is how you compose richer pipelines: an llm-with-retry workflow can deliver to a webhook that fires a second workflow, or a sheet-driven-fanout can call the approval-loop-drafter's endpoint as its per-row task. You do not hand-wire these compositions — you describe the behavior you want to your AI employee, which picks the base template, fills in the right URLs, and verifies the shape against the automation contract validator before activating.

✅

The automation validator checks every HTTP body in every workflow against the real endpoint schema at activate time. So if you accidentally compose templates with a mismatched field name (the class of bug that caused the 2026-04-22 blog-drafter cascade), the activation is refused before the workflow ever runs — not after it silently drops data.

Related Articles

Creating Workflows
How to build workflows with nodes and triggers including cron schedules, webhooks, and manual execution.
Automation Overview
How n8n integration works, what can be automated, and the types of triggers available.
Built-in Automations
System automations that run automatically: health checks, learning pipeline, daily backups, and activity summaries.
Previous
Creating Workflows
Automation & Workflows
Next
Managing Workflows
Automation & Workflows

On This Page