The DomainStudio search generates a list of domain names from several selected sources and adds further data to the search results.

Table of Contents

Request / Response (JSON)

API:   POST /domainstudio

For an easier assignment of the results, you can optionally send an own ID (myRequestID) with the query parameter ctid for queries.

POST /domainstudio?ctid=myRequestID

Request

JSON
{
  "currency": "USD",
  "searchToken": "house",
  "sources": {
    "recommended": {
      "services": ["WHOIS"],
      ...
    },
    ...
  }
}

For the creation of domain names, several sources can be specified per request.

For each source, you can specify a list of services to be used for the addition of additional domain data.

Response

Request
{
  "stid": "20190702-stid",
  "ctid": "myRequestID",
  "data": [
    {
      "domain": "house.com",
      "source": "RECOMMENDED",
      "services": {
        "whois": ...
      }
    },
    ...
  ]
}

Limit

By default a maximum of 500 requests per day can be sent to the route POST /domainstudio

If the limit is reached, the following system response appears:

Response
{
    "stid": "20200604-app1",
    "messages": [
        {
            "text": "Task limit was reached.",
            "objects": [
                {
                    "type": "string",
                    "value": "domainstudio"
                }
            ],
            "code": "EF00025",
            "status": "ERROR"
        }
    ],
    "status": {
        "type": "ERROR"
    }
}

Sources

The sources can be combined as desired.

Initial

A list of domain names is created that consists of combinations of the $searchToken and the $tlds.

Configuration

  • services = List of desired services
  • tlds = List of TLDs for the creation of domain names
  • onlyAvailable = Returns only domains if the service WHOIS was selected and the domain is marked as free. Default is false.

Example

Request
"initial": {
	"services": ["WHOIS", "PRICE", "ESTIMATION"],
	"tlds": ["cz","de","com"],
    "onlyAvailable": false
}



Request
curl -X POST https://api.autodns.com/v1/domainstudio --user 'myuser:mysecretpassword' -H "Content-type: application/json" -H "X-Domainrobot-Context:4" -d  '{
  "searchToken": "hotel",
  "sources": {
    "initial": {
      "services": [
        "WHOIS",
        "ESTIMATION"
      ],
      "tlds": [
        "de",
        "com",
        "net"
      ],
      "max": 3
    }
  }
}'
Response
{
   "stid":"20201027-app1-77194",
   "data":[
      {
         "domain":"hotel.com",
         "idn":"hotel.com",
         "source":"INITIAL",
         "services":{
            "whois":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "status":"ASSIGNED"
               }
            },
            "estimation":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "currency":"EUR",
                  "amount":292368.56
               }
            }
         },
         "forceDnsCheck":false,
         "onlyAvailable":false,
         "isPrereg":false
      },
      {
         "domain":"hotel.net",
         "idn":"hotel.net",
         "source":"INITIAL",
         "services":{
            "whois":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "status":"ASSIGNED"
               }
            },
            "estimation":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "currency":"EUR",
                  "amount":65084.63
               }
            }
         },
         "forceDnsCheck":false,
         "onlyAvailable":false,
         "isPrereg":false
      },
      {
         "domain":"hotel.de",
         "idn":"hotel.de",
         "source":"INITIAL",
         "services":{
            "whois":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "status":"ASSIGNED"
               }
            },
            "estimation":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "currency":"EUR",
                  "amount":13282.56
               }
            }
         },
         "forceDnsCheck":false,
         "onlyAvailable":false,
         "isPrereg":false
      }
   ]
}

Suggestion

A list of domain names is obtained via the API.

Configuration

  • language = language of the proposals
  • max = maximum number of matches
  • maxSldLength = maximum length of SLD for results
  • services =  list of desired services
  • useDash = allow hyphens in domain names
  • useIdn = allow IDN suggestions
  • useNumber = allow numbers in domain names
  • tlds = List of TLDs to be used for suggestions
  • onlyAvailable = Returns only domains if the service WHOIS was selected and the domain is marked as free. Default is false.

The following languages are supported for the language field:

  • English (eng)
  • German (ger)
  • Spanish (spa)
  • Italian (ita)
  • Japanese (jpn)
  • Turkish (tur)
  • Chinese (chi)
  • Portuguese (por)
  • French (fre)
  • Korean (kor)

Since the name suggestions are generated based on the geographic location of the query, among other things, the IP address of the search query is used. If the IP address of the search query does not correspond to that of the end user, this can be specified via the clientIp parameter. 

Example

"suggestion": {
	"language": "ger",
	"max": 5,
	"maxSldLength": 10,
	"services": ["WHOIS", "PRICE", "ESTIMATION"],
	"useDash": true,
	"useIdn": true,
	"useNumber": true,
	"tlds": ["de","com"],
    "onlyAvailable": false
}


