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:
- Tambahkan Firebase ke aplikasi Anda seperti yang dijelaskan dalam panduan penyiapan Admin SDK. Artinya, buat akun layanan dan buat kunci pribadi.
- 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 |