Watch-IP

가입 결정에 정보 더하기

이메일 검사와 가입하는 IP의 네트워크 지표를 결합해 가입을 자동으로 진행할지 심사로 보낼지 결정하세요 — 백엔드에서 POST /v1/signup/check로 계산하거나, 초기 피드백을 위해 브라우저 측 검사를 조합할 수 있습니다.

제출 시 서버 사이드 호출 한 번

가입 양식이 제출되면 백엔드에서 주소, 방문자의 IP, 선택적으로 User-Agent를 넣어 POST /v1/signup/check를 호출하세요. 전체 이메일 검사(일회용 도메인, 메일 서버 부재, 오타, 역할 주소)를 실행하고, 보안 데이터가 포함된 요금제에서는 IP의 VPN/Tor/데이터센터/위협 지표를 조회하며, 이메일 도메인이 얼마나 최근에 등록되었는지 확인한 뒤, 사유와 함께 accept/review/reject 판정이 포함된 0–100 점수를 반환합니다. 시크릿 키로 서버에서 실행되므로 방문자가 위조하거나 건너뛸 수 없습니다.

양식 내 초기 피드백

제출 전 더 나은 경험을 위해 양식 자체의 JavaScript에서 공개 가능 키로 POST /v1/email/validate를 호출하세요: invalid_syntax나 disposable_domain에는 구체적인 메시지를 보여 주고, 오타에는 didYouMean을 클릭 한 번으로 적용하는 수정으로 제안하세요. 이는 UX 보조 수단이지 시행 수단이 아닙니다 — 누구나 JavaScript를 끌 수 있습니다.

네트워크 지표

가입 검사의 ip.security(브라우저에서는 GET /v1/geo의 security 객체)는 접속 IP의 isVpn, isTor, isDatacenter, isThreat를 보고합니다. 이는 목록 기반 지표이지 판정이 아닙니다 — false는 사용 가능한 데이터에 일치 항목이 없다는 뜻이지, 깨끗한 연결로 확인되었다는 뜻이 아닙니다. 보안 데이터가 없는 요금제에서는 가입 점수가 이메일 신호만 사용하며 사유 ip_security_unavailable로 이를 알립니다.

차단만 하지 말고 심사로 보내세요

reject는 강한 신호로, review는 자동 거부가 아니라 추가 단계 — 확인 이메일, CAPTCHA, 무료 크레딧 지급 전 수동 확인 — 의 이유로 다루세요. 구체적인 조치는 자체 정책에 두세요. 점수의 가중치가 문서화되어 있으므로 가입이 왜 그런 결과가 되었는지 확인할 수 있습니다.

중복 계정

각 계정과 함께 canonicalEmail(+태그를 제거하고, Gmail은 점도 제거한 주소)을 저장하고 가입 시 이를 조회해 같은 사람이 여러 체험 계정을 만드는 것을 찾아내세요. Watch-IP는 고객별 가입 기록을 보관하지 않으므로, 이 조회는 자체 데이터베이스에서 이루어집니다.

보장하지 않는 것

이메일, 도메인 경과 기간, 네트워크 신호를 어떻게 조합해도 계정이 부정하다는 것을 입증하거나 체험판 악용을 확실히 막을 수는 없습니다 — 지원이나 프로모션 자원을 투입하기 전에 어떤 가입을 더 자세히 볼지 좁혀 줄 뿐입니다. 어떤 검사도 메일함에 접속하지 않으므로 accept는 작동이 확인된 주소가 아닙니다.

관련 페이지