Request
curl -X POST https://api.autodns.com/v1/domainstudio --user 'myuser:mysecretpassword' -H "Content-type: application/json" -H "X-Domainrobot-Context:4" -d  '{
  "searchToken": "hotel",
  "sources": {
    "suggestion": {
      "services": [
        "WHOIS",
        "ESTIMATION"
      ],
      "language": "ger",
      "max": 3,
      "maxSldLength": 16,
      "tlds": [
        "de",
        "com",
        "net"
      ],
      "useDash": true,
      "useIdn": true,
      "useNumber": true
    }
  }
}'
Response
{
   "stid":"20201027-app3-98180",
   "data":[
      {
         "domain":"hotelsinzing.com",
         "idn":"hotelsinzing.com",
         "source":"SUGGESTION",
         "services":{
            "whois":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "status":"FREE"
               }
            },
            "estimation":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "currency":"EUR",
                  "amount":79.69
               }
            }
         },
         "forceDnsCheck":false,
         "onlyAvailable":false,
         "isPrereg":false
      },
      {
         "domain":"hotelreinhausen.com",
         "idn":"hotelreinhausen.com",
         "source":"SUGGESTION",
         "services":{
            "whois":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "status":"FREE"
               }
            },
            "estimation":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "currency":"EUR",
                  "amount":65.47
               }
            }
         },
         "forceDnsCheck":false,
         "onlyAvailable":false,
         "isPrereg":false
      },
      {
         "domain":"hotelpentling.com",
         "idn":"hotelpentling.com",
         "source":"SUGGESTION",
         "services":{
            "whois":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "status":"FREE"
               }
            },
            "estimation":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "currency":"EUR",
                  "amount":25.95
               }
            }
         },
         "forceDnsCheck":false,
         "onlyAvailable":false,
         "isPrereg":false
      }
   ]
}       
      

Premium

Domains from the premium market are proposed to match the $searchToken.

Configuration

  • max = maximum number of matches
  • services = list of required services
  • promoTlds = list of TLDs with the highest priority
  • topTlds = list of TLDs with a higher priority
  • onlyAvailable = Returns only domains if the service WHOIS was selected and the domain is marked as free. Default is false.

Example

"premium": {
	"max": 5,
	"promoTlds": ["rocks", "shop"],
	"services": ["WHOIS", "PRICE", "ESTIMATION"],
	"topTlds": ["de", "com", "net"],
    "onlyAvailable": false
}


Request
curl -X POST https://api.autodns.com/v1/domainstudio --user 'myuser:mysecretpassword' -H "Content-type: application/json" -H "X-Domainrobot-Context:4" -d  '{
  "searchToken": "hotel",
  "sources": {
    "premium": {
      "services": [
        "WHOIS",
        "ESTIMATION"
      ],
      "max": 3,
      "promoTlds": [
        "rocks",
        "shop"
      ]
    }
  }
}'
Response
{
   "stid":"20201027-app1-77543",
   "data":[
      {
         "domain":"hoteles.shop",
         "idn":"hoteles.shop",
         "source":"PREMIUM",
         "services":{
            "whois":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "status":"PREMIUM"
               }
            },
            "estimation":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "currency":"EUR",
                  "amount":1284.99
               }
            }
         },
         "forceDnsCheck":false,
         "onlyAvailable":false,
         "isPrereg":false
      },
      {
         "domain":"hoteljapan.shop",
         "idn":"hoteljapan.shop",
         "source":"PREMIUM",
         "services":{
            "whois":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "status":"PREMIUM"
               }
            },
            "estimation":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "currency":"EUR",
                  "amount":467.57
               }
            }
         },
         "forceDnsCheck":false,
         "onlyAvailable":false,
         "isPrereg":false
      },
      {
         "domain":"hotelbook.shop",
         "idn":"hotelbook.shop",
         "source":"PREMIUM",
         "services":{
            "whois":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "status":"PREMIUM"
               }
            },
            "estimation":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "currency":"EUR",
                  "amount":892.54
               }
            }
         },
         "forceDnsCheck":false,
         "onlyAvailable":false,
         "isPrereg":false
      }
   ]
}           

Geo

Further TLDs are determined for the country defined by the IP address of the request. A list of domains consisting of combinations of the $searchToken and the determined TLDs is created.

Location based search hits

Depending on the IP address of the search request, additional country-specific TLDs are determined for the "$searchToken". If the IP address of the search query does not correspond to that of the end user, this can be specified via the clientIp parameter. The system uses this IP address to determine the country.

