CentralNic Reseller Homepage
CentralNic Reseller Homepage

.dk

Starting July 1st 2026, all .dk domain registrations will be handled in the new Registrar Model. For our partners, this means that you now gain full control over the domain names you have registered, allowing you proper administration of your .dk domain names.


Domains that have been registered prior to this date will still remain in the Registrant Model until the domains have been transitioned. To see if a specific domain name is still in the Registrant Model, simply query the domain's info, where you will receive the X-DK-DOMAIN-MODEL extension as a return value.


Additional information about the transition process of domains in your portfolio can be found here.

API Commands

Please find in the following a set of the most commonly used standard API commands in order to register, modify, renew, and transfer a domain name.

Domain Registration

(API Command reference » AddDomain)
Exception
command                  = AddDomain
domain                   = yourdomain.dk
period                   = 1 (optional)
ownercontact0            = (CONTACT)
admincontact0            = (CONTACT)
techcontact0             = (CONTACT)
billingcontact0          = (CONTACT)
nameserver0              = (NAMESERVER)
nameserver1              = (NAMESERVER)
X-DK-USER-TYPE           = (INDIVIDUAL|COMPANY|ASSOCIATION|PUBLIC_ORGANIZATION) (required)
X-DK-USER-CVR            = (TEXT) (required if X-DK-USER-TYPE is not "INDIVIDUAL" and owner contact country = DK)
X-DK-USER-PNUMBER        = (TEXT) (optional)
X-DK-MOBILE-PHONE        = (PHONE) (optional)
X-DK-SECONDARY-EMAIL     = (EMAIL) (optional)
X-DK-SOLE-PROPRIETORSHIP = (false|true|NULL) (optional)
X-DK-ACCEPT-TAC          = (0|1) (required)
DNSSEC[0-N]              = (DSDATA) (optional)

Please note: .dk domain names can now be secured with DNSSEC (only for the AddDomain command). Punktum.dk supports DSDATA, but not KEYDATA.

As already in place, the domain registration process requires some additional actions. If the X-DK-ACCEPT-TAC extension is set to 0, the command response will feature a URL that can be used to display Punktum's terms and conditions to the customer, to which they need to opt in. This process is non-realtime. The process does become realtime, if X-DK-ACCEPT-TAC has been set to 1 instead. However, this means that you take responsibility of presenting the customer with Punktum's terms and conditions for .DK domain registrations.

Additionally, moving forward, domain names can only be registered and renewed for one year.

Domain Modification

(API Command reference » ModifyDomain)
Exception
command                  = ModifyDomain
domain                   = yourdomain.dk
X-DK-USER-TYPE           = (INDIVIDUAL|COMPANY|ASSOCIATION|PUBLIC_ORGANIZATION) (required in case of ownerchange)
X-DK-USER-CVR            = (TEXT) (required in case of ownerchange and if X-DK-USER-TYPE is not "INDIVIDUAL" and owner contact country = DK)
X-DK-USER-PNUMBER        = (TEXT) (optional)
X-DK-MOBILE-PHONE        = (PHONE) (optional)
X-DK-SECONDARY-EMAIL     = (EMAIL) (optional)
X-DK-SOLE-PROPRIETORSHIP = (false|true|NULL) (optional)
X-REQUEST-AUTHCODE       = (0|1|NULL) (optional)

Please note that an authorization code for domain transfers cannot be set by using the usual AUTH= command parameter. Instead, the extension X-REQUEST-AUTHCODE needs to be set for the domain, as auth codes cannot be set by the user, but need to instead be requested at the registry.

Additionally, please also note that even though most extensions can be edited, the X-DK-USER-TYPE extension can not.

Furthermore, Punktum is currently having issues in their test environment, which makes nameserver changes on domains currently impossible.

Domain Renewal

(API Command reference » RenewDomain)
Command
command    = RenewDomain
domain     = yourdomain.dk
period     = 1
expiration = (INT)

