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 is not derived from upstream and remains operator-editable on both shapes.

  • object
    Type: string

    Resource type identifier, always "contact".

  • id
    Type: string

    Stable identifier for the contact.

  • org_id
    Type: string

    Identifier of the owning organization.

  • kind
    Type: string · contact.ContactKindenum

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

    values
    • member = KindMember
    • external = KindExternal
  • user_id
    Type: string

    Identifier of the linked user. Present on member contacts only.

  • phone_id
    Type: string

    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.

  • first_name
    Type: string

    Registrant first name.

  • last_name
    Type: string

    Registrant last name.

  • org_name
    Type: string

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

  • email
    Type: string

    Registrant email address.

  • phone
    Type: string

    Registrant phone in canonical E.164 form.

  • fax
    Type: string

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

  • street1
    Type: string

    First line of the street address.

  • street2
    Type: string

    Second line of the street address. Optional.

  • city
    Type: string

    City or locality.

  • region
    Type: string

    State, province, or administrative region.

  • postal_code
    Type: string

    Postal or ZIP code.

  • country_code
    Type: string

    ISO 3166-1 alpha-2 country code.

  • disclose
    Type: boolean

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

  • verification_status
    Type: string · contact.VerificationStatusenum

    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
  • is_active
    Type: boolean

    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.

  • verified_at
    Type: string

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

  • location
    Type: object · OrgLocation

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

    • object
      Type: string

      Resource type identifier, always "org_location"

    • id
      Type: string

      Stable identifier for the location

    • org_id
      Type: string

      Identifier of the owning organization

    • label
      Type: string

      Display label (e.g. "HQ", "Berlin office"). Fixed to "Registered office" on the registered-office record.

    • street1
      Type: string

      First line of the street address

    • street2
      Type: string

      Second line of the street address (suite, floor, attention line)

    • city
      Type: string

      City or locality

    • region
      Type: string

      State, province, or administrative region

    • postal_code
      Type: string

      Postal or ZIP code

    • country_code
      Type: string

      ISO 3166-1 alpha-2 country code, uppercase

    • phone
      Type: string

      Office phone in E.164 form. Optional.

    • fax
      Type: string

      Office fax in E.164 form. Optional. Still required by some ccTLD registries for the registrant block over EPP.

    • is_primary
      Type: boolean

      True when this is the org's primary (default) location

    • is_system
      Type: boolean

      True when this is the org's registered-office record. Its label is fixed and the record cannot be deleted; address fields remain editable.

    • created_at
      Type: string

      Creation timestamp in RFC 3339 UTC form

    • updated_at
      Type: string

      Last-update timestamp in RFC 3339 UTC form

  • created_at
    Type: string

    Creation timestamp in RFC 3339 UTC form.

  • updated_at
    Type: string

    Last-update timestamp in RFC 3339 UTC form.