Examples
Real-world code examples for integrating DomainKit.
Check Domain Availability
curl
curl "https://api.domainkit.bot/check?name=mycoolstartup"
Python
import requests
def check_domain(name):
response = requests.get(
"https://api.domainkit.bot/check",
params={"name": name}
)
return response.json()
results = check_domain("mycoolstartup")
for r in results["results"]:
status = "✓ Available" if r["available"] else "✗ Taken"
print(f"{r['domain']}: {status}")
JavaScript (Node.js)
async function checkDomain(name) {
const response = await fetch(
`https://api.domainkit.bot/check?name=${name}`
);
return response.json();
}
const results = await checkDomain("mycoolstartup");
results.results.forEach(r => {
const status = r.available ? "✓ Available" : "✗ Taken";
console.log(`${r.domain}: ${status}`);
});
Go
package main
import (
"encoding/json"
"fmt"
"net/http"
)
type CheckResponse struct {
Results []struct {
Domain string `json:"domain"`
Available bool `json:"available"`
TLD string `json:"tld"`
} `json:"results"`
}
func checkDomain(name string) (*CheckResponse, error) {
resp, err := http.Get(
"https://api.domainkit.bot/check?name=" + name,
)
if err != nil {
return nil, err
}
defer resp.Body.Close()
var result CheckResponse
if err := json.NewDecoder(resp.Body).Decode(&result); err != nil {
return nil, err
}
return &result, nil
}
func main() {
results, _ := checkDomain("mycoolstartup")
for _, r := range results.Results {
status := "✗ Taken"
if r.Available {
status = "✓ Available"
}
fmt.Printf("%s: %s\n", r.Domain, status)
}
}
Bulk Domain Check
Check multiple domain names in one request:
import requests
names = ["startup1", "startup2", "startup3"]
for name in names:
response = requests.get(
"https://api.domainkit.bot/check",
params={"name": name}
)
data = response.json()
print(f"\n{name}:")
for r in data["results"]:
status = "✓" if r["available"] else "✗"
print(f" {status} {r['domain']}")
Filter by TLD
Check specific TLDs only:
# Check only .com
curl "https://api.domainkit.bot/check?name=mycoolstartup&tld=com"
# Check multiple TLDs
curl "https://api.domainkit.bot/check?name=mycoolstartup&tld=com,io,dev"
Get Registration Links
Find where to register available domains:
import requests
def get_registration_link(domain):
response = requests.get(
"https://api.domainkit.bot/register",
params={"domain": domain}
)
return response.json()
link = get_registration_link("mycoolstartup.com")
print(f"Register at: {link['url']}")
List All TLDs
Get all supported top-level domains:
import requests
response = requests.get("https://api.domainkit.bot/tlds")
tlds = response.json()
print(f"Supported TLDs: {len(tlds['tlds'])}")
for tld in tlds["tlds"][:10]:
print(f" .{tld}")
Error Handling
import requests
def check_domain_safe(name):
try:
response = requests.get(
"https://api.domainkit.bot/check",
params={"name": name},
timeout=10
)
response.raise_for_status()
return response.json()
except requests.exceptions.HTTPError as e:
if e.response.status_code == 429:
print("Rate limited. Wait and retry.")
elif e.response.status_code == 400:
print(f"Invalid request: {e.response.json()}")
raise
except requests.exceptions.Timeout:
print("Request timed out")
raise