Un post r/micro_saas a montré que les messages LinkedIn génériques sont ignorés. La solution : mentionner quelque chose de spécifique sur l'entreprise cible — un article récent, un lancement de produit, une annonce d'embauche. Ce tutoriel construit une couche de citations qui enrichit les messages de prospection avec des références réelles et vérifiables issues des données de recherche.
Prérequis
- Clé API Scavio
- Python 3.8+
- Liste d'entreprises ou de personnes cibles
Parcours
Étape 1: Rechercher l'entreprise cible
Rechercher des actualités et mentions récentes.
import requests, os
H = {'x-api-key': os.environ['SCAVIO_API_KEY']}
def research_company(company_name):
news = requests.post('https://api.scavio.dev/api/v1/search',
headers=H,
json={'platform': 'google', 'query': f'{company_name} news 2026'}).json()
reddit = requests.post('https://api.scavio.dev/api/v1/search',
headers=H,
json={'platform': 'reddit', 'query': company_name}).json()
return {
'news': news.get('organic_results', [])[:3],
'reddit': reddit.get('results', [])[:3]
}Étape 2: Extraire les détails dignes de citation
Trouver des faits spécifiques et référençables.
def extract_citations(research):
citations = []
for article in research['news']:
title = article.get('title', '')
link = article.get('link', '')
if any(kw in title.lower() for kw in ['launch', 'raise', 'announce', 'hire', 'expand', 'partner']):
citations.append({'type': 'news', 'title': title, 'url': link})
for post in research['reddit']:
if post.get('upvotes', 0) > 20:
citations.append({'type': 'reddit', 'title': post.get('title', ''), 'url': post.get('url', '')})
return citationsÉtape 3: Générer un message personnalisé avec des citations
Intégrer la citation dans un message de prospection naturel.
def personalized_message(prospect_name, company, citations, your_offer):
if not citations:
return None # Skip if no good citations found
cite = citations[0]
return (f'Hi {prospect_name},\n\n'
f'I saw {company} was mentioned in "{cite["title"]}" -- '
f'congrats on the momentum.\n\n'
f'I work on {your_offer} and thought it might be relevant '
f'given what you are building. Worth a quick look?\n\n'
f'Reference: {cite["url"]}')Étape 4: Traiter par lot une liste de prospects
Enrichir toute une liste de prospection avec des citations.
import csv
def enrich_outreach_list(input_csv, output_csv, your_offer):
with open(input_csv) as fin, open(output_csv, 'w', newline='') as fout:
reader = csv.DictReader(fin)
writer = csv.DictWriter(fout, fieldnames=['name', 'company', 'message', 'citation_url'])
writer.writeheader()
for row in reader:
research = research_company(row['company'])
citations = extract_citations(research)
msg = personalized_message(row['name'], row['company'], citations, your_offer)
if msg:
writer.writerow({'name': row['name'], 'company': row['company'],
'message': msg, 'citation_url': citations[0]['url']})Exemple Python
import os, requests
H = {'x-api-key': os.environ['SCAVIO_API_KEY']}
def cite_enrich(company):
data = requests.post('https://api.scavio.dev/api/v1/search', headers=H,
json={'platform': 'google', 'query': f'{company} news 2026'}).json()
for r in data.get('organic_results', [])[:3]:
print(f"Citation: {r['title']}\n URL: {r['link']}")
cite_enrich('Stripe')Exemple JavaScript
const res = await fetch('https://api.scavio.dev/api/v1/search', {
method: 'POST',
headers: {'x-api-key': process.env.SCAVIO_API_KEY, 'Content-Type': 'application/json'},
body: JSON.stringify({platform: 'google', query: `${company} news 2026`})
});
const data = await res.json();
const citation = data.organic_results?.[0];Sortie attendue
Enriched outreach CSV with personalized messages containing real citations. 2 queries per prospect (Google + Reddit) = $0.01/prospect.