API Reference
Access our comprehensive domain database programmatically with the NameSnag API. Get domain metrics from Moz, Majestic, and AI-powered analysis.
Getting Started
Base URL
https://namesnag.com/api
Required Headers
Authorization: Bearer nsg_your_api_key_here
MCP Integration
LiveAI Assistant Integration
Connect NameSnag directly to Claude Desktop, Cursor, and other AI assistants using the Model Context Protocol (MCP). Let AI help you find, analyze, and evaluate domains using natural language.
mcp.namesnag.com
What is MCP?
Model Context Protocol (MCP) is an open standard that connects AI assistants to external data sources and APIs. Think of it like a USB-C port for AI applications. With NameSnag's MCP server, AI assistants can search domains, analyze metrics, and compare options using real-time data.
Available Tools
Server Details
Setup Instructions
Claude Desktop
Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"namesnag": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://mcp.namesnag.com/sse"]
}
}
}
Restart Claude Desktop after updating the config. You'll be prompted to authenticate with Google on first use.
Cursor / Other MCP Clients
For clients that support remote MCP servers directly:
{
"mcpServers": {
"namesnag": {
"url": "https://mcp.namesnag.com/sse",
"transport": "sse"
}
}
}
Example Prompts
• "Find me short brandable tech domains under 8 characters"
• "Show me premium .com domains with high trust flow"
• "Get details for example.com"
• "Compare techstart.com, webdev.io, and appify.net"
Authentication
All API requests require authentication using an API key. Include your API key in the Authorization header as a Bearer token.
Getting an API Key
- 1. Subscribe to a NameSnag plan
- 2. Visit your account settings
- 3. Generate an API key
- 4. Store it securely - it cannot be retrieved again
Endpoints
/api/domains
Get a list of available high-value domains
Query Parameters
| Parameter | Type | Description |
|---|---|---|
| Basic Parameters | ||
filter |
string | available (default), expiring, user, or all |
time_filter |
string | today, 3_days, 7_days, 14_days, 30_days, or all |
limit |
integer | Number of domains to return (max 100, default 50) |
sort_by |
string | snag_score (default), domain_name, domain_authority, brandability_score, majestic_trust_flow, majestic_ref_domains, semrush_peak_keywords, created_at |
sort_order |
string | Sort order: desc (default) or asc |
| Search & Matching | ||
keywords[] |
array | Keywords that should appear in domain name |
related_topics[] |
array | Topics to search in AI summaries and use cases |
industries[] |
array | Industry classifications from brandability analysis |
| Quality & Metrics | ||
min_snag_score |
number | Minimum SnagScore (0-100) |
min_majestic_trust_flow |
number | Minimum Majestic Trust Flow (0-100) |
min_citation_flow |
number | Minimum Majestic Citation Flow (0-100) |
min_brandability |
number | Minimum brandability score (0-100) |
min_domain_authority |
number | Minimum Moz Domain Authority (0-100) |
max_spam_score |
number | Maximum Moz spam score (0-100, lower is better) |
min_backlinks |
number | Minimum total backlinks count |
| Domain Characteristics | ||
extensions[] |
array | Domain extensions: com, net, org, io, etc. |
tld |
string | Single TLD filter (legacy, use extensions[] instead) |
min_length |
number | Minimum domain name length (excluding extension) |
max_length |
number | Maximum domain name length (excluding extension) |
max_words |
number | Maximum number of words in domain name |
min_age |
number | Minimum domain age in years |
no_hyphens |
boolean | Exclude domains with hyphens |
no_numbers |
boolean | Exclude domains with numbers |
| Link Quality | ||
has_edu_links |
boolean | Must have educational backlinks (.edu) |
has_gov_links |
boolean | Must have government backlinks (.gov) |
| AI Analysis | ||
investment_rating |
string | AI investment rating: Excellent, Good, Fair, Poor |
ai_strengths[] |
array | Keywords in AI-identified strengths |
ai_weaknesses_exclude[] |
array | Exclude domains with these AI-identified weaknesses |
ai_use_cases[] |
array | Keywords in AI-suggested use cases |
business_name_keywords[] |
array | Keywords in AI-suggested business names |
| SEO & Market Data | ||
min_peak_keywords |
number | Minimum historical peak keywords from SEMRush data |
min_peak_traffic |
number | Minimum historical peak monthly traffic from SEMRush |
| Source & Timing | ||
source_type |
string | Domain source: expired, dropped, or expiring |
include_expiring |
boolean | Include domains about to drop (pre-release opportunities) |
registrar |
string | Filter by specific registrar name |
added_since |
string | Added since: "1 day", "1 week", "1 month", or "YYYY-MM-DD" |
Example Request
curl -H "Authorization: Bearer nsg_your_api_key_here" \
"https://namesnag.com/api/domains?limit=5&min_snag_score=70&extensions[]=com"
Example Response
{
"success": true,
"data": {
"domains": [
{
"id": 12345,
"domain_name": "techstartup.com",
"snag_score": 85.5,
"availability": "available",
"source_type": "expired",
"brandability_score": 92,
"brandability_industries": ["Technology", "Software"],
"majestic_trust_flow": 35,
"majestic_citation_flow": 28,
"majestic_ref_domains": 1240,
"age_years": 8.2,
"tld": "com",
"created_at": "2024-08-15T10:30:00Z"
},
{
"id": 12346,
"domain_name": "aitools.com",
"snag_score": 78.3,
"availability": "available",
"source_type": "dropped",
"brandability_score": 88,
"brandability_industries": ["Technology", "AI"],
"domain_authority": 38,
"trust_flow": 32,
"citation_flow": 35,
"spam_score": 1,
"backlinks": 890,
"age_years": 5.8,
"tld": "com",
"created_at": "2024-08-14T14:22:00Z"
}
],
"total_count": 2,
"filters_applied": true
}
}
/api/domains/{domain_name}
Get comprehensive data for a specific domain
Path Parameters
domain_name - The domain name (e.g., "example.com")
Example Request
curl -H "Authorization: Bearer nsg_your_api_key_here" \
"https://namesnag.com/api/domains/techstartup.com"
Example Response
{
"success": true,
"data": {
"domain": {
"id": 12345,
"domain_name": "techstartup.com",
"source_type": "expired",
"availability": "available",
"availability_checked_at": "2024-08-15T12:00:00Z",
"listing_type": null,
"owner_id": null,
"dates": {
"create": "2016-03-15",
"update": "2024-01-20",
"expiry": "2024-08-15",
"query_time": "2024-08-15T10:30:00Z",
"created_at": "2024-08-15T10:30:00Z",
"updated_at": "2024-08-15T12:00:00Z"
},
"scoring": {
"snag_score": 85.5,
"snag_score_version": "2.1",
"snag_score_calculated_at": "2024-08-15T11:15:00Z"
},
"domain_registrar": {
"name": "GoDaddy LLC",
"whois": "whois.godaddy.com",
"url": "https://www.godaddy.com"
},
"domain_status": ["clientTransferProhibited", "clientDeleteProhibited"],
"name_servers": ["ns1.godaddy.com", "ns2.godaddy.com"],
"registrant": {
"name": "John Doe",
"email": "john@example.com",
"phone": "+1.5551234567",
"company": "Tech Innovations LLC",
"address": "123 Innovation St",
"city": "San Francisco",
"state": "CA",
"zip": "94105",
"country_code": "US",
"country": "United States"
},
"moz": {
"page_authority": 42,
"domain_authority": 45,
"spam_score": 2,
"link_propensity": 3.2,
"title": "TechStartup - Innovation Hub",
"last_crawled": "2024-08-10",
"http_code": 200,
"enriched_at": "2024-08-15T10:45:00Z",
"links_to_root_domain": {
"pages": 8450,
"nofollow_pages": 1240,
"external_pages": 1840,
"root_domains": 340,
"indirect_root_domains": 89
},
"pages_crawled_from_root_domain": 156
},
"majestic": {
"metrics": {
"citation_flow": 28,
"trust_flow": 35,
"trust_metric": 85,
"ext_back_links": 12450,
"ref_domains": 1240,
"ref_ips": 890,
"ref_subnets": 567,
"title": "TechStartup - Innovation Hub",
"language": "en",
"language_desc": "English",
"language_confidence": 0.95,
"enriched_at": "2024-08-15T10:50:00Z",
"ref_domains_edu": 15,
"ext_back_links_edu": 48,
"ref_domains_gov": 3,
"ext_back_links_gov": 8,
"topical_trust_flow_topic_0": "Technology",
"topical_trust_flow_value_0": 45,
"topical_trust_flow_topic_1": "Business",
"topical_trust_flow_value_1": 32,
"topical_trust_flow_topic_2": "Innovation",
"topical_trust_flow_value_2": 28,
"first_back_link_date": "2016-05-20",
"most_recent_back_link_date": "2024-08-01"
}
},
"brandability": {
"score": 92,
"rationale": "Highly brandable domain combining 'tech' and 'startup' - clear, memorable, and industry-relevant.",
"industries": ["Technology", "Software", "Startups"],
"extracted_words": ["tech", "startup"],
"business_name": "TechStartup Solutions",
"enriched_at": "2024-08-15T11:00:00Z"
},
"ai": {
"summary": "Premium domain perfect for technology startups, software companies, or innovation hubs. Strong brandability with excellent keyword combination.",
"strengths": ["Memorable name", "Industry keywords", "Strong backlink profile", "Good domain age"],
"weaknesses": ["Generic terms", "High competition"],
"use_cases": ["Tech startup company", "Software development firm", "Innovation consultancy", "Tech news blog"],
"investment_rating": "Excellent",
"recommendation": "Highly recommended for technology-focused businesses",
"estimated_value": "$15,000 - $25,000",
"summary_generated_at": "2024-08-15T11:10:00Z"
},
"viability": {
"status": "viable",
"checked_at": "2024-08-15T11:05:00Z"
}
}
}
}
/api/domains/search
AI-powered natural language domain search
AI-Powered Search
Our search endpoint uses AI to understand natural language queries and automatically extract search parameters. Just describe what you're looking for in plain English.
Request Body
{
"query": "short brandable tech domains under 8 characters with high authority"
}
Example Queries
- "premium .com domains with good backlinks"
- "aged finance domains with educational backlinks"
- "clean tech startup names without numbers or hyphens"
- "single word brandable domains for software companies"
Example Request
curl -X POST \
-H "Authorization: Bearer nsg_your_api_key_here" \
-H "Content-Type: application/json" \
-d '{"query":"short brandable tech domains under 8 characters"}' \
"https://namesnag.com/api/domains/search"
Example Response
{
"success": true,
"data": {
"query": "short brandable tech domains under 8 characters",
"parsed_params": {
"keywords": ["tech"],
"max_length": 8,
"min_brandability": 70,
"extensions": ["com"],
"no_hyphens": true,
"no_numbers": true
},
"domains": [
{
"id": 12345,
"domain_name": "techly.com",
"snag_score": 85.5,
"availability": "available",
"source_type": "expired",
"brandability_score": 92,
"brandability_industries": ["Technology", "Software"],
"domain_authority": 42,
"spam_score": 3,
"majestic_trust_flow": 35,
"majestic_citation_flow": 28,
"majestic_ref_domains": 1240,
"age_years": 8.2,
"tld": "com",
"created_at": "2024-08-15T10:30:00Z"
}
],
"total_count": 1
}
}
Note: The parsed_params field shows how the AI interpreted your query
and which filters were applied. This helps you understand and refine your searches.
Data Fields Reference
SnagScore™
Our proprietary scoring system (0-100) evaluates domains based on:
- Domain Authority (Moz)
- Trust Flow (Majestic)
- Backlink Profile
- Domain Age
- Brandability Score
Moz Metrics
0-100 scale predicting ranking ability
0-100 scale for individual pages
0-100 scale indicating spam risk (lower is better)
Comprehensive backlink analysis including pages and root domains
Majestic Metrics
0-100 scale measuring trustworthiness
0-100 scale measuring link power
Number of unique domains linking
Subject categorization with scores
SEMRush Market Data
Available for high-value domains (SnagScore ≥ 65)
Historical maximum organic keywords ranking
Historical maximum monthly organic traffic
Active organic keyword rankings
Geographic markets with strongest SEO presence
Expiring Domains
Pre-release opportunities for domains about to drop
Boolean indicating domain is in pending deletion
Estimated drop date/time for domain
Catch expiring domains via backorder services
Integration Examples
Python
import requests
headers = {
'Authorization': 'Bearer nsg_your_api_key_here',
'Content-Type': 'application/json'
}
# Get high-value domains
response = requests.get(
'https://namesnag.com/api/domains?min_snag_score=70',
headers=headers
)
domains = response.json()['data']['domains']
for domain in domains:
print(f"{domain['domain_name']}: {domain['snag_score']}")
JavaScript/Node.js
const axios = require('axios');
const api = axios.create({
baseURL: 'https://namesnag.com/api',
headers: {
'Authorization': 'Bearer nsg_your_api_key_here'
}
});
// Search for domains
async function searchDomains(query) {
try {
const response = await api.post('/domains/search', { query });
return response.data.data.domains;
} catch (error) {
console.error('API Error:', error.response.data);
}
}
Ruby
require 'net/http'
require 'json'
uri = URI('https://namesnag.com/api/domains')
uri.query = URI.encode_www_form(min_snag_score: 70, limit: 10)
request = Net::HTTP::Get.new(uri)
request['Authorization'] = 'Bearer nsg_your_api_key_here'
response = Net::HTTP.start(uri.hostname, use_ssl: true) do |http|
http.request(request)
end
domains = JSON.parse(response.body)['data']['domains']
Error Codes
| Code | Description |
|---|---|
| 400 | Bad Request - Invalid parameters |
| 401 | Unauthorized - Invalid or missing API key |
| 403 | Forbidden - Subscription required |
| 404 | Not Found - Domain not accessible or doesn't exist |
| 429 | Too Many Requests - Rate limit exceeded |
| 500 | Internal Server Error - Server issue |
Quick Start
-
1
Get your API key
Subscribe and generate a key in settings
-
2
Make your first request
Try the list endpoint to get domains
-
3
Integrate & automate
Build your domain discovery workflow
Rate Limits
- 1,000 requests per hour
- 100 domains per request
- Rate limit headers included
Best Practices
- Never expose API keys in client-side code
- Rotate keys regularly
- Cache responses for 15+ minutes
- Always use HTTPS