Welcome
The note that goes out when an account is created.
A welcome after signup. A password reset. A receipt. An invite. Pigeon is the API that sends them.
Free to start. 3,500 emails a month. No card.
import { Pigeon } from "pigeon"; const pigeon = new Pigeon(process.env.PIGEON_API_KEY, { baseUrl: "https://pigeonfs.com" }); const email = await pigeon.emails.send({ from: "Ada <ada@yourdomain.com>", to: ["person@example.com"], subject: "Reset your password", html: "<p>Choose a new password.</p>" });
The same call exists in Python, Go, Java, Rust, Elixir, and over SMTP when the app already speaks it.
Someone signs up, forgets a password, pays, or gets invited. Your app already knows that moment. Pigeon delivers the message.
The note that goes out when an account is created.
A one-time link when someone cannot sign in.
Proof of payment, from the same domain as the product.
A teammate, a guest, or a file that finished exporting.
01
Pigeon lists the DNS records. Mail goes out once the domain status says Verified.
02
A sending key calls the API or SMTP. A full-access key can manage domains too.
03
Welcome, reset, receipt, invite. The dashboard keeps a log of each call.
Pigeon is the part the app talks to: the domain, the key, the log, and the monthly plan.
Create an account, add the DNS records, and send a welcome before you invite anyone else.
Get startedWe can't find the internet
Attempting to reconnect
Something went wrong!
Attempting to reconnect