A single event object
record contains:
-
Event data:
-
Identifier – unique event ID (UUID)
-
Timestamp – GMT timestamp when the event occurred
-
Local timestamp – timestamp with local timezone
-
Event type – type of event
-
Action verb – string that describes performed action (i.e. Buy, View, Search, Enter, etc.)
-
Item – item associated with the event (i.e. Product ID)
-
Item Category – category the item belongs to (Product Category)
-
Value – value associated with the event (E.g. purchase amount)
-
Context data:
-
Instance ID – the instance object ID that generated the event
-
User ID – the logged-in user that generated the event (optional)
-
Device model/type
-
OS name/version
-
Country
-
Language
-
And other attributes
By default, the SDK automatically tracks predefined events:
- _start_session – when the new app session was started
- _session – when the user’s session ends
- _geo – track last coordinates of the current location *
- _visit – when a user visits a frequent place *
- _push – when push notification has been received while the app was running
- _launching_push – when app was started by a push notification
- _action – when proximity action has been triggered
- _beacon_proximity – when the device entered/exited a beacon region *
- _zone_proximity – when the device entered/exited a proximity zone *
- _place_proximity – when the device entered/exited a proximity place *
- _user_login – when user logged in
- _user_logout – when user logged out
- Used when available and allowed by user privacy settings.
To track custom events in your app, use the following API:
/**
* Tracks an event represented by an action verb
*
* @param verb Action verb. (E.g. Buy, View, Search, etc.).
*
* @return <code>YES</code> in case of success, <code>NO</code> in case of error.
*/
+ (BOOL) track:(NSString*)verb;
/**
* Track event helper methods.
*/
+ (BOOL) track:(NSString*)verb withValue:(NSNumber*)value;
+ (BOOL) track:(NSString*)verb forItem:(NSString*)item;
+ (BOOL) track:(NSString*)verb forItem:(NSString*)item withValue:(NSNumber*)value;
+ (BOOL) track:(NSString*)verb forItem:(NSString*)item belongingTo:(NSString*)category;
+ (BOOL) track:(NSString*)verb forItem:(NSString*)item belongingTo:(NSString*)category withValue:(NSNumber*)value;
+ (BOOL) track:(NSString*)verb forItem:(NSString*)item belongingTo:(NSString*)category withIntValue:(int)value;
/**
* Tracks an event represented by an action verb
*
* @param verb Action verb. (E.g. Buy, View, Search, etc.).
*
* @return <code>YES</code> in case of success, <code>NO</code> in case of error.
*/
class func track(_ verb: String) -> Bool
/**
* Track event helper methods.
*/
class func track(_ verb: String, withValue value: NSNumber) -> Bool
class func track(_ verb: String, forItem item: String) -> Bool
class func track(_ verb: String, forItem item: String, withValue value: NSNumber) -> Bool
class func track(_ verb: String, forItem item: String, belongingTo category: String) -> Bool
class func track(_ verb: String, forItem item: String, belongingTo category: String, withValue value: NSNumber) -> Bool
class func track(_ verb: String, forItem item: String, belongingTo category: String, withIntValue value: Int) -> Bool