When a user unsubscribes from or subscribes to a message channel, an individual message type, or a list, Iterable sets the following fields in the user profile to a value that identifies the action that triggered the event:
When an
emailUnSubscribe
,hostedUnsubscribeClick
, oremailComplaint
event is triggered, Iterable adds anunsubSource
field.When an
emailSubscribe
event is triggered, Iterable adds asignupSource
field.
NOTE
emailUnSubscribe
and emailSubscribe
are used universally for all message
channels.
Table of contents
Viewing unsubscribe and subscribe events
View information about a user's unsubscribe or subscribe events using one of the following methods:
-
For unsubscribes, set the
dataTypeName
field toemailUnSubscribe
and review theunsubSource
field in the exported data.For subscribes, set the
dataTypeName
field toemailSubscribe
and review thesignupSource
field in the exported data.
-
System webhooks Email Unsubscribe or Email Subscribe
A system webhook sends data from Iterable to third-party system when particular campaign-related events are created. To learn how to set up an Email Unsubscribe or Email Subscribe system webhook, read System Webhooks.
For the source of an unsubscribe or subscribe event, look at the
unsubSource
orsignupSource
fields in the system webhook data that's captured by the third-party system. -
The user profile page in Iterable
To view a user's profile, navigate to Audience > Contact Lookup and enter their email address or their user ID (the search box reflects the necessary field).
On the Event History tab, find the unsubscribe or subscribe event and look for the
unsubSource
orsignupSource
field.
Types of unsubscribe events
The unsubSource
field provides one of the following reasons a user was
unsubscribed.
API
An API call was made to one of these endpoints:
DELETE /api/subscriptions/{subscriptionGroup}/{subscriptionGroupId}/byUserId/{userId}
PUT /api/subscriptions/{subscriptionGroup}/{subscriptionGroupId}
Complaint
The user marked an email they received as spam, so was unsubsubscribed from all email channels.
EmailLink
The user clicked an unsubscribe link in the email template: {{unsubscribeUrl}}
,
{{unsubscribeMessageTypeUrl}}
, or
{{hostedUnsubscribeUrl}}
.
ESP
The email service provider (ESP) has placed the user on a suppression list.
HardBounce
An email was sent to a misspelled email address or to one that's no longer in use, referred to as a hard bounce.
Import
On the Audience > Segmentation page, an Iterable member selected the user and then clicked Other Actions > Remove Contacts from List.
On the Audience > List page, the user was included in a list of users provided after clicking the Remove Subscribers link.
On the Audience > List page, the user was included in a list of users provided after clicking Channel Unsubscribe Users.
ISP
Iterable received an unsubscribe email from the ISP, triggered because the user
clicked the unsubscribe link near the top of the email (perhaps in a mailto
header).
ListAPI
An API call was made to POST /api/lists/unsubscribe
.
SMS
The user replied to an SMS message with one of the following keywords:
STOP
CANCEL
STOPALL
UNSUBSCRIBE
QUIT
END
UpdateSubscriptionsAPI
An API call was made to one of these endpoints:
WebApp
The unsubscribe was triggered manually on the user profile page in Iterable.
Workflow
The user was unsubscribed because of an unsubscribe tile in a journey.
Attributing unsubscribe events to a campaign
The following unsubscribe event types can be used to attribute an unsubscribe to a particular campaign:
API
(if the API passes the optionalcampaignId
field)Complaint
EmailLink
ESP
ISP
ListAPI
(if the API passes the optionalcampaignId
field)SMS
(if a SMS campaign is sent and the system receives an opt-out keyword response, such as STOP or NO, within three hours of the send—read more)UpdateSubscriptionsAPI
(if the API passes the optionalcampaignId
field)
TIP
To find the campaignId
associated with a certain unsubscribe event, you can
create a user list in segmentation that filters for unsubscribes, or you can use the
GET /api/events/{email}
API endpoint to locate the campaignId
field for the type of unsubscribe event
you're interested in for a specific user.
Types of subscribe events
The signupSource
field provides one of the following reasons a user was
subscribed.
API
An API call was made to one of these endpoints:
PATCH /api/subscriptions/{subscriptionGroup}/{subscriptionGroupId}/user/{userEmail}
PATCH /api/subscriptions/{subscriptionGroup}/{subscriptionGroupId}/byUserId/{userId}
}PUT /api/subscriptions/{subscriptionGroup}/{subscriptionGroupId}
CartAPI
An API call was made to POST /api/commerce/updateCart
.
DeviceAPI
An API call was made to POST /api/users/registerDeviceToken
call from one of Iterable's mobile SDKs.
Import
On the Audience > List page, the user was included in a list of users provided after clicking the Add Subscribers / Modify List link.
On the Audience > List page, the user was included in a list of users provided after clicking Channel Subscribe Users.
A new static list was saved (perhaps by saving a dynamic list as a new static list or creating static list from another static list).
ListAPI
An API call was made to POST /api/lists/subscribe
.
PurchaseAPI
An API call was made to POST /api/commerce/trackPurchase
.
ResubscribePage
The user subscribed to a message type or channel using the Resubscribe button on an unsubscribe success page.
SendMessageAPI
An API call was made to POST /api/email/target
(the user was
sent a triggered campaign).
UpdateSubscriptionsAPI
An API call was made to one of these endpoints:
WebApp
A user was added manually on the user profile page in Iterable.
In a userID-based project, a user was created when you sent a proof of template.
WebForm
The user subscribed through an HTML signup form like the example shown in Building a Signup Form for Static Lists.
Workflow
The user was triggered into a journey by an API call to POST /api/workflows/triggerWorkflow
.
Comments
0 comments
Please sign in to leave a comment.