Authenticated properly, on the free plan too
2048-bit DKIM signed to your own domain, SPF that hard-fails, DMARC alignment that survives a strict policy. Not a cut-down version of the paid setup - the same one.
Email infrastructure for developers
One API for the email your product depends on.
6,000 emails a month free, forever. No card.
john@gmail.com
Your code is 481920
sarah@outlook.com
Password reset requested
alex@icloud.com
Receipt for order #10428
old@bounced.dev
Welcome to Acme
Get started
Run it, approve in the browser, and your project is set up - API key saved and kept out of git, SDK installed, your AI coding agent taught how Sendpository works.
$ npx sendpository@latest init
Your code: DBQJ-DJRT
Opening your browser to approve it…
✓Connected to you@yourapp.com
✓Saved SENDPOSITORY_API_KEY in .env.local
✓Added .env.local to .gitignore
✓Installed sendpository
✓Installed the skill for AI coding agents
✓Sent a test email - check your inbox
Run one command
In your project folder. No dashboard tabs, no copying keys.
Approve in your browser
Check the code matches and click Approve - or sign up first. Nothing to paste back.
Start sending
Your key is in .env, the SDK is installed, and a test email is on its way to you.
Building with an AI coding agent?
Just ask it to “add Sendpository email to this project”. It runs the command, you click Approve, and it writes the rest - or moves you off Resend, SendGrid, Postmark, Mailgun or SES.
How it works with Claude Code, Codex and Cursor →Free forever
Up to 200 a day. Enough for the receipts, password resets and one-time codes most products send in a month.
Not a trial that quietly ends on day sixty. The free plan has no end date, and nothing on it is a degraded copy of the paid one - the same signing, the same mail servers, the same logs.
2048-bit DKIM signed to your own domain, SPF that hard-fails, DMARC alignment that survives a strict policy. Not a cut-down version of the paid setup - the same one.
Your message is accepted, signed and handed to the mail servers in one request. Free accounts are not rate-shaped or deprioritised behind paying ones.
Delivery logs, webhooks, suppression lists, scheduled sends, an SDK and GST invoicing. The free plan is smaller, not simpler.
An official Node.js client, or plain HTTP from anywhere else.
REST API
JSON over HTTPS
SMTPsoon
Drop-in relay
Developer experience
One command teaches Claude Code, Codex, Cursor or Copilot how Sendpository works - so your agent wires up email, or moves you off another provider, without guessing.
“Send a welcome email after signup.”
npx sendpository agentsHow it works →Domains
Verify once. Then send from any address on it.
We generate the records. You paste them once.
Transactional
Pick one to see what lands in the inbox.
Acme
security@yourdomain.com
Your code is 481920
It expires in 10 minutes. If you didn't request it, ignore this email.
The dashboard
Domains, keys, webhooks and every message you've sent.
Metrics
Last 30 daysEvery message
Search, filter and export what you sent.
Delivery events
Queued, delivered, bounced, opened, clicked.
Domains & keys
Verify DNS and rotate keys in one place.
Webhooks
Push events to your app, signed.
Visibility
A timeline per message. A log you can search.
When it bounces
Blocked automatically. Never sent to twice.
john@gmail.com
from notifications@yourdomain.com
sarah@outlook.com
from notifications@yourdomain.com
old@bounced.dev
from notifications@yourdomain.com
alex@icloud.com
from notifications@yourdomain.com
Why bother
Email's real cost. None of it your product.
What you'd otherwise own
We own the rest - signing, queues, retries, bounces, reputation.
What's next
Transactional email ships today. These are next.
Newsletters and product updates, when you need them.
Summer update
12,482 contacts
Sync through the API. No CSV busywork.
John Doe
john@email.com
Sarah Lee
sarah@email.com
Alex Thomas
alex@email.com
Build once. Send anywhere.
Want one of these sooner? Tell us which.
Pricing
Marketing and transactional email on the same plan, out of the same quota. No second product to buy, no second bill.
For side projects and first apps.
Free
6,000 emails a month
200 a day
For products with real traffic.
₹1,649/month + GST
about $19 a month at ₹88/$
70,000 emails a month
No daily limit
For higher volume and stricter limits.
₹6,349/month + GST
about $72 a month at ₹88/$
2,00,000 emails a month
No daily limit
Hard stop at your limit - never a surprise bill.
Questions
What developers ask before switching email providers.
Sendpository is an email API for developers to send and receive email. You verify a domain you own using DNS records, create an API key, and send email with a single HTTPS POST request; mail sent to your domain can be received through the same API. It handles 2048-bit DKIM signing, delivery logs, signed webhooks, and bounce and complaint suppression.
Yes. Marketing and transactional email share one plan and one monthly quota on Sendpository - there is no separate marketing product to buy and no second bill. Most email providers charge for these separately.
Send a POST request to https://api.sendpository.com/v1/emails with your API key in an Authorization: Bearer header, and a JSON body containing from, to, subject and either html or text. The response returns the message id. There is a Node.js and TypeScript SDK (npm install sendpository), and every other language can call the REST API directly since it is plain JSON over HTTPS.
There is a permanent free plan - not a trial - and monthly paid plans with higher volume and no daily limit. Current limits and prices are always on sendpository.com/pricing, read live from the plan settings. Paid plans never charge overage: sending stops at the quota instead.
Yes. Add an address or a catch-all on a verified domain and every message is delivered to your dashboard inbox, the inbound API and an email.received webhook. Each message is spam-scored and carries a sender verdict - verified, failed, unverified or unchecked - from SPF, DKIM and DMARC, so automations can refuse forged senders.
Yes. Every successful payment produces a GST-compliant tax invoice with CGST, SGST or IGST applied according to your place of supply, a gapless invoice number, and the SAC code for online information services. Invoices are emailed automatically and available in your billing history.
Three are required: an SPF TXT record and a bounce MX record on an sp. subdomain, plus a DKIM TXT record on your apex. A DMARC record is recommended but optional. Everything except DKIM sits on the sp. subdomain, so the SPF record you already publish for Google Workspace or Microsoft 365 is left untouched and nothing has to be merged by hand.
Yes. Sendpository covers the same ground as Resend, SendGrid, Postmark and Mailgun - a REST API for transactional email with domain verification, delivery logs and webhooks - and adds receiving email on your own domain with SPF, DKIM and DMARC verdicts on every message, plus a permanent free plan you can launch on. Detailed comparisons are at sendpository.com/alternatives.
Sendpository re-checks every verified domain daily. If the required records stop resolving they are flagged, and after 72 hours of continuous failure sending from that domain is suspended automatically. Restoring the records re-enables it at the next check without contacting support. Providers that verify once will keep signing mail for a domain long after its owner has lost control of it.
Sending stops and the API returns a quota_exceeded error until the next billing period begins. Nothing is sent beyond your plan, so there is never a surprise overage bill. You can upgrade at any time from Settings and the larger quota is available as soon as the pro-rated payment clears.
Hard bounces and spam complaints are recorded automatically and the address is added to your account's suppression list. Further sending to a suppressed address is refused, which protects both your sender reputation and everyone else's on the platform.
Yes. Every webhook carries a Sendpository-Signature header containing a timestamp and an HMAC-SHA256 of the payload. The timestamp is inside the signed content, which prevents replay attacks. An endpoint that fails 15 times consecutively is disabled automatically.
Yes. Include a scheduled_at field with an ISO 8601 timestamp in your send request and the message is held until then. A scheduled message can be cancelled any time before it is handed to the mail servers.
Sendpository is a managed service - you use the hosted API and do not run any mail infrastructure yourself. The platform runs on its own mail servers with dedicated sending IPs rather than reselling another provider's infrastructure.
Add your domain. Get your API key. Send.