API 参考

域名相似度 API 参考

根据名称模式和关键词查找与给定域名相似的域名。 使用此参考选择操作,并集成其文档化的响应契约。

操作

GET /v1/similarity 查看 API 参考

GET /v1/similarity

操作: getDomainSimilarity 积分和身份验证: 2 需要身份验证
GET /v1/similarity 积分: 2

查询参数

参数 类型 必需
domain1 string 必需
domain2 string 必需

响应字段

字段 类型
domain1 string
domain2 string
overall_similarity number
risk_level string
analysis object
analysis.levenshtein_distance integer
analysis.levenshtein_similarity number
analysis.jaro_winkler_similarity number
analysis.visual_similarity number
analysis.keyboard_distance number
analysis.common_prefix_length integer
analysis.common_suffix_length integer
matching_methods[] string[]
is_potential_typosquat boolean
checked_at string
meta object

请求示例

curl -H "X-API-Key: $DOMSCAN_API_KEY" "https://domscan.net/v1/similarity?domain1=example.com&domain2=example.org"
const response = await fetch("https://domscan.net/v1/similarity?domain1=example.com&domain2=example.org", {
  headers: { "X-API-Key": process.env.DOMSCAN_API_KEY },
});
const data = await response.json();
console.log(data);
import os
import requests

response = requests.get(
    "https://domscan.net/v1/similarity?domain1=example.com&domain2=example.org",
    headers={"X-API-Key": os.environ["DOMSCAN_API_KEY"]},
)
print(response.json())
package main

import (
	"fmt"
	"io"
	"net/http"
	"os"
)

func main() {
	req, err := http.NewRequest(http.MethodGet, "https://domscan.net/v1/similarity?domain1=example.com&domain2=example.org", nil)
	if err != nil {
		panic(err)
	}
	req.Header.Set("X-API-Key", os.Getenv("DOMSCAN_API_KEY"))

	resp, err := http.DefaultClient.Do(req)
	if err != nil {
		panic(err)
	}
	defer resp.Body.Close()

	data, err := io.ReadAll(resp.Body)
	if err != nil {
		panic(err)
	}
	fmt.Println(resp.Status, string(data))
}
require "json"
require "net/http"

uri = URI("https://domscan.net/v1/similarity?domain1=example.com&domain2=example.org")
request = Net::HTTP::Get.new(uri)
request["X-API-Key"] = ENV.fetch("DOMSCAN_API_KEY")

response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) do |http|
  http.request(request)
end
puts JSON.pretty_generate(JSON.parse(response.body))

响应示例

{
  "domain1": "example.com",
  "domain2": "exampel.com",
  "overall_similarity": 79,
  "risk_level": "medium",
  "analysis": {
    "levenshtein_distance": 2,
    "levenshtein_similarity": 71,
    "jaro_winkler_similarity": 97,
    "visual_similarity": 71,
    "keyboard_distance": 6.08,
    "common_prefix_length": 5,
    "common_suffix_length": 0
  },
  "matching_methods": [
    "jaro-winkler",
    "common-prefix",
    "same-tld"
  ],
  "is_potential_typosquat": true,
  "checked_at": "2026-10-09T10:15:30.000Z",
  "meta": {
    "served_by": "pop=MAD country=ES"
  }
}

HTTP 状态码

  • 200 成功
  • 400 请求错误
  • 401 未授权
  • 402 需要付款
  • 429 请求过多

参考资源