Interface: SegmentsResource
Defined in: packages/sdk/src/resources/segments.ts:20
Saved audience filters. A segment is a named filter (status / tags / source)
evaluated at send time, so campaigns always target the current membership.
Example
const segment = await mailroom.segments.create({
label: "Engaged beta users",
filter: { status: "subscribed", tags: ["beta"] },
});
await mailroom.campaigns.create({
template: "beta-update",
audience: { mode: "segment", segmentId: segment.id },
});
Methods
create()
create(input: {
brand?: string;
filter?: SegmentFilter;
label: string;
}, opts?: CallOptions): Promise<Segment>;
Defined in: packages/sdk/src/resources/segments.ts:25
Create a segment. An omitted filter matches every contact.
Parameters
| Parameter | Type |
|---|---|
input | { brand?: string; filter?: SegmentFilter; label: string; } |
input.brand? | string |
input.filter? | SegmentFilter |
input.label? | string |
opts? | CallOptions |
Returns
Promise<Segment>
delete()
delete(id: string, opts?: CallOptions): Promise<DeletedResult>;
Defined in: packages/sdk/src/resources/segments.ts:41
Delete a segment. Contacts are untouched.
Parameters
| Parameter | Type |
|---|---|
id | string |
opts? | CallOptions |
Returns
Promise<DeletedResult>
get()
get(id: string, opts?: CallOptions): Promise<Segment>;
Defined in: packages/sdk/src/resources/segments.ts:31
One segment by id.
Parameters
| Parameter | Type |
|---|---|
id | string |
opts? | CallOptions |
Returns
Promise<Segment>
list()
list(opts?: CallOptions): Promise<Segment[]>;
Defined in: packages/sdk/src/resources/segments.ts:22
Segments for the project, each with its filter and cached member count.
Parameters
| Parameter | Type |
|---|---|
opts? | CallOptions |
Returns
Promise<Segment[]>
update()
update(
id: string,
patch: {
filter?: SegmentFilter;
label?: string;
},
opts?: CallOptions): Promise<Segment>;
Defined in: packages/sdk/src/resources/segments.ts:34
Rename a segment or replace its filter.
Parameters
| Parameter | Type |
|---|---|
id | string |
patch | { filter?: SegmentFilter; label?: string; } |
patch.filter? | SegmentFilter |
patch.label? | string |
opts? | CallOptions |
Returns
Promise<Segment>