Request
{
  "currency": "USD",
  "searchToken": "house",
  "clientIp": "55.23.87.49",
  "sources": {
    "geo": {
      "services": ["WHOIS"],
      ...
    },
    ...
  }
}

Configuration

  • max = maximum number of matches
  • services = list of required services
  • onlyAvailable = Returns only domains if the service WHOIS was selected and the domain is marked as free. Default is false.

Example

"geo": {
	"max": 5,
	"services": ["WHOIS", "PRICE", "ESTIMATION"],
    "onlyAvailable": false
}


Request
curl -X POST https://api.autodns.com/v1/domainstudio --user 'myuser:mysecretpassword' -H "Content-type: application/json" -H "X-Domainrobot-Context:4" -d  '{
  "searchToken": "hotel",
  "sources": {
    "geo": {
      "services": [
        "WHOIS",
        "ESTIMATION"
      ],
      "max": 3
    }
  }
}'
Response
 {
   "stid":"20201027-app2-70645",
   "data":[
      {
         "domain":"hotel.bayern",
         "idn":"hotel.bayern",
         "source":"GEO",
         "services":{
            "whois":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "status":"ASSIGNED"
               }
            },
            "estimation":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "currency":"EUR",
                  "amount":2454.22
               }
            }
         },
         "forceDnsCheck":false,
         "onlyAvailable":false,
         "isPrereg":false
      },
      {
         "domain":"hotel.berlin",
         "idn":"hotel.berlin",
         "source":"GEO",
         "services":{
            "whois":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "status":"ASSIGNED"
               }
            },
            "estimation":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "currency":"EUR",
                  "amount":3384.17
               }
            }
         },
         "forceDnsCheck":false,
         "onlyAvailable":false,
         "isPrereg":false
      },
      {
         "domain":"hotel.hamburg",
         "idn":"hotel.hamburg",
         "source":"GEO",
         "services":{
            "whois":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "status":"ASSIGNED"
               }
            },
            "estimation":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "currency":"EUR",
                  "amount":42.38
               }
            }
         },
         "forceDnsCheck":false,
         "onlyAvailable":false,
         "isPrereg":false
      }
   ]
}

Similar

The $searchToken is used to generate similar-sounding domain names.

Configuration

  • max = maximum number of matches
  • services = list of required services
  • onlyAvailable = Returns only domains if the service WHOIS was selected and the domain is marked as free. Default is false.

Example

"similar": {
	"max": 5,
	"services": ["WHOIS", "PRICE", "ESTIMATION"],
    "onlyAvailable": false
}


Request
curl -X POST https://api.autodns.com/v1/domainstudio --user 'myuser:mysecretpassword' -H "Content-type: application/json" -H "X-Domainrobot-Context:4" -d  '{
  "searchToken": "hotel",
  "sources": {
    "similar": {
      "services": [
        "WHOIS",
        "ESTIMATION"
      ],
      "max": 3
    }
  }
}'
Response
{
   "stid":"20201026-app3-105361",
   "data":[
      {
         "domain":"ho.tel",
         "idn":"ho.tel",
         "source":"SIMILAR",
         "services":{
            "whois":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "status":"ASSIGNED"
               }
            },
            "estimation":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "currency":"EUR",
                  "amount":433.07
               }
            }
         },
         "forceDnsCheck":false,
         "onlyAvailable":false,
         "isPrereg":false
      }
   ]
}

Creates a list of popular and promoted TLDs in combination with the $searchToken.

Configuration

  • max = maximum number of matches
  • services = list of required services
  • onlyAvailable = Returns only domains if the service WHOIS was selected and the domain is marked as free. Default is false.

Example

"recommended": {
	"max": 5,
	"services": ["WHOIS", "PRICE", "ESTIMATION"],
    "onlyAvailable": false
}


Request
curl --user 'myuser:mysecretpassword' -H "Content-type: application/json" -H "X-Domainrobot-Context:4" -d '{
  "searchToken": "hotel",
  "sources": {  
    "recommended": {
      "services": [
        "WHOIS",
        "ESTIMATION"
      ],
      "max": 3
    }
  }
}'
Response
{
   "stid":"20201027-app1-78213",
   "data":[
      {
         "domain":"hotel.com",
         "idn":"hotel.com",
         "source":"RECOMMENDED",
         "services":{
            "whois":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "status":"ASSIGNED"
               }
            },
            "estimation":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "currency":"EUR",
                  "amount":292368.56
               }
            }
         },
         "forceDnsCheck":false,
         "onlyAvailable":false,
         "isPrereg":false
      },
      {
         "domain":"hotel.net",
         "idn":"hotel.net",
         "source":"RECOMMENDED",
         "services":{
            "whois":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "status":"ASSIGNED"
               }
            },
            "estimation":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "currency":"EUR",
                  "amount":65084.63
               }
            }
         },
         "forceDnsCheck":false,
         "onlyAvailable":false,
         "isPrereg":false
      },
      {
         "domain":"hotel.shop",
         "idn":"hotel.shop",
         "source":"RECOMMENDED",
         "services":{
            "whois":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "status":"RESERVED"
               }
            },
            "estimation":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "currency":"EUR",
                  "amount":2795.52
               }
            }
         },
         "forceDnsCheck":false,
         "onlyAvailable":false,
         "isPrereg":false
      }
   ]
}

