The DomainStudio search generates a list of domain names from several selected sources and adds further data to the search results.
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
{
"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
{
"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:
{
"stid": "20200604-app1",
"messages": [
{
"text": "Task limit was reached.",
"objects": [
{
"type": "string",
"value": "domainstudio"
}
],
"code": "EF00025",
"status": "ERROR"
}
],
"status": {
"type": "ERROR"
}
}
Sources
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
"initial": {
"services": ["WHOIS", "PRICE", "ESTIMATION"],
"tlds": ["cz","de","com"],
"onlyAvailable": false
}
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
}
}
}'
{
"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
}
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
}
}
}'
{
"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
}
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"
]
}
}
}'
{
"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.
{
"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
}
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
}
}
}'
{
"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
}
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
}
}
}'
{
"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
}
]
}
Recommended
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
}
curl --user 'myuser:mysecretpassword' -H "Content-type: application/json" -H "X-Domainrobot-Context:4" -d '{
"searchToken": "hotel",
"sources": {
"recommended": {
"services": [
"WHOIS",
"ESTIMATION"
],
"max": 3
}
}
}'
{
"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
}
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'
{
"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
}
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
}
}
}
{
"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
}
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
}
}
}'
{
"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
}
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"
}
}
}'
{
"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.
{
"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"]
}
}
}
{
"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.
Activating the asynchronous response
With the following header the asynchronous mode can be activated:
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.
Asynchronous mode: WebSocket
In asynchronous mode, completed result objects are sent via WebSocket.
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:
{
"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 :