Skip to content
Claim your free business email
Automations

Email automations driven by your product's events. Drawn once, run per contact.

Something happens in your product, the person is enrolled at the trigger, and the graph carries them through sends, delays and branches until it runs out. You draw it once in the editor; Rasket runs it for every contact.

The editor with a trial onboarding flow: a custom event, a welcome email, three days, and a condition that sends each contact down one of two paths. The blue dot is one contact's run.
Triggers

Start from any event. Your own, fired from your code, or one Rasket already raises.

signup.ts
// Your signup handler, the moment a trial startsawait fetch("https://api.rasket.com/events/send", {  method: "POST",  headers: {    Authorization: `Bearer ${process.env.RASKET_API_KEY}`,    "User-Agent": "northwind/1.0",    "Content-Type": "application/json",  },  body: JSON.stringify({    event: "trial.started",    email: "ronald@example.com",    payload: { plan: "pro" },  }),});
202 Accepted{ "object": "event", "event": "trial.started" }
  • Declare the name once

    A custom event is declared under Automations › Events, with an optional schema its payload is checked against. The rasket: prefix is reserved for the built-ins.

  • A sending key can fire it

    The service that knows a trial started does not also need a key that can read your contacts.

  • 202, and the runs start on the next tick

    The event is durable the moment the call returns. There is no idempotency key: two calls are two events, and two runs.

  • Built-ins need no code at all

    A contact created or updated, a topic subscribed or unsubscribed, every email event, and a contact entering a segment. Enabling a segment trigger enrols the people already in it, once each.

The custom events reference covers names, schemas and payloads, and the automations reference the graph language in full. A send step uses a published template, and run events arrive as signed webhooks.

Building blocks

Six kinds of step. Enough to say what happens next, and checked before anything saves.

Every open edge has a +. Choose a step and it opens in place for you to fill in.

  • Send email

    Sends one of your published templates, optionally with its own subject, From and Reply-To. It is an ordinary send: quota, suppressions, unsubscribe headers and delivery events all apply, and it shows up in your logs.

    Records email_id

  • Condition

    A rule about the contact: a field like email or created_at, one of your properties, or a topic subscription. Up to 20 rules in all-of or any-of groups, 3 levels deep. It leaves by If true or If false.

  • Delay

    Waits for a length of time, from seconds to weeks, or until a fixed moment, at most 30 days either way. A waiting run holds nothing open; it is a moment the run wakes at.

    Records wake_at

  • Update contact

    Sets the contact's first or last name, their unsubscribed flag, or any property you have defined, to a value you write into the step.

    Records changed

  • Add to segment

    Adds the contact to one of your segments, so the next campaign aimed at it reaches them. Already a member is a success, not an error.

    Records segment_id

  • Update topic subscription

    Opts the contact in to or out of one topic, with a consent record. It never opts in someone who said no: that step is skipped and the run carries on.

    Records topic_id, subscription

The whole graph is checked before it saves

The editor runs the API's own parser over exactly what it is about to send, and the server then checks every template, segment, topic, property and event name against your team. Each problem lands on the card it belongs to. Exactly one trigger, at most 150 steps, no cycles, and every step reachable.

Runs

Every run is one contact's journey. Open one and see each step, on the version it started on.

  • Pinned to the version it started on

    Saving the editor writes a new, immutable version and makes it active. A run already under way finishes on its own; every past version stays readable, and making an old one active copies it forward.

  • Waiting is a state you can see

    A run parked on a delay says Waiting, and when it wakes. The API calls it running, because it is: a delay is a moment the run wakes at, so a restart loses nothing.

  • Why a run ended, in a sentence

    A failed run shows the reason the step recorded, opens the graph on the step it stopped at, and keeps the raw error one click away.

  • Your endpoint hears it too

    Runs raise automation.run.started, .completed and .failed through the same signed webhooks as everything else.

Pricing

Runs are what is counted. Sends inside them count as email, as always.

See pricing
  • 10,000 runs a month

    Included on every plan, Free too. A run is one contact through one version of one automation, however many steps it takes.

  • $0.0015 per run past it

    With pay-as-you-go on, on a paid plan. With it off, a run past the allowance is refused, and the reason is written onto the run.

  • 90 days of run history

    Every run and its steps are kept for ninety days on every plan, with their timings, outputs and errors.

Questions

Questions about automations

What can start an automation?

A custom event you declare and fire from your own product, or one of the built-in triggers Rasket already raises, such as a contact being created, a topic being subscribed to or a segment being entered. One event send enrolls that contact into every enabled automation whose trigger names it.

What can a step do?

Send a published template, delay for a duration or until a date, branch on a rule about the contact, update the contact's fields or properties, add them to a segment, or opt them in or out of one topic. Two step types in the schema, waiting for an event and deleting a contact, are not available in this release, and a graph naming either is refused rather than quietly ignored.

What happens to runs in flight when I change a workflow?

Nothing happens to them. Saving writes a new version and points the automation at it, and each run keeps the version it started on. Disabling an automation stops new enrolments and leaves live runs alone; stopping it cancels those too.

Do the emails an automation sends behave like ordinary sends?

Yes. A send step goes through the same transaction as a single send does, so your quota, suppressions, unsubscribe headers and delivery events all apply unchanged, and the email shows up in your logs beside everything else.

Can I see what happened to one person?

Yes. Every run is one contact's journey and lists its steps in graph order with their status, timings, output and any error. A send step records the id of the email it created, so you can follow it into that message's delivery timeline.

How are automation runs counted?

Each plan includes a number of runs a month, and the free plan includes ten thousand. Past the allowance a run is charged as usage if you have turned pay-as-you-go on, and refused if you have not, with the reason recorded on the run itself. Runs are kept for ninety days on every plan. See the pricing page for the current figures.

Build your first workflow

Declare one event, draw a graph of three steps, and let the next person who signs up walk through it.