Andrew Parra EN

Lab · En el trabajo · iBuy / 6ave.com

Reportes de anuncios de solo lectura

Un módulo en el servidor que descarga cada día los reportes de Best Buy Ads (MyAds) y que, por diseño, no puede cambiar una campaña.

Estado
En producción
Quién lo usa
El equipo de anuncios y publicaciones, a través de la pestaña Best Buy Ads de PublishOS, la app del teléfono y un resumen diario.
Hecho con
Node.js en Render · Upstash Redis · extensión de Chrome (Manifest V3) · Claude API para el resumen diario

El filtro de la lista permitida

Lista permitida · llamadas de reportes aprobadas · una a la vez, espaciadas

  1. reporte de campañas · día✓ permitida
  2. reporte de productos · día✓ permitida
  3. reporte de palabras clave · día✓ permitida
  4. cambiar puja✕ Rechazada · no puede escribir

Registro de auditoría Ejemplo

  1. 06:00:04 · reporte de campañas · 200 · 182 KB
  2. 06:00:09 · reporte de productos · 200 · 96 KB
  3. 06:00:15 · reporte de palabras clave · 200 · 412 KB

Los resultados se leen como ventas atribuidas, nunca se les llama pedidos.

Cada llamada se compara con una lista corta de llamadas de reportes aprobadas antes de salir del servidor. Las solicitudes de escritura se rechazan de entrada.

El problema

MyAds no ofrece acceso a reportes de servidor a servidor, así que el rendimiento de los anuncios se tenía que revisar a mano en el portal. El equipo quería datos diarios unidos a sus publicaciones, sin ninguna posibilidad de que una herramienta automática tocara una campaña activa.

Cómo funciona

Usa el inicio de sesión existente

Una extensión de Chrome complementaria le pasa al servidor la sesión del equipo en el portal. No se guarda ninguna contraseña.

Cada día completo

Cada mañana descarga el día anterior por tienda (campañas, productos, palabras clave, ubicaciones, plataformas) y recupera cualquier día que haya faltado.

Solo llamadas de la lista permitida

Cada llamada se compara con una lista corta de llamadas de reportes aprobadas antes de salir del servidor; cualquier otra se rechaza.

Espaciadas y con tope

Las solicitudes corren una a la vez con pausas; cada ejecución planifica primero cuántas solicitudes hará y se detiene si se pasa.

Alimenta las herramientas del equipo

Vistas de anuncios por periodo, una lista de pendientes, hojas de cálculo de palabras clave negativas para que una persona las revise, y un resumen diario escrito por Claude que recomienda acciones y no cambia nada.

Dónde entra la IA

  • Claude escribe un resumen diario breve a partir de las vistas de 7 y 30 días: qué cambió, qué hacer, qué vigilar.

Salvaguardas

No puede escribir

Las solicitudes de escritura se rechazan de entrada. Nada que cambie campañas, pujas, presupuestos, palabras clave o productos está al alcance.

Todo queda registrado

Cada solicitud queda registrada para auditoría: hora, qué llamada, estado y tamaño.

Lenguaje honesto

Los resultados son “unidades atribuidas” y “ventas atribuidas”, nunca pedidos.

Notas de ingeniería

Límites de almacenamiento

Cuando la base de datos se llenó, el detalle de palabras clave pasó a una ventana de 7 días que luego se consolida, y los conjuntos de datos grandes se comprimen (unas 6.5× más pequeños), algo que se probó en una base de datos llena simulada antes de la migración en producción.

Límites de memoria

Los datos de palabras clave se procesan un día a la vez y los resultados se guardan en caché, porque recalcularlos estaba dejando al servidor sin memoria.

Una alerta, no cientos

Las alertas duplicadas se suprimen durante seis horas, así que una sesión vencida envía una sola notificación.