Email Accounts

Update a mailbox

Update a mailbox’s settings and limits, and rotate its SMTP/IMAP credentials. The email address cannot be changed. Including any smtp* or imap* field rotates the credentials and re-runs verification.

Requires one of the following scopes: accounts:write, accounts:all, all:all.

patch/v1/accounts/{id}

Request

  • Base URL: https://api.mailbeast.ai
  • URL: https://api.mailbeast.ai/v1/accounts/{id}
  • Auth: HTTP bearer

Path parameters

idstring uuid required
Example:3f1c2b7e-9a4d-4e18-b2c1-6d8f5a0e7c93

Headers

Idempotency-Keystring
Example:a1b2c3d4-e5f6-7890-abcd-ef1234567890

Optional. A unique key you generate (max 255 chars, such as a UUID) that makes this request safe to retry. Retrying with the same key replays the original response instead of repeating the operation. Reusing a key with a different body returns 422.

Request body

firstNamestring
lastNamestring
displayNamestring
maxEmailsPerDaynumber

Daily CAMPAIGN send cap. Warmup has its own budget (warmup.maxPerDay).

sendingGapMinutesnumber

Minimum minutes between two sends from this mailbox, across all campaigns.

campaignSlowRampboolean
signaturestring

HTML signature. Sanitized on save.

bccstring
replyToAddressstring

Pass "" to clear it and reply to the mailbox address again.

automationLanguage'en' | 'ar' | 'bn' | 'zh' | 'cs' | 'da' | 'nl' | 'fi' | 'fr' | 'de' | 'el' | 'he' | 'hi' | 'hu' | 'id' | 'it' | 'ja' | 'ko' | 'ms' | 'no' | 'pl' | 'pt' | 'ro' | 'ru' | 'es' | 'sv' | 'th' | 'tr' | 'uk' | 'vi'
smtpHoststring
smtpPortnumber
smtpUsernamestring
smtpPasswordstring
imapHoststring
imapPortnumber
imapUsernamestring
imapPasswordstring
imapAllowInvalidCertboolean

Example request

{
  "firstName": "Jane",
  "lastName": "Doe",
  "displayName": "Jane Doe",
  "maxEmailsPerDay": 60,
  "sendingGapMinutes": 10,
  "signature": "Best regards,<br>Jane",
  "bcc": "archive@acme.com",
  "replyToAddress": "replies@acme.com",
  "automationLanguage": "en",
  "tracking": {
    "domainId": "9b7d4e53-91a0-4c2f-8a19-5d3e7f6b2c84"
  },
  "warmup": {
    "enabled": true,
    "strategy": "standard",
    "maxPerDay": 15,
    "replyRatePercentage": 35,
    "rampupEnabled": true,
    "dailyRampup": 1,
    "timezone": "Europe/London",
    "trackingEnabled": true
  },
  "smtpHost": "smtp.acme.com",
  "smtpPort": 587,
  "smtpUsername": "jane@acme.com",
  "smtpPassword": "your-password",
  "imapHost": "imap.acme.com",
  "imapPort": 993,
  "imapUsername": "jane@acme.com",
  "imapPassword": "your-password"
}

Response

idstring uuid required
emailAddressstring required
firstNamestring nullable required
lastNamestring nullable required
displayNamestring nullable required
providerstring required

How the mailbox is connected: custom for any SMTP/IMAP mailbox (including Gmail/Outlook connected with an app password), or google / microsoft for a native OAuth connection.

status'active' | 'inactive' | 'checking' | 'revoked' | 'failed' required

Current state. active - sending. inactive - paused by you (or connected but not verified yet); nothing re-activates it on its own, call resume. checking - being verified. failed - we stopped it after repeated failures; see statusMessage for the provider’s reason, and resume re-checks it. revoked - the OAuth grant is gone; reconnect it.

maxEmailsPerDaynumber required

Daily CAMPAIGN send cap. Warmup is budgeted separately (warmup.maxPerDay).

sendingGapMinutesnumber required

Minimum minutes between two sends from this mailbox, across all campaigns.

campaignSlowRampboolean required

Ramp campaign volume up gradually when the mailbox joins a campaign.

replyToAddressstring nullable required

Where replies are sent, when it differs from the mailbox address.

signaturestring nullable required

HTML signature appended to outgoing emails.

bccstring nullable required
automationLanguagestring required

ISO 639-1 language for auto-generated content.

healthScorenumber required

Deliverability health score, from 0 to 100.

createdAtstring date-time required
updatedAtstring date-time required

Example response

{
  "id": "3f1c2b7e-9a4d-4e18-b2c1-6d8f5a0e7c93",
  "emailAddress": "jane@acme.com",
  "firstName": "Jane",
  "lastName": "Doe",
  "displayName": "Jane Doe",
  "provider": "custom",
  "maxEmailsPerDay": 30,
  "sendingGapMinutes": 10,
  "replyToAddress": "replies@acme.com",
  "signature": "Best regards,<br>Jane",
  "bcc": "archive@acme.com",
  "automationLanguage": "en",
  "warmup": {
    "enabled": true,
    "strategy": "standard",
    "maxPerDay": 15,
    "replyRatePercentage": 35,
    "rampupEnabled": true,
    "dailyRampup": 1,
    "timezone": "Europe/London",
    "trackingEnabled": true
  },
  "tracking": {
    "domainId": "9d1f7c4a-6e58-4b32-8a07-3c5d9e2f1b46"
  },
  "statusMessage": {
    "code": "EENVELOPE",
    "command": "DATA",
    "responseCode": 550,
    "response": "550-5.4.5 Daily user sending limit exceeded.",
    "message": "Daily user sending limit exceeded"
  },
  "tags": [
    {
      "id": "5c9b1e77-2f4a-4c31-9d8e-1a2b3c4d5e6f",
      "name": "client-acme",
      "color": "#4F46E5"
    }
  ],
  "healthScore": 98,
  "smtp": {
    "host": "smtp.acme.com",
    "port": 587,
    "username": "jane@acme.com"
  },
  "imap": {
    "host": "imap.acme.com",
    "port": 993,
    "username": "jane@acme.com"
  }
}

Changes

No recorded changes to this operation across all 1 revision of this API.