Firebase Dynamic Links Analytics API

אתה יכול להשתמש ב-REST API זה כדי לקבל נתוני ניתוח עבור כל אחד מהקישורים הדינמיים הקצרים שלך, בין אם נוצרו במסוף ובין אם באופן פרוגרמטי .

הרשאת API

כאשר אתה מגיש בקשות לממשקי API של Dynamic Link Analytics, עליך לכלול אסימון גישה של OAuth 2.0 שמאשר גישה לפרויקט Firebase שלך.

אתה יכול לקבל אסימוני גישה באמצעות ספריית לקוח של Google API:

  1. הוסף את Firebase לאפליקציה שלך כמתואר במדריך ההתקנה של Admin SDK. כלומר, ליצור חשבון שירות ולהפיק מפתח פרטי.
  2. השתמש בספריית לקוח של Google API כדי לקבל אסימון גישה מהאישורים של חשבון השירות שלך:

    Java

    שימוש בספריית הלקוחות של Google API עבור Java :

    // Load the service account key JSON file
    FileInputStream serviceAccount = new FileInputStream("path/to/serviceAccountKey.json");
    
    // Authenticate a Google credential with the service account
    GoogleCredential googleCred = GoogleCredential.fromStream(serviceAccount);
    
    // Add the required scope to the Google credential
    GoogleCredential scoped = googleCred.createScoped(
        Arrays.asList(
          "https://www.googleapis.com/auth/firebase"
        )
    );
    
    // Use the Google credential to generate an access token
    scoped.refreshToken();
    String token = scoped.getAccessToken();
    
    // Include the access token in the Authorization header.
    

    Node.js

    שימוש בספריית הלקוחות של Google API עבור Node.js :

    var { google } = require("googleapis");
    
    // Load the service account key JSON file.
    var serviceAccount = require("path/to/serviceAccountKey.json");
    
    // Specify the required scope.
    var scopes = [
      "https://www.googleapis.com/auth/firebase"
    ];
    
    // Authenticate a JWT client with the service account.
    var jwtClient = new google.auth.JWT(
      serviceAccount.client_email,
      null,
      serviceAccount.private_key,
      scopes
    );
    
    // Use the JWT client to generate an access token.
    jwtClient.authorize(function(error, tokens) {
      if (error) {
        console.log("Error making request to generate access token:", error);
      } else if (tokens.access_token === null) {
        console.log("Provided service account does not have permission to generate access tokens");
      } else {
        var accessToken = tokens.access_token;
    
        // Include the access token in the Authorization header.
      }
    });
    

    פִּיתוֹן

    שימוש בספריית Google Auth עבור Python:

    from google.oauth2 import service_account
    from google.auth.transport.requests import AuthorizedSession
    
    # Specify the required scope
    scopes = [
      "https://www.googleapis.com/auth/firebase"
    ]
    
    # Authenticate a credential with the service account
    credentials = service_account.Credentials.from_service_account_file(
        "path/to/serviceAccountKey.json", scopes=scopes)
    
    # Use the credentials object to authenticate a Requests session.
    authed_session = AuthorizedSession(credentials)
    response = authed_session.get(
        "https://firebasedynamiclinks.googleapis.com/v1/SHORT_DYNAMIC_LINK/linkStats?durationDays=DURATION")
    
    # Or, use the token directly, as described below.
    request = google.auth.transport.requests.Request()
    credentials.refresh(request)
    access_token = credentials.token
    

קבל נתונים סטטיסטיים עבור קישור דינמי יחיד

השתמש בנקודת הקצה linkStats כדי לקבל נתונים סטטיסטיים של אירועים עבור קישור דינמי יחיד.

בקשת HTTP

לבקשת linkStats יש את הפורמט הבא:

GET https://firebasedynamiclinks.googleapis.com/v1/SHORT_DYNAMIC_LINK/linkStats?durationDays=DURATION

Authorization: Bearer ACCESS_TOKEN

לדוגמה, כדי לאחזר נתונים סטטיסטיים מ-7 הימים האחרונים עבור הקישור הקצר https://example.page.link/wXYz :

GET https://firebasedynamiclinks.googleapis.com/v1/https%3A%2F%2Fexample.page.link%2FwXYz/linkStats?durationDays=7

Authorization: Bearer ya29.Abc123...
פרמטרים
SHORT_DYNAMIC_LINK הקישור הדינמי הקצר המקודד ב-URL שעבורו ברצונך לקבל נתוני אירועים.
DURATION מספר הימים שעבורם יש לקבל נתוני אירועים. לדוגמה, אם תציין 30 , הבקשה מאחזרת נתונים עבור 30 הימים האחרונים. שים לב שייתכן שחלק מהאירועים שנרשמו ב-36 השעות האחרונות לא ייכללו.
ACCESS_TOKEN אסימון גישה שטרם פג. ראה הרשאת API .

גוף תגובה

התגובה לבקשה היא אובייקט JSON כמו הבא:

{
  "linkEventStats": [
    {
      "platform": "ANDROID",
      "count": "123",
      "event": "CLICK"
    },
    {
      "platform": "IOS",
      "count": "123",
      "event": "CLICK"
    },
    {
      "platform": "DESKTOP",
      "count": "456",
      "event": "CLICK"
    },
    {
      "platform": "ANDROID",
      "count": "99",
      "event": "APP_INSTALL"
    },
    {
      "platform": "ANDROID",
      "count": "42",
      "event": "APP_FIRST_OPEN"
    },

    ...

  ]
}

כל פריט ברשימת linkEventStats מכיל ספירה ספציפית לפלטפורמה של אירוע כלשהו הקשור לקישור דינמי (כגון מספר הקליקים באנדרואיד). שים לב שייתכן שהסטטיסטיקה הזו לא תכלול אירועים שנרשמו במהלך 36 השעות האחרונות.

מִקרֶה תיאור קונסולת Firebase REST API
נְקִישָׁה ספירה של כל קליק על קישור דינמי, ללא קשר לאופן הטיפול בו וליעדיו
הפנייה מחדש ספירת הניסיונות להפנות משתמשים, אל חנות האפליקציות או חנות Play כדי להתקין או לעדכן את האפליקציה, או ליעד אחר
APP_INSTALL ספירת ההתקנות בפועל (נתמכת רק על ידי חנות Play)
APP_FIRST_OPEN ספירת הפתיחה הראשונה לאחר התקנה
APP_RE_OPEN מספר הפעמים שהקישור הדינמי גרם לאפליקציה להיפתח מחדש