Skip to main content
Custom domains enable professional email sending with your own domain reputation. ColdSend manages DNS, email services, and infrastructure setup automatically.

Domain Status

StatusDescription
PENDINGInitial state, waiting to start setup
DNS_CONFIGURINGSetting up DNS infrastructure
DNS_PENDINGWaiting for you to configure nameservers at your registrar
SERVICES_CONFIGURINGSetting up email services (Azure, Mailcow)
ACTIVEDomain is ready to use
FAILEDSetup failed — can be retried

Add a Domain

POST /api/public/v1/domains
response = requests.post(
    "https://api.coldsend.pro/api/public/v1/domains",
    headers={"X-API-Key": api_key},
    json={
        "domain": "mail.yourcompany.com"
    }
)
The response includes nameservers you need to configure at your domain registrar. The domain then enters DNS_PENDING state.

List Domains

GET /api/public/v1/domains List all domains with optional status filtering:
response = requests.get(
    "https://api.coldsend.pro/api/public/v1/domains?status=ACTIVE&page=1&limit=20",
    headers={"X-API-Key": api_key}
)

Query Parameters

ParameterDescription
pagePage number (1-based, default: 1)
limitItems per page (1-100, default: 20)
statusFilter by status

Get Domain Details

GET /api/public/v1/domains/{domain_id} Retrieve full domain information including DNS records and inbox capacity:
response = requests.get(
    f"{base_url}/api/public/v1/domains/{domain_id}",
    headers={"X-API-Key": api_key}
)

Activate a Domain

POST /api/public/v1/domains/{domain_id}/activate Complete setup after nameservers are configured:
response = requests.post(
    f"{base_url}/api/public/v1/domains/{domain_id}/activate",
    headers={"X-API-Key": api_key}
)
This activates email services (Azure Communication Services, Mailcow) and moves the domain to ACTIVE status.

Check Setup Progress

GET /api/public/v1/domains/{domain_id}/progress
response = requests.get(
    f"{base_url}/api/public/v1/domains/{domain_id}/progress",
    headers={"X-API-Key": api_key}
)
Returns progress percentage and user-friendly status message.

Delete Domain

DELETE /api/public/v1/domains/{domain_id} Remove a domain and all associated resources:
response = requests.delete(
    f"{base_url}/api/public/v1/domains/{domain_id}",
    headers={"X-API-Key": api_key}
)
This deletes all inboxes on the domain and cleans up Azure/Mailcow resources. The action cannot be undone. Only domains with no active campaigns can be deleted.

Setup Workflow

  1. Add Domain → Returns nameservers to configure
  2. Configure Nameservers → Update at your registrar (GoDaddy, Cloudflare, etc.)
  3. Wait for Propagation → Typically 15-30 minutes
  4. Activate Domain → Completes email service setup
  5. Create Inboxes → Use the domain to create ColdSend Native inboxes

Next Steps

Sender Accounts

Create inboxes on your active domain.

Campaigns Overview

Use your domain-enabled inboxes in campaigns.