Resumen
Monitorea palabras clave objetivo diario for AI Overview citaciones, rastrea citacion frecuencia sobre time, y alertas cuando citacion rates cambio significativamente. Proporciona datos for AEO/GEO optimizacion decisions.
Desencadenador
Diario at 7 AM UTC via cron
Programación
Diario at 7 AM UTC
Pasos del flujo de trabajo
Cargar lista de palabras clave
Leer palabras clave objetivo de un CSV o base de datos. Cada palabra clave tiene un dominio objetivo to rastrear.
Consulta Google for cada palabra clave
Enviar cada palabra clave to Scavio's Google endpoint de busqueda. Extraer AI Overview contenido, fragmento destacado, y posiciones organicas.
Verificar for citaciones
Analizar AI Overview y fragmento destacado text for menciones of el dominio objetivo o nombre de marca.
Almacenar resultados
Agregar citacion datos (palabra clave, date, cited_in_ai_overview, cited_in_featured, organic_position) to un serie temporal almacenar.
Calcular tendencias
Comparar today's tasa de citacion to el 7-dia promedio movil. Marcar palabras clave donde tasa de citacion dropped mas than 20%.
Enviar alertas
Publicar significativo cambios to Slack con palabra clave, direction of cambio, y actual vs historico tasa de citacion.
Implementacion en Python
import requests, os, json
from datetime import date
H = {"x-api-key": os.environ["SCAVIO_API_KEY"]}
BRAND = "scavio"
KEYWORDS = ["best search api 2026", "serp api for agents", "multi-platform search api"]
results = []
for kw in KEYWORDS:
r = requests.post("https://api.scavio.dev/api/v1/search", headers=H,
json={"platform": "google", "query": kw}, timeout=15).json()
ai = r.get("aiOverview", "")
featured = r.get("featuredSnippet", {}).get("text", "")
organic = r.get("organic", [])
pos = next((i+1 for i, o in enumerate(organic)
if BRAND in o.get("link", "").lower()), None)
results.append({
"keyword": kw, "date": str(date.today()),
"ai_overview_cited": BRAND in ai.lower() if ai else False,
"featured_cited": BRAND in featured.lower() if featured else False,
"organic_position": pos
})
for r in results:
print(json.dumps(r))Implementacion en JavaScript
const H = {"x-api-key": process.env.SCAVIO_API_KEY, "Content-Type": "application/json"};
const BRAND = "scavio";
const KEYWORDS = ["best search api 2026", "serp api for agents"];
for (const kw of KEYWORDS) {
const r = await fetch("https://api.scavio.dev/api/v1/search", {
method: "POST", headers: H,
body: JSON.stringify({platform: "google", query: kw})
}).then(r => r.json());
const ai = r.aiOverview || "";
const featured = r.featuredSnippet?.text || "";
const pos = (r.organic || []).findIndex(o =>
o.link?.toLowerCase().includes(BRAND)) + 1;
console.log(JSON.stringify({
keyword: kw, aiCited: ai.toLowerCase().includes(BRAND),
featuredCited: featured.toLowerCase().includes(BRAND),
organicPosition: pos || null
}));
}Plataformas utilizadas
Búsqueda web con grafo de conocimiento, PAA y resúmenes de IA