The DomainStudio search generates a list of domain names from multiple selected sources and supplements the search results with additional data.

Table of contents

Request / response (JSON)

API:   POST /domainstudio

Optionally, for easier association of the results with the requests, a custom ID (myRequestID) can be sent with the query parameter ctid.

POST /domainstudio?ctid=8db8dc2d-674c-4191-b398-3057c1a81408

Request

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

For the generation of domain names, multiple sources can be specified for each request.

For each source, a list of services can be specified to be used for supplementing with 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 system will respond with the following message:


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, consisting 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)

As name suggestions are generated based on the geographical location of the request, the IP address of the search request is used. If the IP address of the search request does not correspond to that of the end user, it can be specified using 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

According to the $searchToken, domains from the premium market are suggested.

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

A list of domains is created, consisting of combinations of the $searchToken and the determined TLDs.

Location based search hits

Depending on the IP address of the search request, further country-specific TLDs for the "$searchToken" are determined. If the IP address of the search request does not correspond to that of the end user, it 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 available. 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

Based on the $searchToken, similar-sounding domain names are generated.

Configuration

  • max = maximum number of matches
  • services = list of required services
  • onlyAvailable = only returns domains if the WHOIS service is selected and the domain is marked as available. 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 advertised TLDs in combination with the $searchToken.

Configuration

  • max = maximum number of matches
  • services = list of required services
  • onlyAvailable = only returns domains if the WHOIS service is selected and the domain is marked as available. 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 list of domain names.

Configuration

  • services = list of required services
  • domains = list of domains
  • onlyAvailable =  Returns only domains if the WHOIS service is selected and the domain is marked as available. Default is false.
"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

Creates a list of 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 available. 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

Create a list of domain names by replacing words within the search term with other 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 value 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 available. 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

The DomainStudio Search offers a range of services to help further determine data about the search results. The list of desired services can be configured separately per source. The data can be delivered synchronously or asynchronously; in the latter case, WebSocket is used. The status of the service processes and the provided data is 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 provided under data, with the structure of the Data object being defined by the specific services.

WhoisService

Performs a Whois query for each domain.

The determined Whois status can take on 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 alongside a DNS check, the parameter forceDnsCheck must be included. By default, normal Whois queries are carried out.

{
  "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 response to the search query contains all additional data for each generated domain name.

If a request takes longer than the predefined timeout (default value 10 sec.), all remaining services are set to the status TIMEOUT.

Activating the asynchronous response

The asynchronous mode can be activated with the following header:

X-Domainrobot-WS : ASYNC

The initial response initially only contains the list of generated domain names. Once the additional data for the individual domain objects is fully available, they are delivered asynchronously via WebSocket. This allows for rapid provision of the domain list, which is then dynamically populated with additional data.

In asynchronous mode, it is mandatory to specify a request ID using a query parameter ctid in order to associate the responses with the requests.

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 connection

Prerequisites: 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 successfully establishing the connection, the /topic/user destination is subscribed to.

Required header:

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

WebSocket messages

The messages delivered via WebSocket contain the same domain objects as those returned by the synchronous request, but are not sent in a complete list, but individually. They are contained within an additional object, an "envelope," which allows the asynchronous incoming messages to be associated with 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 is located under data. The values of the keys stid and ctid are identical for all WebSocket messages of a search request.

Software Development Kit

For the implementation of the DomainStudio search, various Software Development Kits (SDKs) are available.

Example of the implementation of the DomainStudio Search with Java :