FIREventNames.h 17.3 KB
Newer Older
renato's avatar
renato committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321
/// @file FIREventNames.h
///
/// Predefined event names.
///
/// An Event is an important occurrence in your app that you want to measure. You can report up to
/// 500 different types of Events per app and you can associate up to 25 unique parameters with each
/// Event type. Some common events are suggested below, but you may also choose to specify custom
/// Event types that are associated with your specific app. Each event type is identified by a
/// unique name. Event names can be up to 32 characters long, may only contain alphanumeric
/// characters and underscores ("_"), and must start with an alphabetic character. The "firebase_"
/// prefix is reserved and should not be used.

/// Add Payment Info event. This event signifies that a user has submitted their payment information
/// to your app.
static NSString *const kFIREventAddPaymentInfo = @"add_payment_info";

/// E-Commerce Add To Cart event. This event signifies that an item was added to a cart for
/// purchase. Add this event to a funnel with kFIREventEcommercePurchase to gauge the effectiveness
/// of your checkout process. Note: If you supply the {@link kFIRParameterValue} parameter, you must
/// also supply the {@link kFIRParameterCurrency} parameter so that revenue metrics can be computed
/// accurately. Params:
///
/// <ul>
///     <li>{@link kFIRParameterQuantity} (signed 64-bit integer as NSNumber)</li>
///     <li>{@link kFIRParameterItemID} (NSString)</li>
///     <li>{@link kFIRParameterItemName} (NSString)</li>
///     <li>{@link kFIRParameterItemCategory} (NSString)</li>
///     <li>{@link kFIRParameterItemLocationID} (NSString) (optional)</li>
///     <li>{@link kFIRParameterPrice} (double as NSNumber) (optional)</li>
///     <li>{@link kFIRParameterCurrency} (NSString) (optional)</li>
///     <li>{@link kFIRParameterValue} (double as NSNumber) (optional)</li>
///     <li>{@link kFIRParameterOrigin} (NSString) (optional)</li>
///     <li>{@link kFIRParameterDestination} (NSString) (optional)</li>
///     <li>{@link kFIRParameterStartDate} (NSString) (optional)</li>
///     <li>{@link kFIRParameterEndDate} (NSString) (optional)</li>
/// </ul>
static NSString *const kFIREventAddToCart = @"add_to_cart";

/// E-Commerce Add To Wishlist event. This event signifies that an item was added to a wishlist.
/// Use this event to identify popular gift items in your app. Note: If you supply the
/// {@link kFIRParameterValue} parameter, you must also supply the {@link kFIRParameterCurrency}
/// parameter so that revenue metrics can be computed accurately. Params:
///
/// <ul>
///     <li>{@link kFIRParameterQuantity} (signed 64-bit integer as NSNumber)</li>
///     <li>{@link kFIRParameterItemID} (NSString)</li>
///     <li>{@link kFIRParameterItemName} (NSString)</li>
///     <li>{@link kFIRParameterItemCategory} (NSString)</li>
///     <li>{@link kFIRParameterItemLocationID} (NSString) (optional)</li>
///     <li>{@link kFIRParameterPrice} (double as NSNumber) (optional)</li>
///     <li>{@link kFIRParameterCurrency} (NSString) (optional)</li>
///     <li>{@link kFIRParameterValue} (double as NSNumber) (optional)</li>
/// </ul>
static NSString *const kFIREventAddToWishlist = @"add_to_wishlist";

/// App Open event. By logging this event when an App is moved to the foreground, developers can
/// understand how often users leave and return during the course of a Session. Although Sessions
/// are automatically reported, this event can provide further clarification around the continuous
/// engagement of app-users.
static NSString *const kFIREventAppOpen = @"app_open";

/// E-Commerce Begin Checkout event. This event signifies that a user has begun the process of
/// checking out. Add this event to a funnel with your kFIREventEcommercePurchase event to gauge the
/// effectiveness of your checkout process. Note: If you supply the {@link kFIRParameterValue}
/// parameter, you must also supply the {@link kFIRParameterCurrency} parameter so that revenue
/// metrics can be computed accurately. Params:
///
/// <ul>
///     <li>{@link kFIRParameterValue} (double as NSNumber) (optional)</li>
///     <li>{@link kFIRParameterCurrency} (NSString) (optional)</li>
///     <li>{@link kFIRParameterTransactionID} (NSString) (optional)</li>
///     <li>{@link kFIRParameterStartDate} (NSString) (optional)</li>
///     <li>{@link kFIRParameterEndDate} (NSString) (optional)</li>
///     <li>{@link kFIRParameterNumberOfNights} (signed 64-bit integer as NSNumber) (optional) for
///         hotel bookings</li>
///     <li>{@link kFIRParameterNumberOfRooms} (signed 64-bit integer as NSNumber) (optional) for
///         hotel bookings</li>
///     <li>{@link kFIRParameterNumberOfPassengers} (signed 64-bit integer as NSNumber) (optional)
///         for travel bookings</li>
///     <li>{@link kFIRParameterOrigin} (NSString) (optional)</li>
///     <li>{@link kFIRParameterDestination} (NSString) (optional)</li>
///     <li>{@link kFIRParameterTravelClass} (NSString) (optional) for travel bookings</li>
/// </ul>
static NSString *const kFIREventBeginCheckout = @"begin_checkout";

