Les messages génériques sont ignorés. Les SDR qui réservent des réunions en 2026 envoient des notes personnalisées qui font référence au post LinkedIn récent du prospect, aux dernières nouvelles de son entreprise ou à un fil Reddit dans son domaine. Ce tutoriel montre comment construire un agent de recherche SDR qui récupère automatiquement ces trois signaux pour chaque prospect.
Prérequis
- Python 3.8+
- Une clé API Scavio
- Une liste de prospects Apollo ou HubSpot
- API OpenAI ou Claude pour le brouillon de personnalisation
Parcours
Étape 1: Charger le prospect
Commencez par un nom de prospect et une entreprise.
prospect = {'name': 'Jane Doe', 'company': 'Acme Corp', 'title': 'Head of Growth'}Étape 2: Récupérer les posts LinkedIn récents
Utilisez Google SERP pour trouver les posts LinkedIn récents du prospect.
import requests, os
API_KEY = os.environ['SCAVIO_API_KEY']
def linkedin_posts(name):
r = requests.post('https://api.scavio.dev/api/v1/search',
headers={'x-api-key': API_KEY},
json={'query': f'site:linkedin.com/posts "{name}"', 'num_results': 5})
return r.json().get('organic_results', [])Étape 3: Récupérer les actualités récentes de l'entreprise
Google News pour les dernières mentions de l'entreprise.
def company_news(company):
r = requests.post('https://api.scavio.dev/api/v1/search',
headers={'x-api-key': API_KEY},
json={'query': f'"{company}"', 'tbm': 'nws'})
return r.json().get('news_results', [])[:3]Étape 4: Récupérer les discussions Reddit dans le domaine du prospect
Récupérer les fils Reddit récents pertinents pour le rôle du prospect.
def reddit_signals(title, company):
r = requests.post('https://api.scavio.dev/api/v1/search',
headers={'x-api-key': API_KEY},
json={'platform': 'reddit', 'query': f'{title} {company}', 'time': 'month'})
return r.json().get('posts', [])[:3]Étape 5: Rédiger un email personnalisé
Fournissez tous les signaux à Claude ou GPT pour rédiger l'email à froid personnalisé.
import anthropic
client = anthropic.Anthropic()
def draft_email(prospect, posts, news, reddit):
context = f'LinkedIn: {posts}\nNews: {news}\nReddit: {reddit}'
resp = client.messages.create(
model='claude-sonnet-4-6',
max_tokens=500,
messages=[{'role': 'user', 'content': f'Write a 3-sentence cold email to {prospect["name"]} at {prospect["company"]}. Context: {context}'}]
)
return resp.content[0].textExemple Python
import os, requests
import anthropic
API_KEY = os.environ['SCAVIO_API_KEY']
claude = anthropic.Anthropic()
def research(prospect):
posts = requests.post('https://api.scavio.dev/api/v1/search', headers={'x-api-key': API_KEY},
json={'query': f'site:linkedin.com/posts "{prospect["name"]}"'}).json().get('organic_results', [])[:3]
news = requests.post('https://api.scavio.dev/api/v1/search', headers={'x-api-key': API_KEY},
json={'query': f'"{prospect["company"]}"', 'tbm': 'nws'}).json().get('news_results', [])[:3]
reddit = requests.post('https://api.scavio.dev/api/v1/search', headers={'x-api-key': API_KEY},
json={'platform': 'reddit', 'query': prospect['title'], 'time': 'month'}).json().get('posts', [])[:3]
return {'posts': posts, 'news': news, 'reddit': reddit}
prospect = {'name': 'Jane Doe', 'company': 'Acme Corp', 'title': 'Head of Growth'}
signals = research(prospect)
print(signals)Exemple JavaScript
const API_KEY = process.env.SCAVIO_API_KEY;
async function scavio(body) {
const r = await fetch('https://api.scavio.dev/api/v1/search', {
method: 'POST',
headers: { 'x-api-key': API_KEY, 'Content-Type': 'application/json' },
body: JSON.stringify(body)
});
return r.json();
}
const prospect = { name: 'Jane Doe', company: 'Acme Corp', title: 'Head of Growth' };
const [posts, news, reddit] = await Promise.all([
scavio({ query: `site:linkedin.com/posts "${prospect.name}"` }),
scavio({ query: `"${prospect.company}"`, tbm: 'nws' }),
scavio({ platform: 'reddit', query: prospect.title, time: 'month' })
]);
console.log({ posts: posts.organic_results?.slice(0, 3), news: news.news_results?.slice(0, 3), reddit: reddit.posts?.slice(0, 3) });Sortie attendue
For each prospect, the agent returns 3 LinkedIn posts, 3 company news items, and 3 Reddit threads in the prospect's space. Claude then drafts a 3-sentence cold email that references the most specific signal (e.g. 'Saw your post about Q4 pipeline hitting plan...').