Second Level Registrations - 2014

The production SRS has supported second level registrations (for example nzrsexample.nz) since 1:00pm on Tuesday 30th September 2014.

For general information on second-level registrations please see: http://anyname.dnc.org.nz/

Second Level Status Codes

The following table gives a brief summary of the second-level status and associated meaning:

Second Level Domain Status Registration options
Available The domain is available for registration on a first come first served basis.
Prohibited For reasons of confusion, this domain name cannot be registered directly at the second level. These names include 'gov', 'government', 'com', 'edu', 'nic' and all macron variations of the current 15 second levels.
Conflicted A domain status which means there are at least two registrations at the third level that have rights over this domain and so its registration at the second level may need to go through a conflicted process before it can be registered.
Resolved A domain status indicating the domain name was conflicted but which agreement has been reached as to which registrant of the registrations at the third level is entitled to register it.

Note

In addition to the second level status listed above there were two additional status PRR - Preferential Registration or Reservation. This status was only available until 1pm 30 March 2015. Reserved - these domain names were released back to the available pool of domain names at 1:00pm on Thursday 30th March 2017.

WHOIS Server Changes

The Whois server has been updated to return additional second-level specific status codes.

Whois Status Codes

Code Value Description
200 Active Registered domain
210 Pending Release A registered domain that has been cancelled and is in the 90 day Pending Release period
230 Prohibited For reasons of confusion, this domain name cannot be registered directly at the second level. These names include 'gov', 'government', 'com', 'edu', 'nic' and all macron variations of the current 15 second levels
250 Conflicted A domain status which means there are at least two registrations at the third level that have rights over this domain and so its registration at the second level may need to go through a conflicted process after the second level registration policy 'go-live' date. See DNCL Registering, Managing and Cancelling Domain Names Policy section 8 and 10 for more details on the criteria for Conflicted domains.
280 Resolved A domain status indicating the domain name was conflicted but which agreement has been reached as to which registrant of the registrations at the third level is entitled to register it.

Client Error Codes

Code Value
500 Invalid characters in query string
510 Domain is not managed by this register
520 This domain is not available for registration. This error code will be returned for whois queries for Second Level Domains, for example: co.nz, org.nz, net.nz

All errors in this category are permanent. The request should not be retried as is, instead the request should be reviewed to ensure that it is well formed, and appropriate for the whois server.

Fields

In addition there is a set of source domain name fields that may be returned for any unregistered domain name at the second level under .nz if certain requirements in the pending DNCL Registering, Managing and Cancelling Domain Names Policy section 8 - Preferential Registration Eligibility are met. These source domain names will show any domain names registered at the third level that are linked to the unregistered second level domain. There will not be any gaps in the sequence.

source_domain_name_01 The source domain name shows the registered third level domain name that is linked to the unregistered second level domain name
source_domain_name_99 As above

SRS Whois XML Transaction Changes

The statuses shown above for the Whois Server will be returned for the SRS Whois XML transaction. Also as per the whois server there is a set of linked domain name fields that may be returned for any unregistered domain name at the second level under .nz if certain requirements in the pending DNCL Registering, Managing and Cancelling Domain Names Policy section 8 - Preferential Registration Eligibility are met. These linked domain names will show any domain names registered at the third level that are linked to the unregistered second level domain. There will not be any gaps in the sequence.

Eg:

<Linked3lds>
    <Linked3ld domainname="nzrs.org.nz"/>
    <Linked3ld domainname="nzrs.co.nz"/>
    <Linked3ld domainname="nzrs.net.nz"/>
</Linked3lds>

Second Level Registrations of Resolved Domains

Under the SRS or EPP protocols registrars that wish to register a domain at the second level that has Domain status = Resolved will need to perform a domain transfer. The transfer would be a normal domain transfer using a SRS DomainUpdate or an EPP DomainTransfer transaction. The UDAI that is provided for the transfer must be the UDAI of the linked third level domain (3LD).

