schemas/sender
The Sender object returned by sender/get, sender/get_by_id, and mutation responses.
| field | type | constraints | description |
|---|---|---|---|
| senderId | integer | int64 | Unique identifier. |
| createdAt | string | date-time | When the sender was created. |
| string | email, max 100 | Sender email address. | |
| folder | string | max 64 | Organizational folder for grouping senders. |
| fromName | string | max 128 | Display name shown in outgoing emails. |
| accountType | string | one of: CustomSmtp, GmailSmtp, GmailOauth, MsOauth, SendgridApi | Sender account type. |
| replyTo | string | email, max 128 | Reply-to address; if set, Unibox won't catch replies unless the reply-to address is also connected as a sender. |
| firstName | string | max 128 | Sender first name (for personalization). |
| lastName | string | max 128 | Sender last name (for personalization). |
| signature | string | HTML email signature appended to outgoing messages. | |
| trackingDomain | string | max 256 | Custom domain for open/click tracking. |
| delayMinMinutes | integer | Minimum gap between consecutive sends from this mailbox, in minutes (default 10); the campaign-level gap is delayMinSeconds, in seconds — see schemas/campaign. |
|
| dailyLimit | integer | 1–10000 | Max emails per day from this sender. |
| dailyLimitIncrease | boolean | Progressively increase daily limit over time. | |
| dailyLimitIncreaseToMax | integer | Target max for progressive increase. | |
| dailyLimitIncreasePercent | integer | 1–100 | Daily % increase for progressive ramp. |
| warmup | boolean | Enable warmup to build sender reputation. | |
| warmupDailyLimitIncrease | boolean | Progressive limit increase during warmup. | |
| warmupDailyLimitIncreaseToMax | integer | 1–10000 | Target max during warmup ramp. |
| warmupDailyLimitIncreasePercent | integer | 1–10000 | Daily % increase during warmup. |
| warmupDailyLimit | integer | Initial daily limit at warmup start (default 10). | |
| warmupReplyPercent | integer | 1–100 | % of warmup emails that receive automated replies. |
| warmupSkipWeekends | boolean | Skip warmup sends on Saturday/Sunday. | |
| customWarmupTag | string | max 64 | Tag applied to warmup emails for tracking. |
| customSmtpServer | string | max 128 | SMTP hostname for custom SMTP senders. |
| customSmtpPort | integer | SMTP port for custom SMTP senders. | |
| customSmtpUsername | string | max 128 | SMTP username (if different from email). |
| customImapServer | string | max 128 | IMAP hostname for reply retrieval. |
| customImapPort | integer | IMAP port (typically 993 for SSL/TLS). | |
| customImapUsername | string | max 128 | IMAP username (if different from email). |
| disconnected | boolean | Whether the sender is currently disconnected. | |
| dateDisconnected | string | date-time | When the sender was disconnected. |
| disconnectionReason | string | max 128 | Reason for disconnection. |
| dateWarmupDisconnected | string | date-time | When the sender was removed from the warmup network. |
| warmupRemovalReason | string | max 128 | Reason for warmup network removal. |
| senderCustom1 | string | max 4000 | Custom field 1. |
| senderCustom2 | string | max 4000 | Custom field 2. |
| senderCustom3 | string | max 4000 | Custom field 3. |
| senderCustom4 | string | max 4000 | Custom field 4. |
| senderCustom5 | string | max 4000 | Custom field 5. |
| senderCustom6 | string | max 4000 | Custom field 6. |
| senderCustom7 | string | max 4000 | Custom field 7. |
| senderCustom8 | string | max 4000 | Custom field 8. |
| senderCustom9 | string | max 4000 | Custom field 9. |
| senderCustom10 | string | max 4000 | Custom field 10. |
| tags | array | Embedded tag refs; see schemas/tag-ref. Empty when none. |
Connection state
disconnectedis the authoritative connection state. A populateddateDisconnectedordisconnectionReasonalongsidedisconnected: falseis historical only — the sender is currently connected. The server also injects aconnection_statefield in some contexts confirming this.
Created does not mean deliverable. Sender creation is accepted without testing the SMTP/IMAP connection; credential validation completes asynchronously, and
disconnectedmay not flip totruepromptly even on bad credentials (observed to stayfalsefor several minutes) — do not treat an immediate or short-delaydisconnectedread as proof the credentials work. The reliable early check is sender/errors_by_id (a fresh error row = bad creds, typically within ~10 s);sender/postandsender/get_by_idalso carry arecent_error_counthint derived from it. A sender record existing does not guarantee it can send email.