Skip to content

Quickstart

This guide walks through the core smtp-probe features in 5 minutes.

Prerequisites

  • smtp-probe installed
  • For SMTP verification: outbound access to port 25
New to email sending? Generate SPF, DKIM and DMARC records directly in your browser with our DNS Record Generator, then verify them in real-time.

1. Check Domain DNS Configuration

Verify that a domain has proper SPF, DKIM, DMARC, MX, and PTR records:

smtp-probe check gmail.com

Sample output:

Domain: gmail.com
Score:  95/100

  SPF     ✅ Valid
  DKIM    ✅ Valid
  DMARC   ✅ p=reject
  MX      ✅ gmail-smtp-in.l.google.com
  PTR     ⚠️  No PTR record

The scoring system deducts points for missing or misconfigured records. See Scoring System for details.

2. Verify an Email Address

Check if a specific mailbox exists via SMTP RCPT TO:

smtp-probe verify user@example.com

Optionally bind a specific outbound IP and extend the timeout:

smtp-probe verify user@example.com --bind-ip 1.2.3.4 --timeout 30s
SMTP verification requires outbound port 25. Many cloud providers (AWS, GCP, Azure) block this port. The check command does not have this limitation.

3. Scan IP Against Blacklists

Check if an IP is listed on 29 RBL blacklists:

smtp-probe blacklist 1.2.3.4

4. Generate a Full Report

Combine all checks into a comprehensive report:

# Text table (default)
smtp-probe report example.com

# JSON (for programmatic use)
smtp-probe report example.com --format json

# Markdown (save to file)
smtp-probe report example.com --format md > report.md

5. Start the HTTP Server

Run a persistent API server:

smtp-probe serve
# Default: http://localhost:8080

smtp-probe serve --port 9090

Test the API:

curl http://localhost:8080/v1/check?domain=gmail.com
curl "http://localhost:8080/v1/verify?email=user@example.com"
curl http://localhost:8080/v1/blacklist?ip=1.2.3.4

Next Steps