Drop-in for Resend
Same paths, same request and response shapes, same error format, same webhook signing. Point RESEND_BASE_URL at us and ship.
import { SpacePost } from "@spacepost/node";
const spacepost = new SpacePost(process.env.SPACEPOST_API_KEY);
const { data, error } = await spacepost.emails.send({ from: "Acme <onboarding@test.spacepost.dev>", to: ["delivered@test.spacepost.dev"], subject: "Hello from SpacePost", html: "<p>It works.</p>",});
if (error) throw new Error(`${error.name}: ${error.message}`);console.log(data.id);curl -X POST https://api.spacepost.dev/emails \ -H "Authorization: Bearer $SPACEPOST_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "from": "Acme <onboarding@test.spacepost.dev>", "to": ["delivered@test.spacepost.dev"], "subject": "Hello from SpacePost", "html": "<p>It works.</p>" }'import os, requests
r = requests.post( "https://api.spacepost.dev/emails", headers={"Authorization": f"Bearer {os.environ['SPACEPOST_API_KEY']}"}, json={ "from": "Acme <onboarding@test.spacepost.dev>", "to": ["delivered@test.spacepost.dev"], "subject": "Hello from SpacePost", "html": "<p>It works.</p>", },)print(r.json())Drop-in for Resend
Same paths, same request and response shapes, same error format, same webhook signing. Point RESEND_BASE_URL at us and ship.
Priced for builders
3,000 emails free every month. Pro is €9 for 50,000 with €0.25 per extra thousand (excl. VAT). No per-seat fees, no sales calls.
Built on AWS SES
Amazon’s infrastructure and deliverability, without the AWS console. Easy DKIM, custom return path and per-team reputation isolation.
Made for agents too
An MCP server, a CLI with --json everywhere, an OpenAPI 3.1 spec and an llms.txt so your coding agent can use SpacePost correctly.