Contact

A registrant contact record submitted to domain registries. Two shapes are supported: member contacts derive their registrant payload from an existing user, organization location, and optional personal phone; external contacts are free-form rows whose payload is operator-edited end-to-end. The snapshot fields (first_name, last_name, org_name, email, phone, fax, address, country_code) carry a stable copy of the registrant payload so the registry sees a consistent submission even when the upstream rows change. On a member contact those fields are refresher-owned and reflect the latest upstream values; on an external contact they are taken directly from the request body. location carries the full linked organization location on member contacts. It is null on external contacts, and also null on a member contact whose location has since been deleted. disclose is the per-contact privacy flag forwarded to the registry. It defaults to false, withholding the payload, and publication is an explicit edit. It is not derived from upstream and remains operator-editable on both shapes.

  • Resource type identifier, always "contact".

  • Registrant email address.

  • Registrant phone in canonical E.164 form.

  • Registrant fax in canonical E.164 form. Optional; many registries accept an empty value.

  • First line of the street address.

  • Second line of the street address. Optional.

  • City or locality.

  • State, province, or administrative region.

  • Postal or ZIP code.

  • ISO 3166-1 alpha-2 country code.

  • Per-contact privacy flag submitted to the registry. False (default) requests redaction; true permits the registry to disclose the registrant payload via WHOIS/RDAP. Not derived from upstream; operator-editable on both kinds.

  • Stable identifier for the contact.

  • Explicit verification state of the contact: "unverified" or "verified". Member contacts are stamped "verified" at create time because their snapshot is composed from already-validated upstream rows; external contacts start "unverified" and transition only via the verification flow. Not operator-editable via PATCH.

    values
    • unverified = StatusUnverified
    • verified = StatusVerified
  • Whether the contact is available for assignment to new team role slots. Defaults to true; flipping to false is the reversible operator switch above soft-delete. A contact currently referenced by any team's role slot cannot be deactivated until the slot is reassigned or cleared.

  • Timestamp of the last successful verification, in RFC 3339 UTC form. Supporting observability for verification_status; null when the contact has never been verified.

  • Full linked organization location. Present on member contacts; null on external contacts and on member contacts whose location has been deleted.

    Properties: 16
  • Creation timestamp in RFC 3339 UTC form.

  • Last-update timestamp in RFC 3339 UTC form.

  • Identifier of the owning organization.

  • Contact shape: "member" (derived from user + location + optional phone) or "external" (free-form).

    values
    member = KindMemberexternal = KindExternal
  • Identifier of the linked user. Present on member contacts only.

  • Identifier of the linked personal phone. Optional on member contacts; when absent the snapshot's phone is composed from the location's office phone. Always null on external contacts.

  • Registrant first name.

  • Registrant last name.

  • Registrant organization name. Derived from the org's legal name on member contacts; free-form on external contacts.