PremiumDomainHandling V2

From TLDinfo
(Redirected from PremiumDomainHandling)
Jump to: navigation, search

Contents

Summary

The new premium domain handling will offer the possibility to submit applications and register premium domain names through the automated RRPproxy system by using the EPP-Fee extension.

The previous premium domain system in the RRPproxy was mainly developed to fulfill the requirements of .TV where the registry provided us with lists of premium domain names with specific pricing. In that case, we could also provide our registrars with complete lists of premium domain names and fixed prices and we just added a security flag to our API commands to ensure that the registrar agrees to the special price for premium domain names.

But with the new gTLDs, the premium domain handling became a much more complex topic that our current implementation could not handle completely. More and more registries did no longer support fixed lists of premium domain names and moved to the fee extension where registrars have to check the price of a domain name.

One big problem that most of our registrars faced with the current implementation was the fact that they checked the availability of a domain name without receiving information if the domain name was premium or not. The domain name was moved to the shopping cart in the registrar shop system and the end customer was charged the regular domain price. During the create domain process an error occurred showing that this domain name could not be registered due to premium domain price at the registry.

The only way to completely support the new premium domain market was the implementation of the fee extension in the RRPproxy with a fully automated handshake process between the RRPproxy and the registries on one side and between the RRPproxy and the registrar on the other side.


Upcoming Changes

On June 23rd, 2017 we are changing our fee extension "X-FEE-CLASS". Currently the extension "X-FEE-CLASS" returns "premium" for all X-FEE-COMMANDS, even though not all X-FEE-COMMANDS have a premium price. Beginning June 23rd, only the X-FEE-COMMANDS that have a premium price will return X-FEE-CLASS "premium" and all others will return "standard".

Please check your implementation of the X-FEE-CLASS response properties to reflect the specific X-FEE-COMMAND.

You can test these changes in our OT&E system starting May 23rd, 2017.

Please note: Some TLDs do not offer a possibility to detect a standard price for a premium domain name. For those TLDs, all X-FEE-CLASS response parameters will still show "premium", even though the price is a standard price.

Example of current X-FEE response:

property[x-fee-amount][0] = 40.0000
property[x-fee-amount][1] = 90.0000
property[x-fee-amount][2] = 0.0000
property[x-fee-amount][3] = 1200.0000
property[x-fee-amount][4] = 40.0000
property[x-fee-application][0] = 0.0000
property[x-fee-application][1] = 0.0000
property[x-fee-application][2] = 0.0000
property[x-fee-application][3] = 0.0000
property[x-fee-application][4] = 0.0000
property[x-fee-class][0] = premium
property[x-fee-class][1] = premium
property[x-fee-class][2] = premium
property[x-fee-class][3] = premium
property[x-fee-class][4] = premium
property[x-fee-command][0] = TRANSFER
property[x-fee-command][1] = RESTORE
property[x-fee-command][2] = TRADE
property[x-fee-command][3] = ADD
property[x-fee-command][4] = RENEW
property[x-fee-currency][0] = USD
property[x-fee-currency][1] = USD
property[x-fee-currency][2] = USD
property[x-fee-currency][3] = USD
property[x-fee-currency][4] = USD
property[x-fee-domain][0] = test.example
property[x-fee-domain][1] = test.example
property[x-fee-domain][2] = test.example
property[x-fee-domain][3] = test.example
property[x-fee-domain][4] = test.example
property[x-fee-launchphase][0] =
property[x-fee-launchphase][1] =
property[x-fee-launchphase][2] =
property[x-fee-launchphase][3] =
property[x-fee-launchphase][4] =
property[x-fee-period][0] = 1
property[x-fee-period][1] = 1
property[x-fee-period][2] = 1
property[x-fee-period][3] = 1
property[x-fee-period][4] = 1
property[x-fee-periodtype][0] = YEAR
property[x-fee-periodtype][1] = YEAR
property[x-fee-periodtype][2] = YEAR
property[x-fee-periodtype][3] = YEAR
property[x-fee-periodtype][4] = YEAR

Example of new X-FEE-response:

property[x-fee-amount][0] = 40.0000
property[x-fee-amount][1] = 90.0000
property[x-fee-amount][2] = 0.0000
property[x-fee-amount][3] = 1200.0000
property[x-fee-amount][4] = 40.0000
property[x-fee-application][0] = 0.0000
property[x-fee-application][1] = 0.0000
property[x-fee-application][2] = 0.0000
property[x-fee-application][3] = 0.0000
property[x-fee-application][4] = 0.0000
property[x-fee-class][0] = standard
property[x-fee-class][1] = standard
property[x-fee-class][2] = standard
property[x-fee-class][3] = premium
property[x-fee-class][4] = standard
property[x-fee-command][0] = TRANSFER
property[x-fee-command][1] = RESTORE
property[x-fee-command][2] = TRADE
property[x-fee-command][3] = ADD
property[x-fee-command][4] = RENEW
property[x-fee-currency][0] = USD
property[x-fee-currency][1] = USD
property[x-fee-currency][2] = USD
property[x-fee-currency][3] = USD
property[x-fee-currency][4] = USD
property[x-fee-domain][0] = test.example
property[x-fee-domain][1] = test.example
property[x-fee-domain][2] = test.example
property[x-fee-domain][3] = test.example
property[x-fee-domain][4] = test.example
property[x-fee-launchphase][0] =
property[x-fee-launchphase][1] =
property[x-fee-launchphase][2] =
property[x-fee-launchphase][3] =
property[x-fee-launchphase][4] =
property[x-fee-period][0] = 1
property[x-fee-period][1] = 1
property[x-fee-period][2] = 1
property[x-fee-period][3] = 1
property[x-fee-period][4] = 1
property[x-fee-periodtype][0] = YEAR
property[x-fee-periodtype][1] = YEAR
property[x-fee-periodtype][2] = YEAR
property[x-fee-periodtype][3] = YEAR
property[x-fee-periodtype][4] = YEAR

Currently, we have all premium domain names blacklisted with a notification to contact our support for ordering these domain names. With the new system, we are changing the way premium domains are handled on a registrar basis so every registrar can take his own decision on how he wants to handle premium domain names.

