Skip to content

Email automation for agents

Your agent writes the emails. colding checks addresses, sends from your own mailboxes and brings the replies back. Choose who can send, and pause a campaign at any time.

For now we open each account by hand and answer by email. If your mail app doesn't open, write to us at [email protected].

Marta Silva

Blue Door Café · [email protected]

Example

[email protected]

Fresh coffee for Blue Door Café

History

  1. Mon 18:20Step 1 written by Sam's agent
  2. Mon 18:21Address checkedValid
  3. Mon 18:40Campaign approved by Sam
  4. Tue 09:14Sent from [email protected]09:14
  5. Tue 11:02Marta repliedInterested
  6. Tue 11:02No more follow-ups

Marta replied

Sounds good. Could you bring one by on Thursday?

An example. Ridgeline Coffee Roasters is a made-up business, and so is everyone it writes to.

Your new mailbox warms up first

Mail providers don't trust a new address that suddenly sends a lot. Turn on warmup, and a new mailbox starts small. It trades a few emails a day with other connected mailboxes. They open some, answer some and move some out of spam.

On the first day it sends up to 10 emails. Each day it adds 1 more, up to 40 a day. If its emails start landing in spam, it slows down and stays out of your campaigns until it recovers.

How warmup works

Warmup emails a day, at most

Day 1: 10Day 31: 40
See daily limits
DayEmail limit
110
211
312
413
514
615
716
817
918
1019
1120
1221
1322
1423
1524
1625
1726
1827
1928
2029
2130
2231
2332
2433
2534
2635
2736
2837
2938
3039
3140
One of the warmup emails[email protected] · to another customer's mailbox

Moving our catch-up

I need to push our catch-up back by a day, if that's okay with you. Someone is coming to fix the boiler and they only gave me a rough window, so I have to stay home for it. The usual time still works for me.

We wrote these ourselves, in English, Portuguese and Spanish. They read like notes between people, not like ads.

Example: Sam's new mailbox in its first month.

Your agent writes. You choose who sends.

A campaign is a short series of emails to a list of people, each one a few days after the last. We call each email a step. Your agent writes the steps through our API or through MCP, the open standard AI apps use to plug in tools. You can also write them yourself in the console.

Nothing goes out until someone allowed to send launches the campaign, and that launch is the approval. Give your agent an API key that can write but not send, and every campaign waits for you. colding itself never writes an email.

How campaigns work

Sam's agent calls

add_campaign_step({"campaignId": "8db3309d-13c4-4da5-ad5f-96337126f6a8","subject": "Fresh coffee for {{ company }}","bodyText": "Hi {{ first_name }}, we roast coffee in small batches here in town. Could I bring your team a bag to try?"})
  1. Step 1Goes firstFresh coffee for {{ company }}
  2. Step 23 days later, as a replyHi {{ first_name }}, just checking that this reached you.
Approved by
Sam, Mon 18:40
Example: the campaign's steps, and who approved them.

Every address is checked before the first email

Before the first email to anyone, colding asks their mail server whether the address exists and can get mail. Nothing is sent to find out. When a server won't say, we ask a checking service.

Invalid addresses get nothing. Risky ones, and ones we couldn't tell about, wait until you choose to let them through. When we can't tell, we say so.

How address checks work

Example: six addresses from Sam's list of cafés.

Send on your schedule

Emails go out one at a time, spread across the sending hours you pick. Unless you change them, those are weekdays from 08:00 to 18:00.

Each mailbox sends up to 50 emails a day, at least 10 minutes apart. You can change both. On its first campaign day a mailbox sends fewer: up to 20 after 14 days of warmup, then 5 more each day. Send from more mailboxes, and a campaign shares the day between them.

Tuesday, from [email protected]

09:14
08:0010:0012:0014:0016:0018:00

At least 10 minutes between two emails

Example: Sam's Tuesday, the mailbox's first campaign day. Marta's email went at 09:14.

Each email leaves from your own mailbox

