====== AgentMail ====== //Vytvořeno: **16.5.2026** | Aktualizováno: **~~LASTMOD~~**// [[https://www.agentmail.to/|AgentMail]] je API-first e-mailová platforma pro AI agenty. Cílem není přidat AI do existujícího e-mailového klienta, ale dát agentům vlastní e-mailové schránky, přes které mohou posílat, přijímat, číst a zpracovávat e-maily programově. ===== Proč je to zajímavé ===== AgentMail řeší praktický problém agentních workflow: mnoho reálných služeb stále komunikuje přes e-mail. Agent tak často potřebuje vlastní adresu, umět přijmout potvrzovací kód, přečíst odpověď, pracovat s vláknem nebo odeslat navazující zprávu. Z webu a dokumentace jsou zajímavé hlavně tyto body: * **Samostatné inboxy pro agenty** – schránku lze vytvořit přes API, SDK nebo CLI. * **Dvousměrná komunikace** – není to jen transactional e-mail API pro odesílání notifikací, ale platforma pro čtení, odpovědi a práci s vlákny. * **Realtime příjem** – příchozí zprávy lze řešit přes [[https://docs.agentmail.to/webhook-setup|webhooky]] nebo [[https://docs.agentmail.to/websockets|WebSockets]]. WebSockets jsou praktické tam, kde agent nemá veřejnou URL. * **Agentní use-cases** – browser agenti pro čtení OTP kódů, plánování schůzek, zpracování příloh nebo routing zákaznické podpory. * **Vývojářské rozhraní** – REST API, Python SDK, TypeScript SDK, CLI a podle pricing stránky také MCP Server. * **E-mailová infrastruktura** – vlastní domény, SPF/DKIM/DMARC, suppression list, metriky, webhooks a podle tarifu i dedikované IP nebo enterprise deployment. ===== Quickstart ===== [[https://docs.agentmail.to/quickstart|Quickstart dokumentace]] popisuje dva režimy: použití přes konzoli pro vývojáře a programatický sign-up pro agenta. Agentí sign-up je zajímavý tím, že první registrace může proběhnout bez dashboardu: agent pošle lidský e-mail a username, dostane API key, inbox ID a organization ID, a člověku přijde OTP kód. Zjednodušený příklad registrace agenta přes cURL: curl -X POST https://api.agentmail.to/agent/sign-up \ -H "Content-Type: application/json" \ -d '{ "human_email": "you@example.com", "username": "my-agent" }' Ověření OTP: export AGENTMAIL_API_KEY="am_..." curl -X POST https://api.agentmail.to/agent/verify \ -H "Authorization: Bearer $AGENTMAIL_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "otp_code": "123456" }' ===== Vytvoření inboxu ===== Podle [[https://docs.agentmail.to/api-reference/inboxes/create|API reference pro vytvoření inboxu]] se schránka vytváří přes endpoint ''POST /v0/inboxes''. Parametry ''username'' a ''domain'' jsou volitelné; pokud ''domain'' není uvedená, používá se výchozí doména ''agentmail.to''. Pro opakovatelné agenty je důležitý parametr ''client_id'', protože umožňuje bezpečné retry bez vytvoření duplicitní schránky. curl -X POST https://api.agentmail.to/v0/inboxes \ -H "Authorization: Bearer $AGENTMAIL_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "username": "support-agent", "domain": "agentmail.to", "client_id": "support-agent-inbox-v1" }' Stejný princip je v SDK: from agentmail import AgentMail client = AgentMail(api_key="am_...") inbox = client.inboxes.create(client_id="support-agent-inbox-v1") ===== Příjem a zpracování e-mailů ===== AgentMail nabízí několik způsobů, jak dostat příchozí e-mail do agenta: * **Webhooks** – vhodné pro produkci. AgentMail posílá HTTP požadavky na veřejný endpoint aplikace. * **WebSockets** – vhodné pro lokální vývoj, desktop agenty nebo prostředí bez veřejné URL. * **Polling přes API** – jednodušší varianta, ale méně vhodná pro realtime workflow. U webhooků je potřeba počítat s běžnými produkčními pravidly: rychle vrátit ''200 OK'', zpracování dělat na pozadí, logovat neúspěšné doručení a ověřovat podpis webhooků. AgentMail v dokumentaci uvádí podpisy přes Svix. U agentů je zároveň nutné filtrovat vlastní odchozí zprávy, jinak může vzniknout smyčka, kdy agent odpovídá sám sobě. Pro práci s odpověďmi je zajímavé, že zprávy mohou obsahovat pole ''extracted_text'' a ''extracted_html''. Ta mají obsahovat novou část odpovědi bez citované historie vlákna, což je pro LLM agenty praktičtější než zpracovávat celý e-mailový thread. ==== Webhooky ==== Podle [[https://docs.agentmail.to/webhooks-overview|Webhooks Overview]] jsou webhooky hlavní mechanismus pro event-driven zpracování e-mailů v reálném čase. AgentMail tím nenahrazuje vlastní aplikační logiku ani „nespouští agenta“ přímo. Při události pošle HTTP ''POST'' na zaregistrovanou URL a teprve endpoint v aplikaci rozhodne, co se má stát dál. Typický tok pro příchozí e-mail: příchozí e-mail ↓ AgentMail vytvoří event message.received ↓ AgentMail pošle HTTP POST na webhook endpoint ↓ aplikace rychle vrátí 200 OK ↓ background job předá e-mail agentovi ↓ agent zprávu zpracuje, odpoví, označí nebo eskaluje Pro běžný příjem nových zpráv se používá event ''message.received''. Při vytvoření webhooku lze explicitně určit, které typy eventů má endpoint dostávat: client.webhooks.create( url="https://example.com/webhooks/agentmail", event_types=["message.received", "message.sent"], ) Stejné nastavení přes CLI: agentmail webhooks create \ --url https://example.com/webhooks/agentmail \ --event-type message.received \ --event-type message.sent Webhook endpoint musí být dostupný z internetu. Lokální adresa typu ''localhost'' pro produkční webhook nestačí, protože AgentMail se na ni ze svého serveru nedostane. Pro lokální vývoj je potřeba tunel typu ngrok nebo Cloudflare Tunnel. Pokud aplikace nemá mít veřejnou URL, dokumentace doporučuje místo webhooků použít WebSockets. Praktické poznámky: * Endpoint by měl odpovědět rychle ''200 OK'' a vlastní zpracování přesunout do background jobu, aby webhook netimeoutoval. * Payload obsahuje ''event_type'', ''event_id'' a objekt podle typu události, u ''message.received'' tedy hlavně objekt ''message''. * ''event_id'' je vhodné ukládat kvůli idempotenci, aby se stejný webhook nezpracoval dvakrát. * Payload webhooku má limit 1 MB. Pokud je zpráva větší, AgentMail může vynechat pole ''text'' a ''html''; plný obsah je pak potřeba stáhnout přes API podle ''inbox_id'' a ''message_id''. * Přílohy jsou v payloadu jen jako metadata. Samotný obsah příloh se stahuje zvlášť přes API. * Spam, blocked a unauthenticated zprávy nejsou ve výchozím režimu posílané jako běžný ''message.received''. Pokud jsou potřeba, musí se explicitně přihlásit eventy ''message.received.spam'', ''message.received.blocked'' nebo ''message.received.unauthenticated''. * Endpoint má ověřovat podpis webhooku. AgentMail v dokumentaci zmiňuje Svix a ''webhook.secret''. Z pohledu agentního workflow je webhook jen spouštěč. Vlastní agent může běžet jako worker, serverless funkce, queue consumer nebo jiný proces, který z payloadu dostane identifikaci zprávy, načte případně plný obsah a provede doménovou akci. ===== Idempotence a bezpečné retry ===== [[https://docs.agentmail.to/idempotency|Idempotentní požadavky]] jsou důležité hlavně u agentů, kteří mohou opakovat request po timeoutu nebo chybě sítě. AgentMail podporuje ''client_id'' u create operací, například při vytváření inboxů, webhooků, pods nebo draftů. Důležité omezení: ''client_id'' se podle dokumentace používá pro vytváření resource, ne jako univerzální ochrana proti duplicitnímu odeslání e-mailu. U kritických zpráv je vhodnější vytvořit draft s deterministickým ''client_id'', ověřit stav a teprve potom draft odeslat. ===== Vlastní domény a deliverability ===== Pro testování stačí výchozí doména ''agentmail.to''. Pro produkci dává větší smysl vlastní doména nebo subdoména, protože sdílená doména má sdílenou reputaci. Pokud už firma používá Gmail, Outlook nebo jiného poskytovatele na hlavní doméně, dokumentace k [[https://docs.agentmail.to/knowledge-base/mx-record-conflicts|MX record conflicts]] doporučuje použít samostatnou subdoménu, například ''agents.example.com''. Typický model: * ''example.com'' zůstane pro lidský tým v Gmailu nebo Outlooku, * ''agents.example.com'' se nastaví pro AgentMail, * agenti posílají a přijímají e-maily z adres typu ''support@agents.example.com''. Při plném příjmu e-mailů na root doméně by bylo nutné změnit MX záznamy tak, aby příchozí pošta šla do AgentMailu. To by ovlivnilo veškerý inbound mail pro danou doménu, takže je to vhodné jen ve specifických scénářích. ===== Ceny a limity ===== [[https://www.agentmail.to/pricing|Pricing stránka]] v době rešerše uváděla tyto základní tarify: ^ Tarif ^ Cena ^ Inboxy ^ E-maily za měsíc ^ Úložiště ^ Vlastní domény ^ | Free | $0 / měsíc | 3 | 3 000 | 3 GB | ne | | Developer | $20 / měsíc | 10 | 10 000 | 10 GB | 10 | | Startup | $200 / měsíc | 150 | 150 000 | 150 GB | 150 | | Enterprise | individuální | vlastní | vlastní | vlastní | vlastní | Pricing stránka také uvádí, že Free tarif nevyžaduje platební kartu. Ve srovnávací tabulce jsou jako dostupné funkce napříč tarify uvedené například threads, labels, attachments, drafts, schedule send, SDKs a MCP Server. Vyšší tarify přidávají více inboxů, domén, webhook endpointů, týmových členů a enterprise funkce. ===== Kdy to dává smysl ===== AgentMail vypadá nejzajímavěji pro situace, kde AI agent potřebuje samostatnou e-mailovou identitu a obousměrnou komunikaci: * browser automation a registrace do služeb přes e-mailové OTP, * zákaznická podpora, kde agent třídí a odpovídá na příchozí zprávy, * sales nebo outreach agenti s více inboxy, * zpracování příloh, faktur a dokumentů, * agentní workflow, kde je e-mail integrační vrstva mezi externími lidmi/službami a interní logikou. Naopak pro jednoduché transactional e-maily typu „pošli notifikaci z aplikace“ může být zbytečně specializovaný. Hlavní hodnota je v tom, že agent dostane vlastní inbox, může držet kontext vláken a reagovat na příchozí komunikaci. ===== Poznámky k ověření ===== Tento zápis vychází z veřejného webu, pricing stránky a dokumentace. Nebyl proveden praktický test s reálným API klíčem, doménou ani doručitelností. Před produkčním nasazením je potřeba ověřit hlavně DNS nastavení, chování webhooků/WebSockets a reálnou deliverability na cílových doménách. ===== Zdroje ===== * [[https://www.agentmail.to/|AgentMail – homepage]] * [[https://docs.agentmail.to/quickstart|AgentMail Quickstart]] * [[https://docs.agentmail.to/api-reference/inboxes/create|Create Inbox API reference]] * [[https://docs.agentmail.to/webhook-setup|Webhook setup]] * [[https://docs.agentmail.to/webhooks-overview|Webhooks Overview]] * [[https://docs.agentmail.to/websockets|WebSockets]] * [[https://docs.agentmail.to/idempotency|Idempotent Requests]] * [[https://docs.agentmail.to/knowledge-base/mx-record-conflicts|MX record conflicts]] * [[https://www.agentmail.to/pricing|AgentMail pricing]]