The new premium domain system will be disabled by default for each registrar.

This causes our system to return "domain name not available" on availability checks for a premium domain name through our API. This will avoid the problem most registrars faced with the old implementation mentioned in the introduction.

We will add a new position in the registrar account settings where the premium domain handling can be activated using the fee extension through our API. The activation of the premium domain handling will require the registrar to implement the fee extension into our API connection. For all registrars that are not interested in premium domain names, no changes are required!

For registrars that want to manually handle premium domain names through our web interface (WI), there are also no changes required!

Premium domain names can be registered and managed through our web interface without activating the premium domain settings! The web interface will always show additional information and specific prices for premium domain names so they cannot be mistakenly registered.

Already registered premium domain names will not be out of control if the premium domain handling is not activated, since automated renewals will still work for all domain names. However, explicit interactions with premium domain names like creates, explicit renewals (not auto renewals), transfers, trades (billable trades only) and restores will require the implementation of the fee extension using the API (not the WI).

The fee extension is more or less a handshake process that ensures correct accounting since most new gTLD registries could change the price of a domain name every second! In addition to a regular availability check, registrars will also request the prices in the same API call. The submission of the fee extensions will be required for premium domain name registrations afterwards.

Example Availability Check for premium.name with the price request for a 2 year registration

command = checkdomain
domain = premium.name
x-fee-command0 = create
x-fee-domain0 = premium.name
x-fee-period0 = 2
x-fee-periodtype0 = YEAR
code = 210
description = Domain name available
property[x-fee-amount][0] = 235.0000
property[x-fee-application][0] = 0.0000
property[x-fee-class][0] = premium
property[x-fee-command][0] = create
property[x-fee-currency][0] = USD
property[x-fee-domain][0] = premium.name
property[x-fee-launchphase][0] = 
property[x-fee-period][0] = 2
property[x-fee-periodtype][0] = YEAR

Example AddDomain for premium.name with fee extension

command=adddomain
domain=premium.name
ownercontac0=...
nameserver0=...
...
x-fee-amount=235.00
code = 200
description = Command completed successfully
property[x-fee-amount][0] = 235.0000
property[x-fee-application][0] = 0.0000
property[x-fee-periodtype][0] = YEAR

IMPORTANT NOTE: We are working with amounts with four decimals!

If the price at the registry changes between the check and the creation, the handshake will fail to prevent false accountings. For regular domain names, the fee extension handshake will not be required!!

Due to compatibility reasons to our current premium domain handling, we will offer an additional premium domain setting "allow-simplemode". This setting can be enabled in connection with an active premium domain handling. Instead of providing the correct handshake, it will be possible to just send X-ACCEPT-PREMIUMPRICE=1 in any API call to successfully pass the handshake.

Attention.png We strongly recommend not using the simplemode and implement the fee extension handshake instead!


NOTE: Sending X-ACCEPT-PREMIUMPRICE=1 for a regular domain name process will not cause an error, even if the premium domain system is not activated or the domain name is not a premium domain name.

IMPORTANT NOTE: Registrars with active premium domain handling will not receive any fee extensions in the availability check response through our API if they did not request prices in the availability check. In that case, it is not possible to determine, if it is a premium domain name or not. So we strongly recommend to add fee extensions in all availability checks when premium domain handling is activated.

The fee extensions are also available for regular domain names but are mandatory for premium domain names. When the fee extension is provided in a regular domain registration, the amount will be checked and will return an error if the handshake does not succeed.

Even though the X-FEE-CURRENCY is available in the API, the system will return an error if the registrar requests a currency that does not match his own account currency! Therefore, we recommend not to set any value in the X-FEE-CURRENCY parameter provided to the RRPproxy. The X-FEE-CURRENCY returned to the registrar in availability check responses will always match the current registrar's RRPproxy account currency.


Subreseller System with Premium Domains


The premium domain system for subresellers will also be affected by many changes. Since it is nearly impossible to manage all those premium domain names on a domain basis, we will remove the API commands AddPremiumDomain, ModifyPremiumDomain, DeletePremiumDomain and StatusPremiumDomain from the subreseller system.

They will be replaced with general subreseller premium domain system settings.
With these settings, it will be possible to activate the new premium domain handling for subresellers and to store a general formula for the calculation of selling prices for premium domain names.

Due to these changes, it will no longer be possible to define own premium domain names for subresellers that are not premium domain names at the registry.

These changes also point out that it will be no longer possible or required to define a special premium domain price for a specific domain name or a specific subreseller!


Registry Account Management with Premium Domains


Due to the registry account management system (RAM) no regular accountings for domains will be charged in the RRPproxy. In most cases the registrar will only be charged a handling fee, which is the same regardless if it is a premium domain name or not. So if the fee extension in the RRPproxy would only return the handling fee, the RAM registrar would not be able to determine if the checked domain is a premium domain and how much the domain name really costs at the registry.

To avoid this issue, we decided to forward the registry premium domain price in the fee extension for premium domain names in RAM. The registrar will then receive the registry price for the premium domain name in the RRPproxy fee extension and will require to use this amount in the handshake process for the create domain call.

Attention|Nevertheless, we will of course only charge the regular domain handling fee in the RRPproxy for that premium domain name.

Some registries offer premium domain names using lists which they provide to the registrars. In case of RAM, we offer a set of API commands for the registrar to manage premium domain names for that specific RAM TLD.

In case of RAM, we will not manage those lists for the registrar since this is mostly a manual process. Changes of the premium domain lists at the registry could be overseen or updated with a delay and we will not take responsibility for that.

API commands

EU members without valid VAT ID and German customers, will receive the response of the domain fee including VAT.

CheckDomain

[COMMAND]
(required)                   
command            = CheckDomain
domain             = christian.website
x-fee-domain0      = christian.website
x-fee-command0     = create
x-fee-period0      = 1
x-fee-periodtype0  = YEAR
x-fee-launchphase0 = sunrise
x-fee-domain1      = christian.website
x-fee-command1     = create
x-fee-period1      = 1
x-fee-periodtype1  = YEAR
x-fee-launchphase1 = 
x-fee-domain2      = christian.website
x-fee-command2     = create
x-fee-period2      = 1
x-fee-periodtype2  = YEAR
x-fee-launchphase2 = landrush
                   