/// Earn Virtual Currency event. This event tracks the awarding of virtual currency in your app. Log
/// this along with {@link kFIREventSpendVirtualCurrency} to better understand your virtual economy.
/// Params:
///
/// <ul>
///     <li>{@link kFIRParameterVirtualCurrencyName} (NSString)</li>
///     <li>{@link kFIRParameterValue} (signed 64-bit integer or double as NSNumber)</li>
/// </ul>
static NSString *const kFIREventEarnVirtualCurrency = @"earn_virtual_currency";

/// E-Commerce Purchase event. This event signifies that an item was purchased by a user. Note:
/// This is different from the in-app purchase event, which is reported automatically for App
/// Store-based apps. Note: If you supply the {@link kFIRParameterValue} parameter, you must also
/// supply the {@link kFIRParameterCurrency} parameter so that revenue metrics can be computed
/// accurately. Params:
///
/// <ul>
///     <li>{@link kFIRParameterCurrency} (NSString) (optional)</li>
///     <li>{@link kFIRParameterValue} (double as NSNumber) (optional)</li>
///     <li>{@link kFIRParameterTransactionID} (NSString) (optional)</li>
///     <li>{@link kFIRParameterTax} (double as NSNumber) (optional)</li>
///     <li>{@link kFIRParameterShipping} (double as NSNumber) (optional)</li>
///     <li>{@link kFIRParameterCoupon} (NSString) (optional)</li>
///     <li>{@link kFIRParameterLocation} (NSString) (optional)</li>
///     <li>{@link kFIRParameterStartDate} (NSString) (optional)</li>
///     <li>{@link kFIRParameterEndDate} (NSString) (optional)</li>
///     <li>{@link kFIRParameterNumberOfNights} (signed 64-bit integer as NSNumber) (optional) for
///         hotel bookings</li>
///     <li>{@link kFIRParameterNumberOfRooms} (signed 64-bit integer as NSNumber) (optional) for
///         hotel bookings</li>
///     <li>{@link kFIRParameterNumberOfPassengers} (signed 64-bit integer as NSNumber) (optional)
///         for travel bookings</li>
///     <li>{@link kFIRParameterOrigin} (NSString) (optional)</li>
///     <li>{@link kFIRParameterDestination} (NSString) (optional)</li>
///     <li>{@link kFIRParameterTravelClass} (NSString) (optional) for travel bookings</li>
/// </ul>
static NSString *const kFIREventEcommercePurchase = @"ecommerce_purchase";

/// Generate Lead event. Log this event when a lead has been generated in the app to understand the
/// efficacy of your install and re-engagement campaigns. Note: If you supply the
/// {@link kFIRParameterValue} parameter, you must also supply the {@link kFIRParameterCurrency}
/// parameter so that revenue metrics can be computed accurately. Params:
///
/// <ul>
///     <li>{@link kFIRParameterCurrency} (NSString) (optional)</li>
///     <li>{@link kFIRParameterValue} (double as NSNumber) (optional)</li>
/// </ul>
static NSString *const kFIREventGenerateLead = @"generate_lead";

/// Join Group event. Log this event when a user joins a group such as a guild, team or family. Use
/// this event to analyze how popular certain groups or social features are in your app. Params:
///
/// <ul>
///     <li>{@link kFIRParameterGroupID} (NSString)</li>
/// </ul>
static NSString *const kFIREventJoinGroup = @"join_group";

/// Level Up event. This event signifies that a player has leveled up in your gaming app. It can
/// help you gauge the level distribution of your userbase and help you identify certain levels that
/// are difficult to pass. Params:
///
/// <ul>
///     <li>{@link kFIRParameterLevel} (signed 64-bit integer as NSNumber)</li>
///     <li>{@link kFIRParameterCharacter} (NSString) (optional)</li>
/// </ul>
static NSString *const kFIREventLevelUp = @"level_up";

