DomainFinder REST API ile sınırsız pattern bazlı domain araması yapabilirsiniz. Token tabanlı kimlik doğrulama kullanılır.
https://yourdomain.com/api/v1
Tüm API isteklerinde X-Api-Token başlığı zorunludur.
GET /api/v1/search?length=8&endsWith=can&tlds=com,net HTTP/1.1
Host: yourdomain.com
X-Api-Token: df_aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789012345678
Belirtilen pattern'e uyan boş (kayıtsız) domainleri döndürür. Sonuçlar sayfalandırılmıştır; büyük kombinasyon uzaylarını offset ile gezeebilirsiniz.
| Parametre | Tip | Zorunlu | Açıklama |
|---|---|---|---|
| length | int | Evet | Domain uzunluğu (1–63) |
| startsWith | string | Hayır* | Domain bu karakterlerle başlamalı (örn: tech) |
| endsWith | string | Hayır* | Domain bu karakterlerle bitmeli (örn: can) |
| contains | string | Hayır* | Domain bu karakterleri içermeli (örn: shop) |
| tlds | string | Hayır | Virgülle ayrılmış uzantılar. Varsayılan: com,net |
| letters | bool | Hayır | a–z karakterleri dahil et. Varsayılan: true |
| numbers | bool | Hayır | 0–9 rakamları dahil et. Varsayılan: false |
| hyphen | bool | Hayır | Tire (-) karakteri dahil et. Varsayılan: false |
| customChars | string | Hayır | Özel karakter seti (örn: aeiou). Diğer charset parametreleriyle birleşir. |
| page | int | Hayır | Sayfa numarası. Varsayılan: 1 |
| offset | string | Hayır | Bir önceki sayfanın nextOffset değeri. Büyük kombinasyon uzaylarında sayfalama için kullanılır. |
GET /api/v1/search?length=8&endsWith=can&tlds=com&letters=true
X-Api-Token: df_aBcDeFgH...
GET /api/v1/search?length=6&startsWith=tech&tlds=com,net
X-Api-Token: df_aBcDeFgH...
GET /api/v1/search?length=5&contains=tech&letters=true&numbers=true&tlds=com
X-Api-Token: df_aBcDeFgH...
GET /api/v1/search?length=4&contains=a&customChars=aeiou&letters=false&tlds=com,net
X-Api-Token: df_aBcDeFgH...
GET /api/v1/search?length=8&endsWith=can&tlds=com&offset=abcdecan
X-Api-Token: df_aBcDeFgH...
{
"success": true,
"totalCombinations": 11881376,
"checked": 5000,
"availableFound": 84,
"hasMore": true,
"nextOffset": "aaaaaecan",
"elapsedMs": 312,
"isMasked": false,
"domains": [
{ "name": "aaaaacan.com", "isMasked": false },
{ "name": "aaabzcan.com", "isMasked": false },
...
]
}
| Alan | Tip | Açıklama |
|---|---|---|
| success | bool | İşlem başarısı |
| totalCombinations | long | Pattern'e uyan toplam kombinasyon sayısı |
| checked | long | Bu istekte kontrol edilen kombinasyon sayısı |
| availableFound | int | Bu sayfada bulunan boş domain sayısı |
| hasMore | bool | Daha fazla sonuç olup olmadığı |
| nextOffset | string | Bir sonraki sayfa için offset değeri |
| elapsedMs | long | İşlem süresi (ms) |
| domains | array | Bulunan boş domain listesi (her biri name ve isMasked içerir) |
| HTTP Kodu | Durum | Açıklama |
|---|---|---|
| 200 | OK | İstek başarılı. success: false ise hata mesajını error alanında okuyun. |
| 401 | Unauthorized | Token eksik, geçersiz, devre dışı veya süresi dolmuş. |
| 400 | Bad Request | Geçersiz parametre (uzunluk aralığı dışında, çakışan prefix/suffix vb.) |
{
"success": false,
"error": "En az bir arama terimi zorunludur: başlangıç, bitiş veya içerik."
}
hasMore: true ise nextOffset değerini bir sonraki isteğe ekleyerek devam edin.
import requests
API_TOKEN = "df_aBcDeFgH..."
BASE_URL = "https://yourdomain.com/api/v1"
def search_domains(length, ends_with, tlds="com,net"):
resp = requests.get(
f"{BASE_URL}/search",
params={
"length": length,
"endsWith": ends_with,
"tlds": tlds,
},
headers={"X-Api-Token": API_TOKEN}
)
data = resp.json()
if data["success"]:
for d in data["domains"]:
print(d["name"])
else:
print("Hata:", data["error"])
search_domains(8, "can")
const API_TOKEN = "df_aBcDeFgH...";
const BASE_URL = "https://yourdomain.com/api/v1";
async function searchDomains(length, endsWith, tlds = "com,net") {
const params = new URLSearchParams({ length, endsWith, tlds });
const res = await fetch(`${BASE_URL}/search?${params}`, {
headers: { "X-Api-Token": API_TOKEN }
});
const data = await res.json();
if (data.success) {
data.domains.forEach(d => console.log(d.name));
} else {
console.error("Hata:", data.error);
}
}
searchDomains(8, "can");
using var client = new HttpClient();
client.DefaultRequestHeaders.Add("X-Api-Token", "df_aBcDeFgH...");
var url = "https://yourdomain.com/api/v1/search?length=8&endsWith=can&tlds=com,net";
var response = await client.GetFromJsonAsync<SearchResult>(url);
foreach (var domain in response!.Domains)
Console.WriteLine(domain.Name);
curl -X GET "https://yourdomain.com/api/v1/search?length=8&endsWith=can&tlds=com" \
-H "X-Api-Token: df_aBcDeFgH..."