EOF

Response:

code = 211
description = Domain name not available
queuetime = 0.053
runtime = 0.636
property[x-fee-amount][0] = 1439.9000
property[x-fee-amount][1] = 1439.9000
property[x-fee-amount][2] = 1439.9000
property[x-fee-application][0] = 129.4720
property[x-fee-application][1] = 0.0000
property[x-fee-application][2] = 129.4720
property[x-fee-class][0] = premium
property[x-fee-class][1] = premium
property[x-fee-class][2] = premium
property[x-fee-command][0] = create
property[x-fee-command][1] = create
property[x-fee-command][2] = create
property[x-fee-currency][0] = USD
property[x-fee-currency][1] = USD
property[x-fee-currency][2] = USD
property[x-fee-domain][0] = christian.website
property[x-fee-domain][1] = christian.website
property[x-fee-domain][2] = christian.website
property[x-fee-launchphase][0] = sunrise
property[x-fee-launchphase][1] = 
property[x-fee-launchphase][2] = landrush
property[x-fee-period][0] = 1
property[x-fee-period][1] = 1
property[x-fee-period][2] = 1
property[x-fee-periodtype][0] = YEAR
property[x-fee-periodtype][1] = YEAR
property[x-fee-periodtype][2] = YEAR

CheckDomains

[COMMAND]
(required)                   
command            = CheckDomains
domain0            = example.career
domain1            = example.com
x-fee-domain0      = example.career
x-fee-command0     = create
x-fee-period0      = 1
x-fee-periodtype0  = YEAR
x-fee-launchphase0 = sunrise
x-fee-domain1      = example.career
x-fee-command1     = create
x-fee-period1      = 1
x-fee-periodtype1  = YEAR
x-fee-launchphase1 = 
                   
EOF

Response:

code = 200
property[domaincheck][0] = 210 Domain name available
property[domainchecktime][0] = 0.258
property[domaincheck][1] = 211 Domain name not available
property[domainchecktime][1] = 0.236
property[x-fee-domain][0] = example.com
property[x-fee-period][0] = 1
property[x-fee-periodtype][0] = YEAR
property[x-fee-amount][0] = 10.00
property[x-fee-application][0] = 100.00
property[x-fee-currency][0] = USD
property[x-fee-class][0] = standard
property[x-fee-launchphase][0] = sunrise
property[x-fee-domain][1] = example.com
property[x-fee-period][1] = 1
property[x-fee-periodtype][1] = YEAR
property[x-fee-amount][1] = 10.00
property[x-fee-application][1] =
property[x-fee-currency][1] = USD
property[x-fee-class][1] = premium
property[x-fee-launchphase][1] =

StatusDomain

[COMMAND]
(required)                  
command           = StatusDomain
domain            = example.com
x-fee-command     = create
x-fee-period      = 1
x-fee-periodtype  = YEAR
x-fee-launchphase = sunrise
                  
EOF

Response:

code = 200
property[domain][0] = example.com
...
property[x-fee-period][0] = 1
property[x-fee-periodtype][0] = YEAR
property[x-fee-amount][0] = 10.00
property[x-fee-application][0] = 100.00
property[x-fee-currency][0] = USD
property[x-fee-launchphase][0] = sunrise

AddDomain

[COMMAND]
(required)                
command         = AddDomain
domain          = premium0098.menu
ownercontact0   = P-ECF22
techcontact0    = P-ECF22
billingcontact0 = P-ECF22
admincontact0   = P-ECF22
auth            = 2foo"BAR%
nameserver0     = ns1.key-systems.net
nameserver1     = ns2.key-systems.net
period          = 2
x-fee-amount    = 2000.0000
                
EOF

Response:

code = 200
description = Command completed successfully
property[x-fee-amount][0] = 2000.0000
property[x-fee-application][0] = 0.0000
property[x-fee-currency][0] = USD
property[created date][0] = 2015-06-24 11:53:27.0
property[registration expiration date][0] = 2017-06-24 11:53:27.0
property[renewal date][0] = 2017-07-29 11:53:27.0
property[roid][0] = 13530236711060_DOMAIN-KEYSYS
property[status][0] = ACTIVE

RenewDomain

[COMMAND]
(required)             
command      = RenewDomain
domain       = premium0098.menu
period       = 2
x-fee-amount = 2000.0000
             
EOF

Response:

code = 200
description = Command completed successfully
property[x-fee-amount][0] = 2000.0000
property[x-fee-application][0] = 0.0000
property[x-fee-currency][0] = USD
property[registration expiration date][0] = 2018-05-26 11:50:58

TransferDomain

[COMMAND]
(required)             
command      = TransferDomain
action       = request
domain       = premium0080.menu
auth         = 3%"mmKDrwm
x-fee-amount = 1439.9000
             
EOF

Response:

code = 200
description = Command completed successfully
property[x-fee-amount][0] = 1439.9000
property[x-fee-application][0] = 0.0000
property[x-fee-currency][0] = USD
property[job id][0] = 524504519
property[transfer status][0] = REQUESTED

RestoreDomain

[COMMAND]
(required)             
command      = restoredomain
domain       = premium0098.menu
x-fee-amount = 120.1000
             
EOF

Response:

code = 200
description = Command completed successfully
queuetime = 0.047
runtime = 0.303
property[x-fee-amount][0] = 120.1000
property[x-fee-application][0] = 0.0000
property[x-fee-currency][0] = USD

QueryPremiumDomainlist

With QueryPremiumDomainList you can access the premium domain names and prices only for registries that support fixed lists of premium domain names. Premium domain names from registries with fee extensions are not included since they could change any time due to registry policies.

Searchparameters can be:

ZONE=
DOMAIN=
LAUNCHPHASE=

Note: Zone and launchphase cannot be used at the same time

If you only want to know which zones are listed you can use SHOWZONES=1.