Custom

A self defined custom list of domain names.

Configuration

  • services = list of required services
  • domains = list of domains
  • onlyAvailable = Returns only domains if the service WHOIS was selected and the domain is marked as free. Default is false.

Example

"custom": {
	"domains": ["domain.de","domain.com"],
	"services": ["WHOIS", "PRICE", "ESTIMATION"],
    "onlyAvailable": false
}


Request
curl --user 'myuser:mysecretpassword' -H "Content-type: application/json" -H "X-Domainrobot-Context:4" -d '{
  "searchToken": "hotel",
  "sources": {
    "custom": {
      "domains": [
        "domain.de",
        "domain.com"
      ],
      "services": [
        "WHOIS",
        "ESTIMATION"
      ]
 		"max": 3
    }
  }
}' 'https://api.autodns.com/v1/domainstudio'
Response
{
   "stid":"20201027-app2-70752",
   "data":[
      {
         "domain":"domain.com",
         "idn":"domain.com",
         "source":"CUSTOM",
         "services":{
            "whois":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "status":"ASSIGNED"
               }
            },
            "estimation":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "currency":"EUR",
                  "amount":133900.1
               }
            }
         },
         "forceDnsCheck":false,
         "onlyAvailable":false,
         "isPrereg":false
      },
      {
         "domain":"domain.de",
         "idn":"domain.de",
         "source":"CUSTOM",
         "services":{
            "whois":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "status":"ASSIGNED"
               }
            },
            "estimation":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "currency":"EUR",
                  "amount":21230.75
               }
            }
         },
         "forceDnsCheck":false,
         "onlyAvailable":false,
         "isPrereg":false
      }
   ]
}

Online Presence

Generating domain names based on data from an online presence.

Configuration

  • max = maximum number of matches
  • services = list of required services
  • maxSldLength = maximum length of the sld
  • useDash = allow hyphens in domain names
  • tlds = list of TLDs to be used for suggestions
  • onlinePresenceUrl = the url of the online presence
  • onlinePresenceTitle = the title of the online presence
  • relatedUrls = a list of related urls
  • category = the business categories. See list of valid categories.
  • onlinePresenceDescription = the description of the online presence
  • preferredName = the preferred name
  • location = the location of the business
  • business = A flag indicating if the online presence is a business or not
  • shortName = the shortname (only for private person)
  • fullName = the full name (only for private person)
  • firstName = the first name (only for private person)
  • middleNames = list of middle names (only for private person)
  • lastName = the last name (only for private person)
  • email = the email (only for private person)
  • hometown = the hometown  (only for private person)
  • skills = a list of skills (only for private person).
  • onlyAvailable = Returns only domains if the service WHOIS was selected and the domain is marked as free. Default is false.

Example

"onlinePresence": {
	"max": 10,
	"services": ["WHOIS", "PRICE", "ESTIMATION"],
    "maxSldLength": 25,
    "useDash": false,
    "tlds": ["de","com","net"],
    "onlinePresenceUrl": "mybusiness.com",
    "onlinePresenceTitle": "This is my business",
    "relatedUrls": ["mybusiness.de"],
    "category": "Science Technology & Engineering",
    "onlinePresenceDescription": "This is my super important business, founded in 1998, where I do some science and engineering.",
    "location": "Berlin",
    "business": true,
    "onlyAvailable": false
}


