Riferimento per sviluppatori

Somiglianza di dominio

Consulta la documentazione API di Somiglianza di dominio, i parametri delle richieste, i campi delle risposte, gli esempi di codice e la gestione degli errori per le integrazioni DomScan.

Somiglianza di dominio

Confrontate due domini per somiglianza visiva e testuale utilizzando molteplici algoritmi inclusa la distanza di Levenshtein, la somiglianza di Jaro-Winkler e l'analisi visiva degli omoglifi. Essenziale per rilevare typosquatting, usurpazione di identità di brand e domini di phishing.

GET /v1/similarity

Parametri di query

ParametroTipoDescrizione
domain1 obbligatorio string Primo dominio (tipicamente il dominio legittimo)
domain2 obbligatorio string Secondo dominio (potenzialmente dominio sospetto)

Algoritmi di somiglianza

AlgoritmoDescrizione
levenshteinDistanza di modifica normalizzata (0-1)
jaro_winklerSomiglianza di stringa ponderata per prefisso
visualRilevamento di caratteri omoglifi/lookalike

Richiesta di esempio

curl -H "X-API-Key: your-api-key" "https://domscan.net/v1/similarity?domain1=paypal.com&domain2=paypa1.com"
import requests

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

# Check multiple suspicious domains
legit = "paypal.com"
suspects = ["paypa1.com", "paypaI.com", "pаypal.com"]  # Note: last one has Cyrillic 'а'

for suspect in suspects:
    response = domscan.get(
        "https://domscan.net/v1/similarity",
        params={"domain1": legit, "domain2": suspect}
    )
    data = response.json()
    print(f"{suspect}: {data['typosquatting_risk']} risk (visual: {data['similarity']['visual']:.2f})")

Risposta di esempio

{
  "domain1": "paypal.com",
  "domain2": "paypa1.com",
  "similarity": {
    "levenshtein": 0.86,
    "jaro_winkler": 0.93,
    "visual": 0.95
  },
  "is_similar": true,
  "typosquatting_risk": "high",
  "homoglyphs_detected": ["l → 1"],
  "risk_factors": ["character_substitution", "high_visual_similarity"]
}

Campi di risposta

Campo Tipo
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

Utilizzato da persone di aziende straordinarie

InstantOutseerMongoDBRespondentSage Expense ManagementInstantlyD.R. HortonWhatConvertsAdobeMotionElementsLLM Pulse