Interfejs Firebase Dynamic Links Analytics API

Za pomocą tego interfejsu API typu REST możesz uzyskać dane analityczne dotyczące każdego z Twoich krótkich filmów typu Dynamic Links, niezależnie od tego, czy są utworzone w konsoli czy automatycznie.

Autoryzacja interfejsu API

Gdy wysyłasz żądania do interfejsów API usługi Dynamic Link Analytics, musisz dołączać protokół OAuth 2.0 tokenu dostępu, który upoważnia do dostępu do projektu Firebase.

Tokeny dostępu możesz uzyskać za pomocą biblioteki klienta interfejsów API Google:

  1. Dodaj Firebase do swojej aplikacji jako opisane w przewodniku konfiguracji pakietu Admin SDK. Musisz utworzyć konto usługi i wygenerować klucz prywatny.
  2. Uzyskiwanie tokena dostępu ze swojej usługi za pomocą biblioteki klienta interfejsów API Google dane logowania na konto:

    Java

    Korzystanie z Biblioteka klienta interfejsów API Google do języka 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

    Korzystanie z Biblioteka klienta interfejsów API Google do środowiska 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.
      }
    });
    

    Python

    Korzystanie z Biblioteka uwierzytelniania Google dla Pythona:

    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
    
.

Pobierz statystyki dla pojedynczego: Dynamic Link

Użyj punktu końcowego linkStats, aby wyświetlić statystyki zdarzeń dotyczących pojedynczego pola Dynamic Link.

Żądanie HTTP

Żądanie linkStats ma taki format:

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

Authorization: Bearer ACCESS_TOKEN

Aby np. pobrać statystyki z ostatnich 7 dni dla krótkiego linku https://example.page.link/wXYz:

GET https://firebasedynamiclinks.googleapis.com/v1/https://example.page.link/wXYz/linkStats?durationDays=7

Authorization: Bearer ya29.Abc123...
Parametry
SHORT_DYNAMIC_LINK Zakodowany w adresie URL krótki format Dynamic Link, dla którego chcesz uzyskać dane zdarzenia.
DURATION Liczba dni, przez które mają być pobierane dane zdarzenia. Jeśli na przykład poda: 30, żądanie pobiera dane z ostatnich 30 dni. Pamiętaj, że niektóre zdarzenia zarejestrowane w ciągu ostatnich 36 godzin mogą nie zostać uwzględnione.
ACCESS_TOKEN nieważny token dostępu, Zobacz interfejs API Autoryzacja.

Treść odpowiedzi

Odpowiedź na żądanie to obiekt JSON podobny do tego:

{
  "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"
    },

    ...

  ]
}

Każdy element na liście linkEventStats zawiera liczbę (przeznaczoną dla platformy) zdarzenie związane z Dynamic Link (np. liczba kliknięć na urządzeniach z Androidem). Pamiętaj, że mogą one nie obejmować zdarzeń, które zostały zarejestrowane w ciągu ostatnich 36 godzin.

Zdarzenie Opis Konsola Firebase Interfejs API typu REST
KLIKNIĘCIE Liczba kliknięć linku dynamicznego, niezależnie od sposobu jego obsługi i miejsc docelowych
PRZEKIEROWANIE Liczba prób przekierowania użytkowników do sklepu App Store lub Sklepu Play w celu zainstalowania lub zaktualizowania aplikacji albo do innego miejsca docelowego
APP_INSTALL Liczba rzeczywistych instalacji (obsługiwana tylko przez Sklep Play)
APP_FIRST_OPEN Liczba pierwszych uruchomień po instalacji
APP_RE_OTWÓRZ Liczba przypadków ponownego uruchomienia aplikacji przez link dynamiczny