1. Your Own Mailboxes
InboxKit
  • Introduction
  • Quick Start
  • Domain Management
  • Mailbox Operations
  • Deliverability Monitoring
  • Order
    • Place Order
      POST
  • Webhook
    • Events: OAuth Consent & Client ID Changes
      POST
    • Event: Mailbox Status Changed
      POST
    • Webhook Integration & Signature Verification
      POST
    • Event: Domain Status Changed
      POST
  • Account
    • Get account details
      GET
  • Workspaces
    • List workspaces
    • Create workspace
    • Invite Member to Workspace
    • Get workspace details
    • Update workspace
    • Delete workspace
    • Update workspace webhook
  • Domains
    • Domain Renewals
    • Check if domain is banned from registration
    • Check domain availability
    • Register domains
    • List domains
    • List assignable domains
    • Remove domains
    • Set domain forwarding
    • Set catch-all email
    • Remove catch-all email
    • Get nameservers for domain connection
    • Check nameservers propagation
    • Check Workspace Availability
    • Set DMARC Configuration
    • Remove DMARC Configuration
    • Regenerate Domain Nameservers
    • Request Domain Renewal
    • Check Renewal Status
    • Update Domain Privacy
    • Update Domain Contact Details
    • Search available domains
    • Move domains to another workspace
    • Preview a domain move
    • Get domain move status
    • Start a domain rotation
    • Preview a domain rotation
    • Get domain rotation status
  • Cloudflare Domains
    • Connect Cloudflare Domains
    • List Connected Cloudflare Domains
    • Get Domain Details
    • Disconnect Cloudflare Domains
    • List Cloudflare Zones
  • Mailboxes
    • Microsoft 365 & Azure Reactivation
      • Reactivate mailboxes (Microsoft 365 / Azure)
      • Re-purchase mailboxes for reactivation (Microsoft 365 / Azure)
    • List mailboxes
    • Add or update signature for mailboxes
    • Delete signature for mailboxes
    • Show mailbox credentials
    • Get mailbox details
    • Buy mailboxes
    • Check mailbox status
    • Cancel mailboxes
    • Update mailbox
    • Update mailbox profile picture
    • Generate TOTP
    • Change username
    • Change password
    • Check mailbox availability
    • Get Failure Reason
    • Uncancel mailboxes
    • Resetup mailboxes
    • Get resetup status
  • DNS
    • Get DNS records
    • Add DNS records
    • Update DNS records
    • Delete DNS records
    • Verify DNS records
    • Repair DNS records
  • Sequencers
    • Export mailboxes status
    • List sequencer platforms
    • Get sequencer tags
    • List sequencers
    • Export mailboxes
    • Add sequencer
    • Update sequencer
    • Delete sequencers
    • Verify Lemlist OTP
  • Billing
    • Get pricing plans
    • Add Credits to Wallet
    • Get subscription details
    • Check Payment Status
    • Change subscription plan
    • Cancel subscription
    • Get wallet details
    • Update auto top-up settings
    • Get billing portal link
    • Get Wallet Logs
    • List Wallet Transactions
  • Warmup
    • Your Own Mailboxes
      • Create a Connect Link
        POST
      • Get Connect Link Status
        GET
      • Add SMTP Mailboxes
        POST
      • List Your Connected Mailboxes
        GET
      • Disconnect a Mailbox
        DELETE
    • List Warmup Subscriptions
      POST
    • Get Warmup Subscription Details
      GET
    • Add Warmup to Mailboxes
      POST
    • Pause Warmup for Mailboxes
      POST
    • Resume Warmup for Mailboxes
      POST
    • Cancel Warmup for Mailboxes
      POST
    • Get Warmup Statistics
      GET
    • Get Warmup Pricing
      GET
    • Update Warmup Settings
      POST
  • Client ID Requests
    • Initiate Client ID Request
    • Get Client ID Request Status
    • List Client ID Requests
  • Mailbox Forwarding
    • Setup Email Forwarding
    • Update Email Forwarding
    • Remove Email Forwarding
    • List Forwarding Jobs
  • Consent Request
    • Initiate Consent Request
    • Get Consent Request Status
    • List Consent Requests
  • Tags
    • Assign tags to domains or mailboxes
    • Get all tags
    • Create a new tag
    • Delete a tag
  • Prewarm
    • Search Domains
    • Search Mailboxes
    • Buy Prewarmed Mailboxes
    • Check Order Status
    • Check Availability
  • Inbox Placement
    • Tests
      • Create Test
      • List Tests
      • Get Test Results
    • Scheduled Tests
      • List Scheduled Tests
      • Get Scheduled Test
      • Pause Scheduled Test
      • Resume Scheduled Test
      • Delete Scheduled Test
  • InfraGuard
    • InfraGuard - Subscriptions
      • List protected domains
      • Get subscription details
      • Enable InfraGuard for domains
      • Cancel InfraGuard for domains
      • Get workspace statistics
      • Get pricing info
    • InfraGuard - Monitoring
      • Get blacklist check history
      • Get DNS check history
      • Get current bounce metrics
      • Get bounce check history
    • InfraGuard - Settings
      • Update subscription settings
      • Trigger manual check
    • InfraGuard - Alerts
      • List alerts
      • Acknowledge an alert
      • Resolve an alert
    • InfraGuard - Action Items
      • List action items
      • Get action item statistics
      • Resolve an action item
      • Dismiss an action item
  • Email Insight
    • Email Insights - Workspace
      • Get Workspace Overview
      • Get Mailboxes Health
      • Get Workspace Daily Stats
      • Get High Bounce Mailboxes
      • Get Workspace Campaign Reply Rate
      • Get Workspace Activity
    • Email Insights - Mailbox
      • Get Mailbox Stats
      • Get Mailbox Deliverability
      • Get Mailbox Health
      • Get Mailbox Trends
      • Get Mailbox Bounce Events
      • Get Mailbox Activity
      • Get Mailbox Top Recipients
      • Get Mailbox Top Recipient Domains
      • Get Mailbox Message Breakdown
      • Get Mailbox Subject Analysis
      • Get Mailbox Reply Time Heatmap
      • Get Mailbox Reply Rate By Domain
      • Get Mailbox Velocity Overlay
      • Get Mailbox Warmup Stats
      • Get Mailbox Auth Failures
      • Get Mailbox First Touch Funnel
      • Get Mailbox Sending IP Breakdown
      • Get Mailbox Recipient ESP Breakdown
      • Get Mailbox Body Templates
  • Domain Renewals
  • Verified Domains
    • List verified destinations
    • Add a destination to verify
    • Verify a destination
    • Remove a destination
  • Schemas
    • Schemas
      • WebhookPayload
      • DomainStatusWebhook
      • Tag
      • DomainEventData
      • MailboxStatusWebhook
      • MailboxEventData
      • Domain
      • Mailbox
      • ChangeDetails
      • WebhookResponse
      • ErrorResponse
  1. Your Own Mailboxes

