Below, you can see a list of default mobile events along with their method signatures and examples:
SDK events
Session events are automatically triggered based on user actions on the application and campaigns and do not require any configuration from the customer's end.
| Event | How does it work? |
|---|---|
| Mobile App Opened | Triggered when the app is opened |
| Session Start | Triggered every time a session starts |
| Session Start From Push | Triggered if a session starts upon a click on a push notification triggered from an app template. Test pushes do not trigger this event. |
| Push Session | Triggered if a session starts upon a click on a push notification. Test pushes do not trigger this event. |
| Push Delivered | Triggered when a push is delivered |
| App Push Opened | Triggered when an app push is opened |
| InApp Seen | Triggered when an inApp is seen along with the inApp ID and variant ID information |
| Mobile Social Proof Seen | Triggered when a social proof is seen |
Page visit events
You should trigger the page visit events when a user visits the respective type of page in the application. The default page visit events include the Homepage View, Listing Page View, Product Detail Page View, Cart Page View, and Confirmation Page View. See below for their method signatures and examples.
Homepage View
This method allows you to tag the visits on your homepage as an event. You can call this method each time a user visits your homepage.
Method Signature
+(void)visitHomepage;Method Examples
[Insider visitHomepage];Insider.visitHomepage()visitHomepageWithCustomParameters
This method allows you to tag your Homepage as an event with custom parameters. You can call this method each time a user visits your homepage. This method tracks the homepage visit event and includes any custom parameters you provide.
| Parameter | Type | Description |
|---|---|---|
| customParameters | NSDictionary<NSString *, id> * | Dictionary of custom parameters to be added to the event. Can be nil or empty. |
Return value: void
Method signature
+(void)visitHomepageWithCustomParameters:(NSDictionary<NSString *, id> *)customParameters;
Insider.visitHomepage(withCustomParameters: [String: Any]?)Method example
NSDictionary *customParams = @{
@"source": @"demo",
@"campaign_id": @"campaign_123",
@"page_number": @1
};
[Insider visitHomepageWithCustomParameters:customParams];
let customParams: [String: Any] = [
"source": "demo",
"campaign_id": "campaign_123",
"page_number": 1
]
Insider.visitHomepage(withCustomParameters: customParams)Custom parameters are optional and can be nil or empty.
Listing Page View
This method allows you to tag the visits on your listing page as an event. You can call this method each time a user visits your listing page along with the following event parameters: taxonomy, type, referrer, key, show_on_segment, is_pii, device_type, url, and source.
| Parameter | Data Type |
|---|---|
| taxonomy | Array of string |
Method Signature
+(void)visitListingPageWithTaxonomy:(NSArray *)taxonomyMethod Examples
NSArray *taxonomy = [NSArray arrayWithObjects: @"taxonomy1", @"taxonomy2", @"taxonomy3", nil];
[Insider visitListingPageWithTaxonomy:taxonomy];Insider.visitListingPage(withTaxonomy: ["taxonomy"])visitListingPageWithTaxonomy:customParameters:
This method allows you to tag your ListingPage as an event with custom parameters. You can call this method each time a user visits the ListingPage. This method tracks the listing page visit event with the provided taxonomy and includes any custom parameters.
| Parameter | Type | Description |
|---|---|---|
| taxonomy | NSArray * | Taxonomy(category) of the product. |
| customParameters | NSDictionary<NSString *, id> * | Dictionary of custom parameters to be added to the event. Can be nil or empty. |
Return value: void
Method signature
+(void)visitListingPageWithTaxonomy:(NSArray *)taxonomy customParameters:(NSDictionary<NSString *, id> *)customParameters;
Insider.visitListingPage(withTaxonomy: [Any], customParameters: [String: Any]?)
Method example
NSArray *taxonomy = @[@"Electronics", @"Smartphones", @"iPhone"];
NSDictionary *customParams = @{
@"page_number": @1,
@"sort_by": @"price",
@"filter_applied": @YES
};
[Insider visitListingPageWithTaxonomy:taxonomy customParameters:customParams];
let taxonomy = ["Electronics", "Smartphones", "iPhone"]
let customParams: [String: Any] = [
"page_number": 1,
"sort_by": "price",
"filter_applied": true
]
Insider.visitListingPage(withTaxonomy: taxonomy, customParameters: customParams)
If any parameter passed to this method is nil or an empty string, they will be ignored.
Product Detail Page View
This method allows you to tag the visits on your product page as an event. You can call this method each time a user visits your product page along with the following event parameters: product ID, name, taxonomy, imageURL, price, and currency.
This event is required for the Social Proof method.
| Parameter | Data Type |
|---|---|
| product | object (Insider product object) |
Method Signature
+(void)visitProductDetailPage:(InsiderProduct *)product;Method Example
[Insider visitProductDetailPage:insiderExampleProduct];Insider.visitProductDetailPage(with: insiderExampleProduct)visitProductDetailPageWithProduct:customParameters:
This method allows you to tag your ProductDetailPage as an event with custom parameters. You can call this method each time a user visits your ProductDetailPage. This method tracks the product detail page visit event and includes any custom parameters you provide.
| Parameter | Type | Description |
|---|---|---|
| product | InsiderProduct * | The InsiderProduct object. |
| customParameters | NSDictionary<NSString *, id> * | Dictionary of custom parameters to be added to the event. Can be nil or empty. |
Return value: void
Method signature
+(void)visitProductDetailPageWithProduct:(InsiderProduct *)product customParameters:(NSDictionary<NSString *, id> *)customParameters;
Insider.visitProductDetailPage(with: InsiderProduct, customParameters: [String: Any]?)Method example
InsiderProduct *product = [Insider createNewProductWithID:@"demo_product_123"
name:@"Demo Product"
taxonomy:@[@"Electronics", @"Smartphones"]
imageURL:@"https://example.com/image.jpg"
price:99.99
currency:@"USD"];
NSDictionary *customParams = @{
@"source": @"search",
@"campaign_id": @"campaign_123",
@"recommendation_id": @"rec_456"
};
[Insider visitProductDetailPageWithProduct:product customParameters:customParams];
let product = Insider.createNewProduct(
withID: "demo_product_123",
name: "Demo Product",
taxonomy: ["Electronics", "Smartphones"],
imageURL: "https://example.com/image.jpg",
price: 99.99,
currency: "USD"
)
let customParams: [String: Any] = [
"source": "search",
"campaign_id": "campaign_123",
"recommendation_id": "rec_456"
]
Insider.visitProductDetailPage(with: product, customParameters: customParams)
If you pass an invalid InsiderProduct object to this method, it will be ignored.
Cart Page View
This method allows you to tag the visits on your cart page as an event. You can call this method each time a user visits your cart page along with the following event parameters: product ID, name, taxonomy, imageURL, price, and currency.
| Parameter | Data Type |
|---|---|
| insiderProduct | Array of Insider product object |
Method Signature
+(void)visitCartPage:(NSArray *)insiderProducts;Method Examples
[Insider visitCartPage:insiderExampleProducts];Insider.visitCartPage(withProducts: insiderExampleProducts)visitCartPageWithProducts:customParameters:
This method allows you to tag your CartPage as an event with custom parameters. You can call this method each time a user visits the CartPage, passing the products on the page. This method tracks the cart page visit event and includes any custom parameters you provide.
| Parameter | Type | Description |
|---|---|---|
| insiderProducts | NSArray * | The array of InsiderProduct objects. |
| customParameters | NSDictionary<NSString *, id> * | Dictionary of custom parameters to be added to the event. Can be nil or empty. |
Return value: void
Method signature
+(void)visitCartPageWithProducts:(NSArray *)insiderProducts customParameters:(NSDictionary<NSString *, id> *)customParameters;
Insider.visitCartPage(withProducts: [Any], customParameters: [String: Any]?)
Method example
InsiderProduct *product = [Insider createNewProductWithID:@"demo_product_123"
name:@"Demo Product"
taxonomy:@[@"Electronics", @"Smartphones"]
imageURL:@"https://example.com/image.jpg"
price:99.99
currency:@"USD"];
NSArray *products = @[product];
NSDictionary *customParams = @{
@"cart_total": @99.99,
@"item_count": @1,
@"discount_applied": @NO
};
[Insider visitCartPageWithProducts:products customParameters:customParams];
let product = Insider.createNewProduct(
withID: "demo_product_123",
name: "Demo Product",
taxonomy: ["Electronics", "Smartphones"],
imageURL: "https://example.com/image.jpg",
price: 99.99,
currency: "USD"
)
let customParams: [String: Any] = [
"cart_total": 99.99,
"item_count": 1,
"discount_applied": false
]
Insider.visitCartPage(withProducts: [product], customParameters: customParams)
If you have any invalid InsiderProduct object inside the array, it will be ignored.
Wishlist Page View
This method allows you to tag the visits on your wishlist page as an event. You can call this method each time a user visits your wishlist page along with the following event parameters: product ID, name, taxonomy, imageURL, price, and currency.
| Parameter | Data Type |
|---|---|
| insiderProduct | Array of Insider product object |
Method Signature
+(void)visitWishlistWithProducts:(NSArray *)insiderProducts;Method Examples
[Insider visitWishlistWithProducts:insiderExampleProducts];Insider.visitWishlistWithProducts(withProducts: insiderExampleProducts)visitWishlistWithProducts:customParameters:
This method allows you to tag your Wishlist as an event with custom parameters. You can call this method each time the user visits your Wishlist, passing the products on the page. The method tracks the wishlist visit event and includes any custom parameters you provide.
| Parameter | Type | Description |
|---|---|---|
| insiderProducts | NSArray * | The array of InsiderProduct objects. |
| customParameters | NSDictionary<NSString *, id> * | Dictionary of custom parameters to be added to the event. Can be nil or empty. |
Return value: void
Method signature
+(void)visitWishlistWithProducts:(NSArray *)insiderProducts customParameters:(NSDictionary<NSString *, id> *)customParameters;
Insider.visitWishlist(withProducts: [Any], customParameters: [String: Any]?)
Method example
InsiderProduct *product = [Insider createNewProductWithID:@"demo_product_123"
name:@"Demo Product"
taxonomy:@[@"Electronics", @"Smartphones"]
imageURL:@"https://example.com/image.jpg"
price:99.99
currency:@"USD"];
NSArray *products = @[product];
NSDictionary *customParams = @{
@"wishlist_total_items": @5,
@"wishlist_total_value": @500.0
};
[Insider visitWishlistWithProducts:products customParameters:customParams];
let product = Insider.createNewProduct(
withID: "demo_product_123",
name: "Demo Product",
taxonomy: ["Electronics", "Smartphones"],
imageURL: "https://example.com/image.jpg",
price: 99.99,
currency: "USD"
)
let customParams: [String: Any] = [
"wishlist_total_items": 5,
"wishlist_total_value": 500.0
]
Insider.visitWishlist(withProducts: [product], customParameters: customParams)
If you have any invalid InsiderProduct object inside the array, it will be ignored.
Confirmation Page View (Purchase)
This method allows you to tag the visits on your confirmation page as an event. You can call this method each time a user makes a purchase along with the following event parameters: product ID, name, taxonomy, imageURL, price, and currency.
This event is required for the Track Revenue method.
| Parameter | Data Type |
|---|---|
| saleID | String |
| product | Object (Insider product object) |
Method Signature
+(void)itemPurchasedWithSaleID:(NSString *)saleID product:(InsiderProduct *)product;Method Examples
[Insider itemPurchasedWithSaleID:@"uniqueSaleID" product:insiderExampleProduct];Insider.itemPurchased(withSaleID: "uniqueSaleID", product: insiderExampleProduct)itemPurchasedWithSaleID:product:customParameters:
This method allows you to track your sales and revenue with custom parameters. This method tracks a purchase event when a user completes a purchase. It records the sale ID, product information, and any custom parameters you provide.
| Parameter | Type | Description |
|---|---|---|
| saleID | NSString * | The saleID(transactionID) of the sale. |
| product | InsiderProduct * | The InsiderProduct object. |
| customParameters | NSDictionary<NSString *, id> * | Dictionary of custom parameters to be added to the event. Can be nil or empty. |
Return value: void
Method signature
+(void)itemPurchasedWithSaleID:(NSString *)saleID product:(InsiderProduct *)product customParameters:(NSDictionary<NSString *, id> *)customParameters;
Insider.itemPurchased(withSaleID: String, product: InsiderProduct, customParameters: [String: Any]?)Method example
InsiderProduct *product = [Insider createNewProductWithID:@"demo_product_123"
name:@"Demo Product"
taxonomy:@[@"Electronics", @"Smartphones"]
imageURL:@"https://example.com/image.jpg"
price:99.99
currency:@"USD"];
NSDictionary *customParams = @{
@"payment_method": @"credit_card",
@"discount_applied": @YES,
@"shipping_method": @"express"
};
[Insider itemPurchasedWithSaleID:@"sale_123" product:product customParameters:customParams];
let product = Insider.createNewProduct(
withID: "demo_product_123",
name: "Demo Product",
taxonomy: ["Electronics", "Smartphones"],
imageURL: "https://example.com/image.jpg",
price: 99.99,
currency: "USD"
)
let customParams: [String: Any] = [
"payment_method": "credit_card",
"discount_applied": true,
"shipping_method": "express"
]
Insider.itemPurchased(withSaleID: "sale_123", product: product, customParameters: customParams)
If you pass an invalid InsiderProduct object to this method, it will be ignored. This method validates that the saleID is not empty before processing.
Sign Up Confirmation
This method allows you to tag the visits on your sign up confirmation page as an event. You can call this method each time a user signs up to your application.
Method Signature
+(void)signUpConfirmation;Method Examples
[Insider signUpConfirmation];Insider.signUpConfirmation();Cart events
You should trigger the page visit events when a user visits the respective type of page in the application. The default cart events include the Item Added to Cart, Item Removed from Cart, and Cart Cleared. See below for their method signatures and examples.
Item Added to Cart (Add to Cart)
You can call this method whenever a user adds a product (Insider product object) to their cart along with the following event parameters: product ID, name, taxonomy, imageURL, price, and currency.
This event is required for the Cart Reminder method.
| Parameter | Data Type |
|---|---|
| product | Object (Insider product object) |
Method Signature
+(void)itemAddedToCartWithProduct:(InsiderProduct *)product;Method Examples
[Insider itemAddedToCartWithProduct:insiderExampleProduct];Insider.itemAddedToCart(with: insiderExampleProduct)itemAddedToCartWithProduct:customParameters:
This method allows you to add an item to your cart with custom parameters. Call this method each time a user adds a product to their cart. This method tracks the add-to-cart event and includes any custom parameters you provide.
| Parameter | Type | Description |
|---|---|---|
| product | InsiderProduct * | The InsiderProduct object. |
| customParameters | NSDictionary<NSString *, id> * | Dictionary of custom parameters to be added to the event. Can be nil or empty. |
Return value: void
Method signature
+(void)itemAddedToCartWithProduct:(InsiderProduct *)product customParameters:(NSDictionary<NSString *, id> *)customParameters;
Insider.itemAddedToCart(with: InsiderProduct, customParameters: [String: Any]?)Method example
InsiderProduct *product = [Insider createNewProductWithID:@"demo_product_123"
name:@"Demo Product"
taxonomy:@[@"Electronics", @"Smartphones"]
imageURL:@"https://example.com/image.jpg"
price:99.99
currency:@"USD"];
NSDictionary *customParams = @{
@"quantity": @2,
@"source": @"recommendation",
@"variant_id": @"variant_123"
};
[Insider itemAddedToCartWithProduct:product customParameters:customParams];
let product = Insider.createNewProduct(
withID: "demo_product_123",
name: "Demo Product",
taxonomy: ["Electronics", "Smartphones"],
imageURL: "https://example.com/image.jpg",
price: 99.99,
currency: "USD"
)
let customParams: [String: Any] = [
"quantity": 2,
"source": "recommendation",
"variant_id": "variant_123"
]
Insider.itemAddedToCart(with: product, customParameters: customParams)
If you pass an invalid InsiderProduct object to this method, it will be ignored.
Item Removed from Cart
You can call this method whenever a user removes a product (Insider product object) from their cart along with the following event parameters: product ID, name, taxonomy, imageURL, price, and currency.
This event is required for the Cart Reminder method.
| Parameter | Data Type |
|---|---|
| productID | String |
Method Signature
+(void)itemRemovedFromCartWithProductID:(NSString *)productID;Method Examples
[Insider itemRemovedFromCartWithProductID:@"productID"];Insider.itemRemovedFromCart(withProductID: "productID")itemRemovedFromCartWithProductID:customParameters:
This method removes an item from the cart with custom parameters. Call this method each time the user removes a product from their cart. The method tracks the remove-from-cart event and includes any custom parameters you provide.
| Parameter | Type | Description |
|---|---|---|
| productID | NSString * | The identifier of the product that is being removed from the cart. |
| customParameters | NSDictionary<NSString *, id> * | Dictionary of custom parameters to be added to the event. Can be nil or empty. |
Return value: void
Method signature
+(void)itemRemovedFromCartWithProductID:(NSString *)productID customParameters:(NSDictionary<NSString *, id> *)customParameters;
Insider.itemRemovedFromCart(withProductID: String, customParameters: [String: Any]?)
Method example
NSDictionary *customParams = @{
@"reason": @"out_of_stock",
@"cart_total_after": @0.0
};
[Insider itemRemovedFromCartWithProductID:@"demo_product_123" customParameters:customParams];
let customParams: [String: Any] = [
"reason": "out_of_stock",
"cart_total_after": 0.0
]
Insider.itemRemovedFromCart(withProductID: "demo_product_123", customParameters: customParams)
Cart Cleared
You can call this method whenever a user removes all products from their cart or when the last Insider product object is removed from the cart.
This event is required for the Cart Reminder method.
Method Signature
+(void)cartCleared;Method Examples
[Insider cartCleared];Insider.cartCleared()cartClearedWithCustomParameters:
This method clears all the items in the cart with custom parameters. Call this method each time the user clears the cart or when the last item in the cart has been removed. The method tracks the cart cleared event and includes any custom parameters you provide.
| Parameter | Type | Description |
|---|---|---|
| customParameters | NSDictionary<NSString *, id> * | Dictionary of custom parameters to be added to the event. Can be nil or empty. |
Return value: void
Method signature
+(void)cartClearedWithCustomParameters:(NSDictionary<NSString *, id> *)customParameters;
Insider.cartCleared(withCustomParameters: [String: Any]?)
Method example
NSDictionary *customParams = @{
@"items_count_before": @3,
@"total_value_before": @150.0,
@"reason": @"user_action"
};
[Insider cartClearedWithCustomParameters:customParams];
let customParams: [String: Any] = [
"items_count_before": 3,
"total_value_before": 150.0,
"reason": "user_action"
]
Insider.cartCleared(withCustomParameters: customParams)
Wishlist events
You should trigger the wishlist events when a user takes the action for the respective type of wishlist moves in the application. The default wishlist events include the Item Added to Wishlist, Item Removed from Wishlist, and Wishlist Cleared. See below for their method signatures and examples.
Item Added to Wishlist (Add to Wishlist)
You can call this method whenever a user adds a product (Insider product object) to their wishlist along with the following event parameters: product ID, name, taxonomy, imageURL, price, and currency.
| Parameter | Data Type |
|---|---|
| product | Object (Insider product object) |
Method Signature
+(void)itemAddedToWishlistWithProduct:(InsiderProduct *)product;Method Examples
[Insider itemAddedToWishlistWithProduct:insiderExampleProduct];Insider.itemAddedToWishlistWithProduct(with: insiderExampleProduct)itemAddedToWishlistWithProduct:customParameters:
This method allows you to add an item to your wishlist with custom parameters. Call this method each time the user adds a product to their wishlist. This method tracks the add-to-wishlist event and includes any custom parameters you provide.
| Parameter | Type | Description |
|---|---|---|
| product | InsiderProduct * | The InsiderProduct object. |
| customParameters | NSDictionary<NSString *, id> * | Dictionary of custom parameters to be added to the event. Can be nil or empty. |
Return value: void
Method signature
+(void)itemAddedToWishlistWithProduct:(InsiderProduct *)product customParameters:(NSDictionary<NSString *, id> *)customParameters;
Insider.itemAddedToWishlist(with: InsiderProduct, customParameters: [String: Any]?)
Method example
InsiderProduct *product = [Insider createNewProductWithID:@"demo_product_123"
name:@"Demo Product"
taxonomy:@[@"Electronics", @"Smartphones"]
imageURL:@"https://example.com/image.jpg"
price:99.99
currency:@"USD"];
NSDictionary *customParams = @{
@"source": @"product_page",
@"recommendation_id": @"rec_123",
@"wishlist_size": @5
};
[Insider itemAddedToWishlistWithProduct:product customParameters:customParams];
let product = Insider.createNewProduct(
withID: "demo_product_123",
name: "Demo Product",
taxonomy: ["Electronics", "Smartphones"],
imageURL: "https://example.com/image.jpg",
price: 99.99,
currency: "USD"
)
let customParams: [String: Any] = [
"source": "product_page",
"recommendation_id": "rec_123",
"wishlist_size": 5
]
Insider.itemAddedToWishlist(with: product, customParameters: customParams)
If you pass an invalid InsiderProduct object to this method, it will be ignored.
Item Removed from Wishlist
You can call this method whenever a user removes a product (Insider product object) from their wishlist along with the following event parameters: product ID, name, taxonomy, imageURL, price, and currency.
| Parameter | Data Type |
|---|---|
| productID | String |
Method Signature
+(void)itemRemovedFromWishlistWithProductID:(NSString *)productID;Method Examples
[Insider itemRemovedFromWishlistWithProductID:@"productID"];Insider.itemRemovedFromWishlistWithProductID(withProductID: "productID")itemRemovedFromWishlistWithProductID:customParameters:
This method removes an item from the wishlist with custom parameters. Call this method each time the user removes a product from their wishlist. This method tracks the remove-from-wishlist event and includes any custom parameters you provide.
| Parameter | Type | Description |
|---|---|---|
| productID | NSString * | The identifier of the product that is being removed from the wishlist. |
| customParameters | NSDictionary<NSString *, id> * | Dictionary of custom parameters to be added to the event. Can be nil or empty. |
Return value: void
Method signature
+(void)itemRemovedFromWishlistWithProductID:(NSString *)productID customParameters:(NSDictionary<NSString *, id> *)customParameters;
Insider.itemRemovedFromWishlist(withProductID: String, customParameters: [String: Any]?)
Method example
NSDictionary *customParams = @{
@"reason": @"purchased",
@"wishlist_size_after": @4
};
[Insider itemRemovedFromWishlistWithProductID:@"demo_product_123" customParameters:customParams];
let customParams: [String: Any] = [
"reason": "purchased",
"wishlist_size_after": 4
]
Insider.itemRemovedFromWishlist(withProductID: "demo_product_123", customParameters: customParams)
Wishlist Cleared
You can call this method whenever a user removes all products from their wishlist or when the last Insider product object is removed from the wishlist.
Method Signature
+(void)wishlistCleared;Method Examples
[Insider wishlistCleared];Insider.wishlistCleared()wishlistClearedWithCustomParameters:
This method clears all the items in the wishlist with custom parameters. Call this method when the user clears the wishlist or when the last item in the wishlist has been removed. This method tracks the wishlist cleared event and includes any custom parameters you provide.
| Parameter | Type | Description |
|---|---|---|
| customParameters | NSDictionary<NSString *, id> * | Dictionary of custom parameters to be added to the event. Can be nil or empty. |
Return value: void
Method signature
+(void)wishlistClearedWithCustomParameters:(NSDictionary<NSString *, id> *)customParameters;
Insider.wishlistCleared(withCustomParameters: [String: Any]?)
Method example
NSDictionary *customParams = @{
@"items_count_before": @10,
@"reason": @"user_action"
};
[Insider wishlistClearedWithCustomParameters:customParams];
let customParams: [String: Any] = [
"items_count_before": 10,
"reason": "user_action"
]
Insider.wishlistCleared(withCustomParameters: customParams)