/// Login event. Apps with a login feature can report this event to signify that a user has logged
/// in.
static NSString *const kFIREventLogin = @"login";

/// Post Score event. Log this event when the user posts a score in your gaming app. This event can
/// help you understand how users are actually performing in your game and it can help you correlate
/// high scores with certain audiences or behaviors. Params:
///
/// <ul>
///     <li>{@link kFIRParameterScore} (signed 64-bit integer as NSNumber)</li>
///     <li>{@link kFIRParameterLevel} (signed 64-bit integer as NSNumber) (optional)</li>
///     <li>{@link kFIRParameterCharacter} (NSString) (optional)</li>
/// </ul>
static NSString *const kFIREventPostScore = @"post_score";

/// Present Offer event. This event signifies that the app has presented a purchase offer to a user.
/// Add this event to a funnel with the kFIREventAddToCart and kFIREventEcommercePurchase to gauge
/// your conversion process. Note: If you supply the {@link kFIRParameterValue} parameter, you must
/// also supply the {@link kFIRParameterCurrency} parameter so that revenue metrics can be computed
/// accurately. Params:
///
/// <ul>
///     <li>{@link kFIRParameterQuantity} (signed 64-bit integer as NSNumber)</li>
///     <li>{@link kFIRParameterItemID} (NSString)</li>
///     <li>{@link kFIRParameterItemName} (NSString)</li>
///     <li>{@link kFIRParameterItemCategory} (NSString)</li>
///     <li>{@link kFIRParameterItemLocationID} (NSString) (optional)</li>
///     <li>{@link kFIRParameterPrice} (double as NSNumber) (optional)</li>
///     <li>{@link kFIRParameterCurrency} (NSString) (optional)</li>
///     <li>{@link kFIRParameterValue} (double as NSNumber) (optional)</li>
/// </ul>
static NSString *const kFIREventPresentOffer = @"present_offer";

/// E-Commerce Purchase Refund event. This event signifies that an item purchase was refunded.
/// Note: If you supply the {@link kFIRParameterValue} parameter, you must also supply the
/// {@link kFIRParameterCurrency} parameter so that revenue metrics can be computed accurately.
/// Params:
///
/// <ul>
///     <li>{@link kFIRParameterCurrency} (NSString) (optional)</li>
///     <li>{@link kFIRParameterValue} (double as NSNumber) (optional)</li>
///     <li>{@link kFIRParameterTransactionID} (NSString) (optional)</li>
/// </ul>
static NSString *const kFIREventPurchaseRefund = @"purchase_refund";

/// Search event. Apps that support search features can use this event to contextualize search
/// operations by supplying the appropriate, corresponding parameters. This event can help you
/// identify the most popular content in your app. Params:
///
/// <ul>
///     <li>{@link kFIRParameterSearchTerm} (NSString)</li>
///     <li>{@link kFIRParameterStartDate} (NSString) (optional)</li>
///     <li>{@link kFIRParameterEndDate} (NSString) (optional)</li>
///     <li>{@link kFIRParameterNumberOfNights} (signed 64-bit integer as NSNumber) (optional) for
///         hotel bookings</li>
///     <li>{@link kFIRParameterNumberOfRooms} (signed 64-bit integer as NSNumber) (optional) for
///         hotel bookings</li>
///     <li>{@link kFIRParameterNumberOfPassengers} (signed 64-bit integer as NSNumber) (optional)
///         for travel bookings</li>
///     <li>{@link kFIRParameterOrigin} (NSString) (optional)</li>
///     <li>{@link kFIRParameterDestination} (NSString) (optional)</li>
///     <li>{@link kFIRParameterTravelClass} (NSString) (optional) for travel bookings</li>
/// </ul>
static NSString *const kFIREventSearch = @"search";

/// Select Content event. This general purpose event signifies that a user has selected some content
/// of a certain type in an app. The content can be any object in your app. This event can help you
/// identify popular content and categories of content in your app. Params:
///
/// <ul>
///     <li>{@link kFIRParameterContentType} (NSString)</li>
///     <li>{@link kFIRParameterItemID} (NSString)</li>
/// </ul>
static NSString *const kFIREventSelectContent = @"select_content";

/// Share event. Apps with social features can log the Share event to identify the most viral
/// content. Params:
///
/// <ul>
///     <li>{@link kFIRParameterContentType} (NSString)</li>
///     <li>{@link kFIRParameterItemID} (NSString)</li>
/// </ul>
static NSString *const kFIREventShare = @"share";

