Skip to main content

Provider Configuration

Each email provider has specific SMTP and IMAP settings. This guide covers the configuration for supported providers.

Google Workspace

Configuration

SettingValue
inbox_typeGOOGLE_WORKSPACE
smtp_hostsmtp.gmail.com
smtp_port587
smtp_use_tlstrue
imap_hostimap.gmail.com
imap_port993
imap_use_ssltrue
Max daily limit2,000

App Password Setup

Google requires app-specific passwords when 2FA is enabled:
  1. Go to Google Account Settings
  2. Navigate to Security > 2-Step Verification
  3. Scroll to “App passwords”
  4. Generate a new app password for “Mail”
  5. Use the generated password in smtp_password and imap_password

Example Request

requests.post(
    f"{base_url}/api/public/v1/sender-accounts",
    headers={"X-API-Key": api_key},
    json={
        "email_address": "[email protected]",
        "display_name": "John Smith from Company",
        "inbox_type": "GOOGLE_WORKSPACE",
        "daily_limit": 50,
        "smtp_host": "smtp.gmail.com",
        "smtp_port": 587,
        "smtp_username": "[email protected]",
        "smtp_password": "your-app-password",
        "smtp_use_tls": True,
        "imap_host": "imap.gmail.com",
        "imap_port": 993,
        "imap_username": "[email protected]",
        "imap_password": "your-app-password",
        "imap_use_ssl": True
    }
)

Microsoft 365

Configuration

SettingValue
inbox_typeOUTLOOK_365
smtp_hostsmtp.office365.com
smtp_port587
smtp_use_tlstrue
imap_hostoutlook.office365.com
imap_port993
imap_use_ssltrue
Max daily limit10,000

App Password Setup

For Microsoft 365 accounts with modern authentication:
  1. Go to Microsoft Account Security
  2. Navigate to Advanced security options
  3. Find “App passwords” section
  4. Create a new app password
  5. Use the generated password in your configuration
Some Microsoft 365 tenants may not require app passwords if SMTP authentication is enabled. Check your organization’s security policies.

Example Request

requests.post(
    f"{base_url}/api/public/v1/sender-accounts",
    headers={"X-API-Key": api_key},
    json={
        "email_address": "[email protected]",
        "display_name": "Sales Team at Company",
        "inbox_type": "OUTLOOK_365",
        "daily_limit": 75,
        "smtp_host": "smtp.office365.com",
        "smtp_port": 587,
        "smtp_username": "[email protected]",
        "smtp_password": "your-app-password",
        "smtp_use_tls": True,
        "imap_host": "outlook.office365.com",
        "imap_port": 993,
        "imap_username": "[email protected]",
        "imap_password": "your-app-password",
        "imap_use_ssl": True
    }
)

Custom SMTP

Use custom SMTP for any email provider not listed above.

Configuration

SettingDescription
inbox_typeCUSTOM_SMTP
smtp_hostYour SMTP server hostname
smtp_portYour SMTP port (typically 587 or 465)
smtp_use_tlsEnable TLS (recommended)
imap_hostYour IMAP server hostname
imap_portYour IMAP port (typically 993)
imap_use_sslEnable SSL (recommended)
Max daily limit100,000

Common Ports

PortProtocolUse Case
587SMTP + STARTTLSRecommended for most providers
465SMTP + SSLLegacy, but still common
25SMTPOften blocked by ISPs
993IMAP + SSLStandard IMAP port

Example Request

requests.post(
    f"{base_url}/api/public/v1/sender-accounts",
    headers={"X-API-Key": api_key},
    json={
        "email_address": "[email protected]",
        "display_name": "Outreach Team",
        "inbox_type": "CUSTOM_SMTP",
        "daily_limit": 100,
        "smtp_host": "mail.mydomain.com",
        "smtp_port": 587,
        "smtp_username": "[email protected]",
        "smtp_password": "your-password",
        "smtp_use_tls": True,
        "imap_host": "mail.mydomain.com",
        "imap_port": 993,
        "imap_username": "[email protected]",
        "imap_password": "your-password",
        "imap_use_ssl": True
    }
)

Connection Validation

ColdSend validates both SMTP and IMAP connections before activating an account:

SMTP Validation

  1. Connect to the SMTP server
  2. Send EHLO command
  3. Start TLS if enabled
  4. Authenticate with credentials
  5. Verify login succeeds

IMAP Validation

  1. Connect to the IMAP server
  2. Login with credentials
  3. Verify login succeeds

Validation Errors

ErrorDescription
AUTH_FAILEDInvalid username or password
CONNECTION_FAILEDCannot reach the server
TIMEOUTConnection timed out (10 second limit)
HOST_NOT_FOUNDDNS resolution failed
SSL_ERRORSSL/TLS handshake failed
CONNECTION_REFUSEDPort not accepting connections

Daily Sending Limits

Account AgeRecommended Daily Limit
New (0-2 weeks)20-30 emails/day
Warming (2-4 weeks)50-80 emails/day
Established (4+ weeks)80-100 emails/day

Why Lower Limits?

Starting with lower limits helps:
  • Build sender reputation
  • Avoid triggering spam filters
  • Maintain high deliverability rates
  • Gradually warm up the account

Security Recommendations

Use App Passwords

Always use app-specific passwords instead of your main email password:
  • App passwords have limited scope
  • Can be revoked without changing your main password
  • Required when 2FA is enabled
  • More secure for API integrations

Never Share Credentials

  • Do not share SMTP/IMAP passwords
  • Revoke app passwords when no longer needed
  • Use unique passwords for each integration

Monitor Account Activity

Regularly check:
  • Sent folder for unexpected emails
  • Authentication logs in your email provider
  • Account access history