WebSockets Quickstart
Get started with real-time email event streaming
TypeScript
1 import { AgentMailClient } from "agentmail"; 2 3 const client = new AgentMailClient(); 4 5 async function main() { 6 const socket = await client.websockets.connect({ 7 apiKey: process.env.AGENTMAIL_API_KEY, 8 }); 9 10 socket.on("message", async (event) => { 11 if (event.type === "subscribed") { 12 console.log("Subscribed to", event.inboxIds); 13 } else if (event.eventType === "message.received") { 14 console.log(`Received message from: ${event.message.from}`); 15 } 16 }); 17 18 await socket.waitForOpen(); 19 20 socket.sendSubscribe({ 21 type: "subscribe", 22 inboxIds: ["my-agent@agentmail.to"], 23 }); 24 } 25 26 main();
Python
1 from agentmail import AgentMail, MessageReceivedEvent, Subscribe, Subscribed 2 3 client = AgentMail() 4 5 with client.websockets.connect() as socket: 6 socket.send_subscribe(Subscribe(inbox_ids=["my-agent@agentmail.to"])) 7 8 for event in socket: 9 if isinstance(event, Subscribed): 10 print(f"Subscribed to {event.inbox_ids}") 11 elif isinstance(event, MessageReceivedEvent): 12 msg = event.message 13 print(f"Received message from: {msg.from_}")
