API Analisis Tautan Dinamis Firebase

Anda dapat menggunakan REST API ini untuk mendapatkan data analitik untuk setiap Tautan Dinamis pendek Anda, baik yang dibuat di konsol atau secara terprogram .

Otorisasi API

Saat membuat permintaan ke API Dynamic Link Analytics, Anda harus menyertakan token akses OAuth 2.0 yang memberi otorisasi akses ke proyek Firebase Anda.

Anda bisa mendapatkan token akses menggunakan perpustakaan klien Google API:

  1. Tambahkan Firebase ke aplikasi Anda seperti yang dijelaskan dalam panduan penyiapan Admin SDK. Artinya, buat akun layanan dan buat kunci pribadi.
  2. Gunakan pustaka klien Google API untuk mendapatkan token akses dari kredensial akun layanan Anda:

    Jawa

    Menggunakan Perpustakaan Klien Google API untuk 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

    Menggunakan Perpustakaan Klien Google API untuk 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.
      }
    });
    

    ular piton

    Menggunakan perpustakaan Google Auth untuk 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
    

Dapatkan statistik untuk satu Dynamic Link

Gunakan titik akhir linkStats untuk mendapatkan statistik peristiwa untuk satu Tautan Dinamis.

permintaan HTTP

Permintaan linkStats memiliki format berikut:

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

Authorization: Bearer ACCESS_TOKEN

Misalnya, untuk mengambil statistik dari 7 hari terakhir untuk tautan pendek 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...
Parameter
SHORT_DYNAMIC_LINK Tautan Dinamis pendek berkode URL yang data peristiwanya ingin Anda dapatkan.
DURATION Jumlah hari untuk mendapatkan data peristiwa. Misalnya, jika Anda menentukan 30 , permintaan akan mengambil data selama 30 hari terakhir. Perhatikan bahwa beberapa peristiwa yang dicatat dalam 36 jam terakhir mungkin tidak disertakan.
ACCESS_TOKEN Token akses yang belum kedaluwarsa. Lihat Otorisasi API .

Badan respons

Respons terhadap permintaan adalah objek JSON seperti berikut:

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

    ...

  ]
}

Setiap item dalam daftar linkEventStats berisi hitungan spesifik platform dari beberapa peristiwa terkait Dynamic Link (seperti jumlah klik di Android). Perhatikan bahwa statistik ini mungkin tidak mencakup peristiwa yang dicatat dalam 36 jam terakhir.

Peristiwa Keterangan Konsol Firebase API REST
KLIK Jumlah klik apa pun pada Tautan Dinamis, terlepas dari cara penanganannya dan tujuannya
MENGALIHKAN Jumlah upaya untuk mengalihkan pengguna, baik ke App Store atau Play Store untuk menginstal atau memperbarui aplikasi, atau ke tujuan lain
APLIKASI_INSTALL Jumlah pemasangan sebenarnya (hanya didukung oleh Play Store)
APP_FIRST_OPEN Hitungan pertama kali dibuka setelah instalasi
APP_RE_OPEN Berapa kali Dynamic Link menyebabkan aplikasi dibuka kembali