The SRS will create the domain, copying contact records from the 3LD. If the registration is successful the domain status for the second level registration will be changed to "Active".

Several fields on the DomainUpdate transaction will be ignored, and other rules will apply (as logically, it is a DomainCreate). These include:

  • Contact details will be ignored, as they will be copied from the linked 3LD.
  • Name server details are NOT copied
  • Only one domain can be 'updated' in this way at a time, i.e. DomainNameFilter cannot be provided (this is an "implicit" restriction on transfers anyway)
  • Flags (e.g. Cancel, Renew, NewUDAI etc.) will be ignored
  • Term can be provided, but will default to 1 if not provided.
  • RegistrantRef may also be provided
  • AuditText will be auto-generated to allow for easy identification of this transaction. This will overwrite any AuditText supplied.
  • Domains that have sunrise statuses of Conflicted or Prohibited will be rejected.
  • Domains where the linked 3LD is locked cannot be registered in this way.
  • These types of registrations will be rejected before the go-live date

Note

Registrars that wish to register an "available" domain at the second level must use the normal domain create transaction under the SRS or EPP protocols.

EPP Transactions

EPP Query Domain Status

The EPP domain:check transaction is used to return a status showing if the domain is available or not. Informational messages will be returned only for the new second level registration statuses.

The table below details the possible response values for the 'avail' attribute of the domain:name element and the optional domain:reason values if returned.

avail="1/0" domain:reason Registered domain
0 Not returned The domain is not available for registration
1 Not returned Domain is available for registration
0 Prohibited Applies to registrations at the second level only and will be returned after the second level registration policy 'go-live' date. For reasons of confusion, this domain name cannot be registered directly at the second level. These names include 'gov', 'government', 'com', 'edu', 'nic' and all macron variations of the current 15 second levels
0 Conflicted Applies to registrations at the second level only and will be returned after the second level registration policy 'go-live' date. A domain status which means there are at least two registrations at the third level that have rights over this domain and so its registration at the second level may need to go through a conflicted process after the second level registration policy 'go-live' date. See DNCL Registering, Managing and Cancelling Domain Names Policy section 8 and 10 for more details on the criteria for Conflicted domains.
0 Resolved Applies to registrations at the second level only and returned after the second level registration policy 'go-live' date. A domain status indicating the domain name was conflicted but which agreement has been reached as to which registrant of the registrations at the third level is entitled to register it.

EPP Request a new UDAI

The EPP domain::update request with only an empty auth_info will generate a new UDAI. This will work if the domain status is Active or PendingRelease. If the status is PendingRelease it will not uncancel the domain.

EPP UDAI Validate

The EPP domain::info request can be used to validate the UDAI by populating the domain:authInfo field. The EPP proxy will either return the domain:info details if the UDAI is valid or result code 2202 invalid authorisation details if the UDAI is invalid.

Example Whois Output

Prohibited

whois com.nz
version: 5.00
query_datetime: 2015-06-12T15:53:00+12:00
domain_name: com.nz
query_status: 230 Prohibited

Available

whois nzrsnew.nz
version: 5.00
query_datetime: 2015-06-12T15:54:49+12:00
domain_name: nzrsnew.nz
query_status: 220 Available

Conflicted

whois dncl.nz
version: 5.00
query_datetime: 2015-06-12T16:13:31+12:00
domain_name: dncl.nz
query_status: 250 Conflicted
source_domain_name_01: dncl.co.nz
source_domain_name_02: dncl.net.nz
source_domain_name_03: dncl.org.nz

Resolved

whois bees.nz
version: 5.00
query_datetime: 2015-06-15T11:47:54+12:00
domain_name: bees.nz
query_status: 280 Resolved
source_domain_name_01: bees.co.nz

Domain not available

whois co.nz
version: 5.00
query_datetime: 2015-06-12T16:04:00+12:00
domain_name: co.nz
query_status: 520 This domain is not available for registration

