میتوانید از این API REST برای دریافت دادههای تحلیلی برای هر یک از پیوندهای پویای کوتاه خود، چه در کنسول یا به صورت برنامهنویسی ایجاد شدهاند، استفاده کنید.
مجوز API
هنگامی که برای API های تجزیه و تحلیل پیوند پویا درخواست می کنید، باید یک نشانه دسترسی OAuth 2.0 را اضافه کنید که اجازه دسترسی به پروژه Firebase شما را می دهد.
میتوانید با استفاده از کتابخانه سرویس گیرنده Google API، نشانههای دسترسی را دریافت کنید:
- همانطور که در راهنمای تنظیم Admin SDK توضیح داده شده است ، Firebase را به برنامه خود اضافه کنید . یعنی یک حساب کاربری ایجاد کنید و یک کلید خصوصی ایجاد کنید.
- از کتابخانه سرویس گیرنده Google API برای دریافت رمز دسترسی از اعتبار حساب سرویس خود استفاده کنید:
جاوا
استفاده از Google API Client Library برای جاوا :
// 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 Client Library برای 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 برای پایتون:
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
حاوی تعداد خاصی از رویدادهای مرتبط با پیوند پویا (مانند تعداد کلیکها در Android) است. توجه داشته باشید که این آمار ممکن است شامل رویدادهایی نباشد که در 36 ساعت گذشته ثبت شده اند.
رویداد | شرح | کنسول Firebase | REST API |
---|---|---|---|
کلیک | تعداد هر کلیک روی پیوند پویا، صرف نظر از نحوه مدیریت و مقصد آن | ||
تغییر مسیر | تعداد تلاشها برای هدایت کاربران، به اپ استور یا پلی استور برای نصب یا بهروزرسانی برنامه، یا به مقصد دیگری | ||
APP_INSTALL | تعداد نصب های واقعی (فقط توسط Play Store پشتیبانی می شود) | ||
APP_FIRST_OPEN | تعداد اولین بازها پس از نصب | ||
APP_RE_OPEN | تعداد دفعاتی که پیوند پویا باعث باز شدن مجدد یک برنامه شده است |
میتوانید از این API REST برای دریافت دادههای تحلیلی برای هر یک از پیوندهای پویای کوتاه خود، چه در کنسول یا به صورت برنامهنویسی ایجاد شدهاند، استفاده کنید.
مجوز API
هنگامی که برای API های تجزیه و تحلیل پیوند پویا درخواست می کنید، باید یک نشانه دسترسی OAuth 2.0 را اضافه کنید که اجازه دسترسی به پروژه Firebase شما را می دهد.
میتوانید با استفاده از کتابخانه سرویس گیرنده Google API، نشانههای دسترسی را دریافت کنید:
- همانطور که در راهنمای تنظیم Admin SDK توضیح داده شده است ، Firebase را به برنامه خود اضافه کنید . یعنی یک حساب کاربری ایجاد کنید و یک کلید خصوصی ایجاد کنید.
- از کتابخانه سرویس گیرنده Google API برای دریافت رمز دسترسی از اعتبار حساب سرویس خود استفاده کنید:
جاوا
استفاده از Google API Client Library برای جاوا :
// 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 Client Library برای 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 برای پایتون:
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
حاوی تعداد خاصی از رویدادهای مرتبط با پیوند پویا (مانند تعداد کلیکها در Android) است. توجه داشته باشید که این آمار ممکن است شامل رویدادهایی نباشد که در 36 ساعت گذشته ثبت شده اند.
رویداد | شرح | کنسول Firebase | REST API |
---|---|---|---|
کلیک | تعداد هر کلیک روی پیوند پویا، صرف نظر از نحوه مدیریت و مقصد آن | ||
تغییر مسیر | تعداد تلاشها برای هدایت کاربران، به اپ استور یا پلی استور برای نصب یا بهروزرسانی برنامه، یا به مقصد دیگری | ||
APP_INSTALL | تعداد نصب های واقعی (فقط توسط Play Store پشتیبانی می شود) | ||
APP_FIRST_OPEN | تعداد اولین بازها پس از نصب | ||
APP_RE_OPEN | تعداد دفعاتی که پیوند پویا باعث باز شدن مجدد یک برنامه شده است |