If you only want to know which applications are listed you can use SHOWLAUNCHPHASES=1.

[COMMAND]
(required)        
command = querypremiumdomainlist
limit   = 1
wide    = 10
        
EOF

Response:

code = 200
description = Command completed successfully
runtime = 0.693
property[count][0] = 10
property[domain][0] = 001.tv
property[zone][0] = tv
property[periodtype][0] = YEAR
property[setup][0] = 1247.5000
property[unit][0] = 487.5000
property[transfer][0] = 24.8000
property[trade][0] = 24.8000
property[restore][0] = 20.0000
property[application][0] = 0.0000
property[currency][0] = USD
property[updateddate][0] = 2015-06-12 13:32:17
property[domain][1] = 01.tv
property[zone][1] = tv
property[periodtype][1] = YEAR
property[setup][1] = 2001.0375
property[unit][1] = 24.8000
property[transfer][1] = 24.8000
property[trade][1] = 24.8000
property[restore][1] = 20.0000
property[application][1] = 0.0000
property[currency][1] = USD
property[updateddate][1] = 2015-03-16 08:55:27
property[domain][2] = 02.tv
property[zone][2] = tv
property[periodtype][2] = YEAR
property[setup][2] = 937.5000
property[unit][2] = 937.5000
property[transfer][2] = 24.8000
property[trade][2] = 24.8000
property[restore][2] = 20.0000
property[application][2] = 0.0000
property[currency][2] = USD
property[updateddate][2] = 2015-03-16 08:55:28
property[domain][3] = 08.tv
property[zone][3] = tv
property[periodtype][3] = YEAR
property[setup][3] = 937.5000
property[unit][3] = 937.5000
property[transfer][3] = 24.8000
property[trade][3] = 24.8000
property[restore][3] = 20.0000
property[application][3] = 0.0000
property[currency][3] = USD
property[updateddate][3] = 2015-03-16 08:55:29
property[domain][4] = 0ch.tv
property[zone][4] = tv
property[periodtype][4] = YEAR
property[setup][4] = 1248.7500
property[unit][4] = 24.8000
property[transfer][4] = 24.8000
property[trade][4] = 24.8000
property[restore][4] = 20.0000
property[application][4] = 0.0000
property[currency][4] = USD
property[updateddate][4] = 2015-03-16 08:55:30
property[domain][5] = 1.tv
property[zone][5] = tv
property[periodtype][5] = YEAR
property[setup][5] = 53.2500
property[unit][5] = 53.2500
property[transfer][5] = 24.8000
property[trade][5] = 24.8000
property[restore][5] = 20.0000
property[application][5] = 0.0000
property[currency][5] = USD
property[updateddate][5] = 2015-03-16 08:55:31
property[domain][6] = 10.tv
property[zone][6] = tv
property[periodtype][6] = YEAR
property[setup][6] = 937.5000
property[unit][6] = 937.5000
property[transfer][6] = 24.8000
property[trade][6] = 24.8000
property[restore][6] = 20.0000
property[application][6] = 0.0000
property[currency][6] = USD
property[updateddate][6] = 2015-03-16 08:55:32
property[domain][7] = 100.tv
property[zone][7] = tv
property[periodtype][7] = YEAR
property[setup][7] = 687.5000
property[unit][7] = 24.8000
property[transfer][7] = 24.8000
property[trade][7] = 24.8000
property[restore][7] = 20.0000
property[application][7] = 0.0000
property[currency][7] = USD
property[updateddate][7] = 2015-03-16 08:55:33
property[domain][8] = 1000.tv
property[zone][8] = tv
property[periodtype][8] = YEAR
property[setup][8] = 1248.7500
property[unit][8] = 487.5000
property[transfer][8] = 24.8000
property[trade][8] = 24.8000
property[restore][8] = 20.0000
property[application][8] = 0.0000
property[currency][8] = USD
property[updateddate][8] = 2015-03-16 08:55:34
property[domain][9] = 10000.tv
property[zone][9] = tv
property[periodtype][9] = YEAR
property[setup][9] = 1248.7500
property[unit][9] = 292.5000
property[transfer][9] = 24.8000
property[trade][9] = 24.8000
property[restore][9] = 20.0000
property[application][9] = 0.0000
property[currency][9] = USD
property[updateddate][9] = 2015-03-16 08:55:35
property[first][0] = 0
property[last][0] = 9
property[limit][0] = 10
property[total][0] = 28636

QueryRegisteredPremiumDomainList

The QueryRegisteredPremiumDomainList command allows you to query the list of premium domains in your portfolio or located in subreseller accounts.

[COMMAND]
(required)            
COMMAND     = QueryRegisteredPremiumDomainList
DOMAIN      = [PATTERN]
DOMAINIDN   = [TEXT]
RENEWALMODE = DEFAULT|AUTORENEW|AUTOEXPIRE|AUTODELETE|RENEWONCE|AUTORENEWMONTHLY
ZONE        = [PATTERN]
REGISTRAR   = [PATTERN]
INCLUDESUB  = 0|1
ONLYSUB     = 0|1
ORDER       = ASC|DESC
ORDERBY     = DOMAIN|DOMAINIDN|DOMAINCREATEDDATE|DOMAINREGISTRATIONEXPIRATIONDATE|DOMAINRENEWALDATE|DOMAINZONE|ZONE|RENEWALMODE|TRANSFERMODE
WIDE        = 0|1
FIRST       = [INT]
LIMIT       = [INT]
            
EOF

INCLUDESUB: Also lists premium domains of subreseller accounts if set to 1 (optional, DEFAULT 0)
ONLYSUB: Only lists premium domains of subreseller accounts if set to 1. Also sets INCLUDESUB to 1 if used. (optional, DEFAULT 0)
DOMAIN: Filter the result by this string (wildcards allowed, optional)
DOMAINIDN: Filter the result by this string (wildcards allowed, optional)
ORDER: Ascending or descending result order (optional)
ORDERBY: Sort the result by this column (optional)
RENEWALMODE: The Renewalmode selected for this domain (optional)
ZONE: Show only domains matching this zone (optional)
REGISTRAR: Show only domains of this registrar. (optional)
WIDE: Show more or less details in the results (optional)
FIRST: Start the output of results from this item (optional)
LIMIT: Show only this many items in the response (optional)