Example SRS Whois XML request

<?xml version="1.0" encoding="UTF-8"?>
<SRSRequest RegistrarId="999" VerMajor="1" VerMinor="0">
    <Whois DomainName="com.nz"/>
    <Whois DomainName="nzrsnew.nz"/>
    <Whois DomainName="dn3.nz"/>
    <Whois DomainName="nzrs.nz"/>
    <Whois DomainName="nvp.nz"/>
    <Whois DomainName="nzcctld.nz"/>
    <Whois DomainName="co.nz"/>
    <Whois DomainName="nzrs.comf "/>
</SRSRequest>

Example SRS Whois XML responses

Prohibited

<Response Action="Whois" FeId="8" FeSeq="20925329" OrigRegistrarId="999" RecipientRegistrarId="999">
    <FeTimeStamp Day="18" Hour="12" Minute="16" Month="06" Second="23" TimeZoneOffset="+12:00" Year="2014"/>
    <Domain DomainName="com.nz" Status="Prohibited"/>
</Response>

Available

<Response Action="Whois" FeId="8" FeSeq="20925329" OrigRegistrarId="999" RecipientRegistrarId="999">
    <FeTimeStamp Day="18" Hour="12" Minute="16" Month="06" Second="23" TimeZoneOffset="+12:00" Year="2014"/>
    <Domain DomainName="nzrsnew.nz" Status="Available"/>
</Response>

Conflicted

<Response Action="Whois" FeId="8" FeSeq="20925329" OrigRegistrarId="999" RecipientRegistrarId="999">
    <FeTimeStamp Day="18" Hour="12" Minute="16" Month="06" Second="23" TimeZoneOffset="+12:00" Year="2014"/>
    <Domain DomainName="nzrs.nz" Status="Conflicted">
        <Linked3lds>
            <Linked3ld domainname="nzrs.org.nz"/>
            <Linked3ld domainname="nzrs.co.nz"/>
            <Linked3ld domainname="nzrs.net.nz"/>
        </Linked3lds>
    </Domain>
</Response>

Resolved

Note

There is only a single linked name for Resolved

<Response Action="Whois" FeId="8" FeSeq="21877448" OrigRegistrarId="999" RecipientRegistrarId="999">
    <FeTimeStamp Day="29" Hour="22" Minute="15" Month="07" Second="02" TimeZoneOffset="+12:00" Year="2014"/>
    <Domain DomainName="nzcctld.nz" Status="Resolved">
        <Linked3lds>
            <Linked3ld domainname="nzcctld.co.nz"/>
        </Linked3lds>
    </Domain>
</Response>

Domain not available

For example querying a second level domain eg co.nz, net.nz etc

<Response Action="Whois" FeId="5" FeSeq="7531378" OrigRegistrarId="999" RecipientRegistrarId="999">
    <FeTimeStamp Day="29" Hour="22" Minute="26" Month="07" Second="05" TimeZoneOffset="+12:00" Year="2014"/>
    <Error ErrorId="DOMAIN_NOT_AVAILABLE_FOR_REGISTRATION" Hint="UNKNOWN_ERROR_HINT" Severity="err">
        <Description><![CDATA[The supplied domain name is not available for registration]]></Description>
        <ErrorDetails><![CDATA[co.nz]]></ErrorDetails>
    </Error>
</Response>

Domain not managed

Querying a non-dotnz domain eg .com, .net, etc

<Response Action="Whois" FeId="5" FeSeq="7531378" OrigRegistrarId="999" RecipientRegistrarId="999">
    <FeTimeStamp Day="29" Hour="22" Minute="26" Month="07" Second="05" TimeZoneOffset="+12:00" Year="2014"/>
    <Error ErrorId="DOMAIN_NOT_MANAGED_BY_THIS_REGISTRY" Hint="UNKNOWN_ERROR_HINT" Severity="err">
        <Description><![CDATA[The supplied domain name is not managed by this registry]]></Description>
        <ErrorDetails><![CDATA[nzrs.comf]]></ErrorDetails>
    </Error>
