Puoi utilizzare questa API REST per ottenere dati analitici per ciascuno dei tuoi collegamenti dinamici brevi, creati nella console o a livello di codice .
Autorizzazione API
Quando effettui richieste alle API Dynamic Link Analytics, devi includere un token di accesso OAuth 2.0 che autorizzi l'accesso al tuo progetto Firebase.
Puoi ottenere token di accesso utilizzando una libreria client API di Google:
- Aggiungi Firebase alla tua app come descritto nella guida alla configurazione di Admin SDK. Cioè, crea un account di servizio e genera una chiave privata.
- Utilizza una libreria client API di Google per ottenere un token di accesso dalle credenziali del tuo account di servizio:
Giava
Utilizzando la libreria client API di Google per 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
Utilizzando la libreria client API di Google per 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. } });
Pitone
Utilizzando la libreria Google Auth per 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
Ottieni statistiche per un singolo collegamento dinamico
Utilizza l'endpoint linkStats
per ottenere le statistiche degli eventi per un singolo collegamento dinamico.
Richiesta HTTP
Una richiesta linkStats
ha il seguente formato:
GET https://firebasedynamiclinks.googleapis.com/v1/SHORT_DYNAMIC_LINK/linkStats?durationDays=DURATION Authorization: Bearer ACCESS_TOKEN
Ad esempio, per recuperare le statistiche degli ultimi 7 giorni per il collegamento breve 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...
Parametri | |
---|---|
SHORT_DYNAMIC_LINK | Il collegamento dinamico breve codificato nell'URL per il quale desideri ottenere i dati dell'evento. |
DURATION | Il numero di giorni per i quali ottenere i dati dell'evento. Ad esempio, se specifichi 30 , la richiesta recupera i dati degli ultimi 30 giorni. Tieni presente che alcuni eventi registrati nelle ultime 36 ore potrebbero non essere inclusi. |
ACCESS_TOKEN | Un token di accesso non scaduto. Vedi Autorizzazione API . |
Corpo della risposta
La risposta a una richiesta è un oggetto JSON come il seguente:
{
"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"
},
...
]
}
Ogni elemento nell'elenco linkEventStats
contiene un conteggio specifico della piattaforma di alcuni eventi correlati a Dynamic Link (come il numero di clic su Android). Tieni presente che queste statistiche potrebbero non includere eventi registrati nelle ultime 36 ore.
Evento | Descrizione | Console FireBase | API REST |
---|---|---|---|
CLIC | Conteggio di eventuali clic su un collegamento dinamico, indipendentemente da come viene gestito e dalle sue destinazioni | ||
REINDIRIZZARE | Conteggio dei tentativi di reindirizzare gli utenti all'App Store o al Play Store per installare o aggiornare l'app o verso un'altra destinazione | ||
APP_INSTALL | Conteggio delle installazioni effettive (supportato solo dal Play Store) | ||
APP_FIRST_OPEN | Conteggio delle prime aperture dopo un'installazione | ||
APP_RE_OPEN | Numero di volte in cui Dynamic Link ha causato la riapertura di un'app |
Puoi utilizzare questa API REST per ottenere dati analitici per ciascuno dei tuoi collegamenti dinamici brevi, creati nella console o a livello di codice .
Autorizzazione API
Quando effettui richieste alle API Dynamic Link Analytics, devi includere un token di accesso OAuth 2.0 che autorizzi l'accesso al tuo progetto Firebase.
Puoi ottenere token di accesso utilizzando una libreria client API di Google:
- Aggiungi Firebase alla tua app come descritto nella guida alla configurazione di Admin SDK. Cioè, crea un account di servizio e genera una chiave privata.
- Utilizza una libreria client API di Google per ottenere un token di accesso dalle credenziali del tuo account di servizio:
Giava
Utilizzando la libreria client API di Google per 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
Utilizzando la libreria client API di Google per 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. } });
Pitone
Utilizzando la libreria Google Auth per 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
Ottieni statistiche per un singolo collegamento dinamico
Utilizza l'endpoint linkStats
per ottenere le statistiche degli eventi per un singolo collegamento dinamico.
Richiesta HTTP
Una richiesta linkStats
ha il seguente formato:
GET https://firebasedynamiclinks.googleapis.com/v1/SHORT_DYNAMIC_LINK/linkStats?durationDays=DURATION Authorization: Bearer ACCESS_TOKEN
Ad esempio, per recuperare le statistiche degli ultimi 7 giorni per il collegamento breve 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...
Parametri | |
---|---|
SHORT_DYNAMIC_LINK | Il collegamento dinamico breve codificato nell'URL per il quale desideri ottenere i dati dell'evento. |
DURATION | Il numero di giorni per i quali ottenere i dati dell'evento. Ad esempio, se specifichi 30 , la richiesta recupera i dati degli ultimi 30 giorni. Tieni presente che alcuni eventi registrati nelle ultime 36 ore potrebbero non essere inclusi. |
ACCESS_TOKEN | Un token di accesso non scaduto. Vedi Autorizzazione API . |
Corpo della risposta
La risposta a una richiesta è un oggetto JSON come il seguente:
{
"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"
},
...
]
}
Ogni elemento nell'elenco linkEventStats
contiene un conteggio specifico della piattaforma di alcuni eventi correlati a Dynamic Link (come il numero di clic su Android). Tieni presente che queste statistiche potrebbero non includere eventi registrati nelle ultime 36 ore.
Evento | Descrizione | Console FireBase | API REST |
---|---|---|---|
CLIC | Conteggio di eventuali clic su un collegamento dinamico, indipendentemente da come viene gestito e dalle sue destinazioni | ||
REINDIRIZZARE | Conteggio dei tentativi di reindirizzare gli utenti all'App Store o al Play Store per installare o aggiornare l'app o verso un'altra destinazione | ||
APP_INSTALL | Conteggio delle installazioni effettive (supportato solo dal Play Store) | ||
APP_FIRST_OPEN | Conteggio delle prime aperture dopo un'installazione | ||
APP_RE_OPEN | Numero di volte in cui Dynamic Link ha causato la riapertura di un'app |