Response:

code                                             = [INT]
description                                      = [TEXT]
property[DOMAIN][n]                              = [DOMAIN]
property[REGISTRAR][n]                           = [TEXT]
(wide)
property[DOMAIN_IDN][n]                          = [TEXT]
property[ROID][n]                                = [TEXT]
property[DOMAIN_CREATED_DATE][n]                 = [DATE]
property[DOMAIN_CREATED_BY][n]                   = [TEXT]
property[DOMAIN_UPDATED_DATE][n]                 = [DATE]
property[DOMAIN_UPDATED_BY][n]                   = [TEXT]
property[DOMAIN_REGISTRATION_EXPIRATION_DATE][n] = [DATE]
property[DOMAIN_RENEWAL_DATE][n]                 = [DATE]
property[DOMAIN_ZONE][n]                         = [TEXT]
property[RENEWALMODE][n]                         = [TEXT]
property[TRANSFERMODE][n]                        = [TEXT]
property[COUNT][0]                               = [INT]
property[FIRST][0]                               = [INT]
property[LAST][0]                                = [INT]
property[LIMIT][0]                               = [INT]
property[TOTAL][0]                               = [INT]

DOMAIN: A domain matching the search - filter
DOMAIN_IDN: The UTF-8 - version of the domain
ROID: Registry Object ID for this domain
DOMAIN_CREATED_DATE: The date, when the domain was created
DOMAIN_CREATED_BY: Account, in which the domain was created
DOMAIN_UPDATED_DATE: The date, when the domain was last updated
DOMAIN_UPDATED_BY: Account, who did the last modification on this domain
DOMAIN_REGISTRATION_EXPIRATION_DATE: When will the domain expire
DOMAIN_RENEWAL_DATE: When must the domain be renewed
DOMAIN_ZONE: Zone of the domain name
RENEWALMODE: The current renewalmode of the domain
TRANSFERMODE: The current transfer mode of the domain
COUNT: Total number of domains shown
FIRST: Pointer to the first shown ID
LAST: Pointer to the last shown ID
LIMIT: The limit given in the command
TOTAL: Total number of domains matching the criteria

Applications

AddDomainApplication

[COMMAND]
(required)                
command         = adddomainapplication
domain          = premium0080.menu
ownercontact0   = P-MAM25
admincontact0   = P-MAM25
techcontact0    = P-MAM25
billingcontact0 = P-MAM25
CLASS           = MENU-GOLIVE
x-fee-amount    = 1487.50
                
EOF

PayDomainApplication

[COMMAND]
(required)             
command      = paydomainapplication
application  = 10000877
x-fee-amount = 1487.50
             
EOF

ModifyDomainApplication (activate GTLD-PREORDER)

[COMMAND]
(required)             
command      = modifydomainapplication
application  = 10000876
class        = MENU-GOLIVE
x-fee-amount = 1487.50
pay          = 1
             
EOF


EPP

Example response:

...
 <fee:chkData xmlns:fee="urn:ietf:params:xml:ns:fee-0.5">
  <fee:cd>
   <fee:name>example.com</fee:name>
   <fee:currency>USD</fee:currency>
   <fee:command phase="sunrise">create</fee:command>
   <fee:period unit="y">1</fee:period>
   <fee:fee description="Application Fee" refundable="0">5.00</fee:fee>
   <fee:fee description="Registration Fee" refundable="1">5.00</fee:fee>
  </fee:cd>
...
  • Application Fee
The fee charged in addition to the registration fee for domains applied for during sunrise or landrush phases.
  • Registration Fee
The fee charged for the first year of registration.
  • Renewal Fee
The fee charged for all years subsequent to the first year.
  • Restore Fee
The fee charged to restore a domain from the Redemption Grace Period.

Fee class

  • standard
The domain name has the standard price
  • premium
The domain has a non-standard premium price.

If class is not standard or empty than this is a premium domain/price

EPP examples can be found here.

Account Premium Domain Settings

The premium domain settings can be found in the WI under Account -> Settings -> Premium Domain.

There are two parameters available: active and allow-simplemode. Both parameters can be set to 1|0 (ON|OFF), but the allow-simplemode parameter can only be set to ON if active is set to ON.

The default value for active and allow-simplemode are 0 (OFF).

Setting the paramter active to 1 (ON) enables the handling of premium domain names using the API FEE parameters.

Setting the parameter allow-simplemode to 1 (ON) enables the handling of premium domain names using the X-ACCEPT-PREMIUMPRICE=1 parameter.

Setting the parameter active to 0 (OFF) can be done at any time. Already existing premium domain names will not be affected, because automatic renewals will still work for them.

ACTIVATE PD SYSTEM

[COMMAND]
(required)                     
command              = setproperty
premiumdomain-active = 1
                     
EOF

ACTIVATE PD SYSTEM WITH SIMPLE MODE

[COMMAND]
(required)                               
command                        = setproperty
premiumdomain-active           = 1
premiumdomain-allow-simplemode = 1
                               
EOF

RAM

Due to the registry account management system (RAM) no regular accountings for domains will be charged in the RRPproxy. In most cases the registrar will only be charged a handling fee which is the same regardless if it is a premium domain name or not. So if the fee extension in the RRPproxy would only return the handling fee the RAM registrar would not be able to determine if the checked domain is a premium domain and how much the domain name really costs at the registry. To avoid this issue we decided to forward the registry premium domain price in the fee extension for premium domain names in RAM. Then the registrar will recieve the registry price for the premium domain name in the RRPproxy fee extension and will require to use this amount in the handshake process for the create domain call. However we will of course only charge the regular domain handling fee in the RRPproxy for that premium domain name.

Attention.png Some registries offer premium domain names using lists which they provide to the registrars. In case of RAM we offer a set of API commands for the registrar to manage premium domain names for that specific RAM TLD. In case of RAM we will not manage those lists for the registrar, since this is mostly a manual process changes of the premium domain lists at the registry could be overseen or updated with a delay and we will not take responisbility for that.


