Skip to main content

Public API changelog

This page lists the major changes to the CaptainDNS public API. Non-breaking additions (new endpoints, new optional fields) are documented here without formal notice. Breaking changes are announced at least 30 days before deployment, on this very page and by email to active key holders.

Versioning policy

  • Backward compatibility: adding optional fields and new endpoints does not break existing clients.
  • Deprecations: a deprecated field or endpoint stays functional for at least 6 months after the announcement.
  • Breaks: breaking changes are announced 30 days ahead and deployed under a new versioned URL (for example /public/v2/*). The V1 URL stays up during the migration window.
  • Version identifier: the OpenAPI spec carries its own version (info.version). The major number follows the versioned URL, the minor number follows backward-compatible additions.

Version 0.2.0 - 2026-04-09

Added

  • 40+ public endpoints under /public/v1/* covering DNS, mail, web and text:
    • DNS: resolve, resolve/propagation, dnssec/check, ip/whois, ip/nslookup, ip/netmask, rdap/lookup, domain/dns-check.
    • Mail: spf/lookup, spf/validate, dkim/lookup, dkim/validate, dmarc/lookup, dmarc/validate, dmarc/generate, dmarcbis/check, dmarcbis/migrate, dmarc/report/analyze, bimi/lookup, bimi/validate, bimi/logo/lookup, mta-sts/lookup, tls-rpt/lookup, dane/lookup, blacklist/ip, smtp/check, mail/header-audit, mail/header-analyze, mail/domain-check, deliverability/score, certificates/csr/parse, certificats/bimi/parse, certificats/bimi/lookup.
    • Web: url/check, page/crawl-check, phishing/check.
    • Text: text/lower, text/upper, text/stats, text/slug, text/base64/encode, text/base64/decode, text/password/generate, text/urlencode, text/urldecode, text/json/format, text/json/to-yaml, text/yaml/format, text/yaml/to-json, text/hash, text/regex/test.
  • API key management from the CaptainDNS dashboard: list, create, revoke, rotate and consult usage.
  • OpenAPI schema PublicAPIError with 10 canonical codes for all public API errors.
  • Stripe-style Idempotency-Key header, 24-hour replay, 409 IDEMPOTENCY_CONFLICT on divergent body.
  • Headers X-Credits-Limit/Remaining/Consumed returned on every successful response.
  • Headers RateLimit, RateLimit-Policy, X-RateLimit-Limit/Remaining/Reset (IETF draft + X-prefixed).
  • Header X-Request-Id returned on every response to ease support.
  • 5 billing plans: Free, Starter, Pro, Business, Enterprise, with per-tier quotas and overage billing.
  • Opt-in overage billing with configurable monthly budget cap from the dashboard.
  • Automatic leak detection via the GitHub secret scanning program.

Not shipped in V1

  • Webhooks: planned for V2.
  • Official SDKs: the Speakeasy TypeScript SDK is planned for the first delivery.
  • mTLS for Business and Enterprise plans: deferred.

Stay up to date

  • CaptainDNS blog: major releases are relayed in dedicated posts on captaindns.com/en/blog.
  • Email: active key holders receive an automatic notification for any breaking change.
  • This page: any addition or fix is recorded here, latest first.
  • OpenAPI specification: the info.version field is bumped on each release. Watching its value lets you trigger SDK regenerations.

Next step: go back to the quickstart to start integrating, or explore the OpenAPI reference to see all schemas in detail.