Możesz użyć tego interfejsu API REST, aby uzyskać dane analityczne dla każdego z krótkich łączy dynamicznych, niezależnie od tego, czy zostały utworzone w konsoli, czy programowo .
Autoryzacja API
Wysyłając żądania do interfejsów API Dynamic Link Analytics, musisz dołączyć token dostępu OAuth 2.0, który autoryzuje dostęp do Twojego projektu Firebase.
Tokeny dostępu możesz uzyskać korzystając z biblioteki klienta Google API:
- Dodaj Firebase do swojej aplikacji zgodnie z opisem w przewodniku konfiguracji pakietu Admin SDK. Oznacza to, że utwórz konto usługi i wygeneruj klucz prywatny.
- Użyj biblioteki klienta API Google, aby uzyskać token dostępu z danych logowania do konta usługi:
Jawa
Korzystanie z biblioteki klienta API Google dla języka 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
Korzystanie z biblioteki klienta Google API dla 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. } });
Pyton
Korzystanie z biblioteki Google Auth dla Pythona:
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
Uzyskaj statystyki dla pojedynczego łącza dynamicznego
Użyj punktu końcowego linkStats
, aby uzyskać statystyki zdarzeń dla pojedynczego łącza dynamicznego.
Żądanie HTTP
Żądanie linkStats
ma następujący format:
GET https://firebasedynamiclinks.googleapis.com/v1/SHORT_DYNAMIC_LINK/linkStats?durationDays=DURATION Authorization: Bearer ACCESS_TOKEN
Przykładowo, aby pobrać statystyki z ostatnich 7 dni dla krótkiego linku 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...
Parametry | |
---|---|
SHORT_DYNAMIC_LINK | Krótki link dynamiczny zakodowany w adresie URL , dla którego chcesz uzyskać dane o zdarzeniach. |
DURATION | Liczba dni, dla których mają być pobierane dane o zdarzeniach. Na przykład, jeśli określisz 30 , żądanie pobierze dane z ostatnich 30 dni. Należy pamiętać, że niektóre zdarzenia zarejestrowane w ciągu ostatnich 36 godzin mogą nie zostać uwzględnione. |
ACCESS_TOKEN | Niewygasły token dostępu. Zobacz Autoryzacja API . |
Treść odpowiedzi
Odpowiedzią na żądanie jest obiekt JSON podobny do poniższego:
{
"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"
},
...
]
}
Każdy element na liście linkEventStats
zawiera specyficzną dla platformy liczbę zdarzeń związanych z linkiem dynamicznym (takich jak liczba kliknięć w systemie Android). Należy pamiętać, że statystyki te mogą nie obejmować zdarzeń zarejestrowanych w ciągu ostatnich 36 godzin.
Wydarzenie | Opis | Konsola Firebase | API RESTOWE |
---|---|---|---|
KLIKNIJ | Liczba kliknięć łącza dynamicznego, niezależnie od sposobu jego obsługi i miejsca docelowego | ||
PRZEADRESOWAĆ | Liczba prób przekierowania użytkowników do App Store lub Play Store w celu zainstalowania lub aktualizacji aplikacji lub do innego miejsca docelowego | ||
INSTALACJA APLIKACJI | Liczba rzeczywistych instalacji (obsługiwana tylko przez Sklep Play) | ||
APLIKACJA_FIRST_OPEN | Liczba pierwszych otwarć po instalacji | ||
APLIKACJA_RE_OPEN | Liczba przypadków, gdy łącze dynamiczne spowodowało ponowne otwarcie aplikacji |
Możesz użyć tego interfejsu API REST, aby uzyskać dane analityczne dla każdego z krótkich łączy dynamicznych, niezależnie od tego, czy zostały utworzone w konsoli, czy programowo .
Autoryzacja API
Wysyłając żądania do interfejsów API Dynamic Link Analytics, musisz dołączyć token dostępu OAuth 2.0, który autoryzuje dostęp do Twojego projektu Firebase.
Tokeny dostępu możesz uzyskać korzystając z biblioteki klienta Google API:
- Dodaj Firebase do swojej aplikacji zgodnie z opisem w przewodniku konfiguracji pakietu Admin SDK. Oznacza to, że utwórz konto usługi i wygeneruj klucz prywatny.
- Użyj biblioteki klienta API Google, aby uzyskać token dostępu z danych logowania do konta usługi:
Jawa
Korzystanie z biblioteki klienta API Google dla języka 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
Korzystanie z biblioteki klienta Google API dla 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. } });
Pyton
Korzystanie z biblioteki Google Auth dla Pythona:
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
Uzyskaj statystyki dla pojedynczego łącza dynamicznego
Użyj punktu końcowego linkStats
, aby uzyskać statystyki zdarzeń dla pojedynczego łącza dynamicznego.
Żądanie HTTP
Żądanie linkStats
ma następujący format:
GET https://firebasedynamiclinks.googleapis.com/v1/SHORT_DYNAMIC_LINK/linkStats?durationDays=DURATION Authorization: Bearer ACCESS_TOKEN
Przykładowo, aby pobrać statystyki z ostatnich 7 dni dla krótkiego linku 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...
Parametry | |
---|---|
SHORT_DYNAMIC_LINK | Krótki link dynamiczny zakodowany w adresie URL , dla którego chcesz uzyskać dane o zdarzeniach. |
DURATION | Liczba dni, dla których mają być pobierane dane o zdarzeniach. Na przykład, jeśli określisz 30 , żądanie pobierze dane z ostatnich 30 dni. Należy pamiętać, że niektóre zdarzenia zarejestrowane w ciągu ostatnich 36 godzin mogą nie zostać uwzględnione. |
ACCESS_TOKEN | Niewygasły token dostępu. Zobacz Autoryzacja API . |
Treść odpowiedzi
Odpowiedzią na żądanie jest obiekt JSON podobny do poniższego:
{
"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"
},
...
]
}
Każdy element na liście linkEventStats
zawiera specyficzną dla platformy liczbę zdarzeń związanych z linkiem dynamicznym (takich jak liczba kliknięć w systemie Android). Należy pamiętać, że statystyki te mogą nie obejmować zdarzeń zarejestrowanych w ciągu ostatnich 36 godzin.
Wydarzenie | Opis | Konsola Firebase | API RESTOWE |
---|---|---|---|
KLIKNIJ | Liczba kliknięć łącza dynamicznego, niezależnie od sposobu jego obsługi i miejsca docelowego | ||
PRZEADRESOWAĆ | Liczba prób przekierowania użytkowników do App Store lub Play Store w celu zainstalowania lub aktualizacji aplikacji lub do innego miejsca docelowego | ||
INSTALACJA APLIKACJI | Liczba rzeczywistych instalacji (obsługiwana tylko przez Sklep Play) | ||
APLIKACJA_FIRST_OPEN | Liczba pierwszych otwarć po instalacji | ||
APLIKACJA_RE_OPEN | Liczba przypadków, gdy łącze dynamiczne spowodowało ponowne otwarcie aplikacji |