Cloud sky background
API-ready Mailbox API + Email Sequencer + Transactional Email

Email infrastructure
built to send at scale

Provision mailboxes, run outbound sequences, and send transactional email from one platform your team can actually run.

DK MR SL
842+
Active mailboxes on Mails.now

Trusted by startups, GTM teams, and agencies scaling outbound

remotejob.io
FindContact.app
MailAPI.tech
City Spoon & Bar
Reach Reporting
• Key Features

Infrastructure, sequencer, and
analytics in one place

Provision mailboxes, run multi-sender campaigns, organize leads, and automate everything with a full REST API.

Incoming
Auto-sort active

Mailbox & domain API

Provision domains, verify DNS, and create single or bulk mailboxes from one dashboard or API. Every inbox is sequencer-ready from day one.

Open Rate 48.2%
+2.4%

Email sequencer with multi-sender

Build multi-step sequences, rotate across sender mailboxes, and control daily limits, ramp-up, and sending windows — all from your provisioned inboxes.

Leads dashboard showing lead list with company, email, source, and status columns

Leads, lists & tags

Import leads via CSV, organize with static lists and colored tags, and enroll entire audiences into campaigns with one click.

Start free trial
Analytics dashboard showing campaign performance, open rates, and automation insights

Analytics & full API

Track opens, clicks, replies, and bounces by mailbox, step, and domain. Automate everything with REST endpoints, webhooks, and MCP tools — including transactional email on the same infrastructure.

Explore API docs
• Process

From signup to first send
in four steps

Create your account

Sign up, choose a plan, and you’re in. Paid plans include a 7-day trial so you can test before you commit.

  • Fast signup
  • Clear plan limits from day one
Get Started

Connect your domain

Add your domain, follow the DNS steps we show you, and verify. Once it’s live, you’re ready to create mailboxes.

  • Simple guided setup
  • Support for subdomains on eligible plans
Get Started

Create your mailboxes

Spin up the addresses you’ll send from. Use them for campaigns, product email, or day-to-day inbox work.

  • Create one or many at once
  • Ready to send as soon as DNS is verified
Get Started

Send, track, and improve

Launch a sequence or send transactional mail. Watch what lands, what gets replies, and adjust limits as you scale.

  • Campaigns + transactional sends
  • Clear performance insights
Get Started
REST POST /v1/sequencer/campaigns
{ "mailbox_ids": ["..."], "lead_list_id": 1 }
201 Created
Campaign active
3 senders

Start sending in minutes

With API libraries for pretty much every programming language you can think of, Mails.Now fits seamlessly into any stack.

# Send an email with curl
# Copy and paste this into terminal
curl "https://mails.now/api/v1/transactional/send" \
  -X POST \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{
  "transactional_message_id": 1,
  "from": { "email": "sender@example.com" },
  "to": { "email": "receiver@example.com" },
  "variables": { "first_name": "Ada" }
}'
Credentials

Host: smtp-api.mailapi.tech
Port: 587 (recommended), 465
Username: mails.now
Password: <YOUR_API_KEY>
Auth PLAIN, LOGIN
Encryption TLS
# Send an email with wget

wget --method=POST \
  --header="Authorization: Bearer YOUR_API_KEY" \
  --header="Content-Type: application/json" \
  --body-data='{"transactional_message_id":1,"from":{"email":"sender@example.com"},"to":{"email":"receiver@example.com"},"variables":{"first_name":"Ada"}}' \
  "https://mails.now/api/v1/transactional/send"
// Send an email with Node.js

const response = await fetch("https://mails.now/api/v1/transactional/send", {
  method: "POST",
  headers: {
    "Authorization": "Bearer YOUR_API_KEY",
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    transactional_message_id: 1,
    from: { email: "sender@example.com" },
    to: { email: "receiver@example.com" },
    variables: { first_name: "Ada" },
  })
});
// Send an email from an Express.js route

const response = await fetch("https://mails.now/api/v1/transactional/send", {
  method: "POST",
  headers: {
    "Authorization": "Bearer YOUR_API_KEY",
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    transactional_message_id: 1,
    from: { email: "sender@example.com" },
    to: { email: "receiver@example.com" },
    variables: { first_name: "Ada" },
  })
});
// Send an email from a Next.js server action or route handler