Request
curl -X POST https://api.autodns.com/v1/domainstudio --user 'myuser:mysecretpassword' -H "Content-type: application/json" -H "X-Domainrobot-Context:4" -d  '{
  "searchToken": "hotel",
  "sources": {
    "onlinePresence": {
    "max": 3,
    "services": ["WHOIS", "ESTIMATION"],
    "maxSldLength": 25,
    "useDash": false,
    "tlds": ["de","com","net"],
    "onlinePresenceUrl": "mybusiness.com",
    "onlinePresenceTitle": "This is my business",
    "relatedUrls": ["mybusiness.de"],
    "category": "Science Technology & Engineering",
    "onlinePresenceDescription": "This is my super important business, founded in 1998, where I do some science and engineering.",
    "location": "Berlin",
    "business": true
}
  }
}
Response
{
   "stid":"20201027-app4-76625",
   "data":[
      {
         "domain":"sciencethisismybusiness.com",
         "idn":"sciencethisismybusiness.com",
         "source":"SUGGESTION",
         "services":{
            "whois":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "status":"FREE"
               }
            },
            "estimation":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "currency":"EUR",
                  "amount":44.73
               }
            }
         },
         "forceDnsCheck":false,
         "onlyAvailable":false,
         "isPrereg":false
      },
      {
         "domain":"thisismybusiness.de",
         "idn":"thisismybusiness.de",
         "source":"SUGGESTION",
         "services":{
            "whois":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "status":"FREE"
               }
            },
            "estimation":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "currency":"EUR",
                  "amount":71.02
               }
            }
         },
         "forceDnsCheck":false,
         "onlyAvailable":false,
         "isPrereg":false
      },
      {
         "domain":"thisismybusinessscience.com",
         "idn":"thisismybusinessscience.com",
         "source":"SUGGESTION",
         "services":{
            "whois":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "status":"FREE"
               }
            },
            "estimation":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "currency":"EUR",
                  "amount":42.08
               }
            }
         },
         "forceDnsCheck":false,
         "onlyAvailable":false,
         "isPrereg":false
      }
   ]
}

Personal Names

Creates a list of domain names based on a person's name.

Configuration

  • max = Maximum number of matches.
  • services =  List of desired services
  • maxSldLength = Maximum length of SLD for results.
  • useDash = Allow hyphens in domain names.
  • tlds = List of TLDs to be used for suggestions
  • useIdn =  Allow IDN suggestions
  • firstName = The first name.
  • middleNames = List of middle names.
  • lastName = The last name.
  • useNumber = Allow numbers in domain names
  • spinFirstName = Swap first names for familiar nicknames.
  • onlyAvailable = Returns only domains if the service WHOIS was selected and the domain is marked as free. Default is false.

Example

"personalNames": {
    "max": 5,
    "services": ["WHOIS", "PRICE", "ESTIMATION"],
    "maxSldLength": 20,
    "tlds": ["de", "com"],
    "useDash": true,
    "spinFirstName": true,
    "useIdn": true,
    "firstName": "Jon",
    "middleNames": ["Theodor"],
    "lastName": "Doe",
    "useNumber": true,
    "onlyAvailable": false
}


Request
curl -X POST https://api.autodns.com/v1/domainstudio --user 'myuser:mysecretpassword' -H "Content-type: application/json" -H "X-Domainrobot-Context:4" -d  '{
  "sources": {
   "personalNames": {
    "max": 3,
    "services": ["WHOIS", "ESTIMATION"],
    "maxSldLength": 20,
    "tlds": ["de", "com"],
    "useDash": true,
    "spinFirstName": true,
    "useIdn": true,
    "firstName": "Jon",
    "middleNames": ["Theodor"],
    "lastName": "Doe",
    "useNumber": true
}
  }
}' 
Response
{
   "stid":"20201027-app1-78499",
   "data":[
      {
         "domain":"jon.de",
         "idn":"jon.de",
         "source":"PERSONAL_NAMES",
         "services":{
            "whois":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "status":"ASSIGNED"
               }
            },
            "estimation":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "currency":"EUR",
                  "amount":1676.12
               }
            }
         },
         "forceDnsCheck":false,
         "onlyAvailable":false,
         "isPrereg":false
      },
      {
         "domain":"doejon.com",
         "idn":"doejon.com",
         "source":"PERSONAL_NAMES",
         "services":{
            "whois":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "status":"FREE"
               }
            },
            "estimation":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "currency":"EUR",
                  "amount":143.57
               }
            }
         },
         "forceDnsCheck":false,
         "onlyAvailable":false,
         "isPrereg":false
      },
      {
         "domain":"jontheodordoe.com",
         "idn":"jontheodordoe.com",
         "source":"PERSONAL_NAMES",
         "services":{
            "whois":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "status":"FREE"
               }
            },
            "estimation":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "currency":"EUR",
                  "amount":71.97
               }
            }
         },
         "forceDnsCheck":false,
         "onlyAvailable":false,
         "isPrereg":false
      }
   ]
}

Spinword

Creates a list of domain names by replacing words within the search term with similar words.

