يمكنك استخدام واجهة برمجة التطبيقات REST هذه للحصول على بيانات إحصاءات لكلّ فيديو قصير من فيديوهات Dynamic Links، سواء تم إنشاؤها في وحدة التحكّم أو آليًا
تفويض واجهة برمجة التطبيقات
عند إرسال طلبات إلى واجهات برمجة تطبيقات "إحصاءات Google" Dynamic Link، يجب تضمين بروتوكول OAuth. رمز وصول 2.0 يسمح بالوصول إلى مشروع Firebase.
يمكنك الحصول على رموز الدخول باستخدام مكتبة برامج واجهة Google API:
- إضافة Firebase إلى تطبيقك بصفة الموضحة في دليل إعداد SDK للمشرف. أي يجب إنشاء حساب خدمة. وإنشاء مفتاح خاص.
- استخدام مكتبة برامج واجهة Google API للحصول على رمز الدخول من خدمتك
بيانات اعتماد الحساب:
جافا
استخدام مكتبة برامج Google API للغة 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
استخدام مكتبة برامج Google API لنظام 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
استخدام مكتبة Google Auth للغة 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
الحصول على إحصاءات لـ Dynamic Link واحد
استخدِم نقطة النهاية linkStats
للحصول على إحصاءات الأحداث لحدث Dynamic Link واحد.
طلب 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 المختصر Dynamic Link الذي تريد الحصول على بيانات أحداث له. |
DURATION | عدد الأيام التي يجب الحصول على بيانات الأحداث لها. على سبيل المثال، إذا
تحديد 30 ، يسترد الطلب بيانات آخر 30 يومًا.
تجدر الإشارة إلى أنّه قد لا يتمّ تضمين بعض الأحداث التي تمّ تسجيلها في آخر 36 ساعة.
|
ACCESS_TOKEN | رمز دخول غير منتهي الصلاحية. راجِع واجهة برمجة التطبيقات. التفويض. |
نص الاستجابة
تكون الاستجابة للطلب هي كائن 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
عددًا خاصًا بالنظام الأساسي من
بعض الأحداث ذات الصلة بـ Dynamic Link (مثل عدد النقرات على Android). لاحظ أن
قد لا تتضمن هذه الإحصاءات الأحداث التي تم تسجيلها خلال آخر
36 ساعة.
الحدث | الوصف | وحدة تحكّم واحدة (Firebase) | واجهة برمجة تطبيقات REST |
---|---|---|---|
نقرة | عدد أي نقرات على الرابط الديناميكي، بغض النظر عن كيفية معالجتها ووجهاتها | ||
إعادة التوجيه | عدد محاولات إعادة توجيه المستخدمين، إما إلى App Store أو "متجر Play" لتثبيت التطبيق أو تحديثه أو إلى وجهة أخرى | ||
APP_INSTALL | عدد عمليات التثبيت الفعلية (متوافق مع "متجر Play" فقط) | ||
APP_FIRST_OPEN | عدد عمليات الفتح لأول مرة بعد التثبيت | ||
APP_RE_OPEN | عدد المرّات التي تسبب فيها الرابط الديناميكي في إعادة فتح تطبيق |