For the management of premium domain names with RAM for registries that offer premium domain lists and do not suppor a fee extension yet, we provide the API commands: AddPremiumDomain, ModifyPremiumDomain, DeletePremiumDomain, StatusPremiumDomain, QueryPremiumDomainlist (with TYPE=OWN)

AddPremiumDomain

[COMMAND]
(required)            
restore     = 45.0000
setup       = 100.0000
application = 100.0000
currency    = USD
trade       = 
unit        = 100.0000
transfer    = 100.0000
command     = addpremiumdomain
domain      = premium.domain
launchphase = 
            
EOF

StatusPremiumDomain

[COMMAND]
(required)            
command     = statuspremiumdomain
domain      = premium.domain
launchphase = 
            
EOF

ModifyPremiumDomain

[COMMAND]
(required)            
unit        = 150.0000
command     = modifypremiumdomain
domain      = premium.domain
launchphase = 
            
EOF

DeletePremiumDomain

[COMMAND]
(required)            
command     = deletepremiumdomain
domain      = premium.domain
launchphase = 
            
EOF

QueryPremiumDomainlist

[COMMAND]
(required)        
command = querypremiumdomainlist
type    = OWN
        
EOF

Reseller Premium Domain System Settings

The premium domain system settings can only be set if there is an active subreseller system and if the registrar is either the rootuser (or registry user in KSRegistry) or his parent user has also activated the premium domain system. They can be found in the WI under Subreseller -> Settings -> Premium Domain System.

Here you can activate the premium domain system for your subresellers by setting "active" to 1 (on). Afterwards the premium domain settings show up for subresellers in the WI under Account -> Settings -> Premium Domain where they can activate the FEE parameters or simple mode for their account.

Be aware that is not possible to deactivate the premium domain system later on as long as a subreseller has an active premium domain setting.

When setting the premium domain system to active you can enter a formula that will be used to calculate the sell prices for premium domain names for you subresellers.

These formula consists of a currency, amount values (1 to 9) and percentage values (0-9). Here you can add a percent value that will be added to the price for different categorys. If no formula is entered the system just passes the original premium domain price without price increase (if active is set to 1 (on)).

The formula could look like this:

currency: USD

value (in currency)      percentage (added to price)
>=0                      20%
>=50                     15%
>=200                    10%

This would add an increase of 20% to all prices that sarting 0 and up all amounts smaller 50 USD, 15% for prices sarting with 50 and smaller 200 USD and 10% for everyting sarting with 200 USD.

Note that this applies to each price separately not the total amount! (setup, unit, transfer, trade, restore, application).


ACTIVATE PD SYSTEM FOR SUBRESELLERS WITHOUT BONUS PRICING (ONLY POSSIBLE IF ACTIVE SUBRESELLER SYSTEM)

[COMMAND]
(required)                           
command                    = setproperty
premiumdomainsystem-active = 1
                           
EOF

ACTIVATE PD SYSTEM FOR SUBRESELLERS WITH ADDITIONAL PRICING(ONLY POSSIBLE IF ACTIVE SUBRESELLER SYSTEM)

[COMMAND]
(required)                                        
command                                 = setproperty
premiumdomainsystem-active              = 1
premiumdomainsystem-formula-currency    = USD
premiumdomainsystem-formula-percentage0 = 42
premiumdomainsystem-formula-percentage1 = 36
premiumdomainsystem-formula-percentage2 = 30
premiumdomainsystem-formula-percentage3 = 25
premiumdomainsystem-formula-percentage4 = 20
premiumdomainsystem-formula-percentage5 = 15
premiumdomainsystem-formula-percentage6 = 13
premiumdomainsystem-formula-percentage7 = 11
premiumdomainsystem-formula-percentage8 = 9
premiumdomainsystem-formula-percentage9 = 5
premiumdomainsystem-formula-value1      = 50
premiumdomainsystem-formula-value2      = 200
premiumdomainsystem-formula-value3      = 500
premiumdomainsystem-formula-value4      = 1000
premiumdomainsystem-formula-value5      = 2500
premiumdomainsystem-formula-value6      = 5000
premiumdomainsystem-formula-value7      = 9000
premiumdomainsystem-formula-value8      = 12000
premiumdomainsystem-formula-value9      = 15000
                                        
EOF

X-FEE Parameters

Each Fee Block consits of the parameters domain, currency, command, period, periodtype and launchphase. A maximum of 30 X-FEE extensions can be used in one API call.

Default for currency is always the own account currency. If a currency is given that is not the own account currency it will result in an error.

Default for period is always 1 and for periodtype is YEAR. Values that are not available will result in an error.

Command can either be ADD/CREATE/ADDDOMAIN, TRANSFER/TRANSFERDOMAIN, TRADE/TRADEDOMAIN, RENEW/RENEWDOMAIN, RESTORE/RESTOREDOMAIN.

The default for launchpase is empty which will return the regular TLD price. If launchphase is used it will return the price for an application phase. If the launchphase is not known or no longer active it will result in an error.

NOTE: The x-fee-domain parameter is not required in CHECKDOMAIN or STATUSDOMAIN since it has to be the same as the regular DOMAIN parameter anyway!

NOTE: Setting x-fee-domain to a domain name that is not included in the regular domain availability check will return an error!

Complete FEE extension Block:

x-fee-domain0=domain.TLD
x-fee-currency0=USD
x-fee-command0=ADD
x-fee-period0=1
x-fee-periodtype0=YEAR
x-fee-launchphase0=

Suggested FEE extension Block:

x-fee-domain0=domain.TLD
x-fee-command0=ADD
x-fee-period0=1

Premium domains for OT&E

DONUTS / RIGHTSIDE

every premium domain from LIVE System can be used for testing in OTE

.BIKE