Please note: The registry will send a confirmation e-mail to the domain owner after the successful renewal. Additionally, starting July 1st 2026, the maximum registration period of a .dk domain name will be 14 months, meaning domains can only be renewed for one year.

Domain Deletion

(API Command reference » DeleteDomain)
Command
command    = DeleteDomain
domain     = yourdomain.dk

Domain Transfer

(API Command reference » TransferDomain)
Exception
command         = TransferDomain
domain          = yourdomain.dk
auth            = (TEXT) (optional)
X-DK-ACCEPT-TAC = (0|1|NULL) (optional)

The TransferDomain command comes with some additional caveats. In general, a differentiation between two cases needs to be made:

  1. The domain is currently in the registrant model.
  2. The domain is currently in the registrar model.

In case the customer has provided you with an auth code, the transfer works as any other transfer and no additional steps are required, no matter which model the domain is currently in. Customers that currently manage their domain name in the registrant model can request a transfer authorization code directly in the registry's self-service portal, which can be found here.

In case the customer has not provided you with an auth code and the domain is currently under registrant management, the X-DK-ACCEPT-TAC extension comes into play. If the extension is set to 0 or not provided, you will (similarly to domain registrations) get a URL returned, which then can be forwarded to the customer. The customer will there be prompted to opt-in to the transfer in accordance with Punktum's terms and conditions. If the domain is currently registrant managed, and the X-DK-ACCEPT-TAC is set to 1, you are taking responsibility over informing the customer that the domain will be moved to the registrar model.

Domain Restore

(API Command reference » RestoreDomain)
Command
command = RestoreDomain
domain  = yourdomain.dk

Registrar Model Transition

  • Changing a domain name's model:
    • Domains that are currently in the Registrant Model will have the X-DK-TAC-URL extension associated with them. Similar to the domain registration process, this URL needs to be forwarded to the domain's registrant. The registrant will then be forwarded to a page where they can opt-in to the model change of the domain name.
    • Once the domain model change has been finalized, you will receive an event and the domain's status will be refreshed shortly after.
  • Finding domains that are still in the Registrant Model:
    • By querying a domain name's status, you will receive the X-DK-DOMAIN-MODEL extension as a return parameter. This parameter will have either the REGISTRANT or REGISTRAR value, depending on the model the domain is currently in.
    • Additionally, we will upload an overview over your entire .dk portfolio to your registrar FTP in CSV format. This overview can be found in the reports/dk directory.

Domain Extensions

X-DK-USER-TYPE INDIVIDUAL | COMPANY | ASSOCIATION | PUBLIC_ORGANIZATION

The type of the owner contact. MUST be one of the values above.
X-DK-ACCEPT-TAC 0|1

Extension to confirm or deny that the owner contact acknowledged the terms and conditions for .DK.
X-REQUEST-AUTHCODE 0|1|NULL

Required to set a transfer auth code for a domain name

Domain Extensions for Organisations or Companies

X-DK-USER-CVR CVR associated with the owner contact. Required for non-individuals residing in Denmark, otherwise optional.
X-DK-USER-PNUMBER Production unit number. Optional extension used for validation for Danish companies with more physical addresses related to a single VAT number.
X-DK-MOBILE-PHONE Additional, secondary phone number that can be added.
X-DK-SECONDARY-EMAIL Secondary Email address. If provided, will take precedent over the owner contact's primary Email address in the WhoIs.
X-DK-SOLE-PROPRIETORSHIP false | true | NULL

Companies with sole proprietorship (owned by a single individual) have the same protection rights as an individual. This extension can be used to hide Email addresses from the public WhoIs.

Domain Extensions in the Domain Status Response