const response = await fetch("https://mails.now/api/v1/transactional/send", {
  method: "POST",
  headers: {
    "Authorization": "Bearer YOUR_API_KEY",
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    transactional_message_id: 1,
    from: { email: "sender@example.com" },
    to: { email: "receiver@example.com" },
    variables: { first_name: "Ada" },
  })
});
// Send an email from a Nuxt server route or API handler

const response = await fetch("https://mails.now/api/v1/transactional/send", {
  method: "POST",
  headers: {
    "Authorization": "Bearer YOUR_API_KEY",
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    transactional_message_id: 1,
    from: { email: "sender@example.com" },
    to: { email: "receiver@example.com" },
    variables: { first_name: "Ada" },
  })
});
// Send an email with Bun

const response = await fetch("https://mails.now/api/v1/transactional/send", {
  method: "POST",
  headers: {
    "Authorization": "Bearer YOUR_API_KEY",
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    transactional_message_id: 1,
    from: { email: "sender@example.com" },
    to: { email: "receiver@example.com" },
    variables: { first_name: "Ada" },
  })
});
// Send an email from a Remix action

const response = await fetch("https://mails.now/api/v1/transactional/send", {
  method: "POST",
  headers: {
    "Authorization": "Bearer YOUR_API_KEY",
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    transactional_message_id: 1,
    from: { email: "sender@example.com" },
    to: { email: "receiver@example.com" },
    variables: { first_name: "Ada" },
  })
});
# Send an email with Python

import requests

response = requests.post(
  "https://mails.now/api/v1/transactional/send",
  headers={
    "Authorization": "Bearer YOUR_API_KEY",
    "Content-Type": "application/json",
  },
  json={
    "transactional_message_id": 1,
    "from": {"email": "sender@example.com"},
    "to": {"email": "receiver@example.com"},
    "variables": {"first_name": "Ada"},
  },
)
# Send an email with Rails

response = Faraday.post("https://mails.now/api/v1/transactional/send") do |req|
  req.headers["Authorization"] = "Bearer YOUR_API_KEY"
  req.headers["Content-Type"] = "application/json"
  req.body = {
    transactional_message_id: 1,
    from: { email: "sender@example.com" },
    to: { email: "receiver@example.com" },
    variables: { first_name: "Ada" },
  }.to_json
end
# Send an email with Ruby

require "net/http"
require "json"

uri = URI("https://mails.now/api/v1/transactional/send")
request = Net::HTTP::Post.new(uri)
request["Authorization"] = "Bearer YOUR_API_KEY"
request["Content-Type"] = "application/json"
request.body = {
  transactional_message_id: 1,
  from: { email: "sender@example.com" },
  to: { email: "receiver@example.com" },
  variables: { first_name: "Ada" },
}.to_json
// Send an email with PHP

$response = Http::withToken('YOUR_API_KEY')
  ->post('https://mails.now/api/v1/transactional/send', [
    'transactional_message_id' => 1,
    'from' => ['email' => 'sender@example.com'],
    'to' => ['email' => 'receiver@example.com'],
    'variables' => ['first_name' => 'Ada'],
  ]);
// Send an email with .NET

using var client = new HttpClient();
client.DefaultRequestHeaders.Add("Authorization", "Bearer YOUR_API_KEY");

var payload = new {
  transactional_message_id = 1,
  from = new { email = "sender@example.com" },
  to = new { email = "receiver@example.com" },
  variables = new { first_name = "Ada" },
};

await client.PostAsJsonAsync("https://mails.now/api/v1/transactional/send", payload);
// Send an email with Java

HttpClient client = HttpClient.newHttpClient();
String body = "{\"transactional_message_id\":1,\"from\":{\"email\":\"sender@example.com\"},\"to\":{\"email\":\"receiver@example.com\"},\"variables\":{\"first_name\":\"Ada\"}}";

HttpRequest request = HttpRequest.newBuilder()
  .uri(URI.create("https://mails.now/api/v1/transactional/send"))
  .header("Authorization", "Bearer YOUR_API_KEY")
  .header("Content-Type", "application/json")
  .POST(HttpRequest.BodyPublishers.ofString(body))
  .build();

HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
// Send an email with Go

