보안 및 신뢰 · DomScan 제품

타이포스쿼팅 탐지 API 레퍼런스

피싱 또는 브랜드 남용에 사용될 수 있는 타이포스쿼팅 위협 및 유사 도메인을 탐지합니다.

제공 내용

피싱 또는 브랜드 남용에 사용될 수 있는 타이포스쿼팅 위협 및 유사 도메인을 탐지합니다.

동기RESTMCPSDK대화형 도구

다음과 같은 경우 이 제품을 선택하세요

대상 사용자

인간 검토나 권한 있는 테스트를 대체하지 않고 제한된 패시브 검사를 사용해 분류 및 조사를 보강하세요.

다음과 같은 경우 이 제품을 선택하세요

유사 도메인 변형을 생성하고 도메인 상태를 확인할 때 선택하세요. unknown을 안전한 상태로 취급하지 않습니다.

제공 내용

피싱 또는 브랜드 남용에 사용될 수 있는 타이포스쿼팅 위협 및 유사 도메인을 탐지합니다.

엔드포인트

통합하기 전에 지원되는 작업, 입력, 출력, 실행 모드 및 응답 제한을 확인하세요.

GET /v1/typos API 레퍼런스 보기
GET /v1/typos/threats API 레퍼런스 보기
GET /v1/typos/report API 레퍼런스 보기
GET /v1/typos/quick API 레퍼런스 보기

크레딧 및 인증

2-18 인증 필요. 정확한 비용과 항목별 요금은 작업 레퍼런스에서 확인하세요.

작업 예시

문서화된 작업을 사용해 공개 증거를 수집, 평가, 보강, 검증, 비교, 보호 또는 모니터링하세요.

GET /v1/typos 크레딧: 2-3

쿼리 매개변수

매개변수 유형 필수
domain string 필수
check_registered boolean
기본값 false
선택 사항
limit integer
기본값 100
선택 사항
include_tld_swap boolean
기본값 true
선택 사항

응답 필드

필드 유형
domain string
name string
tld string
permutations_generated integer
permutations_checked integer
registered_typos[] object[]
registered_typos[] object
registered_typos[].classification object
registered_typos[].classification.status string
registered_typos[].classification.reason string
registered_typos[].classification.evidence object
registered_typos[].classification.evidence.source string
registered_typos[].classification.evidence.method string
registered_typos[].classification.evidence.observed_at string
registered_typos[].classification.evidence.detail string
registered_typos[].classification.checked_at string
registered_typos[].domain string
registered_typos[].name string
registered_typos[].tld string
registered_typos[].type string
registered_typos[].risk string
registered_typos[].description string
registered_typos[].registered boolean
registered_typos[].checked_at string
available_typos integer
unknown_typos integer
risk_summary object
risk_summary.critical integer
risk_summary.high integer
risk_summary.medium integer
risk_summary.low integer
threat_level string
family_summary object
family_summary.generated_by_type object
family_summary.generated_by_risk object
family_summary.registered_by_type object
family_summary.registered_by_risk object
family_summary.top_generated_family string | null
family_summary.top_registered_family string | null
family_summary.critical_or_high_generated_count integer
family_summary.critical_or_high_registered_count integer
family_summary.coverage_ratio number
family_summary.checked_count integer
family_summary.available_count integer
family_summary.unknown_count integer
family_summary.omitted_count integer
family_summary.include_tld_swap boolean
family_summary.requested_limit integer
checked_at string
check_duration_ms integer
meta object
meta.served_by string
meta.cached boolean
meta.query_time_ms integer
meta.registration_check_requested boolean
meta.registration_check_limit integer

예제 요청

curl -H "X-API-Key: $DOMSCAN_API_KEY" "https://domscan.net/v1/typos?domain=google.com&check_registered=false&limit=25&include_tld_swap=true"
const response = await fetch("https://domscan.net/v1/typos?domain=google.com&check_registered=false&limit=25&include_tld_swap=true", {
  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/typos?domain=google.com&check_registered=false&limit=25&include_tld_swap=true",
    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/typos?domain=google.com&check_registered=false&limit=25&include_tld_swap=true", 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/typos?domain=google.com&check_registered=false&limit=25&include_tld_swap=true")
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))

예제 응답

{
  "domain": "google.com",
  "name": "google",
  "tld": "com",
  "permutations_generated": 100,
  "permutations_checked": 95,
  "registered_typos": [
    {
      "domain": "gooogle.com",
      "name": "gooogle",
      "tld": "com",
      "type": "repetition",
      "risk": "high",
      "description": "Repeated character",
      "registered": true
    },
    {
      "domain": "gogle.com",
      "name": "gogle",
      "tld": "com",
      "type": "omission",
      "risk": "critical",
      "description": "Missing character",
      "registered": true
    }
  ],
  "available_typos": 50,
  "risk_summary": {
    "critical": 2,
    "high": 5,
    "medium": 10,
    "low": 28
  },
  "threat_level": "high",
  "checked_at": "2024-01-15T12:00:00Z"
}

HTTP 상태 코드

  • 200 성공
  • 400 잘못된 요청
  • 401 인증되지 않음
  • 402 결제 필요
  • 429 요청 과다

자주 묻는 질문

타이포스쿼팅 탐지 요청 및 응답 레퍼런스는 어디에서 확인할 수 있나요?

타이포스쿼팅 탐지 API 레퍼런스에서 매개변수, 응답 필드, 예시, 상태 코드 및 지원되는 작업 모드를 확인하세요.

타이포스쿼팅 탐지의 알 수 없거나 불완전한 결과는 어떻게 해석해야 하나요?

알 수 없거나 부분적인 결과는 요청된 증거를 완전히 판단할 수 없었다는 뜻입니다. 후속 의사결정에서 결과 상태, 신뢰도, 최신성 및 제한을 유지하세요.

타이포스쿼팅 탐지의 요금은 어떻게 책정되나요?

요금은 작업과 실행 모드에 따라 달라집니다. 현재 크레딧 비용, 인증 요구 사항 및 항목별 규칙은 엔드포인트 레퍼런스에서 확인하세요.

다음 회사의 사람들이 사용합니다

InstantOutseerMongoDBRespondentSage Expense ManagementInstantlyD.R. HortonWhatConvertsAdobeLLM Pulse