개발자 참고자료

도메인 가용성 확인

DomScan API로 도메인 이름이 하나 이상의 TLD에서 가능한지 확인합니다.

도메인 가용성 확인

도메인 이름이 하나 이상의 TLD에서 가능한지 확인합니다.

GET /v1/status

쿼리 매개변수

매개변수유형설명
name 필수 string TLD 없는 도메인 레이블(예:
tlds 필수 string 확인할 TLD의 쉼표로 구분된 목록(최대 50개)
prefer_cache 선택 사항 boolean token 가능할 때 캐시된 결과 사용(권장)

예제 요청

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",
                "worker_version": "2.14.0"
                }
                }

응답 필드

필드 유형
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