X-DK-USER-CVR CVR associated with the owner contact. Required for non-individuals residing in Denmark, otherwise optional.
X-DK-USER-PNUMBER Production unit number. Optional extension used for validation for Danish companies with more physical addresses related to a single VAT number.
X-DK-MOBILE-PHONE Additional, secondary phone number that can be added.
X-DK-SECONDARY-EMAIL Secondary Email address. If provided, will take precedent over the owner contact's primary Email address in the WhoIs.
X-DK-SOLE-PROPRIETORSHIP false | true | NULL

Companies with sole proprietorship (owned by a single individual) have the same protection rights as an individual. This extension can be used to hide Email addresses from the public WhoIs.
X-DK-DOMAIN-MODEL REGISTRAR | REGISTRANT

Describes the current domain model the domain is in.
X-DK-TAC-URL TEXT | NULL

The URL that needs to be forwarded to the domain name's registrant to have them opt-in to specific processes.
X-DK-TAC-TOKEN TEXT | NULL

The token used in X-DK-TAC-URL.

Domain Restrictions

    All restrictions described below only concern domains that are currently still in the Registrant Model. Domains that are in the Registrar Model can be handled as usual.

  • Name servers for .dk domain names must be approved by Punktum.dk before sending a registration request.
    • Register name server
    • All name servers in the .dk zone must be registered and approved by Punktum.dk.
    • To get this approval of name servers, the administrator must document the needed technical knowledge about dns, including setting up domain names on a name server. Punktum.dk does not support setting up name servers.
    • As a part of the approving process, the applicant must allow zone transfer from the name servers to:
      • Name server at Punktum.dk: hostcount.dk-hostmaster.dk
      • IPv4 address: 193.163.102.6
      • IPv6 address: 2a01:630:0:40:3:4:5:6
    • The form has become obsolete. Please use the Punktum.dk website instead. Approval of name servers will take a minimum of 2 work days to process. When the name servers are approved, the registry will notify you in an email.
  • For the change of nameservers please see procedure below
    • This section of Punktum.dk's website directs primary to DNS contacts
    • General information regarding Nameserver administration can be found at the registry via this link.
    • Existing name servers must be administrated, using the registry self service.
    • New name servers can be created using this link.
    • Change name servers IP address:
      • When a name server receives a new IP address, Punktum.dk only needs to update this information, if the name server is a part of the .dk zone and the name server hosts its own domain.
      • If the name server is not in the .dk zone? It will not be possible to make the update in the .dk zone. The update must be performed in the name servers zone. Ex. .com, .org or .net.
      • Does the name server run its own domain? Changes of the name servers IP addresses must be updated, using registry self service.
      • How can I see if the name server is running its own domain? In this example, we use the registry name servers:
        • authns1.ngdc.net
        • auth01.dk-hostmaster.dk
        • auth02.dk-hostmaster.dk
        • all run our domain: dk-hostmaster.dk
    • As the name for two of the registry name servers both dk-hostmaster.dk, the registry says, they run their own domain. That is why changes of these name servers IP addresses, must be updated in the registry self service. The name server authns1.ngdc.net must be updated in the .net zone.
    • Changing the name of your name server If the name server is to given a new name, it must be registered, and approved by Punktum.dk. After the approval, all domain names can be redelegated internally to the new name server. Then the old name server, can be removed from the .dk zone.

IDN Information

You can use all Danish characters in your .dk domain name. This means that you can use æ, ø and å in your domain name. You can also use the letters ö, ä, ü and é and numbers from 0 to 9 and - (negative sign used as a hyphen or substitute for spaces). Not all internet browsers and e-mail programs can handle domain names with the characters æ, ø, å, ö, ä, ü and é. If you wish to use the domain name for an e-mail address you should therefore avoid these characters.

Supported IDN Scripts

The following IDN scripts are supported by .dk.
Provide the LANGUAGE TAG corresponding to your desired IDN within the AddDomain command as X-IDN-LANGUAGE extension.

DanishDK

Get more information of "IDN tables", which represent permitted code points (letters) allowed for Internationalised Domain Name registrations in particular registries on IANA Repository of IDN Practices.

We domains
-