sol.bike
caribbean.bike
allmountain.bike
any.bike
armstrong.bike
auto.bike
balance.bike
campus.bike
ceramic.bike
cheapest.bike
child.bike
childrens.bike
childs.bike
christmas.bike
city.bike
comfort.bike
compact.bike
compare.bike
day.bike
euro.bike
fluid.bike
folding.bike
hitch.bike
hobby.bike
local.bike
sidi.bike
street.bike
track.bike
travel.bike
triathlon.bike
whistler.bike
2ndhand.bike
bikehire.bike
manhattan.bike
miamibeach.bike
napa.bike
newportbeach.bike
paloalto.bike
santabarbara.bike
santacruz.bike
santamonica.bike
alqahirah.bike
bombay.bike
buenosaires.bike
cairo.bike
calcutta.bike
ciudaddemexico.bike
delhi.bike
dhaka.bike
karachi.bike
kolkata.bike
mexicocity.bike
mumbai.bike
osaka.bike
rio.bike
riodejaneiro.bike
saopaulo.bike
shanghai.bike
tokyo.bike
cyclone.bike
first.bike
rent.bike
bikecity.bike
biking.bike
commuting.bike
dein.bike
direct.bike
dirtbike.bike
exercisebike.bike
mountainbike.bike
renta.bike
side.bike
spinbikes.bike
streetbike.bike
adult.bike
alpine.bike
amazing.bike
american.bike
aussie.bike
babies.bike
bargain.bike
bayarea.bike
bestbaby.bike
bestbmx.bike
bestrecumbent.bike
bestroad.bike
better.bike
big.bike
black.bike
blue.bike
brown.bike
centralpark.bike
chain.bike
charity.bike
cheaper.bike
cheapexercise.bike
clearance.bike
cross.bike
cyclocross.bike
forsale.bike
rack.bike
sale.bike
week.bike
always.bike
amigo.bike
anytime.bike
approved.bike
arthritis.bike
attractions.bike
authentic.bike
authorized.bike
available.bike
batteries.bike
biker.bike
birthday.bike
cashback.bike
celebrity.bike
certificate.bike
collection.bike
conditioning.bike
cute.bike
aaa.bike
abc.bike
abe.bike
abs.bike
abw.bike
act.bike
add.bike
ado.bike
ads.bike
afg.bike
aft.bike
age.bike
ago.bike
aha.bike
aia.bike
aid.bike
aim.bike
air.bike
ala.bike
alb.bike
ale.bike
ali.bike
alp.bike
alr.bike
als.bike
alt.bike
ami.bike
ams.bike
ano.bike
ant.bike
ape.bike
app.bike
apt.bike
arc.bike
are.bike
arg.bike
ark.bike
arm.bike
ash.bike
asi.bike
asm.bike
ata.bike
ate.bike
atf.bike
atg.bike
atm.bike
auf.bike
aug.bike
aus.bike
aut.bike
aux.bike
ave.bike
awe.bike
axe.bike
aye.bike
aze.bike
bad.bike
bag.bike
ban.bike
bar.bike
bat.bike
bbb.bike
bbq.bike
bde.bike
bed.bike
beg.bike
bei.bike
bel.bike
bes.bike
bet.bike
bfa.bike
bff.bike
bgd.bike
bhr.bike
bhs.bike
bid.bike
bih.bike
bin.bike
bio.bike

.CONSTRUCTION

a.construction
aaa.construction
aaron.construction
aarons.construction
abbasi.construction
abbasis.construction
abc.construction
abe.construction
abs.construction
abw.construction
ace.construction
act.construction
adam.construction
adams.construction
add.construction
ado.construction
ads.construction
afg.construction
aft.construction
agarwal.construction
agarwals.construction
age.construction
ago.construction
aha.construction


.GURU

abc.guru
abs.guru
ace.guru
aft.guru
ala.guru
ann.guru
aus.guru
aye.guru
bei.guru
ben.guru
bit.guru
bob.guru
bra.guru
cab.guru
cal.guru
cap.guru
ceo.guru
ces.guru
che.guru
cit.guru
col.guru
coo.guru
cox.guru
cpa.guru
dan.guru
del.guru
der.guru
dim.guru
dis.guru
dot.guru
dug.guru
eds.guru
ere.guru
est.guru
fed.guru
gal.guru
gel.guru
gin.guru
gut.guru
hey.guru
hid.guru
hmm.guru
hon.guru
hug.guru
hum.guru
ich.guru
ind.guru
ing.guru
isn.guru
ist.guru
ita.guru
jam.guru
jan.guru
jim.guru
joe.guru
kit.guru
lag.guru
lee.guru
llc.guru
lot.guru
lui.guru
mba.guru
mem.guru
mid.guru
mis.guru
mmm.guru
nat.guru
nay.guru
ned.guru
ngo.guru
nip.guru
nun.guru
oft.guru
ore.guru
oui.guru
pas.guru
pdf.guru
phd.guru
pub.guru
res.guru
rev.guru
rib.guru
rot.guru
roy.guru
rub.guru
rug.guru
rye.guru
sam.guru
san.guru
sap.guru
sec.guru
seo.guru
ski.guru
soc.guru
sol.guru
spa.guru
sur.guru
tat.guru
ted.guru
tho.guru

.LTDA

premium-domain-00XX.ltda (XX stands for every number combination)

.CAREER

abortion.career
abierta.career
abide.career
abi.career
abhor.career
abh.career
abg.career
abf.career
aberrant.career
abernathy.career
abelard.career
abington.career
abj.career
abk.career
aborigine.career
abolish.career
abogados.career
abogado.career
abo.career
abnormality.career
abn.career
abm.career
abl.career
abkhazia.career
abducted.career
abel.career
abandoned.career
abandon.career
aba.career
ab3.career
ab.career
aaz.career
aay.career
aax.career
aaw.career
aau.career
abate.career
abattoir.career
abb.career
abe.career
abduct.career
abdomen.career
abd.career
abc.career
abbreviation.career
abbott.career
abbot.career
abbey.career
abbeville.career
aav.career
account.career
according.career
accented.career
acc.career
acb.career
acapulco.career
acadia.career
academy.career
academic.career
academe.career
aca.career
abz.career
access.career
accessories.career
accessory.career
accordance.career
accomplishments.career
accomplishment.career
accompany.career
accommodation.career
accommodate.career
acclivity.career
acclaim.career
accidentally.career
accident.career
abysmal.career
abp.career
abstract.career
abstinence.career
abspritzen.career
absolute.career
absolut.career
absentee.career
absent.career
absence.career
abs.career
abr.career
abq.career
about.career
abt.career
aby.career
abx.career
abw.career
abv.career
abuser.career
abused.career
abuse.career
abundance.career
abudhabi.career
abu.career