Configuration

  • max = Maximum number of matches.
  • services =  List of desired services.
  • maxSldLength = Maximum length of SLD for results.
  • tlds = List of TLDs to be used for suggestions.
  • useIdn =  Allow IDN suggestions.
  • similarity = Specifies how similar the exchanged word should be. Values between 0.00 and 1.00 possible. The higher the more similar.
  • language = Language of the proposals..
  • position = The position of the word to be swapped. Specified as integer, starting from 0.
  • onlyAvailable = Returns only domains if the service WHOIS was selected and the domain is marked as free. Default is false.

The following languages are supported for the language field:

  • English (eng)
  • German (ger)
  • Spanish (spa)
  • Italian (ita)
  • Japanese (jpn)
  • Turkish (tur)
  • Chinese (chi)
  • Portuguese (por)
  • French (fre)
  • Korean (kor)

Example

"spinWord": {
    "max": 5,
    "services": ["WHOIS", "PRICE", "ESTIMATION"],
    "maxSldLength": 20,
    "tlds": ["de","com"],
    "useIdn": true,
    "similarity": 0.5,
    "position": 1,
    "onlyAvailable": false,
    "language": "en",
    "onlyAvailable": false
}


Request
curl -X POST https://api.autodns.com/v1/domainstudio --user 'myuser:mysecretpassword' -H "Content-type: application/json" -H "X-Domainrobot-Context:4" -d  '{
  "searchToken": "hotel,car,apple",
  "sources": {
    "spinWord": {
    "max": 3,
    "services": ["WHOIS", "ESTIMATION"],
    "maxSldLength": 20,
    "tlds": ["de","com"],
    "useIdn": true,
    "similarity": 0.5,
    "position": 1,
    "onlyAvailable": false,
    "language": "en"
}
  }
}'
Response
{
   "stid":"20201027-app2-71007",
   "data":[
      {
         "domain":"hotelvanapple.com",
         "idn":"hotelvanapple.com",
         "source":"SPIN_WORD",
         "services":{
            "whois":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "status":"FREE"
               }
            },
            "estimation":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "currency":"EUR",
                  "amount":46.75
               }
            }
         },
         "forceDnsCheck":false,
         "onlyAvailable":false,
         "isPrereg":false
      },
      {
         "domain":"hotelcartapple.com",
         "idn":"hotelcartapple.com",
         "source":"SPIN_WORD",
         "services":{
            "whois":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "status":"FREE"
               }
            },
            "estimation":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "currency":"EUR",
                  "amount":47.67
               }
            }
         },
         "forceDnsCheck":false,
         "onlyAvailable":false,
         "isPrereg":false
      },
      {
         "domain":"hotelcartapple.de",
         "idn":"hotelcartapple.de",
         "source":"SPIN_WORD",
         "services":{
            "whois":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "status":"FREE"
               }
            },
            "estimation":{
               "debugTime":0,
               "status":"SUCCESS",
               "data":{
                  "currency":"EUR",
                  "amount":48.07
               }
            }
         },
         "forceDnsCheck":false,
         "onlyAvailable":false,
         "isPrereg":false
      }
   ]
}

Services

DomainStudio Search offers a number of services that can be used to generate additional data related to search results. The list of desired services can be configured separately for each source.

The data can be delivered synchronously or asynchronously, in the latter case WebSocket is used. The status of the service processes and the data provided are returned in the following basic structure:

{
	"status": "SUCCESS",
	"data": {...},
	"message": "Fehlermeldung"
}

The status can have the values RUNNING, SUCCESS or FAILED.

  • RUNNING = processing still running
  • SUCCESS = query successful
  • FAILED = message contains an error message.

Additional data is made available under data, whereby the structure of the data object is defined by the specific services.

WhoisService

Executes a Whois query for each domain.

The Whois status determined can have the following values: FREE, ASSIGNED, MARKET, PREMIUM, INVALID, ERROR, TIMEOUT

  • FREE = the domain is free
  • ASSIGNED = the domain is assigned
  • MARKET = Market Domain
  • PREMIUM = Premium Domain
  • INVALID = invalid domain name
  • ERROR = Whois query not possible
  • TIMEOUT = timeout

Example für SUCCESS

"whois": {
  "status": "SUCCESS",
  "data": {
    "status": "PREMIUM"
  }
}

Whois check via DNS

If you want to perform the Whois check via DNS, you have to send the parameter forceDnsCheck within the request body.  By default normal Whois queries are performed.

{
  "currency": "USD",
  "searchToken": "house",
  "forceDnsCheck": true,
  "sources": {
    "recommended": {
      "services": ["WHOIS"],
      ...
    },
    ...
  }
}

PriceService

The price for CREATE / TRANSFER / ORDER and RENEW is determined for each domain.

Example bei SUCCESS

