GNSDeveloper Docsv1.0 (Current)
Channels

Custom Sending Domains & DKIM

Configure custom branded sending domains with automated SPF alignment and RSA-2048 DKIM cryptographic signing.

Custom Sending Domains & DKIM

Deliver emails directly from your own domain (e.g. notifications@acme.com or billing@send.acme.com) with full cryptographic authentication to maximize inbox placement.


1. Why Custom Domains Matter

Sending from your own domain:

  1. Elevates Brand Trust: Recipients see your exact domain in their mail client rather than a shared relay address.
  2. Prevents Spam Classifications: SPF and DKIM authentication ensure major mailbox providers (Gmail, Outlook, Yahoo) recognize GNS as an authorized sender for your domain.
  3. Domain Isolation: Your sender reputation is completely protected from other tenants.

2. Interactive DNS Record Calculator

Use the tool below to generate the exact DNS entries required by your DNS provider (Cloudflare, Route53, GoDaddy):

Interactive DNS Record Calculator

Enter your sending domain to calculate required DNS records

TXT RecordDomain ownership verification token
Host: _gns-challenge.company.com
Value: gns-verify=gns_chal_companycom_prod
CNAME RecordOutbound RSA-2048 DKIM signing key delegation
Host: gns._domainkey.company.com
Value: dkim.gns.iitdeveloper.com
TXT RecordSPF authorization for Postal SMTP cluster
Host: company.com
Value: v=spf1 include:relay.iitdeveloper.com ~all

3. The 3-Step Verification Process

Step 1: Register the Domain in GNS

In the GNS Console, navigate to Domains and click Add Domain. Enter your domain name (e.g. acme.com or notify.acme.com).

Step 2: Add DNS Records

Add the three DNS records generated above:

  1. TXT Ownership Challenge: Confirms you control the DNS zone.
  2. CNAME DKIM Key: Delegates DKIM signing to GNS's automated key rotation infrastructure (dkim.gns.iitdeveloper.com).
  3. TXT SPF Alignment: Authorizes our Postal SMTP cluster to relay outbound messages.

Step 3: Trigger Verification

Click Verify DNS in the console or call the verification endpoint:

POST /api/v1/domains/{domain_id}/verify
Authorization: Bearer <keycloak_token>
Response200 OK
{
  "domain": "acme.com",
  "status": "verified",
  "dkim_status": "valid",
  "spf_status": "valid",
  "verified_at": "2026-09-13T12:30:00Z"
}

[!IMPORTANT] Once verified, all outbound emails for applications bound to this domain will automatically sign DKIM headers with RSA-2048 keys.

On this page