Справочник разработчика

Проверка доступности домена

DomScan API для анализа доменов: Проверьте, доступно ли имя домена на один или несколько TLD.

Проверка доступности домена

Проверьте, доступно ли имя домена на один или несколько TLD.

GET /v1/status

Параметры запроса

ПараметрТипОписание
name обязателен string Метка домена без TLD (например,
tlds обязателен string Разделенный запятыми список TLD для проверки (максимум 50)
domain опционально string Полный домен, например mycompany.com, принимается вместо name и tlds. Игнорируется, если заданы оба параметра name и tlds, и поддомены отклоняются.
prefer_cache опционально boolean token
Допустимые значения truefalse10yesno
Использовать кешированные результаты когда они доступны (рекомендуется)

Пример запроса

curl -H "X-API-Key: your-api-key" "https://domscan.net/v1/status?name=startup&tlds=com,io,co&prefer_cache=1"
const domscanFetch = (url, options = {}) =>
  fetch(url, {
    ...options,
    headers: { ...options.headers, "X-API-Key": "your-api-key" },
  });

const url = new URL("https://domscan.net/v1/status");
url.searchParams.set("name", "startup");
url.searchParams.set("tlds", "com,io,co");
url.searchParams.set("prefer_cache", "1");

const response = await domscanFetch(url);
const data = await response.json();
console.log(data.results);
import requests

domscan = requests.Session()
domscan.headers.update({"X-API-Key": "your-api-key"})

params = {"name": "startup", "tlds": "com,io,co", "prefer_cache": 1}
data = domscan.get("https://domscan.net/v1/status", params=params).json()
print(data["results"])
package main

import (
  "encoding/json"
  "fmt"
  "net/http"
  "os"
)

func domscanGet(url string) (*http.Response, error) {
  request, err := http.NewRequest(http.MethodGet, url, nil)
  if err != nil {
    return nil, err
  }
  request.Header.Set("X-API-Key", os.Getenv("DOMSCAN_API_KEY"))
  return http.DefaultClient.Do(request)
}

func main() {
  url := "https://domscan.net/v1/status?name=startup&tlds=com,io,co&prefer_cache=1"
  resp, _ := domscanGet(url)
  defer resp.Body.Close()

  var data map[string]any
  json.NewDecoder(resp.Body).Decode(&data)
  fmt.Println(data["results"])
}
require 'net/http'
require 'json'

uri = URI("https://domscan.net/v1/status?name=startup&tlds=com,io,co&prefer_cache=1")
request = Net::HTTP::Get.new(uri)
request["X-API-Key"] = ENV.fetch("DOMSCAN_API_KEY")
response = Net::HTTP.start(uri.host, uri.port, use_ssl: uri.scheme == "https") { |http| http.request(request) }
data = JSON.parse(response.body)
puts data["results"]

Пример ответа

{
                "name": "startup",
                "results": [
                {
                "domain": "startup.com",
                "tld": "com",
                "available": false,
                "source": "rdap",
                "checked_at": "2025-01-05T10:30:00.000Z"
                },
                {
                "domain": "startup.io",
                "tld": "io",
                "available": true,
                "source": "rdap",
                "checked_at": "2025-01-05T10:30:00.000Z"
                }
                ],
                "meta": {
                "served_by": "pop=LAX country=US"
                }
                }

Поля ответа

Поле Тип
name string
results[] object[]
results[] object
results[].domain string
results[].tld string
results[].available boolean | null
results[].source string
results[].confidence string
results[].checked_at string
results[].latency_ms integer
results[].error string
confidence_summary object
confidence_summary.scope string
confidence_summary.requested_count integer
confidence_summary.result_count integer
confidence_summary.invalid_count integer
confidence_summary.available_count integer
confidence_summary.registered_count integer
confidence_summary.authoritative_count integer
confidence_summary.heuristic_count integer
confidence_summary.cached_count integer
confidence_summary.error_count integer
confidence_summary.ambiguous_count integer
confidence_summary.source_counts object
confidence_summary.primary_source string | null
confidence_summary.cache_status string
confidence_summary.rdap_calls integer
confidence_summary.refreshes integer
confidence_summary.cache_preference_misses integer
confidence_summary.fallback_chain[] string[]
confidence_summary.confidence_level string
confidence_summary.determinacy_rate number
confidence_summary.ambiguity_reason string | null
meta object
meta.total_checked integer
meta.available_count integer
meta.duration_ms integer

Используется сотрудниками известных компаний

VercelLLM PulseOLXCasa ModernaPipeCal.comBeehiivSnykTogglRemoteSprigDeel