ProMailDispatch
PMD API · v3 · Quick Documentation

ProMailDispatch API

Create templates, send single or bulk mail, verify addresses, and read delivery, open, and click tracking. Every route is POST and requires your api_key.

Base URL https://pmd.kingslist.pro
Authentication

Send api_key with every request as a form field or JSON property. Grab your key from the API keys page.

# All requests are POST and include api_key
curl -X POST https://pmd.kingslist.pro/api/v3/mail/send \
  -d "api_key=YOUR_API_KEY" ...

Create template

POSThttps://pmd.kingslist.pro/api/v2/mail/template/create

Store a reusable HTML template under your API key. content should be uploaded as an HTML file.

Required
FieldNotes
api_keyrequired
sender_namerequired — display name on the From line
subjectrequired — may contain {{placeholders}}
contentrequired — HTML file upload
Response
{
  "error": false,
  "message": "Template created.",
  "data": { "template_id": 12 }
}

Get templates

POSThttps://pmd.kingslist.pro/api/v2/mail/template/get

Returns the templates created under your API key.

Required
api_keyrequired
Response
{
  "error": false,
  "message": "Templates retrieved.",
  "data": { "templates": [ { "id": 12, "subject": "..." } ] }
}

Send single mail

POSThttps://pmd.kingslist.pro/api/v3/mail/send

Send one message built from a stored template.

Required
api_keyrequired
template_idrequired
recipientrequired — a single email, optionally with params
Example
api_key=YOUR_API_KEY
template_id=12
recipient=user@example.com
With custom parameters
recipient=user@example.com__id:123__meetingName:Conference__meetingDate:2026-07-20__meetingBanner:https://example.com/banner.jpg

The system applies matching {{placeholders}} in the template — e.g. {{meetingName}} becomes Conference. {{email}} is always available.

Send mail without template

POSThttps://pmd.kingslist.pro/api/v3/mail/send

Send an ad-hoc message by passing the subject and HTML content inline.

Required
api_keyrequired
recipientrequired
subjectrequired
contentrequired — inline HTML
Example
api_key=YOUR_API_KEY
recipient=user@example.com
subject=Welcome
content=<h1>Hello</h1><p>Welcome onboard.</p>

Send bulk mail

POSThttps://pmd.kingslist.pro/api/v3/mail/send

Send to many recipients in one call.

Required
api_keyrequired
template_idrequired
is_bulkrequired — set to true
recipientrequired — inline list or uploaded file
Inline recipients
recipient=user1@example.com,user2@example.com,user3@example.com
Uploaded .txt file
recipient=<uploaded .txt file>

The file may contain one email per line or comma-separated emails. Each line can carry __key:value params, just like single sends.

Verify email

POSThttps://pmd.kingslist.pro/api/v3/mail/verify

Check an address for valid syntax, a resolvable domain (MX), and disposable/role patterns.

Required
api_keyrequired
emailrequired
Example
api_key=YOUR_API_KEY
email=user@example.com
Response
{
  "error": false,
  "message": "Verification complete.",
  "data": {
    "email": "user@example.com",
    "valid": true,
    "reason": "ok",
    "has_mx": true,
    "is_disposable": false,
    "is_role": false
  }
}

Tracking summary

POSThttps://pmd.kingslist.pro/api/v3/mail/tracking/summary

Aggregate delivery and engagement funnel for a scope.

Required
api_keyrequired
And at least one
batch_idscope to one batch
template_idscope to one template
recipientscope to one address
Example
api_key=YOUR_API_KEY
batch_id=20
Returns
{
  "total": 1000,   "queued": 0,
  "accepted": 980, "delivered": 920,
  "opened": 400,   "clicked": 70,
  "bounced": 30,   "complained": 0,
  "failed": 10,    "skipped": 10,
  "open_count": 540, "click_count": 90
}

Tracking recipients

POSThttps://pmd.kingslist.pro/api/v3/mail/tracking/recipients

Recipient-level delivery and engagement status.

Required
api_keyrequired
And at least one
batch_id
template_id
recipient
Optional
statusoptional — filter by delivery status
limitoptional — max rows (default 100)

Tracking events

POSThttps://pmd.kingslist.pro/api/v3/mail/tracking/events

The full event history for one tracked recipient.

Required
api_keyrequired
recipient_idrequired — from the recipients endpoint
Optional
limitoptional

Tracking notes

Tracking is handled automatically when emails are sent through v3. Every message gets an open pixel, and links are rewritten for click tracking — no extra parameters needed.