Intercom is a customer messaging platform owning email, chat, and ticketing. It sends transactional and engagement emails via its own infra and accepts inbound email to conversations.
Forward MailKite inbound to Intercom conversations. See /docs/integrations/intercom.
Read the full setup guideA minimal, copy-paste starter. Swap in your own domain and API key.
import { verifyWebhook } from "@mailkite/client";
// MailKite POSTs every inbound email at your domain as JSON.
// Point a route at this handler in the MailKite dashboard.
export default async function handler(req: Request) {
const raw = await req.text();
const sig = req.headers.get("x-mailkite-signature") ?? "";
// Reject anything not signed by your webhook secret
const ok = await verifyWebhook(sig, raw, process.env.MK_WEBHOOK_SECRET!);
if (!ok) return new Response("bad signature", { status: 401 });
const email = JSON.parse(raw);
// Route into Intercom: open a ticket, create a task, store a record
await routeIntoName(email); // email.from · email.subject · email.text
return new Response(JSON.stringify({ ok: true }));
} Point a domain, set one SMTP endpoint, send your first email in minutes. Unlimited domains, no credit card.