Skip to content
DomainKit
Esc
navigateopen⌘Jpreview
On this page

Core API

Reference for the namespaces exported by the canonical domainkit Effect entry point.

Import the canonical API from domainkit:

import { DnsRecord, Provisioning, Verification } from "domainkit";

VERSION is the package version copied from the installed package manifest.

Domain values and validation

Namespace Purpose
VERSION Installed DomainKit package version from the package manifest.
DomainName Decode, normalize, and brand DNS names at an untrusted boundary.
DnsRecord Schemas and constructors for A, AAAA, CAA, CNAME, MX, NS, SRV, TXT, observed, and opaque records.
InvalidInput Schema-backed invalid-input failure used by decoding and validation APIs.
Digest Canonical JSON encoding and SHA-256 helpers used for digest-bound plans.
DnsData Normalize DNS answer data before comparing public resolver evidence.

Authorization and connections

Namespace Purpose
Connection Inspect, start, complete, reuse, remove, and revoke domain connections.
AuthorizationLifecycle Durable repository contract for authorization attempts and transitions.
ConnectionAuthorization Authorize domain connection actions against provider and domain context.
ProviderAuth Provider authentication manifests and supported authentication methods.
ProviderAuthorization Provider authorization capabilities and grant evidence.
ProviderContext Provider, account, and connection context carried through authorization.
ProviderDiscovery Select a provider candidate for a domain.
ZoneDiscovery Discover an authoritative zone and provider from a domain.
Zones Zone lookup and candidate value types.
Secret Redacted secret value used to keep credentials out of logs and diagnostics.
Diagnostic Structured, safe-to-present diagnostic information for authorization failures.

Planning and cleanup

Namespace Purpose
Provisioning Create, authorize, validate, and apply additive DNS plans.
DnsPlan Plan, authorization, operation, result, and receipt schemas.
Deletion Create, authorize, and apply receipt-bound cleanup plans.

Verification

Namespace Purpose
Verification Observe provider and public DNS evidence under an explicit resolver policy.
DnsResolver Resolver service contract and structured observation outcomes.
DnsResolverPool Combine resolver evidence with any-match, all-match, or quorum policy.
DnsOverHttps Generic DNS-over-HTTPS resolver implementation.
CloudflareDnsOverHttps Cloudflare public resolver implementation and layer.
GoogleDnsOverHttps Google public resolver implementation and layer.

Providers and host transport

Namespace Purpose
DnsProvider Provider-independent DNS record capability and adapters.
Cloudflare Cloudflare OAuth, token, account discovery, and DNS provider constructors.
Vercel Vercel Integration, token, team discovery, and DNS provider constructors.
Transport Browser-safe application contract used by @domainkit/react.

Every namespace groups its schemas, tagged constructors, services, layers, and failure types. Use the namespace rather than importing an internal module path; this makes the package boundary visible at call sites and keeps upgrades source-checkable.

Lifecycle map

Job Start with Persist before continuing
Connect a provider Connection.start authorization attempt and provider context
Complete OAuth Connection.complete resulting connection and grant
Plan records Provisioning.create plan, digest, and attempt identity
Approve changes Provisioning.authorize digest-bound authorization
Apply records Provisioning.apply receipt, including partial results
Observe records Verification.observe evidence useful to your product state
Plan cleanup Deletion.create receipt-bound deletion plan
Apply cleanup Deletion.apply cleanup result before removing the grant

See Plans and receipts and Provision and clean up DNS for lifecycle semantics.

Was this page helpful?