FIREventNames.h 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336
  1. /// @file FIREventNames.h
  2. ///
  3. /// Predefined event names.
  4. ///
  5. /// An Event is an important occurrence in your app that you want to measure. You can report up to
  6. /// 500 different types of Events per app and you can associate up to 25 unique parameters with each
  7. /// Event type. Some common events are suggested below, but you may also choose to specify custom
  8. /// Event types that are associated with your specific app. Each event type is identified by a
  9. /// unique name. Event names can be up to 40 characters long, may only contain alphanumeric
  10. /// characters and underscores ("_"), and must start with an alphabetic character. The "firebase_"
  11. /// prefix is reserved and should not be used.
  12. /// Add Payment Info event. This event signifies that a user has submitted their payment information
  13. /// to your app.
  14. static NSString *const kFIREventAddPaymentInfo = @"add_payment_info";
  15. /// E-Commerce Add To Cart event. This event signifies that an item was added to a cart for
  16. /// purchase. Add this event to a funnel with kFIREventEcommercePurchase to gauge the effectiveness
  17. /// of your checkout process. Note: If you supply the @c kFIRParameterValue parameter, you must
  18. /// also supply the @c kFIRParameterCurrency parameter so that revenue metrics can be computed
  19. /// accurately. Params:
  20. ///
  21. /// <ul>
  22. /// <li>@c kFIRParameterQuantity (signed 64-bit integer as NSNumber)</li>
  23. /// <li>@c kFIRParameterItemID (NSString)</li>
  24. /// <li>@c kFIRParameterItemName (NSString)</li>
  25. /// <li>@c kFIRParameterItemCategory (NSString)</li>
  26. /// <li>@c kFIRParameterItemLocationID (NSString) (optional)</li>
  27. /// <li>@c kFIRParameterPrice (double as NSNumber) (optional)</li>
  28. /// <li>@c kFIRParameterCurrency (NSString) (optional)</li>
  29. /// <li>@c kFIRParameterValue (double as NSNumber) (optional)</li>
  30. /// <li>@c kFIRParameterOrigin (NSString) (optional)</li>
  31. /// <li>@c kFIRParameterDestination (NSString) (optional)</li>
  32. /// <li>@c kFIRParameterStartDate (NSString) (optional)</li>
  33. /// <li>@c kFIRParameterEndDate (NSString) (optional)</li>
  34. /// </ul>
  35. static NSString *const kFIREventAddToCart = @"add_to_cart";
  36. /// E-Commerce Add To Wishlist event. This event signifies that an item was added to a wishlist.
  37. /// Use this event to identify popular gift items in your app. Note: If you supply the
  38. /// @c kFIRParameterValue parameter, you must also supply the @c kFIRParameterCurrency
  39. /// parameter so that revenue metrics can be computed accurately. Params:
  40. ///
  41. /// <ul>
  42. /// <li>@c kFIRParameterQuantity (signed 64-bit integer as NSNumber)</li>
  43. /// <li>@c kFIRParameterItemID (NSString)</li>
  44. /// <li>@c kFIRParameterItemName (NSString)</li>
  45. /// <li>@c kFIRParameterItemCategory (NSString)</li>
  46. /// <li>@c kFIRParameterItemLocationID (NSString) (optional)</li>
  47. /// <li>@c kFIRParameterPrice (double as NSNumber) (optional)</li>
  48. /// <li>@c kFIRParameterCurrency (NSString) (optional)</li>
  49. /// <li>@c kFIRParameterValue (double as NSNumber) (optional)</li>
  50. /// </ul>
  51. static NSString *const kFIREventAddToWishlist = @"add_to_wishlist";
  52. /// App Open event. By logging this event when an App is moved to the foreground, developers can
  53. /// understand how often users leave and return during the course of a Session. Although Sessions
  54. /// are automatically reported, this event can provide further clarification around the continuous
  55. /// engagement of app-users.
  56. static NSString *const kFIREventAppOpen = @"app_open";
  57. /// E-Commerce Begin Checkout event. This event signifies that a user has begun the process of
  58. /// checking out. Add this event to a funnel with your kFIREventEcommercePurchase event to gauge the
  59. /// effectiveness of your checkout process. Note: If you supply the @c kFIRParameterValue
  60. /// parameter, you must also supply the @c kFIRParameterCurrency parameter so that revenue
  61. /// metrics can be computed accurately. Params:
  62. ///
  63. /// <ul>
  64. /// <li>@c kFIRParameterValue (double as NSNumber) (optional)</li>
  65. /// <li>@c kFIRParameterCurrency (NSString) (optional)</li>
  66. /// <li>@c kFIRParameterTransactionID (NSString) (optional)</li>
  67. /// <li>@c kFIRParameterStartDate (NSString) (optional)</li>
  68. /// <li>@c kFIRParameterEndDate (NSString) (optional)</li>
  69. /// <li>@c kFIRParameterNumberOfNights (signed 64-bit integer as NSNumber) (optional) for
  70. /// hotel bookings</li>
  71. /// <li>@c kFIRParameterNumberOfRooms (signed 64-bit integer as NSNumber) (optional) for
  72. /// hotel bookings</li>
  73. /// <li>@c kFIRParameterNumberOfPassengers (signed 64-bit integer as NSNumber) (optional)
  74. /// for travel bookings</li>
  75. /// <li>@c kFIRParameterOrigin (NSString) (optional)</li>
  76. /// <li>@c kFIRParameterDestination (NSString) (optional)</li>
  77. /// <li>@c kFIRParameterTravelClass (NSString) (optional) for travel bookings</li>
  78. /// </ul>
  79. static NSString *const kFIREventBeginCheckout = @"begin_checkout";
  80. /// Campaign Detail event. Log this event to supply the referral details of a re-engagement
  81. /// campaign. Note: you must supply at least one of the required parameters kFIRParameterSource,
  82. /// kFIRParameterMedium or kFIRParameterCampaign. Params:
  83. ///
  84. /// <ul>
  85. /// <li>@c kFIRParameterSource (NSString)</li>
  86. /// <li>@c kFIRParameterMedium (NSString)</li>
  87. /// <li>@c kFIRParameterCampaign (NSString)</li>
  88. /// <li>@c kFIRParameterTerm (NSString) (optional)</li>
  89. /// <li>@c kFIRParameterContent (NSString) (optional)</li>
  90. /// <li>@c kFIRParameterAdNetworkClickID (NSString) (optional)</li>
  91. /// <li>@c kFIRParameterCP1 (NSString) (optional)</li>
  92. /// </ul>
  93. static NSString *const kFIREventCampaignDetails = @"campaign_details";
  94. /// Earn Virtual Currency event. This event tracks the awarding of virtual currency in your app. Log
  95. /// this along with @c kFIREventSpendVirtualCurrency to better understand your virtual economy.
  96. /// Params:
  97. ///
  98. /// <ul>
  99. /// <li>@c kFIRParameterVirtualCurrencyName (NSString)</li>
  100. /// <li>@c kFIRParameterValue (signed 64-bit integer or double as NSNumber)</li>
  101. /// </ul>
  102. static NSString *const kFIREventEarnVirtualCurrency = @"earn_virtual_currency";
  103. /// E-Commerce Purchase event. This event signifies that an item was purchased by a user. Note:
  104. /// This is different from the in-app purchase event, which is reported automatically for App
  105. /// Store-based apps. Note: If you supply the @c kFIRParameterValue parameter, you must also
  106. /// supply the @c kFIRParameterCurrency parameter so that revenue metrics can be computed
  107. /// accurately. Params:
  108. ///
  109. /// <ul>
  110. /// <li>@c kFIRParameterCurrency (NSString) (optional)</li>
  111. /// <li>@c kFIRParameterValue (double as NSNumber) (optional)</li>
  112. /// <li>@c kFIRParameterTransactionID (NSString) (optional)</li>
  113. /// <li>@c kFIRParameterTax (double as NSNumber) (optional)</li>
  114. /// <li>@c kFIRParameterShipping (double as NSNumber) (optional)</li>
  115. /// <li>@c kFIRParameterCoupon (NSString) (optional)</li>
  116. /// <li>@c kFIRParameterLocation (NSString) (optional)</li>
  117. /// <li>@c kFIRParameterStartDate (NSString) (optional)</li>
  118. /// <li>@c kFIRParameterEndDate (NSString) (optional)</li>
  119. /// <li>@c kFIRParameterNumberOfNights (signed 64-bit integer as NSNumber) (optional) for
  120. /// hotel bookings</li>
  121. /// <li>@c kFIRParameterNumberOfRooms (signed 64-bit integer as NSNumber) (optional) for
  122. /// hotel bookings</li>
  123. /// <li>@c kFIRParameterNumberOfPassengers (signed 64-bit integer as NSNumber) (optional)
  124. /// for travel bookings</li>
  125. /// <li>@c kFIRParameterOrigin (NSString) (optional)</li>
  126. /// <li>@c kFIRParameterDestination (NSString) (optional)</li>
  127. /// <li>@c kFIRParameterTravelClass (NSString) (optional) for travel bookings</li>
  128. /// </ul>
  129. static NSString *const kFIREventEcommercePurchase = @"ecommerce_purchase";
  130. /// Generate Lead event. Log this event when a lead has been generated in the app to understand the
  131. /// efficacy of your install and re-engagement campaigns. Note: If you supply the
  132. /// @c kFIRParameterValue parameter, you must also supply the @c kFIRParameterCurrency
  133. /// parameter so that revenue metrics can be computed accurately. Params:
  134. ///
  135. /// <ul>
  136. /// <li>@c kFIRParameterCurrency (NSString) (optional)</li>
  137. /// <li>@c kFIRParameterValue (double as NSNumber) (optional)</li>
  138. /// </ul>
  139. static NSString *const kFIREventGenerateLead = @"generate_lead";
  140. /// Join Group event. Log this event when a user joins a group such as a guild, team or family. Use
  141. /// this event to analyze how popular certain groups or social features are in your app. Params:
  142. ///
  143. /// <ul>
  144. /// <li>@c kFIRParameterGroupID (NSString)</li>
  145. /// </ul>
  146. static NSString *const kFIREventJoinGroup = @"join_group";
  147. /// Level Up event. This event signifies that a player has leveled up in your gaming app. It can
  148. /// help you gauge the level distribution of your userbase and help you identify certain levels that
  149. /// are difficult to pass. Params:
  150. ///
  151. /// <ul>
  152. /// <li>@c kFIRParameterLevel (signed 64-bit integer as NSNumber)</li>
  153. /// <li>@c kFIRParameterCharacter (NSString) (optional)</li>
  154. /// </ul>
  155. static NSString *const kFIREventLevelUp = @"level_up";
  156. /// Login event. Apps with a login feature can report this event to signify that a user has logged
  157. /// in.
  158. static NSString *const kFIREventLogin = @"login";
  159. /// Post Score event. Log this event when the user posts a score in your gaming app. This event can
  160. /// help you understand how users are actually performing in your game and it can help you correlate
  161. /// high scores with certain audiences or behaviors. Params:
  162. ///
  163. /// <ul>
  164. /// <li>@c kFIRParameterScore (signed 64-bit integer as NSNumber)</li>
  165. /// <li>@c kFIRParameterLevel (signed 64-bit integer as NSNumber) (optional)</li>
  166. /// <li>@c kFIRParameterCharacter (NSString) (optional)</li>
  167. /// </ul>
  168. static NSString *const kFIREventPostScore = @"post_score";
  169. /// Present Offer event. This event signifies that the app has presented a purchase offer to a user.
  170. /// Add this event to a funnel with the kFIREventAddToCart and kFIREventEcommercePurchase to gauge
  171. /// your conversion process. Note: If you supply the @c kFIRParameterValue parameter, you must
  172. /// also supply the @c kFIRParameterCurrency parameter so that revenue metrics can be computed
  173. /// accurately. Params:
  174. ///
  175. /// <ul>
  176. /// <li>@c kFIRParameterQuantity (signed 64-bit integer as NSNumber)</li>
  177. /// <li>@c kFIRParameterItemID (NSString)</li>
  178. /// <li>@c kFIRParameterItemName (NSString)</li>
  179. /// <li>@c kFIRParameterItemCategory (NSString)</li>
  180. /// <li>@c kFIRParameterItemLocationID (NSString) (optional)</li>
  181. /// <li>@c kFIRParameterPrice (double as NSNumber) (optional)</li>
  182. /// <li>@c kFIRParameterCurrency (NSString) (optional)</li>
  183. /// <li>@c kFIRParameterValue (double as NSNumber) (optional)</li>
  184. /// </ul>
  185. static NSString *const kFIREventPresentOffer = @"present_offer";
  186. /// E-Commerce Purchase Refund event. This event signifies that an item purchase was refunded.
  187. /// Note: If you supply the @c kFIRParameterValue parameter, you must also supply the
  188. /// @c kFIRParameterCurrency parameter so that revenue metrics can be computed accurately.
  189. /// Params:
  190. ///
  191. /// <ul>
  192. /// <li>@c kFIRParameterCurrency (NSString) (optional)</li>
  193. /// <li>@c kFIRParameterValue (double as NSNumber) (optional)</li>
  194. /// <li>@c kFIRParameterTransactionID (NSString) (optional)</li>
  195. /// </ul>
  196. static NSString *const kFIREventPurchaseRefund = @"purchase_refund";
  197. /// Search event. Apps that support search features can use this event to contextualize search
  198. /// operations by supplying the appropriate, corresponding parameters. This event can help you
  199. /// identify the most popular content in your app. Params:
  200. ///
  201. /// <ul>
  202. /// <li>@c kFIRParameterSearchTerm (NSString)</li>
  203. /// <li>@c kFIRParameterStartDate (NSString) (optional)</li>
  204. /// <li>@c kFIRParameterEndDate (NSString) (optional)</li>
  205. /// <li>@c kFIRParameterNumberOfNights (signed 64-bit integer as NSNumber) (optional) for
  206. /// hotel bookings</li>
  207. /// <li>@c kFIRParameterNumberOfRooms (signed 64-bit integer as NSNumber) (optional) for
  208. /// hotel bookings</li>
  209. /// <li>@c kFIRParameterNumberOfPassengers (signed 64-bit integer as NSNumber) (optional)
  210. /// for travel bookings</li>
  211. /// <li>@c kFIRParameterOrigin (NSString) (optional)</li>
  212. /// <li>@c kFIRParameterDestination (NSString) (optional)</li>
  213. /// <li>@c kFIRParameterTravelClass (NSString) (optional) for travel bookings</li>
  214. /// </ul>
  215. static NSString *const kFIREventSearch = @"search";
  216. /// Select Content event. This general purpose event signifies that a user has selected some content
  217. /// of a certain type in an app. The content can be any object in your app. This event can help you
  218. /// identify popular content and categories of content in your app. Params:
  219. ///
  220. /// <ul>
  221. /// <li>@c kFIRParameterContentType (NSString)</li>
  222. /// <li>@c kFIRParameterItemID (NSString)</li>
  223. /// </ul>
  224. static NSString *const kFIREventSelectContent = @"select_content";
  225. /// Share event. Apps with social features can log the Share event to identify the most viral
  226. /// content. Params:
  227. ///
  228. /// <ul>
  229. /// <li>@c kFIRParameterContentType (NSString)</li>
  230. /// <li>@c kFIRParameterItemID (NSString)</li>
  231. /// </ul>
  232. static NSString *const kFIREventShare = @"share";
  233. /// Sign Up event. This event indicates that a user has signed up for an account in your app. The
  234. /// parameter signifies the method by which the user signed up. Use this event to understand the
  235. /// different behaviors between logged in and logged out users. Params:
  236. ///
  237. /// <ul>
  238. /// <li>@c kFIRParameterSignUpMethod (NSString)</li>
  239. /// </ul>
  240. static NSString *const kFIREventSignUp = @"sign_up";
  241. /// Spend Virtual Currency event. This event tracks the sale of virtual goods in your app and can
  242. /// help you identify which virtual goods are the most popular objects of purchase. Params:
  243. ///
  244. /// <ul>
  245. /// <li>@c kFIRParameterItemName (NSString)</li>
  246. /// <li>@c kFIRParameterVirtualCurrencyName (NSString)</li>
  247. /// <li>@c kFIRParameterValue (signed 64-bit integer or double as NSNumber)</li>
  248. /// </ul>
  249. static NSString *const kFIREventSpendVirtualCurrency = @"spend_virtual_currency";
  250. /// Tutorial Begin event. This event signifies the start of the on-boarding process in your app. Use
  251. /// this in a funnel with kFIREventTutorialComplete to understand how many users complete this
  252. /// process and move on to the full app experience.
  253. static NSString *const kFIREventTutorialBegin = @"tutorial_begin";
  254. /// Tutorial End event. Use this event to signify the user's completion of your app's on-boarding
  255. /// process. Add this to a funnel with kFIREventTutorialBegin to gauge the completion rate of your
  256. /// on-boarding process.
  257. static NSString *const kFIREventTutorialComplete = @"tutorial_complete";
  258. /// Unlock Achievement event. Log this event when the user has unlocked an achievement in your
  259. /// game. Since achievements generally represent the breadth of a gaming experience, this event can
  260. /// help you understand how many users are experiencing all that your game has to offer. Params:
  261. ///
  262. /// <ul>
  263. /// <li>@c kFIRParameterAchievementID (NSString)</li>
  264. /// </ul>
  265. static NSString *const kFIREventUnlockAchievement = @"unlock_achievement";
  266. /// View Item event. This event signifies that some content was shown to the user. This content may
  267. /// be a product, a webpage or just a simple image or text. Use the appropriate parameters to
  268. /// contextualize the event. Use this event to discover the most popular items viewed in your app.
  269. /// Note: If you supply the @c kFIRParameterValue parameter, you must also supply the
  270. /// @c kFIRParameterCurrency parameter so that revenue metrics can be computed accurately.
  271. /// Params:
  272. ///
  273. /// <ul>
  274. /// <li>@c kFIRParameterItemID (NSString)</li>
  275. /// <li>@c kFIRParameterItemName (NSString)</li>
  276. /// <li>@c kFIRParameterItemCategory (NSString)</li>
  277. /// <li>@c kFIRParameterItemLocationID (NSString) (optional)</li>
  278. /// <li>@c kFIRParameterPrice (double as NSNumber) (optional)</li>
  279. /// <li>@c kFIRParameterQuantity (signed 64-bit integer as NSNumber) (optional)</li>
  280. /// <li>@c kFIRParameterCurrency (NSString) (optional)</li>
  281. /// <li>@c kFIRParameterValue (double as NSNumber) (optional)</li>
  282. /// <li>@c kFIRParameterStartDate (NSString) (optional)</li>
  283. /// <li>@c kFIRParameterEndDate (NSString) (optional)</li>
  284. /// <li>@c kFIRParameterFlightNumber (NSString) (optional) for travel bookings</li>
  285. /// <li>@c kFIRParameterNumberOfPassengers (signed 64-bit integer as NSNumber) (optional)
  286. /// for travel bookings</li>
  287. /// <li>@c kFIRParameterNumberOfNights (signed 64-bit integer as NSNumber) (optional) for
  288. /// travel bookings</li>
  289. /// <li>@c kFIRParameterNumberOfRooms (signed 64-bit integer as NSNumber) (optional) for
  290. /// travel bookings</li>
  291. /// <li>@c kFIRParameterOrigin (NSString) (optional)</li>
  292. /// <li>@c kFIRParameterDestination (NSString) (optional)</li>
  293. /// <li>@c kFIRParameterSearchTerm (NSString) (optional) for travel bookings</li>
  294. /// <li>@c kFIRParameterTravelClass (NSString) (optional) for travel bookings</li>
  295. /// </ul>
  296. static NSString *const kFIREventViewItem = @"view_item";
  297. /// View Item List event. Log this event when the user has been presented with a list of items of a
  298. /// certain category. Params:
  299. ///
  300. /// <ul>
  301. /// <li>@c kFIRParameterItemCategory (NSString)</li>
  302. /// </ul>
  303. static NSString *const kFIREventViewItemList = @"view_item_list";
  304. /// View Search Results event. Log this event when the user has been presented with the results of a
  305. /// search. Params:
  306. ///
  307. /// <ul>
  308. /// <li>@c kFIRParameterSearchTerm (NSString)</li>
  309. /// </ul>
  310. static NSString *const kFIREventViewSearchResults = @"view_search_results";