Features / Drip workflows

Drip workflows

Trigger → wait → send without custom code

Any event-driven sequence — welcome onboarding, abandoned cart, re-engagement, dunning — assembled in a visual step editor. A PM2 worker advances workflow_runs every minute, executing each step (wait N days / send template / end). Per-contact state in the DB, atomic claim via SKIP LOCKED.

What is included

  • 3 step types: Wait (N days) / Send (any template + subject override) / End.
  • Linear flow for MVP — one chain. Conditional branches on the roadmap.
  • Triggers: manual (via UI), contact_added (when a contact joins an audience).
  • Per-workflow stats: Running / Finished / Failed.
  • Per-contact variables (name, email, metadata) automatically interpolate into the template.
  • Workflows can be paused — runs are not lost, they freeze for 1 hour.

How to use it in code

sh
# Enroll all active contacts of an audience into a workflow:
curl -X POST https://app.sendersy.com/api/dashboard/workflows/$ID/start \
  -H "Cookie: $SESSION_COOKIE" \
  -d '{ "all_in_audience": true }'

# Or enrol specific contacts:
curl -X POST https://app.sendersy.com/api/dashboard/workflows/$ID/start \
  -H "Cookie: $SESSION_COOKIE" \
  -d '{ "contact_ids": ["uuid-1", "uuid-2"] }'

Frequently asked

How many steps per workflow?
Technically unlimited. Practical advice: 5-7 steps; beyond that it gets harder to reason about.

Try it now

Open workflows