← All installation guides High Security Email Integrations

Set up High Security email on High Security Email API overview

Understand the trusted-server workflow used to issue a unique, expiring VEM verification code for each final email Message-ID.

VEM
Recommended methodServer-side per-message API
Trusted-server integration

Create, bind and deliver each message code safely

  1. 1

    Complete the High Security seal first

    Purchase and fulfil the separate High Security Email Verification Seal. Domain ownership, the exact sender address, SPF, DKIM and DMARC must be current. A Low Security Email Sender Seal cannot issue per-message VEM codes.

  2. 2

    Open the API from the issued seal

    Sign in to the customer portal, open My seals, select the issued High Security email seal and choose Manage High Security Email API. Create a separately named key for each production server, application or outbound gateway.

  3. 3

    Install at the final mail-building point

    Add the integration to the server-side application, queue worker, mail transport plug-in or outbound gateway that builds the complete message. It must be able to set Message-ID, add a custom header and update both HTML and plain-text bodies before DKIM signing.

  4. 4

    Store the API key outside public content

    Copy the key once into a protected environment variable, secret manager or server configuration outside the public web directory. Never place it in a website page, browser JavaScript, email template, signature editor, mobile device or source repository.

  5. 5

    Create stable send identifiers

    When the mail or queue job is created, generate its final RFC Message-ID and a stable idempotency key. Persist both with the job so a retry uses the same Message-ID, idempotency key and VEM code.

  6. 6

    Request one code for that message

    Before sending, POST the exact final message_id, including angle brackets, and the idempotency_key to the VerifySeal endpoint. Authenticate with the server API key in the Authorization Bearer header and require a successful response.

  7. 7

    Place every returned value correctly

    Add message_code.header to the message headers. Append message_code.html_footer to the HTML MIME part and message_code.text_footer to the plain-text MIME part. Do not paste one fixed VEM code into a reusable signature.

  8. 8

    Apply DKIM signing and send last

    After Message-ID, the X-VerifySeal-Code header and both message bodies are final, allow the local mailer or downstream provider to apply DKIM and send. Nothing may rewrite the Message-ID or remove the verification data afterward.

  9. 9

    Test the delivered source

    Send to an external mailbox, open the original message source and confirm the received Message-ID exactly matches the value submitted to VerifySeal. Check the VEM header and footer, open the public verification link, and confirm aligned DKIM and DMARC pass.

  10. 10

    Monitor, retry and revoke safely

    Treat an API failure as a failed or queued High Security send. Reuse the same idempotency key on retry. Revoke a VEM code for a cancelled or exposed message, and revoke and replace any server key that may have leaked.

Where to install it

Install the integration on the system that builds and sends the final email

The High Security seal is not one permanent image or code pasted into a website or signature. Your trusted sending system requests a new VEM code and inserts its verification data into every individual message before that message is DKIM-signed and delivered.

LocationWhat to configure thereCorrect placement
Customer portal Open My seals → High Security Email Verification Seal → Manage High Security Email API. Create and copy a named key for the sending system. Account and key management only. The per-message integration does not run in the customer portal.
Hosting or application server Store the API key in a protected environment variable, secret manager or non-public server configuration. Outside public_html and outside templates, logs, repositories and browser-accessible configuration.
Mailer, queue worker or gateway Create the final Message-ID, call the VerifySeal API, then add the returned header and both body footers. Immediately before DKIM signing and the final SMTP, Gmail API or Microsoft Graph submission.
Email HTML body Append message_code.html_footer after the message content and normal signature. Inside the final HTML MIME part before signing. Keep the verification link unchanged.
Email plain-text body Append message_code.text_footer after the text content and signature. Inside the final text MIME part before signing so non-HTML recipients receive the same VEM code.
Email headers Add the returned X-VerifySeal-Code header and preserve the exact submitted Message-ID. In the final message headers before DKIM. The delivery provider must not replace either value.
DNS control panel Maintain SPF, the selected DKIM record and DMARC for the verified sender domain. DNS supports authentication, but the VEM API key and per-message code are never published in DNS.
Website or signature editor A linked base seal image may be displayed separately, but it does not create High Security message verification. Do not place the API key or a fixed VEM code here. Static signature installation is the Low Security method.
Choose the sending system

Open the detailed guide for the software that sends your email

Use the guide for the final mailer—not merely the website control panel. If a platform rewrites Message-ID or cannot add the custom header and both MIME footers, send High Security mail through a trusted gateway that preserves the completed message.

PHP

PHP and PHPMailer

Set the final PHPMailer MessageID, request a VEM code, add its header and footer, then let the configured mail transport apply DKIM.

Server-side per-message API Open detailed setup guide →
WP✉

WordPress transactional email

Use a protected WordPress mailer plugin or gateway integration; an email signature or page-builder snippet cannot issue per-message VEM codes.

Server-side per-message API Open detailed setup guide →
BILL

WISECP and WHMCS email

Add VEM processing at the billing platform’s final mailer or outbound gateway; a template footer alone cannot bind a code to the final Message-ID.

Server-side per-message API Open detailed setup guide →
LAR

Laravel Mail

Create the Message-ID in the queued job, call VerifySeal through Laravel’s HTTP client and pass the returned values into the Mailable.

Server-side per-message API Open detailed setup guide →
NODE

Node.js and Nodemailer

Set Nodemailer messageId and headers explicitly, append the returned HTML/text footer and send only after the VEM request succeeds.

Server-side per-message API Open detailed setup guide →
PY

Python EmailMessage and SMTP

Create the Python EmailMessage identity, request its VEM code, add the returned header and MIME footers, then submit the finished message through SMTP.

Server-side per-message API Open detailed setup guide →
GAPI

Google Workspace and Gmail API

Use a trusted application to create the complete MIME message and send it through the Gmail API; a Gmail web signature cannot call the VEM API.

Server-side per-message API Open detailed setup guide →
M365

Microsoft 365 and Graph

Use a trusted Graph or SMTP application that submits the completed MIME message; Outlook signatures and mail-flow disclaimers are Low Security only.

Server-side per-message API Open detailed setup guide →
High Security still requires domain authentication

A VEM code does not replace SPF, DKIM or DMARC

The sender domain must continue to publish a valid SPF record, the selected DKIM key and a DMARC policy. VerifySeal automatically rechecks these records according to the administrator schedule. For High Security messages, DKIM must cover the final Message-ID, VEM header and completed body.

  • SPF authorizes sending services
  • DKIM verifies the signed message domain
  • DMARC publishes the domain policy
Testing checklist

Confirm the installation is working

01

Message-ID

The exact final Message-ID is created before the API request and matches the sent email.

02

VEM code

The returned header and footer are present and the public verification link opens.

03

DKIM last

The receiving service reports an aligned DKIM and DMARC pass after all content was inserted.

04

Revocation

Revoking the test code immediately changes its public status.

Platform notes
  • Never call the API from browser JavaScript, a public form, an email client signature or any other untrusted device.
  • VerifySeal stores a keyed hash of the Message-ID and does not receive the recipient, subject or message body.
  • The VEM code does not replace checking aligned DKIM and DMARC on the received email.