Skip to content
PostMTA Hosted
StatusSign inOpen panelRequest access
Open menu

Docs

Open in panel → /app · domains

Domains

The panel Domains section lets a workspace declare a sender domain and publish TXT records. DKIM private material stays on the appliance (service_role only) and is never sent to the browser.

Endpoint contract

Path Auth Purpose
GET /v1/panel/domains viewer+ List domains + DNS records
POST /v1/panel/domains operator+ Create domain (auto-generates records via generateDomainDnsRecords)
POST /v1/panel/domains/:id/verify operator+ SPF/DKIM/DMARC verify; on success → policyRender.renderWorkspacePolicyapplyPolicyToKumo (epoch bump)

Verify modes

DKIM private key

domain_dkim_secrets is RLS-locked: service_role only, granted to the API admin client; revoked from anon and authenticated (PMH-SEC-023). The panel never renders the private PEM. apps/web/src/lib/dkim-pub.ts (when extended) will surface the public key only.

Operational facts

Last verified: Sat Jul 11 2026 17:00:00 GMT-0700 (Pacific Daylight Time). Cross-link maintained byscripts/check-docs-drift.sh (M54).

← All docs