Bạn có thể sử dụng API REST này để nhận dữ liệu phân tích cho mỗi Dynamic Links ngắn của mình, cho dù được tạo trong bảng điều khiển hay theo phương thức lập trình.
Uỷ quyền API
Khi đưa ra yêu cầu đến các API Analytics Dynamic Link, bạn phải thêm một OAuth 2.0 cho phép truy cập vào dự án Firebase của bạn.
Bạn có thể nhận mã truy cập bằng cách sử dụng thư viện ứng dụng API của Google:
- Thêm Firebase vào ứng dụng của bạn dưới dạng được mô tả trong hướng dẫn thiết lập SDK dành cho quản trị viên. Tức là tạo một tài khoản dịch vụ và tạo một khoá riêng tư.
- Sử dụng thư viện ứng dụng API của Google để nhận mã truy cập từ dịch vụ của bạn
thông tin đăng nhập tài khoản:
Java
Sử dụng Thư viện ứng dụng API của Google dành cho 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
Sử dụng Thư viện ứng dụng API của Google dành cho 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
Sử dụng Thư viện Xác thực của Google dành cho 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
Xem số liệu thống kê về một Dynamic Link
Sử dụng điểm cuối linkStats
để nhận số liệu thống kê sự kiện cho một Dynamic Link.
yêu cầu HTTP
Yêu cầu linkStats
có định dạng sau:
GET https://firebasedynamiclinks.googleapis.com/v1/SHORT_DYNAMIC_LINK/linkStats?durationDays=DURATION Authorization: Bearer ACCESS_TOKEN
Ví dụ: để truy xuất số liệu thống kê trong 7 ngày qua cho liên kết ngắn
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...
Thông số | |
---|---|
SHORT_DYNAMIC_LINK | Dynamic Link (được mã hoá trong URL) ngắn mà bạn muốn nhận dữ liệu sự kiện. |
DURATION | Số ngày mà bạn có thể lấy dữ liệu sự kiện. Ví dụ: nếu bạn
chỉ định 30 , thì yêu cầu sẽ truy xuất dữ liệu trong 30 ngày qua.
Xin lưu ý rằng một số sự kiện được ghi lại trong 36 giờ qua có thể không được đưa vào báo cáo.
|
ACCESS_TOKEN | Mã truy cập chưa hết hạn. Xem API Uỷ quyền. |
Nội dung phản hồi
Phản hồi cho một yêu cầu là một đối tượng JSON như sau:
{
"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"
},
...
]
}
Mỗi mục trong danh sách linkEventStats
chứa số lượng
một số sự kiện có liên quan đến Dynamic Link (chẳng hạn như số lượt nhấp trên Android). Lưu ý rằng
những số liệu thống kê này có thể không bao gồm những sự kiện đã được ghi lại trong
36 giờ.
Sự kiện | Mô tả | Bảng điều khiển Firebase | API REST |
---|---|---|---|
SỐ NHẤP CHUỘT | Số lần nhấp bất kỳ vào một Liên kết động, bất kể cách nhấp chuột được xử lý và đích đến của nó | ||
CHUYỂN HƯỚNG | Số lần chuyển hướng người dùng tới App Store hoặc Cửa hàng Play để cài đặt hoặc cập nhật ứng dụng hoặc tới một đích đến nào đó khác | ||
APP_INSTALL | Số lượt cài đặt thực tế (chỉ được Cửa hàng Play hỗ trợ) | ||
APP_FIRST_OPEN | Số lần mở lần đầu sau khi cài đặt | ||
APP_RE_MỞ | Số lần Liên kết động khiến ứng dụng được mở lại |