Get a domain version

Returns a single lifecycle event from a domain's append-only history, addressed by its per-domain version number. The event carries two things:

  • snapshot: the complete frozen state of the domain at that version (expiry, auto-renew, term, roid, sponsoring registrar, contacts, nameservers, EPP statuses, DNSSEC DS records).
  • changes: the field-level deltas versus the previous version, so a client can render Expiry: 1 Jan 2025 -> 1 Jan 2026 without diffing snapshots itself. The first (registration) version reports its seeded values as null -> value.

Change kinds

Each entry in changes has a kind describing how to render it:

Kind Meaning from/to shape
date timestamp field (expiry) RFC 3339 string
toggle boolean (auto-renew) bool
count integer (term) number
text scalar string (roid, sponsoring registrar) string
list set field (nameservers, EPP statuses, DS records) array
reference a contact role object
Permissions
Key type Accepted Permission required Notes
Org API key yes domain:read Key must be scoped to the org that owns the domain.
Personal API key yes domain:read Requires X-Org-ID for the owning org; caller needs a role granting domain:read and team visibility of the domain.
Error Codes
Code HTTP Description
domain_version.get.unauthorized 401 No authenticated identity
domain_version.get.no_org 403 No active organization in scope
domain_version.get.invalid_id 400 Malformed domain id
domain_version.get.invalid_version 400 Version is not a positive integer
domain_version.get.not_found 404 Domain or version does not exist or is not visible to the caller
domain_version.get.failed 500 Version lookup failed
Path Parameters
  • id
    Type: string
    required

    Domain id (dom_...)

  • version
    Type: integer
    required

    Version number (1-based)

Responses
  • application/json
  • application/json
  • application/json
  • application/json
  • application/json
  • application/json
Request Example for get/domains/{id}/versions/{version}
curl 'https://api.nametrust.com/domains/{id}/versions/1'
{
  "object": "domain_version",
  "occurred_at": "2026-01-01T00:00:00Z",
  "id": "domv_01h455vb4pex5vsknk084sn02q",
  "domain_id": "dom_01h455vb4pex5vsknk084sn02q",
  "version": 3,
  "change_type": "renewed",
  "change_summary": "Renewed for 1 year",
  "snapshot": {
    "object": "domain_version_snapshot",
    "ds_records": [
      {
        "object": "domain_version_ds",
        "key_tag": 12345,
        "algorithm": 13,
        "digest_type": 2,
        "digest": "49FD46E6C4B45C55D4AC",
        "max_sig_life": 604800
      }
    ],
    "auto_renew": true,
    "period": {
      "object": "period",
      "count": 1,
      "unit": "y"
    },
    "expires_at": "2027-01-01T00:00:00Z",
    "roid": "D123-EXMP",
    "sponsoring_registrar": "registrar-1234",
    "contacts": [
      {
        "object": "domain_version_contact",
        "street2": "Suite 200",
        "city": "Mountain View",
        "region": "California",
        "postal_code": "94043",
        "country_code": "US",
        "disclose": false,
        "verification_status": "verified",
        "is_active": true,
        "role": "registrant",
        "first_name": "Jane",
        "last_name": "Doe",
        "org_name": "Acme Inc",
        "email": "jane@acme.com",
        "phone": "+1.5555550100",
        "fax": "+1.5555550101",
        "street1": "100 Main St"
      }
    ],
    "nameservers": [
      "ns1.example.com"
    ],
    "epp_statuses": [
      "clientTransferProhibited"
    ]
  },
  "changes": [
    {
      "object": "domain_version_change",
      "field": "expires_at",
      "label": "Expiry",
      "kind": "date",
      "from": {},
      "to": {}
    }
  ],
  "changed_by": {
    "object": "actor",
    "method": "session",
    "user": {
      "object": "user",
      "last_login_at": "2025-06-15T09:30:00Z",
      "last_active_at": "2025-06-15T09:30:00Z",
      "id": "user_01h455vb4pex5vsknk084sn02q",
      "email": "jane@acme.com",
      "first_name": "Jane",
      "last_name": "Doe",
      "avatar_url": "https://example.com/avatar.jpg",
      "mfa_enabled": true,
      "created_at": "2025-06-01T12:00:00Z",
      "updated_at": "2025-06-15T09:30:00Z"
    },
    "personal_key": {
      "object": "actor_personal_key",
      "id": "pkey_01h455vb4pex5vsknk084sn02q"
    },
    "org_key": {
      "object": "actor_org_key",
      "id": "okey_01h455vb4pex5vsknk084sn02q"
    }
  }
}