/// Sign Up event. This event indicates that a user has signed up for an account in your app. The
/// parameter signifies the method by which the user signed up. Use this event to understand the
/// different behaviors between logged in and logged out users. Params:
///
/// <ul>
///     <li>{@link kFIRParameterSignUpMethod} (NSString)</li>
/// </ul>
static NSString *const kFIREventSignUp = @"sign_up";

/// Spend Virtual Currency event. This event tracks the sale of virtual goods in your app and can
/// help you identify which virtual goods are the most popular objects of purchase. Params:
///
/// <ul>
///     <li>{@link kFIRParameterItemName} (NSString)</li>
///     <li>{@link kFIRParameterVirtualCurrencyName} (NSString)</li>
///     <li>{@link kFIRParameterValue} (signed 64-bit integer or double as NSNumber)</li>
/// </ul>
static NSString *const kFIREventSpendVirtualCurrency = @"spend_virtual_currency";

/// Tutorial Begin event. This event signifies the start of the on-boarding process in your app. Use
/// this in a funnel with kFIREventTutorialComplete to understand how many users complete this
/// process and move on to the full app experience.
static NSString *const kFIREventTutorialBegin = @"tutorial_begin";

/// Tutorial End event. Use this event to signify the user's completion of your app's on-boarding
/// process. Add this to a funnel with kFIREventTutorialBegin to gauge the completion rate of your
/// on-boarding process.
static NSString *const kFIREventTutorialComplete = @"tutorial_complete";

/// Unlock Achievement event. Log this event when the user has unlocked an achievement in your
/// game. Since achievements generally represent the breadth of a gaming experience, this event can
/// help you understand how many users are experiencing all that your game has to offer. Params:
///
/// <ul>
///     <li>{@link kFIRParameterAchievementID} (NSString)</li>
/// </ul>
static NSString *const kFIREventUnlockAchievement = @"unlock_achievement";

/// View Item event. This event signifies that some content was shown to the user. This content may
/// be a product, a webpage or just a simple image or text. Use the appropriate parameters to
/// contextualize the event. Use this event to discover the most popular items viewed in your app.
/// Note: If you supply the {@link kFIRParameterValue} parameter, you must also supply the
/// {@link kFIRParameterCurrency} parameter so that revenue metrics can be computed accurately.
/// Params:
///
/// <ul>
///     <li>{@link kFIRParameterItemID} (NSString)</li>
///     <li>{@link kFIRParameterItemName} (NSString)</li>
///     <li>{@link kFIRParameterItemCategory} (NSString)</li>
///     <li>{@link kFIRParameterItemLocationID} (NSString) (optional)</li>
///     <li>{@link kFIRParameterPrice} (double as NSNumber) (optional)</li>
///     <li>{@link kFIRParameterQuantity} (signed 64-bit integer as NSNumber) (optional)</li>
///     <li>{@link kFIRParameterCurrency} (NSString) (optional)</li>
///     <li>{@link kFIRParameterValue} (double as NSNumber) (optional)</li>
///     <li>{@link kFIRParameterStartDate} (NSString) (optional)</li>
///     <li>{@link kFIRParameterEndDate} (NSString) (optional)</li>
///     <li>{@link kFIRParameterFlightNumber} (NSString) (optional) for travel bookings</li>
///     <li>{@link kFIRParameterNumberOfPassengers} (signed 64-bit integer as NSNumber) (optional)
///         for travel bookings</li>
///     <li>{@link kFIRParameterNumberOfNights} (signed 64-bit integer as NSNumber) (optional) for
///         travel bookings</li>
///     <li>{@link kFIRParameterNumberOfRooms} (signed 64-bit integer as NSNumber) (optional) for
///         travel bookings</li>
///     <li>{@link kFIRParameterOrigin} (NSString) (optional)</li>
///     <li>{@link kFIRParameterDestination} (NSString) (optional)</li>
///     <li>{@link kFIRParameterSearchTerm} (NSString) (optional) for travel bookings</li>
///     <li>{@link kFIRParameterTravelClass} (NSString) (optional) for travel bookings</li>
/// </ul>
static NSString *const kFIREventViewItem = @"view_item";

/// View Item List event. Log this event when the user has been presented with a list of items of a
/// certain category. Params:
///
/// <ul>
///     <li>{@link kFIRParameterItemCategory} (NSString)</li>
/// </ul>
static NSString *const kFIREventViewItemList = @"view_item_list";

/// View Search Results event. Log this event when the user has been presented with the results of a
/// search. Params:
///
/// <ul>
///     <li>{@link kFIRParameterSearchTerm} (NSString)</li>
/// </ul>
static NSString *const kFIREventViewSearchResults = @"view_search_results";