Add SMTP Mailboxes

POST
https://api.inboxkit.com/v1/api/warmup/external/smtp-mailboxes
Maintainer:Not configured
Connect SMTP mailboxes you already own and start their warmup. Send 1 to 10 mailboxes per request.
How each mailbox is handled
The mailbox must sign in to its mail server before anything is charged. A mailbox that cannot sign in is not kept.
When it signs in, warmup starts and the first month is charged to your wallet, at the price shown by Get Warmup Pricing.
Before any mailbox is checked, your wallet must cover all the new mailboxes in the request. Otherwise the whole request is refused with 400 and nothing is charged.
Passwords are stored encrypted and are never returned by the API.
The server must be reachable on the public internet: use a host name, not an IP address. SMTP ports 25, 465, 587 and 2525 and IMAP ports 143 and 993 are accepted.
Mailboxes you already connected
A mailbox already connected in this workspace is skipped with already_connected, and its UIDs are returned. Nothing is charged and nothing changes. To replace its sign-in details, send update_existing: true. If the mailbox's warmup is running, the new details are tested first, saved only if they work, and warmup restarts from day one. If it has no warmup running, the details are saved and checked when warmup starts again. Updating is never charged. To start warmup again for a mailbox whose warmup you cancelled, send its ext_mbx_ UID to Add Warmup to Mailboxes.
How the response works
If the request is invalid, it is refused with 400 and no mailbox is changed.
Otherwise the response is 200 and lists one result per mailbox, in the order you sent them. A request where some mailboxes fail still returns 200.
summary.total_charged is what this request charged to your wallet.
Why a mailbox can be skipped or fail
reasonWhat to do
already_connectedThe mailbox is already connected. Use update_existing to replace its sign-in details.
duplicate_in_importThe same email appears more than once in the request. Only the first is used.
credentials_rejectedThe mail server refused the sign-in. Check the username and password.
server_unreachableThe mail server could not be reached. Check the host and port.
host_not_allowedThe host is not allowed. Use the public host name of the mail server.
port_not_allowedUse SMTP port 25, 465, 587 or 2525 and IMAP port 143 or 993.
activation_in_progressAnother request is adding this mailbox right now. Check again in a minute.
insufficient_creditsYour wallet balance ran out during the request. Add credits and send the mailbox again.
warmup_start_failedWarmup could not start right now. Send the mailbox again later.
Timing and retries
A request can take up to about a minute, because every mailbox signs in to its mail server. Do not send the same mailboxes in parallel. If a request times out, wait a minute and send the same mailboxes again: mailboxes that were added are reported as already_connected and are not charged again.
If you send too many requests, or many mailboxes fail to sign in within a short time, the API answers 429. Wait for retry_after_seconds, check the sign-in details, and try again.
Once added, the mailboxes appear in List Your Connected Mailboxes, and the warmup endpoints (pause, resume, cancel, settings) work with their ext_mbx_ UIDs.