payload := []byte`{"transactional_message_id":1,"from":{"email":"sender@example.com"},"to":{"email":"receiver@example.com"},"variables":{"first_name":"Ada"}}`)
req, _ := http.NewRequest("POST", "https://mails.now/api/v1/transactional/send", bytes.NewBuffer(payload))
req.Header.Set("Authorization", "Bearer YOUR_API_KEY")
req.Header.Set("Content-Type", "application/json")

resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
// Send an email from an AWS Lambda function

const response = await fetch("https://mails.now/api/v1/transactional/send", {
  method: "POST",
  headers: {
    "Authorization": "Bearer YOUR_API_KEY",
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    transactional_message_id: 1,
    from: { email: "sender@example.com" },
    to: { email: "receiver@example.com" },
    variables: { first_name: "Ada" },
  })
});
// Send an email from a Cloudflare Worker

const response = await fetch("https://mails.now/api/v1/transactional/send", {
  method: "POST",
  headers: {
    "Authorization": "Bearer YOUR_API_KEY",
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    transactional_message_id: 1,
    from: { email: "sender@example.com" },
    to: { email: "receiver@example.com" },
    variables: { first_name: "Ada" },
  })
});
// Send an email from a Vercel Function

const response = await fetch("https://mails.now/api/v1/transactional/send", {
  method: "POST",
  headers: {
    "Authorization": "Bearer YOUR_API_KEY",
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    transactional_message_id: 1,
    from: { email: "sender@example.com" },
    to: { email: "receiver@example.com" },
    variables: { first_name: "Ada" },
  })
});
• Key Metrics

Provision faster, send smarter, and track
every campaign from one dashboard.

1500+

Mailboxes provisioned

Teams create and manage sender inboxes programmatically — ready for sequencer campaigns the same day.

98.2%

Inbox placement

US-based infrastructure, sender rotation, and ramp-up controls help keep your emails landing where they should.

842+

Active senders

Live mailboxes powering outbound campaigns across workspaces — +12% this week.

• Testimonials

Trusted by teams who send
at scale

See how GTM, product, and infrastructure teams provision mailboxes, send transactional email, and run multi-sender outbound campaigns with Mails.now.

Nature landscape

"Mails.now changed how we send. We no longer need to manage multiple platforms. Delivery is reliable and we can focus on our core business."

AP
Alex Parsons
Head of GTM

"Our Ops team got at ease once we started using Mails.now for transactional emails. Customer complaints dropped and we no longer need to be on call or chat all day."

PS
Priyanka Singh
Head of Ops
• Pricing Plan

Simple plans that grow with
your sending

Start with what you need today. Upgrade when you need more domains, more campaign volume, or full API access - no surprise fees.

Starter

Mailbox provisioning and essential email routing for small teams.

$39 Monthly subscription
$399 Yearly subscription
Choose plan

Features

Sending Domains 10
Create Mailboxes 20
API Access
Create Subdomains
7-Day Free Trial
Email Sequencer
Total Leads 5000
Email Send Credits(Monthly) 25000
Transactional Email API
Most Popular

Pro

Email sequencer, API access, and higher limits for growing teams.

$99 Monthly subscription
$999 Yearly subscription
Choose plan

Features

Sending Domains 50
Create Mailboxes 75
API Access
Create Subdomains
7-Day Free Trial
Priority Support
Email Sequencer
Total Leads 20000
Email Send Credits(Monthly) 100000
Transactional Email API

Advanced

Expanded sequencer credits, mailbox limits, and priority support.

$199 Monthly subscription
$1,999 Yearly subscription
Choose plan

Features

Sending Domains 100
Create Mailboxes 150
API Access
Create Subdomains
7-Day Free Trial
Priority Support
Email Sequencer
Total Leads 50000
Email Send Credits(Monthly) 300000
Transactional Email API

Need higher volume or a custom setup?

Talk with our team for custom sequencer credits, mailbox volume, and enterprise pricing tailored to how you send.

Talk to our team
• FAQ

Email infrastructure FAQs

Common questions before you choose an email platform—answered in plain language.

It’s the foundation for sending and receiving email on your own domains: mailboxes, authentication, and reliable delivery. Mails.now adds campaigns, transactional sending, and APIs on top of that foundation.