.OOO

abe.ooo
abz.ooo
about.ooo
abu.ooo
abudhabi.ooo
abundance.ooo
abuse.ooo
abused.ooo
abuser.ooo
abv.ooo
abw.ooo
abx.ooo
aby.ooo
abt.ooo
abstinence.ooo
abp.ooo
abq.ooo
abr.ooo
abs.ooo
absence.ooo
absent.ooo
absentee.ooo
absolut.ooo
absolute.ooo
abspritzen.ooo
abysmal.ooo
aca.ooo
accidentally.ooo
acclaim.ooo
acclivity.ooo
accommodate.ooo
accommodation.ooo
accompany.ooo
accomplishment.ooo
accomplishments.ooo
accordance.ooo
according.ooo
accident.ooo
accessory.ooo
academe.ooo
academic.ooo
academy.ooo
acadia.ooo
acapulco.ooo
acb.ooo
acc.ooo
accented.ooo
access.ooo
accessories.ooo
account.ooo
abortion.ooo
aau.ooo
abb.ooo
abbeville.ooo
abbey.ooo
abbot.ooo
abbott.ooo
abbreviation.ooo
abc.ooo
abd.ooo
abdomen.ooo
abduct.ooo
abattoir.ooo
abate.ooo
aav.ooo
aaw.ooo
aax.ooo
aay.ooo
aaz.ooo
ab.ooo
ab3.ooo
aba.ooo
abandon.ooo
abandoned.ooo
abducted.ooo
abel.ooo
abk.ooo
abkhazia.ooo
abl.ooo
abm.ooo
abn.ooo
abnormality.ooo
abo.ooo
abogado.ooo
abogados.ooo
abolish.ooo
abj.ooo
abington.ooo
abelard.ooo
abernathy.ooo
aberrant.ooo
abf.ooo
abg.ooo
abh.ooo
abhor.ooo
abi.ooo
abide.ooo
abierta.ooo
aborigine.ooo
abstract.ooo

.TV

abington.tv
abierta.tv
abide.tv
abi.tv
abhor.tv
abh.tv
abg.tv
abf.tv
aberrant.tv
abernathy.tv
abelard.tv
abj.tv
abk.tv
abortion.tv
aborigine.tv
abolish.tv
abogados.tv
abogado.tv
abo.tv
abnormality.tv
abn.tv
abm.tv
abl.tv
abkhazia.tv
abel.tv
abe.tv
abandoned.tv
abandon.tv
aba.tv
ab3.tv
ab.tv
aaz.tv
aay.tv
aax.tv
aaw.tv
aav.tv
abate.tv
abattoir.tv
abb.tv
abducted.tv
abduct.tv
abdomen.tv
abd.tv
abc.tv
abbreviation.tv
abbott.tv
abbot.tv
abbey.tv
abbeville.tv
aau.tv
account.tv
access.tv
accented.tv
acc.tv
acb.tv
acapulco.tv
acadia.tv
academy.tv
academic.tv
academe.tv
aca.tv
accessories.tv
accessory.tv
accident.tv
according.tv
accordance.tv
accomplishments.tv
accomplishment.tv
accompany.tv
accommodation.tv
accommodate.tv
acclivity.tv
acclaim.tv
accidentally.tv
abz.tv
abysmal.tv
abspritzen.tv
absolute.tv
absolut.tv
absentee.tv
absent.tv
absence.tv
abs.tv
abr.tv
abq.tv
abp.tv
abstinence.tv
abstract.tv
abt.tv
aby.tv
abx.tv
abw.tv
abv.tv
abuser.tv
abused.tv
abuse.tv
abundance.tv
abudhabi.tv
abu.tv
about.tv

.BLUE

vz33k4u9yn.blue
6ccsmudjce.blue
8krcykxzvg.blue
rb1itkrx3b.blue
9d0x0kk2r7.blue
u6ephxqh4o.blue
swcl4z06uy.blue
ad5rq53dhi.blue
86wt43zyc1.blue
7id4sy5pjd.blue
20595b96cr.blue
z8dnq8lmqz.blue
hu0ppfv6dq.blue
j08x009am0.blue
0un2yfy64a.blue
xo2ecw6wng.blue
5rnwvtsqci.blue
ufqnh5lag0.blue
bour59l5jk.blue
ql6ckq2eqz.blue
6tmoivogom.blue
ugljwz30zz.blue
rx2m1us97j.blue
ysi1pzgk6x.blue
cowjdeeh0t.blue
je1331btxv.blue
3o0z9x4uyq.blue
j0yzrcjtqf.blue
n24wcbe5d6.blue
42942pixvh.blue
ril06t54x2.blue
2pie5h74m4.blue
kih4oey44t.blue
d559kgbxfw.blue
279ier7e5v.blue
4cgdqrdq0y.blue
ukupqj7mg7.blue
2t06hwo7qh.blue
yb4w98djzk.blue
shybzlw14x.blue
v0inqhwdl7.blue
rv9k0xvzhj.blue
5bc22wew84.blue
fx05537sjv.blue
vg3fu8snxp.blue
9pxfvvde5y.blue
t066ktkqvl.blue
tyrxkzd08x.blue
2kicqlij2m.blue
uvzp04zp47.blue

.MENU

premium00XX.menu (XX stands for every number combination)

.KIWI, .LONDON, .BAYERN, .RODEO, .FISHING, .VODKA, .HORSE, .COOKING, .COUNTRY, .BEER, .SURF, .CASA, .YOGA, .WORK, .WEDDING, .FASHION, .GARDEN, .FIT

zuleikha.*
zuleika.*
zulayka.*
zulaikha.*
zulaika.*
Personal tools
Namespaces

Variants
Actions
Resources
new gTLDs
Products
New Users
General
Tools