"price": {
  "status": "SUCCESS",
  "data": {
    "prices": [
      {
        "price": {
          "amount": 35,
          "type": "NET",
          "currency": "EUR"
        },
        "businessCase": "create"
      },
      {
        "price": {
          "amount": 35,
          "type": "NET",
          "currency": "EUR"
        },
        "businessCase": "transfer"
      },
      {
        "price": {
          "amount": 35,
          "type": "NET",
          "currency": "EUR"
        },
        "businessCase": "renew"
      }
    ]
  }
}

PriceEstimationService

A price estimation is created for each domain.

Example for SUCCESS

"estimation": {
  "status": "SUCCESS",
  "data": {
    "amount": 1171.07,
    "currency": "USD"
  }
}

Example for a complete question and answer

The sources are explained in the Sources section.
The data provided by the services are explained in the Services section.

Request
{
  "currency": "USD",                                   
  "searchToken": "house",
  "clientIp": "1.2.3.4",
  "sources": {
    "initial": {
      "services": ["WHOIS", "PRICE", "ESTIMATION"],
      "tlds": ["cz","de","com"]
    },
    "suggestion": {
      "language": "ger",                                
      "max": 5,
      "maxSldLength": 10,
      "services": ["WHOIS", "PRICE", "ESTIMATION"],
      "useDash": true,                               
      "useIdn": true,
      "useNumber": true,
      "tlds": ["de","com"]
    },
    "premium": {
      "max": 5,
      "promoTlds": ["rocks", "shop"],               
      "services": ["WHOIS", "PRICE", "ESTIMATION"],
      "topTlds": ["de", "com", "net"]
    },
    "geo": {
      "max": 5,
      "services": ["WHOIS", "PRICE", "ESTIMATION"]
    },
    "similar": {
      "max": 5,
      "services": ["WHOIS", "PRICE", "ESTIMATION"]
    },
    "recommended": { 
      "max": 5, 
      "services": ["WHOIS", "PRICE", "ESTIMATION"] 
    }
  }
}



Response
{
  "stid": "20190702-stid",
  "data": [
    {
      "domain": "ebike.com",
      "source": "RECOMMENDED",
      "services": {
        "whois": {
          "status": "SUCCESS",
          "data": {
            "status": "ASSIGNED"
          }
        },
        "price": {
          "status": "SUCCESS",
          "data": {
            "prices": [
              {
                "price": {
                  "amount": 12.59,
                  "type": "NET",
                  "currency": "EUR"
                },
                "businessCase": "create"
              },
              {
                "price": {
                  "amount": 12.59,
                  "type": "NET",
                  "currency": "EUR"
                },
                "businessCase": "transfer"
              },
              {
                "price": {
                  "amount": 12.59,
                  "type": "NET",
                  "currency": "EUR"
                },
                "businessCase": "renew"
              }
            ]
          }
        }
      }
    },
    {
      "domain": "ebike.de",
      "idn": "ebike.de",
      "source": "INITIAL",
      "services": {
        "whois": {
          "status": "SUCCESS",
          "data": {
            "status": "ASSIGNED"
          }
        },
        "price": {
          "status": "SUCCESS",
          "data": {
            "prices": [
              {
                "price": {
                  "amount": 6.6,
                  "type": "NET",
                  "currency": "EUR"
                },
                "businessCase": "create"
              },
              {
                "price": {
                  "amount": 6.6,
                  "type": "NET",
                  "currency": "EUR"
                },
                "businessCase": "transfer"
              },
              {
                "price": {
                  "amount": 6.84,
                  "type": "NET",
                  "currency": "EUR"
                },
                "businessCase": "order"
              },
              {
                "price": {
                  "amount": 6.6,
                  "type": "NET",
                  "currency": "EUR"
                },
                "businessCase": "renew"
              }
            ]
          }
        },
        "estimation": {
          "status": "SUCCESS",
          "data": {
            "currency": "USD",
            "amount": 618
          }
        }
      }
    },
    {
      "domain": "e.bike",
      "source": "SIMILAR",
      "services": {
        "whois": {
          "status": "SUCCESS",
          "data": {
            "status": "ASSIGNED"
          }
        },
        "price": {
          "status": "SUCCESS",
          "data": {
            "prices": [
              {
                "price": {
                  "amount": 23,
                  "type": "NET",
                  "currency": "EUR"
                },
                "businessCase": "create"
              },
              {
                "price": {
                  "amount": 23,
                  "type": "NET",
                  "currency": "EUR"
                },
                "businessCase": "transfer"
              },
              {
                "price": {
                  "amount": 23,
                  "type": "NET",
                  "currency": "EUR"
                },
                "businessCase": "renew"
              }
            ]
          }
        }
      }
    },
    {
      "domain": "RadioEBike.com",
      "idn": "radioebike.com",
      "source": "SUGGESTION",
      "services": {
        "whois": {
          "status": "SUCCESS",
          "data": {
            "status": "FREE"
          }
        },
        "price": {
          "status": "SUCCESS",
          "data": {
            "prices": [
              {
                "price": {
                  "amount": 12.59,
                  "type": "NET",
                  "currency": "EUR"
                },
                "businessCase": "create"
              },
              {
                "price": {
                  "amount": 12.59,
                  "type": "NET",
                  "currency": "EUR"
                },
                "businessCase": "transfer"
              },
              {
                "price": {
                  "amount": 12.59,
                  "type": "NET",
                  "currency": "EUR"
                },
                "businessCase": "renew"
              }
            ]
          }
        }
      }
    },
    {
      "domain": "ebike.tickets",
      "source": "PREMIUM",
      "services": {
        "whois": {
          "status": "SUCCESS",
          "data": {
            "status": "PREMIUM"
          }
        },
        "price": {
          "status": "SUCCESS",
          "data": {
            "prices": [
              {
                "price": {
                  "amount": 519,
                  "type": "NET",
                  "currency": "EUR"
                },
                "businessCase": "create"
              },
              {
                "price": {
                  "amount": 519,
                  "type": "NET",
                  "currency": "EUR"
                },
                "businessCase": "transfer"
              },
              {
                "price": {
                  "amount": 519,
                  "type": "NET",
                  "currency": "EUR"
                },
                "businessCase": "renew"
              }
            ]
          }
        },
        "estimation": {
          "status": "SUCCESS",
          "data": {
            "currency": "USD",
            "amount": 295
          }
        }
      }
    }
  ]
}

