Each of the standard events are there because are most common across industries. We continue to add “standard” events based on various integrations with new channels or new types of businesses.
Some of those have some restrictions and determine our systems to act accordingly:
Events generated by bots
By default we do our best to identify bots from real human web traffic. This is done automatically on the client side and no events identified from bots are being sent to the system. Our approach is a light one, in order not to reject real events.
Update & Login Events
Both can be used to update user attributes, by sending them as key -> value. The difference is that login does the identification on client side, doing the replacement of current user (if not identified already) or adding email if anonymous.
Update event just updates attributes for the current user.
Purchases are the final goal of an online business. We limit confirmations by the orderId received in the event. So if a second event with the same orderId comes, it is discarded.
Email Open event
Email opens are limited at one each 20 minutes. The reason for this is that the huge variety of email clients usually generates so many email opens that are useless and not needed for the system.
All other events coming within 20 minutes after first one are discarded.