RudderStack lets you send your event data to Iterable via the cloud mode.
Identify
When you make an identify
call, RudderStack calls Iterable's Update User API to send the data.
Iterable identifies a user by email
or userId
. If none of these traits is present in the call, RudderStack will not send the event to Iterable.
Iterable gives precedence to email
over userId
in case both the traits are present in the identify
call.
A sample identify
call is as shown:
rudderanalytics.identify( "userId", { city: "New Orleans", name: "Alex Keener", email: "alex@example.com", country: "USA" });
Push notification registration
RudderStack uses Iterable's device registration API to send the token information from a device. It also sets the platform
parameter to APNS
and GCM
for iOS and Android devices respectively.
Similarly, RudderStack uses Iterable's browser token registration API for the web platform.
If the deviceToken
associated with the push notification is present in context
of the event payload, then RudderStack will map the user with the device to register for push. This will add the data if it doesn't exist yet. It will also update data fields on the device.
Page
When you call the page
method, the RudderStack sends a track
event to Iterable with the userId
, email
, and eventName
parameters. If the user does not already exist in Iterable, RudderStack will add them to the system as long as email
is present in the event. If email
is not present, Iterable will reject the event.
email
for the first time you call page
for a given user. The subsequent events can contain userId
.If the name of your page is Application Home
, then RudderStack sends the event to Iterable as Application Home Page
.
A sample page
call is shown below:
rudderanalytics.page({ path: "home", url: "https://www.example.com/home", title: "Home Page", search: "home", referrer: "https://www.example.com/previous",})
Screen
The screen
event is the mobile equivalent of the page
. When you make a screen
call, RudderStack sends a track
event to Iterable with the userId
,email
, and eventName
parameters . If a user corresponding to the email ID is absent, Iterable will create a new user.
If the name of your screen is Main Activity
, RudderStack sends the event to Iterable as Main Activity Screen
.
A sample screen
call is as shown:
[[RSClient sharedInstance] screen:@"Main"];
Alias
The alias
call lets you merge different identities of a known user. The format of an alias
call is shown below:
rudderanalytics.alias("userId","previousId");
To send an alias
event to Iterable, you must set previousId
to the current email and userId
as new email, as shown:
rudderanalytics.alias("new@email.com", "current@email.com");
Track
When you make a track
call, RudderStack uses Iterable's Track API to send the events. The event properties are sent as data fields in the request, while the name of the event is sent as a custom event.
email
for the first time you send a track
event for a given user. If a user does not exist, Iterable creates new users for those track
calls which have email
.A sampletrack
call is shown below:
rudderanalytics.track( "Email Opened", { "subject": "Resume validation", "sendtime": "2022-01-01", "sendlocation": "alex@example.com" }, { traits: { email: "alex@example.com" } });
Ecommerce
You can find the relevant details of the ecommerce events in the Ecommerce Events Specification.
Order Completed
RudderStack supports the ecommerce event Order Completed
and sends the other events as generic track
events. Refer to the corresponding Iterable endpoint details in the Track a purchase API.
total
to successfully send the Order Completed event.The following snippet highlights a sample Order Completed
event:
rudderanalytics.track("Order Completed", { total: 1000, products: [ { product_id: "507f1f77bcf86cd799439011", sku: "45790-32", name: "Monopoly: 3rd Edition", price: "19", position: "1", category: "Games,Gifts,Entertainment,Toys", url: "https://www.example.com/product/path", image_url: "https://www.example.com/product/path.jpg", }, { product_id: "507f1f77bcf86cd799439011", sku: "45790-32", name: "Monopoly: 3rd Edition", price: "19", quantity: "2", position: "1", category: "Games,Gifts,Entertainment,Toys", url: "https://www.example.com/product/path", image_url: "https://www.example.com/product/path.jpg", }, ],})
Product Added / Product Removed
RudderStack supports the ecommerce event Product Added
or Product Removed
and sends the information to Iterable via the updateCart endpoint, corresponding to updating a user's shopping cart items.
A sample snippet highlighting the Product Added
event is shown below:
rudderanalytics.track("Product Added", { total: 1000, products: [ { product_id: "507f1f77bcf86cd799439011", sku: "45790-32", name: "Monopoly: 3rd Edition", price: "19", position: "1", category: "Games,Gifts,Entertainment,Toys", url: "https://www.example.com/product/path", image_url: "https://www.example.com/product/path.jpg", }, { product_id: "507f1f77bcf86cd799439011", sku: "45790-32", name: "Monopoly: 3rd Edition", price: "19", quantity: "2", position: "1", category: "Games,Gifts,Entertainment,Toys", url: "https://www.example.com/product/path", image_url: "https://www.example.com/product/path.jpg", }, ],})
Contact us
For more information on the topics covered on this page, email us or start a conversation in our Slack community.