Domain Research API
Free access to domain intelligence data for qualified researchers and brand protection professionals. Apply via the contact button; approved applicants receive an API key bound to their IP range.
Overview
Two API services are available:
NRDS Search API
Search and analyze newly registered gTLD domains within the past 30 days. Supports brand impersonation monitoring, registration pattern analysis, and research on newly registered names.
| Base URL | https://api.brandargus.com/v1/nrds-search | ||
| Domain Types | Major gTLDs (com, net, org, info, xyz, etc.) | ||
| Time Window | Rolling 30 days | ||
| Update Frequency | Daily |
NS Reverse Lookup API
Identify all gTLD domains hosted under a specific nameserver infrastructure. Supports infrastructure correlation and portfolio mapping.
| Base URL | https://api.brandargus.com/v1/ns-reverse | ||
| Data Scope | Active domains (daily snapshot) | ||
| Update Frequency | Daily |
# NRDS: search domains containing "nike" curl -H "Authorization: Bearer YOUR_API_KEY" \ "https://api.brandargus.com/v1/nrds-search/domains?keyword=nike&tld=com" # NS Reverse: find domains on a nameserver curl -H "Authorization: Bearer YOUR_API_KEY" \ "https://api.brandargus.com/v1/ns-reverse/domains?ns=ns1.example.com"
Authentication
All API requests require a Bearer token in the Authorization header. Your client IP must also be within the pre-authorized range.
IP Whitelist
| IP Format | Single IP (e.g., 203.0.113.50) or CIDR range (e.g., 203.0.113.0/24) | ||
| IP Changes | Contact support. Changes may take up to 24 hours. | ||
| Dynamic IP | Not supported. Use a VPN or cloud server with static IP. |
Authorization: Bearer <your-api-key>
Rate Limiting
| Requests per minute | 120 | ||
| Recommended interval | 1 request per second |
Exceeding the limit returns a 429 Too Many Requests error.
Response Headers
| X-RateLimit-Limit | Maximum requests per minute | ||
| X-RateLimit-Remaining | Remaining requests in current window | ||
| X-RateLimit-Reset | Unix timestamp when the rate limit resets |
HTTP/1.1 429 Too Many Requests
X-RateLimit-Limit: 120
X-RateLimit-Remaining: 0
X-RateLimit-Reset: 1706284800
{
"error": "rate limit exceeded"
}Error Codes
| Code | Type | Description | |
|---|---|---|---|
| 400 | HTTP | Invalid parameter, malformed cursor, or bad request | |
| 401 | HTTP | Missing or invalid API key | |
| 403 | HTTP | IP address not in allowed range | |
| 429 | HTTP | Rate limit exceeded | |
| 500 | HTTP | Internal server error |
{
"error": "ip not in allowed range"
}NRDS: Search Domains
Search newly registered domains with flexible filtering and cursor-based pagination. Results are returned in database order.
Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
| keyword | string | - | Search keyword in domain prefix (case-insensitive) |
| match | string | contains | Match type: contains, prefix, suffix |
| tld | string | all | Filter by TLD (e.g., com, net, org) |
| reg_date | string | - | Filter by exact registration date (YYYY-MM-DD). Shorthand for reg_after + reg_before on the same day. |
| reg_after | string | - | Registration date from, inclusive (YYYY-MM-DD) |
| reg_before | string | - | Registration date to, inclusive (YYYY-MM-DD) |
| pure_number | bool | - | If true, only pure numeric domains. If false, exclude them. |
| has_number | bool | - | If true, must contain numbers. If false, must not. |
| has_hyphen | bool | - | If true, must contain hyphens. If false, must not. |
| pure_alpha | bool | false | Only alphabetical domains [a-z] |
| min_len | int | - | Minimum domain prefix length |
| max_len | int | - | Maximum domain prefix length |
| limit | int | 100 | Results per page (max: 1000) |
| cursor | string | - | Pagination cursor from previous response |
curl -H "Authorization: Bearer sk-xxx" \ "https://api.brandargus.com/v1/nrds-search/domains?\ keyword=nike&tld=com&limit=100" # Pagination curl -H "Authorization: Bearer sk-xxx" \ "https://api.brandargus.com/v1/nrds-search/domains?\ keyword=nike&cursor=eyJvZmZzZXQiOjEwMH0" # Hyphenated variants curl -H "Authorization: Bearer sk-xxx" \ "https://api.brandargus.com/v1/nrds-search/domains?\ keyword=nike&has_hyphen=true" # Filter by exact registration date curl -H "Authorization: Bearer sk-xxx" \ "https://api.brandargus.com/v1/nrds-search/domains?\ reg_date=2026-04-07&tld=com" # Short alphabetical domains curl -H "Authorization: Bearer sk-xxx" \ "https://api.brandargus.com/v1/nrds-search/domains?\ pure_alpha=true&min_len=3&max_len=6"
{
"matched": 1542,
"returned": 100,
"next_cursor": "eyJvZmZzZXQiOjEwMH0",
"domains": [
{
"domain": "nike-outlet-store.com",
"reg_date": "2026-01-25",
"exp_date": "2027-01-25",
"ns": "ns1.example.com;ns2.example.com"
}
]
}NRDS: Count Domains
Count matching domains without returning the full result set. Accepts the same filtering parameters as Search (except limit and cursor).
curl -H "Authorization: Bearer sk-xxx" \ "https://api.brandargus.com/v1/nrds-search/domains/count?\ keyword=nike"
{
"matched": 15432
}NRDS: Export Domains
Download matching domains as a CSV file. Accepts the same filtering parameters as Search (except limit and cursor).
Response Headers
| Content-Type | text/csv; charset=utf-8 | ||
| Content-Disposition | attachment; filename=nrds-export.csv |
curl -H "Authorization: Bearer sk-xxx" \ "https://api.brandargus.com/v1/nrds-search/domains/export?\ keyword=nike&tld=com" \ -o domains.csv
domain,reg_date,exp_date,ns nike-outlet.com,2026-01-25,2027-01-25,ns1.host.com;ns2.host.com mynike-store.com,2026-01-24,2027-01-24,ns1.reg.com;ns2.reg.com
NRDS: Health Check
Check API service status and data freshness. No authentication required.
{
"status": "ok",
"updated_at": "2026-01-26T02:30:00Z"
}NS Reverse: Domain Count
Retrieve the total number of domains hosted under a specific nameserver.
| Parameter | Type | Default | Description |
|---|---|---|---|
| nsREQUIRED | string | - | Nameserver FQDN (e.g., ns1.example.com) |
curl -H "Authorization: Bearer sk-xxx" \ "https://api.brandargus.com/v1/ns-reverse/domains/count?\ ns=ns1.example.com"
{
"ns": "ns1.example.com",
"total": 125432
}NS Reverse: Query Domains
Query domains hosted under a specific nameserver with filtering and cursor-based pagination.
Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
| nsREQUIRED | string | - | Nameserver FQDN (e.g., ns1.example.com) |
| limit | int | 100 | Results per page (max: 1000) |
| cursor | string | - | Pagination cursor from previous response |
| tld | string | all | Filter by TLD (e.g., com, net) |
| keyword | string | - | Filter by keyword in domain prefix (case-insensitive) |
| match | string | contains | Match type: contains, prefix, suffix |
| has_number | bool | - | If true, must contain numbers. If false, must not. |
| has_hyphen | bool | - | If true, must contain hyphens. If false, must not. |
| pure_alpha | bool | false | Only alphabetical domains [a-z] |
| min_len | int | - | Minimum domain prefix length |
| max_len | int | - | Maximum domain prefix length |
| reg_date | string | - | Filter by exact registration date (YYYY-MM-DD). Shorthand for reg_after + reg_before on the same day. |
| reg_after | string | - | Registration date from, inclusive (YYYY-MM-DD) |
| reg_before | string | - | Registration date to, inclusive (YYYY-MM-DD) |
curl -H "Authorization: Bearer sk-xxx" \ "https://api.brandargus.com/v1/ns-reverse/domains?\ ns=ns1.example.com&tld=com&limit=100" # Search by keyword curl -H "Authorization: Bearer sk-xxx" \ "https://api.brandargus.com/v1/ns-reverse/domains?\ ns=ns1.example.com&keyword=bank&match=prefix" # Filter by exact registration date curl -H "Authorization: Bearer sk-xxx" \ "https://api.brandargus.com/v1/ns-reverse/domains?\ ns=ns1.example.com®_date=2025-06-15" # Filter by registration date range curl -H "Authorization: Bearer sk-xxx" \ "https://api.brandargus.com/v1/ns-reverse/domains?\ ns=ns1.example.com®_after=2025-01-01®_before=2025-12-31"
{
"ns": "ns1.example.com",
"total": 125432,
"returned": 100,
"next_cursor": "eyJvZmZzZXQiOjEwMH0",
"domains": [
"example.com",
"domainkits.com",
"brandargus.com"
]
}NS Reverse: Export Domains
Download all domains as a CSV file. Supports the same filtering parameters as Query (except limit and cursor).
Response Headers
| Content-Type | text/csv; charset=utf-8 | ||
| Content-Disposition | attachment; filename=ns1_example_com.csv |
curl -H "Authorization: Bearer sk-xxx" \ "https://api.brandargus.com/v1/ns-reverse/domains/export?\ ns=ns1.example.com&tld=com&pure_alpha=true" \ -o filtered.csv
domain,reg_date example.com,2024-05-15 domainkits.com,2023-11-20 brandargus.com,
NS Reverse: Health Check
Check API service status and data freshness. No authentication required.
{
"status": "ok",
"updated_at": "2026-01-23T20:30:00Z"
}Changelog
- Added reg_date parameter for single-day queries (both APIs)
- Fixed NS Reverse date filtering: reg_after/reg_before are now fully inclusive at day level
- Documented inclusive behavior for all date parameters
- Added reg_after/reg_before date filtering for NS Reverse Lookup API
- Initial release: NRDS Search API and NS Reverse Lookup API
Terms of Use
BrandArgus.com is operated by Lyalpha GmbH. API access is granted exclusively for legitimate protection and research purposes.
Permitted Use
- Brand protection monitoring
- Domain and infrastructure research
- Academic and non-commercial research
Restrictions
- Do NOT use for spamming, harassment, or illegal activities
- No redistribution, sublicensing, or resale of raw data
- API keys are non-transferable and bound to your registered IP range
GDPR Compliance
| Data Minimization | No PII of domain registrants is provided | ||
| Log Anonymization | Requesting IPs are anonymized (last two octets masked) | ||
| Retention Period | Access logs retained for max 90 days | ||
| Account Termination | All logs deleted within 30 days upon request |
Free Beta Access
This API is provided free of charge for research purposes. We welcome bug reports, feature suggestions, and feedback on data quality.
Lyalpha GmbH
Heinrichstr. 73, 40239 Düsseldorf, Germany
Registration: HRB 106435 | VAT ID: DE314044210
General terms: see our Terms of Service. Privacy: Privacy Policy. Legal disclosure: Imprint.
BrandArgus