create_sequence
Build a sequence on a project with its steps in one call — the ordered messages a member receives on the days the creator chose after they leave, arrive as a lead, stall a checkout or near the end of a trial. Emits sequence.created. Needs Growth or the Revenue Recovery Addon.
Build the sequence a member will receive after one of four moments: up to 8 steps in order, each
waiting its delay_days after the step before (1..180), the first after the trigger's moment
(0..180, where 0 goes out on the next hourly run), with a body of up to 1,000 characters and an
optional coupon_id. The row and its steps are written together, so a refused step leaves no
sequence behind.
Synchronous — the sequence comes back with its steps, and
sequence.created emits once, with them.
Placeholders are filled per member when a step goes out
{name}, {project}, {coupon}, {discount} and {link} in a body are filled when the step
is sent; {link} is the way to the plan, and every step carries it as a button too, beside a Stop
command. A step with a coupon reads best when it uses {coupon} and {discount}.
Four triggers
trigger defaults to churned (their last live membership ended). lead enrols a member who
arrived without buying, stalled_checkout one whose checkout stayed open past the project's
checkout window, and trial_ending one whose trial without a card is about to end, the project's
trial reminder before it. A member enters a sequence once per firing, never while they hold what
the trigger counts as a conversion, and leaves it the moment a charge settles for them.
Requires Growth or the Revenue Recovery Addon on the project owner. Without it the call fails
with VALIDATION_FAILED and nothing is written.
Requires ability
The token behind the MCP session must hold it, or the call is refused with TOKEN_MISSING_ABILITY.
Runs the same action as
The REST endpoint and this tool share one action, so validation, permissions and events are identical.
Fires one event
Delivered to every endpoint subscribed to it once the change is made.
Annotations
A client that honours annotations asks a person before running it. It reaches beyond Subscriby: a connector, a provider or a member.
Arguments
project_id*stringUUID of the project the sequence belongs to.
name*stringA creator-facing label, 1 to 120 characters, e.g. "Win-back after churn".
triggerstringoptionalWhat enrols a member: "churned" (their last live membership ended; the default), "lead" (they arrived without buying), "stalled_checkout" (a checkout they started stayed open past the window the project set) or "trial_ending" (a trial without a card is about to end).
activebooleanoptionalWhether the sequence enrols and sends from the start. Defaults to true.
stepsobject[]optionalThe steps in the order they go out, at most 8: each {delay_days: int, 0-180 on the first step and 1-180 after, body: string up to 1,000 characters with {name}, {project}, {coupon}, {discount} and {link} as placeholders, coupon_id?: UUID of one of the project's coupons}. Omit for a sequence with no steps yet.
What it returns
{ "data": { "id": "9d2f4b6a-1c3e-4f58-8a7b-6e5d4c3b2a19", "project_id": "7f3d1c92-8b45-4e6a-9d21-5c8e0a4b6f13", "name": "Win-back after churn", "trigger": "churned", "active": true, "steps": [ { "id": "4e8a2c6d-7b1f-4d93-a5c0-8f2e1b7d6c54", "position": 1, "delay_days": 3, "body": "Hi {name}, your place in {project} is still here whenever you want it back: {link}", "coupon": null }, { "id": "b1c7e9f3-2a4d-4e86-9b0c-5d7f8a2e1c43", "position": 2, "delay_days": 7, "body": "Still thinking it over? {coupon} takes {discount} off your first month back: {link}", "coupon": { "id": "3b7c9d1e-5f24-4a86-9c0b-2d4e6f8a1b3c", "code": "COMEBACK20" } } ], "counts": { "enrolled": 0, "open": 0, "completed": 0, "won_back": 0 }, "created_at": "2026-10-12T09:00:00+00:00", "updated_at": "2026-10-12T09:00:00+00:00", "deleted_at": null }}How it fails
VALIDATION_FAILEDthe owner's plan lacks sequences, an unknown trigger, more than 8 steps, a delay_days outside 0..180 on the first step or 1..180 after it, a body outside 1..1,000 characters, or a coupon_id of another project.
RESOURCE_NOT_FOUNDunknown project_id, or the project is outside the token's scope.
AUTHENTICATION_REQUIREDno authenticated user on the request.
TOKEN_MISSING_ABILITYtoken lacks project-sequence:create.
How is this guide?
Last updated on
Recovery Sequences Tools
A recovery sequence is the ordered set of messages a member receives on the days the creator chose after one of four moments, a member who left, a new lead, a checkout that stalled or a trial without a card about to end, each with the way to the plan as a button and, optionally, a coupon; a member enrols once per firing, never while they hold what the trigger counts as a conversion, and leaves the sequence the moment a charge settles for them, a member won back on the churn trigger and a conversion on the others.
delete_sequence
Put a win-back sequence out of use. Destructive; every member part-way through leaves it, the history stays for the figures, and the id stops answering. Emits sequence.deleted.