Skip to main content

Interface: SequencesResource

Defined in: packages/sdk/src/resources/sequences.ts:42

Lifecycle automations. A sequence is a flow graph (trigger → waits → sends → branches); contacts move through it as enrollments.

Example

await mailroom.sequences.create({
key: "onboarding",
name: "Onboarding",
status: "active",
steps: [
{ template: "welcome" },
{ template: "getting-started", delayMinutes: 1440 },
],
});

const { enrollmentId } = await mailroom.sequences.enroll("onboarding", {
email: "ada@example.com",
});

Methods

bulkEnroll()

bulkEnroll(
key: string,
input: BulkEnrollInput,
opts?: CallOptions): Promise<BulkEnrollResult>;

Defined in: packages/sdk/src/resources/sequences.ts:72

Enroll many contacts at once; already-active enrollments are skipped. Inputs beyond 5000 recipients are chunked into sequential requests.

Parameters

ParameterType
keystring
inputBulkEnrollInput
opts?CallOptions

Returns

Promise<BulkEnrollResult>


create()

create(input: SequenceInput, opts?: CallOptions): Promise<CreateSequenceResult>;

Defined in: packages/sdk/src/resources/sequences.ts:44

Create a sequence from a linear list of steps (the graph is built for you).

Parameters

ParameterType
inputSequenceInput
opts?CallOptions

Returns

Promise<CreateSequenceResult>


enroll()

enroll(
key: string,
who: {
contactId?: string;
email?: string;
},
opts?: CallOptions): Promise<EnrollResult>;

Defined in: packages/sdk/src/resources/sequences.ts:62

Enroll one contact by email or id.

Parameters

ParameterType
keystring
who{ contactId?: string; email?: string; }
who.contactId?string
who.email?string
opts?CallOptions

Returns

Promise<EnrollResult>


get()

get(key: string, opts?: CallOptions): Promise<FlowGraph>;

Defined in: packages/sdk/src/resources/sequences.ts:50

Fetch a sequence's full flow graph (nodes/edges/triggers + metadata).

Parameters

ParameterType
keystring
opts?CallOptions

Returns

Promise<FlowGraph>


list()

list(opts?: CallOptions): Promise<Sequence[]>;

Defined in: packages/sdk/src/resources/sequences.ts:47

Sequence summary rows for the project.

Parameters

ParameterType
opts?CallOptions

Returns

Promise<Sequence[]>


remove()

remove(key: string, opts?: CallOptions): Promise<{
deleted: boolean;
}>;

Defined in: packages/sdk/src/resources/sequences.ts:56

Delete a sequence and its enrollments.

Parameters

ParameterType
keystring
opts?CallOptions

Returns

Promise<{ deleted: boolean; }>


simulate()

simulate(
key: string,
input?: SimulateInput,
opts?: CallOptions): Promise<SimulateResult>;

Defined in: packages/sdk/src/resources/sequences.ts:59

Dry-run a contact through the flow — returns the path + emails, no sends.

Parameters

ParameterType
keystring
input?SimulateInput
opts?CallOptions

Returns

Promise<SimulateResult>


update()

update(
key: string,
graph: FlowGraph,
opts?: CallOptions): Promise<ReplaceGraphResult>;

Defined in: packages/sdk/src/resources/sequences.ts:53

Replace a sequence's graph atomically. The graph is the portable unit.

Parameters

ParameterType
keystring
graphFlowGraph
opts?CallOptions

Returns

Promise<ReplaceGraphResult>