- Recurso: UserEvent
- UserInfo
- PreciseLocation
- PageInfo
- DocumentInfo
- PanelInfo
- SearchInfo
- CompletionInfo
- TransactionInfo
- MediaInfo
- Comentarios
- FeedbackType
- Motivo
- ConversationInfo
- FeedbackSource
- Métodos
Recurso: UserEvent
UserEvent captura toda la información de metadatos que la API de Discovery Engine necesita saber sobre cómo interactúan los usuarios finales con su sitio web.
| Representación JSON |
|---|
{ "eventType": string, "conversionType": string, "userPseudoId": string, "engine": string, "dataStore": string, "eventTime": string, "userInfo": { object ( |
| Campos | |
|---|---|
eventType |
Obligatorio. Es el tipo de evento del usuario. Los valores permitidos son los siguientes: Valores genéricos:
Valores relacionados con el comercio minorista:
Valores relacionados con los medios:
Valor de conversión personalizado:
|
conversionType |
Es opcional. Es el tipo de conversión. Se requiere si No configures el campo si |
userPseudoId |
Obligatorio. Es un identificador único para hacer un seguimiento de los visitantes. Por ejemplo, esto se podría implementar con una cookie HTTP, que debería poder identificar de forma única a un visitante en un solo dispositivo. Este identificador único no debe cambiar si el visitante accede al sitio web o sale de él. No establezcas el campo en el mismo ID fijo para diferentes usuarios. Esto combina el historial de eventos de esos usuarios, lo que genera una calidad degradada del modelo. El campo debe ser una cadena codificada en UTF-8 con un límite de 128 caracteres. De lo contrario, se muestra un error Este campo no debe contener información de identificación personal ni datos de usuario. Recomendamos utilizar el ID de cliente de Google Analytics para este campo. |
engine |
El nombre del recurso Es opcional. Solo se requiere para los eventos de usuario producidos por |
dataStore |
El nombre completo del recurso Es opcional. Solo se requiere para eventos de usuario cuyo almacén de datos no se puede determinar mediante |
eventTime |
Solo necesario para el método Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: |
userInfo |
Es la información sobre el usuario final. |
directUserRequest |
Debe establecerse en verdadero si la solicitud la realiza directamente el usuario final, en cuyo caso el Esta bandera solo debe activarse si la solicitud a la API la realiza directamente el usuario final, como por ejemplo una aplicación móvil (y no si una puerta de enlace o un servidor procesa y envía los eventos del usuario). No se debe configurar cuando se usa la etiqueta de JavaScript en |
sessionId |
Un identificador único para el seguimiento de la sesión de un visitante, con un límite de longitud de 128 bytes. Una sesión es una agregación del comportamiento de un usuario final en un período de tiempo determinado. Una guía general para completar el sessionId:
|
pageInfo |
Metadatos de página como categorías y otra información crítica para ciertos tipos de eventos como |
attributionToken |
Token para atribuir una respuesta de API a las acciones del usuario que activan el evento. Se recomienda para los eventos de usuario que son el resultado de El valor debe ser uno de los siguientes:
Este token nos permite atribuir con precisión la vista de página o la finalización de la conversión al evento y a la respuesta de predicción específica que contiene este producto en el que se hizo clic o que se compró. Si el usuario hace clic en el producto K en los resultados de la recomendación, pasa |
filter |
Es opcional. La sintaxis del filtro consta de un lenguaje de expresión para construir un predicado a partir de uno o más campos de los documentos que se filtran. Un ejemplo es para los eventos de De manera similar, para los eventos El valor debe ser una cadena codificada en UTF-8 con un límite de 1,000 caracteres. De lo contrario, se muestra un error |
documents[] |
Es la lista de objetos Este campo es opcional, excepto para los siguientes tipos de eventos:
En un evento |
panel |
Son los metadatos del panel asociados con este evento del usuario. |
searchInfo |
Son los detalles de Este campo se debe establecer para el evento |
completionInfo |
Son los detalles de Este campo se debe establecer para el evento |
transactionInfo |
Son los metadatos de la transacción (si hay alguno) asociados a este evento del usuario. |
tagIds[] |
Es una lista de identificadores de los grupos experimentales independientes a los que pertenece este evento del usuario. Se usa para distinguir entre los eventos de usuario asociados con diferentes configuraciones de experimentos. |
promotionIds[] |
Son los IDs de promoción si se trata de un evento asociado con promociones. Actualmente, este campo está restringido a un máximo de un ID. |
attributes |
Son funciones adicionales de eventos de usuario que se incluirán en el modelo de recomendación. Estos atributos NO deben contener datos que necesiten ser analizados o procesados posteriormente, por ejemplo, JSON u otras codificaciones. Si proporcionas atributos personalizados para los eventos de usuario transferidos, también inclúyelos en los eventos de usuario que asocies con las solicitudes de predicción. El formato de los atributos personalizados debe ser coherente entre los eventos importados y los eventos proporcionados con las solicitudes de predicción. Esto permite que la API de Discovery Engine use esos atributos personalizados cuando entrena modelos y publica predicciones, lo que ayuda a mejorar la calidad de las recomendaciones. Este campo debe cumplir todos los criterios que se indican a continuación; de lo contrario, se devolverá un error
En el caso de las recomendaciones de productos, un ejemplo de información adicional del usuario es |
attributes.text[] |
Son los valores de texto de este atributo personalizado. Por ejemplo, No se permite una cadena vacía. De lo contrario, se muestra un error Se debe establecer exactamente uno de |
attributes.numbers[] |
Son los valores numéricos de este atributo personalizado. Por ejemplo, Se debe establecer exactamente uno de los campos |
mediaInfo |
Es información específica de los medios. |
panels[] |
Es opcional. Es la lista de paneles asociados a este evento. Se usa para los datos de impresiones a nivel de la página. |
feedback |
Es opcional. Este campo es opcional, excepto para los tipos de eventos |
entity |
Es opcional. Representa la entidad para clientes que pueden administrar varias entidades, dominios, sitios o regiones diferentes, por ejemplo, |
UserInfo
Es la información de un usuario final.
| Representación JSON |
|---|
{
"userId": string,
"userAgent": string,
"timeZone": string,
"preciseLocation": {
object ( |
| Campos | |
|---|---|
userId |
Muy recomendable para usuarios registrados. Identificador único del usuario que ha iniciado sesión, como por ejemplo un nombre de usuario. No se establece para usuarios anónimos. Siempre usa un valor hash para este ID. No establezcas el campo en el mismo ID fijo para diferentes usuarios. Esto combina el historial de eventos de esos usuarios, lo que genera una calidad degradada del modelo. El campo debe ser una cadena codificada en UTF-8 con un límite de 128 caracteres. De lo contrario, se muestra un error Representa un ID opaco para la API de Search. La API de Search no interpreta el valor de ninguna manera. Este campo se usa para asociar eventos con un usuario en todas las sesiones si se suben los eventos. |
userAgent |
Es el agente de usuario incluido en el encabezado HTTP. El campo debe ser una cadena codificada en UTF-8 con un límite de 1,000 caracteres. De lo contrario, se muestra un error No se debe configurar cuando se utiliza el informe de eventos del cliente con GTM o la etiqueta de JavaScript en |
timeZone |
Es opcional. Zona horaria de IANA, p.ej., Europe/Budapest. |
preciseLocation |
Es opcional. Solo entrada. Ubicación precisa del usuario Se usa en la clasificación personalizada para calcular la distancia entre el usuario y los documentos relevantes. |
PreciseLocation
Es información de ubicación precisa con varias opciones de representación.
| Representación JSON |
|---|
{
// The following is a list of mutually exclusive fields. At most one of the
// fields will be set in a response:
"point": {
object ( |
| Campos | |
|---|---|
| A continuación, se incluye una lista de campos mutuamente excluyentes. En una respuesta, se establecerá, como máximo, uno de los siguientes campos: | |
point |
Opcional. Es la ubicación representada por un punto de latitud y longitud. |
address |
Ubicación representada por una dirección en lenguaje natural. Se geocodificará más adelante y se convertirá en un punto o un polígono. |
| Fin de los campos mutuamente exclusivos. | |
PageInfo
Información detallada de la página
| Representación JSON |
|---|
{ "pageviewId": string, "pageCategory": string, "uri": string, "referrerUri": string } |
| Campos | |
|---|---|
pageviewId |
Es un ID único de una vista de página web. Este valor debe ser el mismo para todos los eventos del usuario activados desde la misma vista de página. Por ejemplo, la vista de una página de detalles del artículo podría activar varios eventos a medida que el usuario navega por la página. La propiedad Cuando se usan los informes de eventos del cliente con el píxel de JavaScript y Google Tag Manager, este valor se completa automáticamente. |
pageCategory |
Es la categoría más específica asociada a una página de categoría. Para representar la ruta de acceso completa de la categoría, usa el signo ">" para separar las diferentes jerarquías. Si ">" forma parte del nombre de la categoría, reemplázalo por otros caracteres. Las páginas de categorías incluyen páginas especiales, como las de ofertas o promociones. Por ejemplo, una página de ofertas especiales puede tener la siguiente jerarquía de categorías: Obligatorio para los eventos de |
uri |
Es la URL completa (window.location.href) de la página actual del usuario. Cuando se usan los informes de eventos del cliente con el píxel de JavaScript y Google Tag Manager, este valor se completa automáticamente. La longitud máxima es de 5,000 caracteres. |
referrerUri |
La URL de referencia de la página actual. Cuando se usan los informes de eventos del cliente con el píxel de JavaScript y Google Tag Manager, este valor se completa automáticamente. Sin embargo, algunas restricciones de privacidad del navegador pueden provocar que este campo aparezca vacío. |
DocumentInfo
Es la información detallada del documento asociada a un evento del usuario.
| Representación JSON |
|---|
{ "promotionIds": [ string ], "joined": boolean, // The following is a list of mutually exclusive fields. At most one of the // fields will be set in a response: "id": string, "name": string, "uri": string // End of mutually exclusive fields. "quantity": integer, "conversionValue": number } |
| Campos | |
|---|---|
promotionIds[] |
Son los IDs de las promociones asociadas con este documento. Actualmente, este campo está restringido a un máximo de un ID. |
joined |
Solo salida. Indica si se puede encontrar el documento al que se hace referencia en el almacén de datos. |
Es un descriptor obligatorio del
|
|
id |
ID del recurso |
name |
El nombre completo del recurso |
uri |
El URI de |
| Fin de los campos mutuamente exclusivos. | |
quantity |
Cantidad del documento asociado al evento del usuario. El valor predeterminado es 1. Por ejemplo, este campo es 2 si dos cantidades del mismo documento están involucradas en un evento Obligatorio para eventos de los siguientes tipos:
|
conversionValue |
Es opcional. El valor de conversión asociado a este documento. Debe establecerse si Por ejemplo, un valor de 1,000 significa que se dedicaron 1,000 segundos a ver un documento para el tipo de conversión |
PanelInfo
Es la información detallada del panel asociada a un evento del usuario.
| Representación JSON |
|---|
{
"panelId": string,
"displayName": string,
"documents": [
{
object ( |
| Campos | |
|---|---|
panelId |
Obligatorio. Es el ID del panel. |
displayName |
El nombre que se muestra en el panel. |
documents[] |
Es opcional. Son los IDs de los documentos asociados con este panel. |
panelPosition |
Posición ordenada del panel, si se muestra al usuario con otros paneles. Si se establece, también se debe establecer |
totalPanels |
Es la cantidad total de paneles, incluido este, que se muestran al usuario. Se debe establecer si se configura |
SearchInfo
Es información detallada sobre la búsqueda.
| Representación JSON |
|---|
{ "searchQuery": string, "orderBy": string, "offset": integer } |
| Campos | |
|---|---|
searchQuery |
Es la búsqueda del usuario. Consulta El valor debe ser una cadena codificada en UTF-8 con un límite de 5,000 caracteres. De lo contrario, se muestra un error Se requiere al menos uno de los parámetros |
orderBy |
Es el orden en el que se devuelven los productos, si corresponde. Consulta El valor debe ser una cadena codificada en UTF-8 con un límite de 1,000 caracteres. De lo contrario, se muestra un error Solo se puede configurar para eventos |
offset |
Es un número entero que especifica el desplazamiento actual para la paginación (la ubicación inicial indexada en 0, entre los productos que la API considera relevantes). Consulta Si este campo es negativo, se devuelve un Solo se puede configurar para eventos |
CompletionInfo
Es información detallada sobre la finalización, incluido el token de atribución de finalización y la información de finalización en la que se hizo clic.
| Representación JSON |
|---|
{ "selectedSuggestion": string, "selectedPosition": integer } |
| Campos | |
|---|---|
selectedSuggestion |
El usuario final seleccionó |
selectedPosition |
Posición |
TransactionInfo
Una transacción representa toda la transacción de compra.
| Representación JSON |
|---|
{ "currency": string, "transactionId": string, "value": number, "tax": number, "cost": number, "discountValue": number } |
| Campos | |
|---|---|
currency |
Obligatorio. Código de moneda. Utiliza el código ISO-4217 de tres caracteres. |
transactionId |
Es el ID de transacción con un límite de 128 caracteres. |
value |
Obligatorio. Es el valor total distinto de cero asociado a la transacción. Este valor puede incluir los costos de envío, los impuestos y otros ajustes al valor total que desees incluir. |
tax |
Son todos los impuestos asociados a la transacción. |
cost |
Son todos los costos asociados a los productos. Estos pueden ser costos de fabricación, gastos de envío que no paga el usuario final o cualquier otro costo, de modo que se cumpla la siguiente ecuación: |
discountValue |
Es el valor total de los descuentos aplicados a esta transacción. Esta cifra se debe excluir de Por ejemplo, si un usuario pagó el importe Esto significa que la ganancia se calcula de la misma manera, independientemente del valor del descuento, y que |
MediaInfo
Es información de eventos de usuarios específica de los medios.
| Representación JSON |
|---|
{ "mediaProgressDuration": string, "mediaProgressPercentage": number } |
| Campos | |
|---|---|
mediaProgressDuration |
Es el tiempo de progreso del contenido multimedia en segundos, si corresponde. Por ejemplo, si el usuario final terminó de mirar 90 segundos de un video de reproducción, Una duración en segundos con hasta nueve dígitos decimales, que terminan en “ |
mediaProgressPercentage |
El progreso del contenido multimedia se debe calcular solo con el valor de Este valor debe ser mayor o igual que Si no se trata de una reproducción o no se puede calcular el progreso (por ejemplo, una transmisión en directo en curso), este campo debe dejarse sin marcar. |
Comentarios
Es la información sobre los comentarios de los usuarios. Esta información se usará para fines de registro y métricas.
| Representación JSON |
|---|
{ "feedbackType": enum ( |
| Campos | |
|---|---|
feedbackType |
Obligatorio. Indica si el usuario proporciona comentarios positivos o negativos. Si el usuario da una valoración negativa, es posible que haya más detalles sobre dicha valoración. |
reasons[] |
Es opcional. Es el motivo por el que el usuario indica que no le gusta el contenido. |
comment |
Es opcional. Es el comentario adicional del usuario sobre los comentarios si este indica que no le gusta. |
conversationInfo |
La información de conversación relacionada cuando el usuario proporciona comentarios. |
llmModelVersion |
Es la versión del modelo de LLM que se usó para generar la respuesta. |
feedbackSource |
Es opcional. Componente de la IU del que proviene el comentario del usuario, que podría ser GOOGLE_CONSOLE, GOOGLE_WIDGET o GOOGLE_WEBAPP. |
componentVersion |
Es opcional. Es la versión del componente desde el que se envía este informe. |
dataTermsAccepted |
Es opcional. Indica si el cliente aceptó las condiciones de uso de datos. |
FeedbackType
Es el tipo de comentarios que brinda el usuario.
| Enums | |
|---|---|
FEEDBACK_TYPE_UNSPECIFIED |
Tipo de comentarios sin especificar. |
LIKE |
El usuario envía comentarios positivos. |
DISLIKE |
El usuario envía comentarios negativos. |
Motivo
Es el motivo por el que el usuario envía comentarios negativos.
| Enums | |
|---|---|
REASON_UNSPECIFIED |
Motivo sin especificar. |
INACCURATE_RESPONSE |
La respuesta es imprecisa. |
NOT_RELEVANT |
La respuesta no es pertinente. |
INCOMPREHENSIVE |
La respuesta es incompleta. |
OFFENSIVE_OR_UNSAFE |
La respuesta es ofensiva o no es segura. |
FORMAT_AND_STYLES |
La respuesta no tiene un formato adecuado. |
BAD_CITATION |
La respuesta no está bien asociada con la búsqueda. |
CANVAS_NOT_GENERATED |
No se generó el lienzo esperado para la respuesta. |
CANVAS_QUALITY_BAD |
El lienzo generado es de mala calidad (p.ej., es impreciso, está incompleto o tiene un formato deficiente). |
CANVAS_EXPORT_FAILED |
No se pudo exportar el lienzo generado (p.ej., no se completó correctamente la descarga o la acción de exportación externa). |
ConversationInfo
Es la información de la conversación, como el índice de la pregunta y el nombre de la sesión.
| Representación JSON |
|---|
{
"questionIndex": integer,
"session": string,
"query": {
object ( |
| Campos | |
|---|---|
questionIndex |
Índice de la entrada del usuario en los mensajes de la conversación. |
session |
Nombre de la sesión recién generada o continuada. |
query |
Obligatorio. Es la búsqueda del usuario. |
assistToken |
Es opcional. Es el token que se puede usar para recuperar el registro del asistente. |
answerQueryToken |
Es opcional. El token que se podría utilizar para obtener el registro de respuestas. |
FeedbackSource
Fuente de los comentarios según la integración.
| Enums | |
|---|---|
FEEDBACK_SOURCE_UNSPECIFIED |
Es la fuente de comentarios no especificada. |
GOOGLE_CONSOLE |
La fuente de comentarios es la consola de Google. |
GOOGLE_WIDGET |
La fuente de comentarios es el widget de Google. |
GOOGLE_WEBAPP |
La fuente de comentarios es la aplicación web de Google. |
GOOGLE_AGENTSPACE_MOBILE |
La fuente de comentarios es la aplicación móvil Google AgentSpace. |
Métodos |
|
|---|---|
|
Registra un único evento de usuario desde el navegador. |
|
Importación masiva de eventos de usuario. |
|
Borra de forma permanente todos los eventos del usuario especificados por el filtro proporcionado. |
|
Escribe un solo evento del usuario. |