</Response>

Example EPP domain:check request

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
    <command>
        <check>
            <domain:check xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
                <domain:name>com.nz</domain:name>
            </domain:check>
        </check>
        <clTRID>checkdomain-2014-06-18-com.nz-019</clTRID>
    </command>
</epp>

Example EPP domain:check responses

Prohibited

<?xml version="1.0" encoding="UTF-8"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
    <response>
        <result code="1000">
            <msg lang="en">Command completed successfully</msg>
        </result>
        <resData>
            <domain:chkData xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
                <domain:cd>
                    <domain:name avail="0">com.nz</domain:name>
                    <domain:reason>Prohibited</domain:reason>
                </domain:cd>
            </domain:chkData>
        </resData>
        <trID>
            <clTRID>checkdomain-2014-06-18-com.nz-019</clTRID>
            <svTRID>8,20925487</svTRID>
        </trID>
    </response>
</epp>

Available

<?xml version="1.0" encoding="UTF-8"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
    <response>
        <result code="1000">
            <msg lang="en">Command completed successfully</msg>
        </result>
        <resData>
            <domain:chkData xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
                <domain:cd>
                    <domain:name avail="1">nzrsnew.nz</domain:name>
                </domain:cd>
            </domain:chkData>
        </resData>
        <trID>
            <clTRID>checkdomain-2014-06-18-nzrsnew.nz-019</clTRID>
            <svTRID>5,7536248</svTRID>
        </trID>
    </response>
</epp>

Conflicted

<?xml version="1.0" encoding="UTF-8"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
    <response>
        <result code="1000">
            <msg lang="en">Command completed successfully</msg>
        </result>
        <resData>
            <domain:chkData xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
                <domain:cd>
                    <domain:name avail="0">nzrs.nz</domain:name>
                    <domain:reason>Conflicted</domain:reason>
                </domain:cd>
            </domain:chkData>
        </resData>
        <trID>
            <clTRID>checkdomain-2014-06-18-nzrs.nz-019</clTRID>
            <svTRID>8,20925490</svTRID>
        </trID>
    </response>
</epp>

Existing third level registration

<?xml version="1.0" encoding="UTF-8"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
    <response>
        <result code="1000">
            <msg lang="en">Command completed successfully</msg>
        </result>
        <resData>
            <domain:chkData xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
                <domain:cd>
                    <domain:name avail="0">nzrs.net.nz</domain:name>
                </domain:cd>
            </domain:chkData>
        </resData>
        <trID>
            <clTRID>checkdomain-2014-06-18-nzrs.net.nz-019</clTRID>
            <svTRID>8,20925491</svTRID>
        </trID>
    </response>
</epp>

Domain not available

For example querying a second level domain eg co.nz, net.nz etc

<?xml version="1.0" encoding="UTF-8"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
    <response>
        <result code="2400">
            <msg lang="en">The supplied domain name is not available for registration</msg>
            <extValue>
                <value>co.nz</value>
                <reason lang="en">(unknown error detail)</reason>
            </extValue>
        </result>
        <trID>
            <clTRID>checkdomain-2014-06-18-co.nz-019</clTRID>
            <svTRID>5,7536263</svTRID>
        </trID>
    </response>
</epp>

Example Second Level Registrations of Resolved Domains

SRS Transfer to register a second level domain that has PRR, Resolved status

Request - Transfer without Term

<DomainUpdate ActionId="NZRS 20140729 nzrstestdomain.nz 3" FullResult="1" UDAI="pbFmwPjS">
    <DomainNameFilter>nzrstestdomain.nz</DomainNameFilter>
    <AuditText>Transfer PRR domain</AuditText>
</DomainUpdate>

Response - Transfer without Term, domain created for a default 1 month term

