In-App events

In-App Events provide insight on what is happening in your app. It is recommended to take the time and define the events you want to measure to allow you to measure ROI (Return on Investment) and LTV (Lifetime Value).

Recording in-app events is performed by calling logEvent with event name and value parameters. See In-App Events documentation for more details.

Note: An In-App Event name must be no longer than 45 characters. Events names with more than 45 characters do not appear in the dashboard, but only in the raw Data, Pull and Push APIs.
Find more info about recording events here.

Envoyer un événement

📘

Remarque

For events with revenue, including in-app purchases, subscriptions, and ad revenue events, AppsFlyer customers with an ROI360 subscription should avoid using the AFInAppEvents.REVENUE(af_revenue) parameter in their in-app events. Doing so can result in duplicate revenue being reported. Instead, they should utilize the ad revenue SDK API.

logEvent(eventName, eventValues, success, error)

parametertypedescription
eventNamechaîneIn-App Event name
eventValuesjsonLes valeurs de l'événement transmises avec l'événement
succèsfunctionsuccess callback
errorfunctionerror callback

Exemple :

const eventName = 'af_add_to_cart';
const eventValues = {
  af_content_id: 'id123',
  af_currency: 'USD',
  af_revenue: '2',
};

appsFlyer.logEvent(
  eventName,
  eventValues,
  (res) => {
    console.log(res);
  },
  (err) => {
    console.error(err);
  }
);

Validation des achats in-app

Receipt validation is a secure mechanism whereby the payment platform (e.g. Apple or Google) validates that an in-app purchase indeed occurred as reported.
Learn more here.

❗Important❗ for iOS - set SandBox to true
appsFlyer.setUseReceiptValidationSandbox(true);

parametertypedescription
purchaseInfojsonIn-App Purchase parameters
successCfunctionsuccess callback (generated link)
errorCfunctionerror callback

Exemple :

let info = {
        publicKey: 'key',
        currency: 'biz',
        signature: 'sig',
        purchaseData: 'data',
        price: '123',
        productIdentifier: 'identifier',
        currency: 'USD',
        transactionId: '1000000614252747',
        additionalParameters: {'foo': 'bar'},
    };
appsFlyer.validateAndLogInAppPurchase(info, res => console.log(res), err => console.log(err));