Synchronous and asynchronous Responses

Synchronous answers as standard

By default, search results are provided synchronously: the search response contains all the additional data for each domain name created.

If a request takes longer than the specified timeout (default value 10 sec), all services still running are set to TIMEOUT.

Activating the asynchronous response

With the following header the asynchronous mode can be activated:

X-Domainrobot-WS : ASYNC

The initial response contains only the list of generated domain names. As soon as the additional data for the individual domain objects are completely available, they are delivered asynchronously individually via WebSocket. This enables a quick provision of the domain list, which is then dynamically filled with additional data.

In asynchronous mode, you must specify a query ID using the query parameter ctid to be able to assign the responses to the queries.

Asynchronous mode: WebSocket

In asynchronous mode, completed result objects are sent via WebSocket.

The WebSocket connection must be set up completely before sending the search query.

WebSocket connections

Pre-conditions: WebSocket support, STOMP client (1.0 or higher)

URL: wss://api.autodns.com:8443/ws/

Authentication: this uses the cookie created by POST /login.

The connection is established via a STOMP client.

Required STOMP header:

heartbeatIncoming: 0
heartbeatOutgoing: 10000

After the successful connection setup the target /topic/user is subscribed.

Required header:

ack: 'client-individual'
prefetch-count: 100

WebSocket messages

The messages delivered via WebSocket contain the same domain objects that are returned by the synchronous request, but are not sent in a complete list, but individually. They are located in an additional object, an "envelope", which allows the assignment of asynchronous incoming messages to the respective request.

Example:

Websocket Notification
{
  "type": "DomainStudio",
  "group": "domain",
  "data": {
    "domain": "hello.hamburg",
    "source": "PREMIUM",
    "services": {
      "whois": {
        "debugTime": 0,
        "status": "SUCCESS",
        "data": {
          "status": "PREMIUM"
        }
      },
      "price": {
        "debugTime": 527,
        "status": "SUCCESS",
        "data": {
          "prices": [
            {
              "price": {
                "amount": 35,
                "type": "NET",
                "currency": "EUR"
              },
              "businessCase": "create"
            },
            {
              "price": {
                "amount": 35,
                "type": "NET",
                "currency": "EUR"
              },
              "businessCase": "transfer"
            },
            {
              "price": {
                "amount": 35,
                "type": "NET",
                "currency": "EUR"
              },
              "businessCase": "renew"
            }
          ]
        }
      },
      "estimation": {
        "debugTime": 4906,
        "status": "SUCCESS",
		"data": {
		  "amount": 1171.07,
		  "currency": "USD"
		}
      }
    },
    "debugTime": 4919
  },
  "ctid": "meine-anfrage-03",
  "stid": "20190701-test"
}

The search result can be found under data. The values of the keys stid and ctid are identical for all WebSocket messages of a search query.

Software Development Kit

Various Software Development Kit's (SDKs) are available for the implementation of the DomainStudio search.

Example of the implementation of the DomainStudio Search with Java :