MCP

sender/post

Tool: create

Create a new sender (email account).

Creates a new sender identity that campaigns can use to send email. Returns the created sender object on 201. See schemas/sender for all response fields.

Creation is accepted without verifying connectivity. SMTP/IMAP credentials are not tested at create time — bad or unreachable credentials still return 201 with disconnected: false. A 201 only means the record saved — validation runs async. Re-read the sender after ~15 s: it is healthy only when disconnected is false AND recent_error_count is 0. A fresh row in sender/errors_by_id is the authoritative bad-credentials signal and can land within seconds (3–8 s observed), but an empty error list read before that wait has elapsed proves nothing — wait and re-check rather than reporting the sender connected. recent_error_count on this response (and on sender/get_by_id) reports that count without a separate call. See schemas/sender for connection state semantics.

replyTo caveat: if set, Unibox will not catch replies unless the reply-to address is also connected as a sender.

Body

field type req constraints description
email string ≤100 chars Sender email address
dailyLimit integer 1–10000 Max emails per day
customSmtpServer string ≤128 chars SMTP hostname
customSmtpPort integer SMTP port
customSmtpPass string ≤256 chars SMTP password — Google shows app passwords in four space-separated groups; submit it without the spaces
customImapServer string ≤128 chars IMAP hostname
customImapPort integer 1–65535 IMAP port (typically 993 for SSL/TLS)
customImapPass string ≤256 chars IMAP password
folder string ≤64 chars Organizational folder
fromName string ≤128 chars Display name in outgoing emails
replyTo string ≤128 chars Reply-to address
firstName string ≤128 chars Sender first name (personalization)
lastName string ≤128 chars Sender last name (personalization)
signature string HTML email signature
trackingDomain string ≤256 chars Custom domain for open/click tracking
delayMinMinutes integer Min gap between consecutive sends from this mailbox — minutes, not seconds; default 10. The campaign-level gap is delayMinSeconds, in seconds
dailyLimitIncrease boolean Enable progressive daily limit ramp
dailyLimitIncreaseToMax integer Target max for progressive ramp
dailyLimitIncreasePercent integer Daily % increase for progressive ramp (1–100)
warmup boolean default false Enable warmup
warmupDailyLimitIncrease boolean Progressive limit increase during warmup
warmupDailyLimitIncreaseToMax integer 0–10000 Target max during warmup ramp
warmupDailyLimitIncreasePercent integer 0–10000 Daily % increase during warmup
warmupDailyLimit integer Initial daily limit at warmup start (default 10)
warmupReplyPercent integer % of warmup emails receiving automated replies (1–100)
warmupSkipWeekends boolean Skip warmup sends on Saturday/Sunday
customWarmupTag string ≤64 chars Tag applied to warmup emails
customSmtpUsername string ≤256 chars SMTP username (if different from email)
customImapUsername string ≤128 chars IMAP username (if different from email)
senderCustom1–10 string ≤4000 chars each Custom fields 1–10

Response

201 — Created sender object: see schemas/sender. Deltas: none.

Errors: 400, 401, 406, 409, 415, 422, 429, 500 — shared schema: schemas/errors.

Invoke

Call create with name: "sender/post".