<Response Action="DomainUpdate" FeId="5" FeSeq="7531549" OrigRegistrarId="999" RecipientRegistrarId="999" TransId="NZRS 20140729 inzgroup.nz 3">
    <FeTimeStamp Day="29" Hour="23" Minute="20" Month="07" Second="26" TimeZoneOffset="+12:00" Year="2014"/>
    <Domain Delegate="1" DomainName=" nzrstestdomain.nz" RegistrarId="90" Status="Active" Term="1" UDAI="NUvuYuFj">
        <RegistrantContact Email="office@internetnz.net.nz" Name="InternetNZ">
            <PostalAddress Address1="PO Box 11-881" City="Wellington" CountryCode="NZ" PostalCode="6011"/>
            <Phone AreaCode="4" CountryCode="64" LocalNumber="472 1600"/>
            <Fax AreaCode="4" CountryCode="64" LocalNumber="495 2115"/>
        </RegistrantContact>
        <AdminContact Email="office@internetnz.net.nz" Name="InternetNZ">
            <PostalAddress Address1="PO Box 11-881" City="Wellington" CountryCode="NZ" PostalCode="6011"/>
            <Phone AreaCode="4" CountryCode="64" LocalNumber="472 1600"/>
            <Fax AreaCode="4" CountryCode="64" LocalNumber="495 2115"/>
        </AdminContact>
        <TechnicalContact Email="soa@internetnz.net.nz" Name="Technical Manager">
            <PostalAddress Address1="InternetNZ" Address2="PO Box 11881" City="Wellington" CountryCode="NZ"/>
            <Phone AreaCode="4" CountryCode="64" LocalNumber="472-1600"/>
            <Fax AreaCode="4" CountryCode="64" LocalNumber="495-2115"/>
        </TechnicalContact>
        <BilledUntil Day="29" Hour="23" Minute="20" Month="08" Second="26" TimeZoneOffset="+12:00" Year="2014"/>
        <RegisteredDate Day="29" Hour="23" Minute="20" Month="07" Second="26" TimeZoneOffset="+12:00" Year="2014"/>
        <AuditDetails ActionId="NZRS 20140729 nzrstestdomain.nz 3" RegistrarId="90">
            <AuditTime>
                <From Day="29" Hour="23" Minute="20" Month="07" Second="26" TimeZoneOffset="+12:00" Year="2014"/>
            </AuditTime>
            <AuditText><![CDATA[PRP Registration - Linked 3LR: nzrstestdomain.net.nz]]></AuditText>
        </AuditDetails>
    </Domain>
</Response>

Request - Transfer with 12 month Term

<DomainUpdate ActionId="NZRS 20140729 nzrstestdomain.nz 3" FullResult="1" Term="12" UDAI="qD48x4eX">
    <DomainNameFilter>nzrstestdomain.nz</DomainNameFilter>
    <AuditText>Transfer PRR domain</AuditText>
</DomainUpdate>

Response - Transfer with 12 month Term

Response is the same as the above response for transfer without a Term
but the BilledUntil date is 12 months into the future instead of 1 month.

Response - Transfer Error ,when the UDAI is invalid

<?xml version="1.0" encoding="utf-8"?>
<NZSRSResponse RegistrarId="xx" VerMajor="6" VerMinor="2">
    <Response Action="DomainUpdate" FeId="5" FeSeq="7930385" OrigRegistrarId="1" RecipientRegistrarId="60" TransId="NZRS 201sg08261140">
        <FeTimeStamp Day="27" Hour="16" Minute="20" Month="08" Second="46" TimeZoneOffset="+12:00" Year="2014"/>
        <Error ErrorId="UDAI_DOMAIN_MISMATCH" Hint="INVALID_REQUEST_ERROR" Severity="err">
            <Description><![CDATA[The given UDAI does not match the requested domain]]></Description>
            <ErrorDetails><![CDATA[nzrstestdomain.org.nz]]></ErrorDetails>
        </Error>
    </Response>
