Email + LinkedIn API for AI recruiting agents
Source candidates from LinkedIn, message them with personalized outreach, follow up over email when a connection accepts. Reply detection, multi-account quotas, and intent signals built in.
The problem
AI recruiting agents work the same loop a human recruiter does:
- Find candidates that match a role (search, filter on signals like job changes or engagement on relevant content)
- Send a personalized LinkedIn invite or InMail-style message
- Wait for the connection to accept
- Follow up — usually with email if you have it, otherwise another LinkedIn DM
- Hand off to a human recruiter the moment the candidate replies positively
Building this from scratch means: a LinkedIn scraper, an automation tool, an email API, a reply detection system, a sequence engine, multi-account quota management. Different vendor stack and same coordination headaches as cold sales — except recruiters care about the LinkedIn signal more.
What MyAgentMail gives recruiting agents specifically
- Job-change watchlist signals — track named individuals for role/company changes. Fires a webhook when a candidate moves to a new company. Most useful trigger for recruiting outreach there is.
- Engagement signals — watch a target company's LinkedIn page or a target person's profile for new engagers. People who comment on a Series B announcement are warm leads for that company's competitors.
- Keyword signals — watch LinkedIn for posts matching a firing rule like "open to senior backend role". Past 24h / week / month filtering for retroactive sourcing.
- Multi-account routing — connect 3 LinkedIn accounts, daily action ceiling triples. Auto-distribute polling across them so a single account never burns out.
- Cadence engine —
linkedin_invite → wait → linkedin_message → wait → email_followupwith branch conditions so the agent only emails after the connection accepts. - Reply detection — when the candidate replies, fires
cadence.lead.repliedand exits the sequence. Hand-off to a human happens cleanly.
Sketch
import { MyAgentMail } from "myagentmail";
const mam = new MyAgentMail({ apiKey: process.env.MYAGENTMAIL_KEY });
// Watch a target for engagers — anyone who likes/comments on
// posts from this person is potentially open to roles in that space.
const signal = await mam.linkedin.signals.create({
kind: "engagement",
name: "Engagers on @vc-partner",
target: "https://linkedin.com/in/some-vc",
cadence: "every_6h",
intentDescription: "Notify on senior IC engineers who engage. Filter out current employees of <our-target-company>.",
filterMinIntent: "medium",
webhookUrl: "https://our-app.com/hooks/linkedin",
});
// On webhook fire, agent reaches out:
async function handleEngagement(payload) {
const candidate = payload.engager;
// Personalize the invite using the post they engaged with as context.
const note = `Hi ${candidate.firstName}, saw your comment on the post about ${payload.post.excerpt.slice(0, 50)}. We're hiring senior engineers building similar — open to a chat?`;
await mam.linkedin.connections.send({
profileUrl: candidate.profileUrl,
message: note,
});
// Enroll into a follow-up cadence — invite, wait 5d for accept,
// then DM, then email if we have it.
await mam.cadences.enroll(cadenceId, [{ ...candidate }]);
}
What this saves you vs. existing tools
The recruiting tooling market is mature but expensive: HireEZ, LinkedIn Recruiter, Gem, Reachout. They're great for human recruiters in a UI; less great for AI agents that want to call an API.
Where MyAgentMail differs:
- Programmatic-first. CLI, MCP server, typed SDK, paired markdown docs at
/docs-md/<group>/<op>. You don't click; you call. - Real LinkedIn account control. Recruiter-only tools work in their own UI. With MyAgentMail your agent's actions look identical to manual LinkedIn use because they ARE on a real LinkedIn account you control.
- Email integrated. After the connection accepts, you can fall back to email without leaving the platform.
- Open to your own data. Push notes into your ATS, query your CRM during personalization, store the conversation history wherever you want.
Edge cases worth knowing
- LinkedIn Recruiter accounts — we don't currently support Recruiter-Lite or Recruiter Corporate features (InMail credits, Recruiter search filters). The agent uses the connected account's standard LinkedIn permissions. Most recruiting outreach works fine on Premium accounts; Recruiter is overkill for cold outreach anyway.
- Compliance — recruiting outreach is GDPR/regulated in many jurisdictions. We give you the infrastructure; the compliance sits with you. The CLI's browser-pairing auth means the customer's LinkedIn cookies never touch our servers in plaintext (AES-256-GCM at rest), which helps with the security narrative for enterprise.
- Volume per account — LinkedIn caps roughly 100 invitations/week per account regardless of tier. Connect more accounts to scale. Agency tier supports up to 60 sessions.
Pricing
LinkedIn add-on starts at $29/month (Solo: 2 sessions, 100 actions/day, 3 signals). Team is $99 for 15 sessions, Agency is $299 for 60 — recruiting often benefits from running multiple accounts in parallel to multiply weekly invite caps. Email module $5/month gets you a real follow-up inbox. 7-day free trial on both. See /pricing.
Related
14-day productized build. $10K flat, optional maintenance at $2K/month. We tune the firing rules, the drafter prompts, and the cadence to your ICP.
Other use cases
- For cold outreachBuild your own cold outreach system on MyAgentMailCold email + LinkedIn outreach infrastructure for indie hackers and small teams. Provisioned inboxes, real LinkedIn sessions, intent signals, server-side cadence engine. Drop-in alternative to Lemlist, Apollo, Instantly — with full data ownership.
- For sales agentsEmail + LinkedIn API for AI sales agentsBuild AI sales agents that actually work leads end-to-end — connect on LinkedIn, send personalized email, detect replies, branch the cadence, and follow up at the right moment. One API key, two channels, multi-tenant ready.
- For support agentsEmail API for AI customer support agentsBuild AI customer support agents that read inbound email, draft thoughtful replies, and learn from human edits before sending. Real inbox per agent, full thread state, drafts API for human-in-the-loop.
- For SaaS buildersMulti-tenant email + LinkedIn API for SaaS buildersBuild SaaS products that give each customer their own provisioned inbox and connected LinkedIn account. Workspace-isolated keys, per-tenant rate limits, scoped billing structures — multi-tenancy is first-class, not an afterthought.
- For transactional emailTransactional email API for AI-powered appsSend password resets, receipts, and notifications from AI-built apps. Provisioned inbox, custom domain, ZeptoMail-backed deliverability, and per-send open + click tracking with optional opt-out for privacy-sensitive sends.
Last reviewed 2026-05-02.