Referencia de Measurement Protocol

Descripción general

El envío de datos a Google Analytics con Measurement Protocol se compone de dos partes:

  1. El transporte: dónde y cómo se envían los datos.
  2. La carga útil: los datos que se envían.

En este documento se describe cómo se aplica formato a la carga útil y al transporte.

Transporte

Endpoint de la URL

Para enviar datos mediante Measurement Protocol, tienes que hacer solicitudes HTTP POST al siguiente endpoint:

https://www.google-analytics.com/mp/collect

Para enviar un evento, emite la siguiente solicitud POST:

POST /mp/collect HTTP/1.1
HOST: www.google-analytics.com
Content-Type: application/json
<payload_data>
  • BODY de la solicitud. Consulta la sección Carga útil.

Códigos de respuesta

Measurement Protocol siempre devuelve un código de estado 2xx si se ha recibido la solicitud HTTP, pero no devuelve un código de error si los datos de carga útil tienen un formato incorrecto, son incorrectos o Google Analytics no los procesó.

Carga útil

Los datos se envían a Google Analytics mediante los datos de Measurement Protocol en dos partes:

  1. Parámetros de consulta
  2. Cuerpo de JSON POST

parámetros de consulta

Nombre del parámetro Descripción

api_secret

Obligatorio. API Secret que se genera a través de la interfaz de Google Analytics.

Para crear un secreto, ve a la interfaz de Google Analytics y sigue estos pasos:
Administrador > Flujos de datos > elige un flujo > Measurement Protocol > Crear.

Te recomendamos que no lo publiques fuera de tu organización. Si implementas Measurement Protocol en el cliente, debes rotar los api_secret de forma periódica para evitar un exceso de spam.

firebase_app_id

Obligatorio. ID de aplicación de Firebase. El identificador de una aplicación de Firebase. Se encuentra en la consola de Firebase en:
Configuración del proyecto > General > Tus aplicaciones > ID de aplicación.

measurement_id

ID de medición. Identificador de un flujo de datos. Se encuentra en la interfaz de Google Analytics, en:
Administrador > Flujos de datos > elige un flujo > ID de medición.

Cuerpo de JSON POST

Clave Tipo Descripción

app_instance_id

string

Obligatorio. Identifica de forma exclusiva una descarga específica de una aplicación de Firebase. Este valor se debe obtener mediante el SDK de Firebase.

client_id

string

Obligatorio. Identifica de forma exclusiva una instancia de usuario de un cliente web. Consulta cómo enviar un evento a Measurement Protocol.

user_id

string

Opcional. Identificador único de un usuario. Consulta el artículo User-ID en análisis multiplataforma para obtener más información sobre este identificador.

timestamp_micros

number

Opcional. Marca de tiempo de Unix (en microsegundos) para indicar el tiempo que se va a asociar al evento. Solo se debe definir para registrar eventos ocurridos en el pasado. Este valor se puede anular mediante user_property o marcas de tiempo de eventos. Los eventos pueden tener una fecha de hasta 3 días naturales antes en función de la zona horaria de la propiedad.

user_properties

object Opcional. Propiedades de usuario de la medición. Consulta el artículo Propiedades de usuario para obtener más información.
object Opcional. Define la configuración del consentimiento de los eventos. Para obtener más información, consulta la sección sobre el consentimiento.

non_personalized_ads

boolean Opcional. Asigna el valor true para indicar que estos eventos que no deben usarse para anuncios personalizados.

events[]

array Obligatorio. Array de elementos de eventos. Se pueden enviar hasta 25 eventos por solicitud. Consulta la referencia de los eventos para obtener información sobre todos los eventos válidos.

events[].name

string Obligatorio. Nombre del evento. Consulta la referencia de los eventos para ver todas las opciones.

events[].params

object Opcional. Parámetros del evento. Consulta los eventos para conocer los parámetros sugeridos para cada evento.

El atributo consent configura los tipos de consentimiento y los estados de la solicitud. Si no especificas el atributo consent, Google Analytics usará la configuración del consentimiento de las interacciones online correspondientes para la instancia del cliente o la aplicación.

Clave Tipo Descripción

ad_user_data

string

Opcional. Define el consentimiento sobre el envío a Google de datos de usuario con fines publicitarios.

Debe ser granted o denied.

ad_personalization

string

Opcional. Define el consentimiento sobre la publicidad personalizada.

Debe ser granted o denied.

Parámetros personalizados

Además de los parámetros prescritos, puedes añadir parámetros personalizados relativos al usuario, al evento y al artículo dentro de una carga útil de Measurement Protocol.

  • Los parámetros personalizados relativos al usuario se pueden incluir en el objeto user_properties de la carga útil.
  • Los parámetros personalizados relativos al evento se pueden incluir en el objeto events[].params de la carga útil.
  • Los parámetros personalizados relativos al artículo se pueden incluir en el array items para cada evento.

Algunos eventos tienen parámetros recomendados. Consulta los eventos para conocer los parámetros recomendados para todos los eventos admitidos.

Nombres reservados

Nombres de eventos reservados

Los siguientes nombres de eventos están reservados y no se pueden usar:

  • ad_activeview
  • ad_click
  • ad_exposure
  • ad_impression
  • ad_query
  • ad_reward
  • adunit_exposure
  • app_clear_data
  • app_exception
  • app_install
  • app_remove
  • app_store_refund
  • app_update
  • app_upgrade
  • dynamic_link_app_open
  • dynamic_link_app_update
  • dynamic_link_first_open
  • error
  • firebase_campaign
  • firebase_in_app_message_action
  • firebase_in_app_message_dismiss
  • firebase_in_app_message_impression
  • first_open
  • first_visit
  • in_app_purchase
  • notification_dismiss
  • notification_foreground
  • notification_open
  • notification_receive
  • notification_send
  • os_update
  • screen_view
  • session_start
  • user_engagement

Nombres de parámetros reservados

Los siguientes nombres de parámetros están reservados y no se pueden usar:

  • firebase_conversion

Además, los nombres de parámetros no pueden empezar por:

  • _ (underscore)
  • firebase_
  • ga_
  • google_
  • gtag.

Nombres de propiedades de usuario reservados

Los siguientes nombres de propiedades de usuario están reservados y no se pueden usar:

  • first_open_time
  • first_visit_time
  • last_deep_link_referrer
  • user_id
  • first_open_after_install

Además, los nombres de propiedades de usuario no pueden empezar por:

  • _ (underscore)
  • firebase_
  • ga_
  • google_