Early access

Email: your own mailbox

DMWire connects a mailbox you already own. Mail your agent sends goes out from that mailbox through your mail provider, and new mail in its inbox reaches your agent.

Connect a mailbox

You need the mailbox address and its password. Most providers ask for an app password instead of your normal password when two step verification is on; you create one in your mail account's security settings.

Ask your agent to "connect my mailbox [email protected]", or call connect_email:

bash
curl -X POST https://api.dmwire.ai/v1/channels/email/imap \
  -H "X-API-Key: $DMWIRE_API_KEY" -H "Content-Type: application/json" \
  -d '{"address":"[email protected]","password":"<app password>","provider":"gmail","display_name":"Example Studio"}'
  • provider picks the server settings for you: gmail, outlook, yahoo, icloud or fastmail. For any other provider pass custom with imap_host, imap_port, smtp_host and smtp_port (and imap_secure / smtp_secure).
  • username is only needed when the login is not the address. smtp_username and smtp_password are for an outgoing server with its own login.
  • display_name is the From name on mail you send.

DMWire checks both servers before it stores anything; when a check fails, the error says whether IMAP or SMTP failed. Passwords are stored encrypted and never returned.

get_email_status shows the mailbox. restricted means the mailbox needs its login again (for example after you changed the password): connect it again with the new one. disconnect_email stops reading the mailbox and removes it from DMWire; the mailbox itself is untouched.

Receiving

New mail is picked up every couple of minutes and reaches your agent like any other message (wait_for_messages or a message.received webhook). Mail that was already in the inbox when you connected is never imported.

Sending

  • Address the person by to.email, or by to.contact_id. A new address becomes a new contact.
  • subject sets the subject line.
  • One mailbox sends at most one email every 10 seconds. A faster send answers mailbox_rate_limited (429) with retry_after_s.
  • Every email to someone who never wrote to you carries a List-Unsubscribe header. Pass your own list_unsubscribe (an https URL or a mailto address); without one, DMWire uses a mailto back to your mailbox. Someone who unsubscribes cannot be emailed again from DMWire: the send answers contact_opted_out (422).

Mail goes out through your own provider, so your provider's sending limits and your mailbox's reputation apply. Mail to many people who never asked to hear from you is what gets mailboxes blocked; see the acceptable use rules.

Limits on email

LimitValue
Messages you send per day (early access)50
New contacts per day (early access)10
Emails from one mailbox1 every 10 seconds
Messages to one person who has not replied3, then DMWire waits for their reply

Last checked against the live service on 2026-10-17.