Subscriber
Core library object for managing All Subscribers list entries — retrieve subscriber attributes, update status, add or remove from lists.
The Subscriber Core library object manages entries in the All Subscribers list. Use it to look up subscriber details, update attributes, or manage list membership.
Requires Platform.Load("core", "1.1.5") before use.
Methods
| Method | Returns | Description |
|---|---|---|
Subscriber.Init(subscriberKey) |
Subscriber | Initialize a subscriber instance |
sub.Attributes.Add(name, value) |
void | Add/update subscriber attribute |
sub.Attributes.Remove(name) |
void | Remove subscriber attribute |
sub.Lists.Add(listKey) |
void | Add subscriber to a list |
sub.Lists.Remove(listKey) |
void | Remove subscriber from a list |
Subscriber.Init
var sub = Subscriber.Init(subscriberKey);
Initializes a Subscriber object for the given subscriber key.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
subscriberKey |
string | Yes | Subscriber key (usually email or custom key) |
Attributes.Add
sub.Attributes.Add(attributeName, attributeValue)
Adds or updates a profile attribute on the subscriber.
Examples
Platform.Load("core", "1.1.5");
var sub = Subscriber.Init("jane@example.com");
sub.Attributes.Add("FirstName", "Jane");
sub.Attributes.Add("LastName", "Doe");
sub.Attributes.Add("PreferredLanguage", "en");
Attributes.Remove
sub.Attributes.Remove(attributeName)
Removes a profile attribute from the subscriber.
Examples
Platform.Load("core", "1.1.5");
var sub = Subscriber.Init("jane@example.com");
sub.Attributes.Remove("OutdatedField");
Lists.Add
sub.Lists.Add(listExternalKey)
Subscribes the subscriber to a publication list.
Examples
Platform.Load("core", "1.1.5");
var sub = Subscriber.Init("jane@example.com");
sub.Lists.Add("Newsletter_PublicList");
Lists.Remove
sub.Lists.Remove(listExternalKey)
Unsubscribes the subscriber from a publication list.
Examples
Platform.Load("core", "1.1.5");
var sub = Subscriber.Init("jane@example.com");
sub.Lists.Remove("Newsletter_PublicList");
Complete Onboarding Pattern
Platform.Load("core", "1.1.5");
var email = Platform.Request.GetFormField("email");
var firstName = Platform.Request.GetFormField("firstName");
var lastName = Platform.Request.GetFormField("lastName");
try {
var sub = Subscriber.Init(email);
sub.Attributes.Add("FirstName", firstName);
sub.Attributes.Add("LastName", lastName);
sub.Attributes.Add("SubscribedAt", Platform.Function.Now());
sub.Lists.Add("MainNewsletter");
Platform.Response.SetContentType("application/json");
Write(Stringify({ status: "subscribed", email: email }));
} catch(e) {
Platform.Response.SetResponseCode(500, "Internal Server Error");
Write(Stringify({ error: "Subscription failed", message: e.message }));
}
Notes
For more advanced subscriber management (upsert to All Subscribers, manage multiple lists, set status), use WSProxy with the Subscriber SOAP object. See WSProxy.