Puede usar esta API REST para obtener datos analíticos para cada uno de sus vínculos dinámicos cortos, ya sea que se creen en la consola o mediante programación .
Autorización de API
Cuando realiza solicitudes a las API de Dynamic Link Analytics, debe incluir un token de acceso de OAuth 2.0 que autorice el acceso a su proyecto de Firebase.
Puede obtener tokens de acceso utilizando una biblioteca de cliente API de Google:
- Agregue Firebase a su aplicación como se describe en la guía de configuración del SDK de administrador. Es decir, crea una cuenta de servicio y genera una clave privada.
- Use una biblioteca de cliente API de Google para obtener un token de acceso de las credenciales de su cuenta de servicio:
Java
Uso de la biblioteca de cliente API 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.
Nodo.js
Uso de la biblioteca de cliente API 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. } });
Pitón
Usando la 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
Obtenga estadísticas para un solo enlace dinámico
Utilice el punto de linkStats
para obtener estadísticas de eventos para un solo Dynamic Link.
Solicitud HTTP
Una solicitud de 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 para el enlace 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 enlace dinámico corto con codificación URL para el que desea obtener datos de eventos. |
DURATION | El número de días para los que obtener datos de eventos. Por ejemplo, si especifica 30 , la solicitud recupera datos de los últimos 30 días. Tenga en cuenta que es posible que no se incluyan algunos eventos registrados en las últimas 36 horas. |
ACCESS_TOKEN | Un token de acceso vigente. Consulte Autorización de API . |
Cuerpo de 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). Tenga en cuenta que es posible que estas estadísticas no incluyan eventos que se hayan registrado en las últimas 36 horas.
Evento | Descripción | consola base de fuego | API REST |
---|---|---|---|
HACER CLIC | Recuento de cualquier clic en un vínculo dinámico, independientemente de cómo se maneje y sus destinos | ||
REDIRECTO | Recuento de intentos de redirigir a los usuarios, ya sea a App Store o Play Store para instalar o actualizar la aplicación, o a algún otro destino | ||
APLICACIÓN_INSTALACIÓN | Recuento de instalaciones reales (solo compatible con Play Store) | ||
APP_FIRST_OPEN | Conteo de primeras aperturas después de una instalación | ||
APP_RE_OPEN | Número de veces que Dynamic Link hizo que se volviera a abrir una aplicación |