</NZSRSResponse>

Response - Transfer Error ,when the UDAI has expired

<?xml version="1.0" encoding="utf-8"?>
<NZSRSResponse RegistrarId="xx" VerMajor="6" VerMinor="2">
    <Response Action="DomainUpdate" FeId="5" FeSeq="7930385" OrigRegistrarId="1" RecipientRegistrarId="60" TransId="NZRS 201sg08261140">
        <FeTimeStamp Day="27" Hour="16" Minute="20" Month="08" Second="46" TimeZoneOffset="+12:00" Year="2014"/>
        <Error ErrorId="UDAI_EXPIRED" Hint="UNKNOWN_ERROR_HINT" Severity="err">
            <Description><![CDATA[The supplied UDAI has expired]]></Description>
            <ErrorDetails><![CDATA[nzrstestdomain.org.nz]]></ErrorDetails>
        </Error>
    </Response>
</NZSRSResponse>

EPP transfer to register a second level domain that has a Resolved status

Request - Transfer without period values

<Response Action="Whois" FeId="8" FeSeq="20925329" OrigRegistrarId="999" RecipientRegistrarId="999">
    <FeTimeStamp Day="18" Hour="12" Minute="16" Month="06" Second="23" TimeZoneOffset="+12:00" Year="2014"/>
    <Domain DomainName="nzrs.nz" Status="Resolved">
        <Linked3lds>
            <Linked3ld domainname="nzrs.org.nz"/>
            <Linked3ld domainname="nzrs.co.nz"/>
            <Linked3ld domainname="nzrs.net.nz"/>
        </Linked3lds>
    </Domain>
</Response>

Response - Transfer without period values, domain created for 1 month

<?xml version="1.0" encoding="UTF-8"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
    <response>
        <result code="1000">
            <msg lang="en">Command completed successfully</msg>
        </result>
        <resData>
            <domain:trnData xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
                <domain:name>nzrstestdomain.nz</domain:name>
                <domain:trStatus>serverApproved</domain:trStatus>
                <domain:reID>999</domain:reID>
                <domain:reDate>2014-07-30T12:08:28+12:00</domain:reDate>
                <domain:acID>999</domain:acID>
                <domain:acDate>2014-07-30T12:08:28+12:00</domain:acDate>
            </domain:trnData>
        </resData>
        <trID>
            <clTRID>transferdomain- nzrstestdomain.nz-testrun2</clTRID>
            <svTRID>5,7535891[1]+1</svTRID>
        </trID>
    </response>
</epp>

Request - Transfer with 12 month period value

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
    <command>
        <transfer op="request">
            <domain:transfer xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
                <domain:name>nzrstestdomain.nz</domain:name>
                <domain:period unit="m">12</domain:period>
                <domain:authInfo>
                    <domain:pw>shBaAsaE</domain:pw>
                </domain:authInfo>
            </domain:transfer>
        </transfer>
        <clTRID>transferdomain- nzrstestdomain.nz-testrun2</clTRID>
    </command>
</epp>

Response - Transfer with 12 month period value, domain created for 12 months

<?xml version="1.0" encoding="UTF-8"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
    <response>
        <result code="1000">
            <msg lang="en">Command completed successfully</msg>
        </result>
        <resData>
            <domain:trnData xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
                <domain:name>nzrstestdomain.nz</domain:name>
                <domain:trStatus>serverApproved</domain:trStatus>
                <domain:reID>999</domain:reID>
                <domain:reDate>2014-07-30T12:08:28+12:00</domain:reDate>
                <domain:acID>999</domain:acID>
                <domain:acDate>2014-07-30T12:08:28+12:00</domain:acDate>
            </domain:trnData>
        </resData>
        <trID>
            <clTRID>transferdomain- nzrstestdomain.nz-testrun2</clTRID>
            <svTRID>5,7535891[1]+1</svTRID>
        </trID>
    </response>
</epp>