colding doesn't run mail servers. It hands each email to your mailbox, and your email provider sends it from your address, like any email you write. Google Workspace, Zoho and any provider with SMTP and IMAP, the standard ways to send and read mail, work today. Microsoft 365 is coming.

Each email goes out once. If we can't tell whether one left, we count it as sent and never send it again. No one can promise an email lands in the inbox, and we don't.

  1. coldingHands the email over
  2. [email protected]Sam's mailbox at Google Workspace sends it
  3. [email protected]For Blue Door Café
Tue 09:14Step 1 to [email protected]SentYour mail provider accepted it for delivery. That doesn't confirm it reached the recipient's inbox.
Example: Marta's email, as the Send log shows it.

Read replies in one inbox

Replies that reach connected mailboxes we monitor appear in the thread they answer. If you use Reply-To to receive replies at another address, connect that mailbox too. When a person answers, their follow-ups stop. An away message holds them until the working day after they're back. Someone who asks you to stop goes on your suppression list, so your outreach won't email them again.

colding reads replies in English, Portuguese and Spanish, with word lists we wrote for each language, not with AI.

How the inbox works

  1. Marta Silva

    Blue Door Café · [email protected]

    Interested
    Sounds good. Could you bring one by on Thursday?

    Step 2, FriWon't go: Marta answered.

  2. Priya Nair

    Salt & Crumb Bakery · [email protected]

    Out of office
    I'm on vacation until Monday.

    Step 2, Fri TueNo email goes to them before Tuesday.

  3. Leo Brandt

    The Beanery · [email protected]

    Asked to stop
    Please take me off your list.

    Step 2, FriOn your suppression list.

Example: three replies to step 1, on Tuesday.

Pause a campaign any time

You can pause a mailbox or a campaign whenever you want, in the console or through your agent. A campaign also pauses itself when too many of its emails bounce, which means they come back undelivered, or get marked as spam. It tells you what to check before you resume it.

Cafés in town

Paused by you
Automatic pause
Every campaign pauses when 1 in 20 of its emails bounces, or 1 in 1,000 is marked as spam. It counts the last 7 days, once at least 50 emails have gone out.
Example: Sam paused the campaign. The automatic pause is the same for every campaign.

Sign-in links and receipts, too

Transactional email is a sign-in link, a password reset or a receipt someone asked your app for. It uses the same API, from a mailbox you keep for it. It doesn't wait for campaign sending hours and has no outreach unsubscribe line. Your plan must include transactional email.

Give a sign-in code an expiry, and if it hasn't gone out by then, it never will. Send the same request twice, and still only one email goes.

The shop's API request

POST /v1/transactional/messagesAuthorization: Bearer cd_your_keyIdempotency-Key: sign-in-7731Content-Type: application/json{"mailboxId": "4c458f2b-46d2-41e6-8fae-b1db03b626fa","to": "[email protected]","subject": "Your sign-in code","bodyText": "Your code is 482915. It works for 15 minutes.","intentKey": "sign-in-7731"}

Your sign-in code

Your code is 482915. It works for 15 minutes.

Sent · Your mail provider accepted it. It did not wait for campaign sending hours.

Example: the Ridgeline Coffee Roasters online shop sends Alex a sign-in code.

Start in three steps

  1. Ask for access. We open each account by hand and answer by email.

  2. Connect a mailbox: Google Workspace, Zoho, or any provider with SMTP and IMAP. Microsoft 365 is coming.

  3. Make an API key for your agent. Connect it over MCP at https://api.colding.app/mcp, or install our SDK:

    npm install coldingimport { Colding } from "colding";const colding = new Colding("cd_your_key");await colding.mailboxes.list();

What it costs

There are four plans, priced in US dollars, euros and Brazilian reais. Ask for access first, then pick your plan in the console. See the plans

Who it's not for

It's not for emailing people who never had a reason to hear from you, or for sending from our servers instead of your mailboxes. Our acceptable use policy has the rules.

Start with one mailbox

Ask for access, connect a mailbox and turn on warmup while your agent writes the first campaign.

For now we open each account by hand and answer by email. If your mail app doesn't open, write to us at [email protected].