開発者向けリファレンス
一括ドメインチェック
DomScan APIで複数のドメイン名の可用性を一度にチェックします。リクエストあたり最大 50 ドメインをサポートしています。
一括ドメインチェック
複数のドメイン名の可用性を一度にチェックします。リクエストあたり最大 50 ドメインをサポートしています。
POST
/v1/status/bulk
リクエストボディ
| フィールド | タイプ | 説明 |
|---|---|---|
| domains 必須 | string[] | チェックする完全なドメイン名の配列 |
| options.prefer_cache オプション | boolean | 利用可能な場合はキャッシュされた結果を使用 |
リクエスト例
curl -H "X-API-Key: your-api-key" -X POST "https://domscan.net/v1/status/bulk" \
-H "Content-Type: application/json" \
-d '{"domains": ["mybrand.com", "mybrand.io"], "options": {"prefer_cache": true}}'
const domscanFetch = (url, options = {}) =>
fetch(url, {
...options,
headers: { ...options.headers, "X-API-Key": "your-api-key" },
});
const response = await domscanFetch("https://domscan.net/v1/status/bulk", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
domains: ["mybrand.com", "mybrand.io"],
options: { prefer_cache: true }
})
});
const data = await response.json();
console.log(data.results);
import requests
domscan = requests.Session()
domscan.headers.update({"X-API-Key": "your-api-key"})
payload = {
"domains": ["mybrand.com", "mybrand.io"],
"options": {"prefer_cache": True}
}
response = domscan.post(
"https://domscan.net/v1/status/bulk",
json=payload,
timeout=10
)
print(response.json()["results"])
package main
import (
"bytes"
"encoding/json"
"fmt"
"net/http"
"io"
"os"
)
func domscanPost(url, contentType string, body io.Reader) (*http.Response, error) {
request, err := http.NewRequest(http.MethodPost, url, body)
if err != nil {
return nil, err
}
request.Header.Set("Content-Type", contentType)
request.Header.Set("X-API-Key", os.Getenv("DOMSCAN_API_KEY"))
return http.DefaultClient.Do(request)
}
func main() {
payload := map[string]any{
"domains": []string{"mybrand.com", "mybrand.io"},
"options": map[string]bool{"prefer_cache": true},
}
body, _ := json.Marshal(payload)
resp, err := domscanPost("https://domscan.net/v1/status/bulk", "application/json", bytes.NewReader(body))
if err != nil {
panic(err)
}
defer resp.Body.Close()
fmt.Println(resp.Status)
}
require 'net/http'
require 'json'
uri = URI("https://domscan.net/v1/status/bulk")
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Post.new(uri)
request["X-API-Key"] = ENV.fetch("DOMSCAN_API_KEY")
request["Content-Type"] = "application/json"
request.body = {
domains: ["mybrand.com", "mybrand.io"],
options: { prefer_cache: true }
}.to_json
response = http.request(request)
data = JSON.parse(response.body)
puts data["results"]
レスポンスフィールド
| フィールド | タイプ |
|---|---|
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 |
レスポンス例
{
"results": [
{
"domain": "example.com",
"tld": "com",
"available": false,
"source": "rdap",
"latency_ms": 45
},
{
"domain": "startup.io",
"tld": "io",
"available": true,
"source": "rdap",
"latency_ms": 67
},
{
"domain": "brand.ai",
"tld": "ai",
"available": true,
"source": "cache",
"latency_ms": 2
}
],
"meta": {
"total_checked": 3,
"available_count": 2,
"duration_ms": 120
}
}