Aperçu
Les marques sont mentionnées dans les recherches Google, les fils Reddit, les vidéos YouTube, les posts TikTok et les avis Amazon. Surveiller toutes les plateformes manuellement est impossible. Les outils d'entreprise facturent 500 $/mois et plus. Ce flux de travail utilise Scavio pour analyser toutes les plateformes quotidiennement à la recherche de mentions de marque et fournit un résumé unifié.
Déclencheur
Tous les jours à 9h pour l'équipe marketing.
Planification
Quotidien
Étapes du workflow
Charger les mots-clés de marque
Lire la liste des noms de marque, noms de produits et hashtags de marque à surveiller.
Rechercher sur chaque plateforme
Pour chaque mot-clé de marque, rechercher sur Google, Reddit, YouTube, TikTok et Amazon via l'API Scavio.
Classer les mentions
Classer chaque mention comme positive, négative ou neutre en fonction du contexte de l'extrait.
Dédoublonner et prioriser
Supprimer les mentions en double, prioriser les mentions à fort engagement ou négatives.
Envoyer le résumé quotidien
Formater les mentions en un résumé quotidien regroupé par plateforme et sentiment. Envoyer sur Slack ou par email.
Implémentation Python
import requests, os, json
from datetime import datetime
API_KEY = os.environ["SCAVIO_API_KEY"]
HS = {"x-api-key": API_KEY, "Content-Type": "application/json"}
HT = {"Authorization": f"Bearer {API_KEY}", "Content-Type": "application/json"}
PLATFORMS = ["google", "reddit", "youtube", "amazon"]
def search_platform(brand: str, platform: str) -> list:
resp = requests.post(
"https://api.scavio.dev/api/v1/search",
headers=HS,
json={"query": brand, "platform": platform, "country_code": "us"},
timeout=10,
)
data = resp.json()
key = "video_results" if platform == "youtube" else "organic_results"
return [{"title": r.get("title", ""), "url": r.get("link", ""), "snippet": r.get("snippet", ""), "platform": platform}
for r in data.get(key, [])[:5]]
def search_tiktok(brand: str) -> list:
resp = requests.post(
"https://api.scavio.dev/api/v1/tiktok/search",
headers=HT,
json={"keyword": brand},
timeout=15,
)
return [{"title": v.get("desc", "")[:80], "url": f"https://tiktok.com/@{v.get('author', {}).get('unique_id', '')}", "platform": "tiktok",
"plays": v.get("stats", {}).get("play_count", 0)}
for v in resp.json().get("videos", [])[:5]]
def daily_brand_monitor(brands: list) -> dict:
all_mentions = []
for brand in brands:
for platform in PLATFORMS:
all_mentions.extend(search_platform(brand, platform))
all_mentions.extend(search_tiktok(brand))
return {
"date": datetime.now().strftime("%Y-%m-%d"),
"total_mentions": len(all_mentions),
"by_platform": {p: len([m for m in all_mentions if m["platform"] == p]) for p in PLATFORMS + ["tiktok"]},
"top_mentions": all_mentions[:20],
}
report = daily_brand_monitor(["scavio"])
print(f"Date: {report['date']}, Total mentions: {report['total_mentions']}")
for platform, count in report["by_platform"].items():
print(f" {platform}: {count} mentions")Implémentation JavaScript
const HS = {'x-api-key': process.env.SCAVIO_API_KEY, 'Content-Type': 'application/json'};
const HT = {'Authorization': 'Bearer '+process.env.SCAVIO_API_KEY, 'Content-Type': 'application/json'};
const PLATFORMS = ['google','reddit','youtube','amazon'];
async function searchPlatform(brand, platform) {
const r = await fetch('https://api.scavio.dev/api/v1/search', {method:'POST', headers:HS, body:JSON.stringify({query:brand, platform, country_code:'us'})});
const d = await r.json();
const key = platform==='youtube' ? 'video_results' : 'organic_results';
return (d[key]||[]).slice(0,5).map(r=>({title:r.title||'', url:r.link||'', snippet:r.snippet||'', platform}));
}
async function searchTiktok(brand) {
const r = await fetch('https://api.scavio.dev/api/v1/tiktok/search', {method:'POST', headers:HT, body:JSON.stringify({keyword:brand})});
return ((await r.json()).videos||[]).slice(0,5).map(v=>({title:(v.desc||'').slice(0,80), url:'https://tiktok.com/@'+(v.author?.unique_id||''), platform:'tiktok', plays:v.stats?.play_count||0}));
}
async function dailyBrandMonitor(brands) {
const mentions = [];
for (const brand of brands) {
for (const p of PLATFORMS) mentions.push(...await searchPlatform(brand, p));
mentions.push(...await searchTiktok(brand));
}
const byPlatform = {};
for (const m of mentions) byPlatform[m.platform] = (byPlatform[m.platform]||0) + 1;
return {date:new Date().toISOString().slice(0,10), totalMentions:mentions.length, byPlatform, topMentions:mentions.slice(0,20)};
}
const report = await dailyBrandMonitor(['scavio']);
console.log('Date: '+report.date+', Total: '+report.totalMentions);
for (const [p,c] of Object.entries(report.byPlatform)) console.log(' '+p+': '+c);Plateformes utilisées
Recherche web avec graphe de connaissances, PAA et aperçus IA
Communauté, publications et commentaires imbriqués de n'importe quel subreddit
YouTube
Recherche de vidéos avec transcriptions et métadonnées
Amazon
Recherche de produits avec prix, notes et avis
TikTok
Découverte de vidéos tendance, créateurs et produits