Check domain and social username availability, WHOIS, DNS, subdomains, valuation, and security data. Built for developers and AI agents.
10,000 free credits every month. No card required.
These are the DomScan endpoints used most over the last 30 days.
Check if a username is available across major social media platforms.
GET /v1/social
RDAP-led availability checks across 1,100+ TLDs, with caching and fallbacks where needed.
GET /v1/status
Discover subdomains for a domain using various enumeration techniques.
GET /v1/subdomains
Get WHOIS information for a domain including registrar, dates, and status.
GET /v1/whois
Query public Certificate Transparency logs for any domain.
GET /v1/certificates
Access RDAP (Registration Data Access Protocol) data through a simple API. Get structured, machine-readable domain information from authoritative sources.
GET /v1/rdap
Enter a name to preview the request. Sign in to see live availability.
curl "https://domscan.net/v1/status?name=techstartup&tlds=com"
# Check domain availability
curl "https://domscan.net/v1/status?name=myapp&tlds=com,io" \
-H "Authorization: Bearer YOUR_API_KEY"
# Response
{
"name": "myapp",
"results": [
{ "domain": "myapp.com", "available": false },
{ "domain": "myapp.io", "available": true }
]
}
# Install from the latest GitHub release
npm install -g https://github.com/estevecastells/domscan-cli/releases/latest/download/domscan-cli.tgz
# Check domain availability
DOMSCAN_API_KEY=dsk_your_key_here domscan check-domain-availability --name myapp --tlds com,io
// Check domain availability
const response = await fetch(
'https://domscan.net/v1/status?name=myapp&tlds=com,io',
{
headers: {
'Authorization': `Bearer ${API_KEY}`
}
}
);
const data = await response.json();
// { name: "myapp", results: [...] }
# Check domain availability
import requests
response = requests.get(
"https://domscan.net/v1/status",
params={"name": "myapp", "tlds": "com,io"},
headers={"Authorization": f"Bearer {API_KEY}"}
)
data = response.json()
# {"name": "myapp", "results": [...]}
// Check domain availability
package main
import (
"encoding/json"
"net/http"
)
func main() {
req, _ := http.NewRequest("GET",
"https://domscan.net/v1/status?name=myapp&tlds=com,io", nil)
req.Header.Set("Authorization", "Bearer "+apiKey)
resp, _ := http.DefaultClient.Do(req)
var data map[string]any
json.NewDecoder(resp.Body).Decode(&data)
}
# Check domain availability
require 'net/http'
require 'json'
uri = URI("https://domscan.net/v1/status?name=myapp&tlds=com,io")
req = Net::HTTP::Get.new(uri)
req["Authorization"] = "Bearer #{api_key}"
res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) { |http|
http.request(req)
}
data = JSON.parse(res.body)
# {"name"=>"myapp", "results"=>[...]}
Build domain search, registration flows, or brand tools with a simple REST API.
Find valuable domains, estimate prices, and monitor expiring names for investment.
Protect your brand from typosquatting and audit email security configurations.
Give your AI assistants domain expertise via MCP Server integration.
Connect DomScan to Claude, ChatGPT, Cursor, or any MCP-compatible AI. One config, instant domain intelligence.
Connect to Claude, ChatGPT, Cursor, or any MCP-compatible AI.
{
"mcpServers": {
"domscan": {
"command": "npx",
"args": ["mcp-remote", "https://domscan.net/mcp"]
}
}
}
10,000 free credits/month. No credit card required.
Sign in once, then explore the same data through free browser tools.
Create a free account, get 10,000 credits every month, and use every public endpoint. Add pay-as-you-go credits only when you need them.
No credit card required