Request

Authorization
Provide your bearer token in the
Authorization
header when making requests to protected resources.
Example:
Authorization: Bearer ********************
Header Params

Body Params application/jsonRequired

Examples

Responses

🟢200Success Response
application/json
The request was processed. Each mailbox has its own result. A request where some mailboxes fail still returns 200.
Bodyapplication/json

🟠400Bad Request
🟠401Unauthorized
🟠403Forbidden
🟠429Too Many Requests
🔴500Internal Server Error
Request Request Example
Shell
JavaScript
Java
Swift
cURL
curl --location 'https://api.inboxkit.com/v1/api/warmup/external/smtp-mailboxes' \
--header 'X-Workspace-Id;' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data-raw '{
    "mailboxes": [
        {
            "email": "[email protected]",
            "display_name": "Sam Ortiz",
            "smtp_host": "smtp.example.org",
            "smtp_port": 587,
            "smtp_password": "example-password-1",
            "imap_host": "imap.example.org",
            "imap_port": 993
        },
        {
            "email": "[email protected]",
            "display_name": "Lee Park",
            "smtp_host": "smtp.example.org",
            "smtp_port": 465,
            "smtp_username": "[email protected]",
            "smtp_password": "example-password-2"
        }
    ]
}'
Response Response Example
200 - All started
{
    "error": false,
    "message": "Processed 2 mailbox(es): 2 started, 0 updated, 0 skipped, 0 failed",
    "results": [
        {
            "email": "[email protected]",
            "status": "started",
            "external_mailbox_uid": "ext_mbx_2f8a6c13-9d4e-4b71-8a25-6c3e1f9d7b42",
            "subscription_uid": "ext_sub_8c1e5a94-3f7b-4d26-b9e0-1a6d4c8f2e57",
            "amount_charged": 3
        },
        {
            "email": "[email protected]",
            "status": "started",
            "external_mailbox_uid": "ext_mbx_5b3d9f27-1e6c-4a88-9d41-7f2b8e0c6a19",
            "subscription_uid": "ext_sub_6e2a8d15-7c4f-4b93-a1d8-3f9c5e2b7d64",
            "amount_charged": 3
        }
    ],
    "summary": {
        "started": 2,
        "updated": 0,
        "failed": 0,
        "skipped": 0,
        "total_charged": 6
    }
}
Modified at 2026-10-22 10:54:10
Previous
Get Connect Link Status
Next
List Your Connected Mailboxes
Built with