Puedes usar esta API de REST para obtener datos de estadísticas de cada uno de tus Dynamic Links, ya sea creado en la consola o de manera programática.
Autorización mediante la API
Cuando realices solicitudes a las Dynamic Link APIs de Analytics, deberás incluir un Es el token de acceso 2.0 que autoriza el acceso a tu proyecto de Firebase.
Puedes obtener tokens de acceso mediante una biblioteca cliente de la API de Google:
- Agrega Firebase a la app como descrita en la guía de configuración del SDK de Admin. Es decir, crea una cuenta de servicio y generar una clave privada.
- Usa una biblioteca cliente de la API de Google para obtener un token de acceso de tu servicio
credenciales de la cuenta:
Java
Con el Biblioteca cliente de las APIs de Google para 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
Con el Biblioteca cliente de las APIs de Google para 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
Uso del Biblioteca de Google Auth para 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
Obtener estadísticas de un solo Dynamic Link
Usa el extremo linkStats
para obtener estadísticas de eventos para un solo Dynamic Link.
Solicitud HTTP
Una solicitud linkStats
tiene el siguiente formato:
GET https://firebasedynamiclinks.googleapis.com/v1/SHORT_DYNAMIC_LINK/linkStats?durationDays=DURATION Authorization: Bearer ACCESS_TOKEN
por ejemplo, para recuperar estadísticas de los últimos 7 días del vínculo corto
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...
Parámetros | |
---|---|
SHORT_DYNAMIC_LINK | El Codificado en URL: Dynamic Link para el que deseas obtener datos del evento. |
DURATION | La cantidad de días para los que se obtienen los datos de eventos. Por ejemplo, si
especifica 30 , la solicitud recupera datos de los últimos 30 días.
Ten en cuenta que es posible que no se incluyan algunos eventos registrados en las últimas 36 horas.
|
ACCESS_TOKEN | Un token de acceso no vencido. Consulta API Autorización. |
Cuerpo de la respuesta
La respuesta a una solicitud es un objeto JSON como el siguiente:
{
"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"
},
...
]
}
Cada elemento de la lista linkEventStats
contiene un recuento específico de la plataforma de
algún evento relacionado con Dynamic Link (como la cantidad de clics en Android) Ten en cuenta que
es posible que estas estadísticas no incluyan eventos que se hayan registrado en los últimos
36 horas.
Evento | Descripción | Consola de Firebase | API de REST |
---|---|---|---|
CLICK | Recuento de los clics en un Dynamic Link, sin tener en cuenta sus destinos o la manera en que se administra | ||
REDIRECT | Recuento de los intentos de redireccionamiento de usuarios, ya sea a la App Store o a Play Store para instalar o actualizar la app, o a un destino diferente. | ||
APP_INSTALL | Recuento de instalaciones reales (compatible solo con Play Store) | ||
APP_FIRST_OPEN | Recuento de primeras aperturas después de una instalación | ||
APP_RE_OPEN | Recuento de veces que el Dynamic Link provocó que volviera a abrirse una app |