HubSpot
Email checker for HubSpot. Verify contacts and clean email lists in HubSpot CRM.
연락처가 생성되거나 업데이트될 때 이메일 주소를 자동으로 검증하여 HubSpot CRM을 깨끗하게 유지하고 리드 품질을 개선하세요.
개요
EmailVerify를 HubSpot과 통합하면 다음을 수행할 수 있습니다:
- 리드 즉시 자격 부여 - 연락처가 CRM에 들어올 때 이메일 검증
- 데이터 품질 유지 - 연락처 데이터베이스를 깨끗하게 유지
- 전달률 향상 - 마케팅 이메일이 실제 사람에게 도달하도록 보장
- 반송률 감소 - 캠페인 전에 무효한 주소 필터링
통합 방법
| 방법 | 적합 대상 | 복잡도 |
|---|---|---|
| 워크플로 | 자동화된 검증 | 낮음 |
| 커스텀 코드 | 고급 로직 | 보통 |
| Zapier/Make | 노코드 자동화 | 낮음 |
| 직접 API | 완전한 제어 | 높음 |
방법 1: HubSpot 워크플로 (권장)
웹훅과 함께 HubSpot 워크플로를 사용하여 이메일을 자동으로 검증하세요.
단계 1: 커스텀 속성 생성
먼저 검증 결과를 저장할 속성을 생성하세요:
- Settings → Properties 이동
- Create property 클릭
- 다음 속성 생성:
| 속성 이름 | 유형 | 필드 유형 |
|---|---|---|
| Email Verification Status | Single-line text | Text |
| Email Verification Score | Number | Number |
| Email Verified Date | Date | Date picker |
| Is Disposable Email | Single checkbox | Checkbox |
단계 2: 워크플로 생성
- Automation → Workflows 이동
- Create workflow → From scratch 클릭
- Contact-based 워크플로 선택
- 등록 트리거 설정:
Trigger: Contact is created
OR
Trigger: Email is updated단계 3: 웹훅 액션 추가
- 액션 추가: Trigger a webhook
- 웹훅 구성:
Method: POST
URL:
https://api.emailverify.ai/v1/verifyRequest Headers:
Authorization: Bearer YOUR_API_KEY
Content-Type: application/jsonRequest Body:
{
"email": "{{contact.email}}"
}단계 4: 응답 처리
응답을 처리하기 위해 Custom code 액션 추가:
const response = JSON.parse(event.webhook.response);
// Map verification results to contact properties
const outputFields = {
email_verification_status: response.status,
email_verification_score: response.score,
email_verified_date: new Date().toISOString(),
is_disposable_email: response.result.disposable
};
// Return properties to update
callback(outputFields);단계 5: 결과별 분기
검증 상태에 따른 분기 로직 추가:
If email_verification_status equals "valid"
→ Continue with lead nurturing
→ Add to marketing list
If email_verification_status equals "invalid"
→ Remove from marketing lists
→ Update lifecycle stage to "Other"
If email_verification_status equals "unknown"
→ Add to "Needs Review" list방법 2: Operations Hub를 사용한 커스텀 통합
고급 사용 사례의 경우 HubSpot Operations Hub와 커스텀 코드를 사용하세요:
커스텀 코드 액션 생성
const axios = require('axios');
exports.main = async (event, callback) => {
const email = event.inputFields['email'];
try {
const response = await axios.post(
'https://api.emailverify.ai/v1/verify',
{ email },
{
headers: {
'Authorization': `Bearer ${process.env.EMAILVERIFY_API_KEY}`,
'Content-Type': 'application/json'
}
}
);
const result = response.data;
callback({
outputFields: {
verification_status: result.status,
verification_score: result.score,
is_deliverable: result.result.deliverable,
is_disposable: result.result.disposable,
is_role_based: result.result.role,
is_free_email: result.result.free
}
});
} catch (error) {
callback({
outputFields: {
verification_status: 'error',
error_message: error.message
}
});
}
};환경 시크릿 설정
- Settings → Integrations → Private Apps 이동
- 프라이빗 앱 생성 또는 기존 앱 사용
- 시크릿 추가:
EMAILVERIFY_API_KEY
방법 3: Zapier 통합
노코드 구현을 위해 Zapier를 사용하세요:
Zap 구성
Trigger: HubSpot → New Contact
↓
Action: Webhooks → POST to EmailVerify
↓
Action: HubSpot → Update Contact
Configuration:
- Email: {{Contact Email}}
- Properties to update:
- email_verification_status: {{status}}
- email_verification_score: {{score}}자세한 지침은 Zapier 통합 가이드를 참조하세요.
사용 사례
1. 리드 스코어링 향상
이메일 품질을 리드 스코어링 모델에 추가하세요:
Lead Score Adjustments:
- Valid business email: +15 points
- Valid free email: +5 points
- Disposable email: -20 points
- Role-based email: -5 points
- Invalid email: -50 points워크플로 구현:
If email_verification_status = "valid"
AND is_disposable_email = false
AND is_free_email = false
→ Add 15 to HubSpot Score
If is_disposable_email = true
→ Add -20 to HubSpot Score2. 마케팅 목록 위생
캠페인 전 목록 정리:
Create Active List:
- email_verification_status = "valid"
- is_disposable_email = false
- Marketing contact = true
Exclude from campaigns:
- email_verification_status = "invalid"
- OR is_disposable_email = true3. 영업팀 알림
고품질 리드 도착 시 영업팀에 알림:
If email_verification_status = "valid"
AND email_verification_score > 0.9
AND is_free_email = false
→ Send internal notification
→ Create task for sales rep4. 폼 제출 검증
폼 제출에서 이메일 검증:
Workflow Trigger: Form submission on any form
Actions:
1. Verify email with EmailVerify
2. If valid → Continue normal flow
3. If invalid → Send "please use valid email" notification대량 검증
기존 연락처에 대해 대량 검증 워크플로 생성:
옵션 1: 예약된 워크플로
Trigger: Scheduled (weekly)
Enrollment: Contacts where
- email_verified_date is unknown
- OR email_verified_date is more than 90 days ago
- Limit: 1000 contacts per run옵션 2: 내보내기 및 가져오기
- 연락처를 CSV로 내보내기
- EmailVerify 대량 API 또는 대시보드 사용
- 결과를 HubSpot에 다시 가져오기
// Bulk verification script
const contacts = await hubspot.crm.contacts.getAll();
const emails = contacts.map(c => c.properties.email);
// Submit to EmailVerify bulk API
const job = await emailVerify.verifyBulk(emails);
// Wait for completion
const results = await emailVerify.getBulkResults(job.job_id);
// Update HubSpot contacts
for (const result of results) {
await hubspot.crm.contacts.update(
result.email,
{
properties: {
email_verification_status: result.status,
email_verification_score: result.score
}
}
);
}커스텀 연락처 속성 참조
완전한 통합을 위해 다음 속성을 생성하세요:
| 속성 | 내부 이름 | 유형 | 옵션 |
|---|---|---|---|
| Email Verification Status | email_verification_status | Dropdown | valid, invalid, unknown, accept_all |
| Verification Score | email_verification_score | Number | 0-1 |
| Verified Date | email_verified_date | Date | - |
| Is Disposable | is_disposable_email | Checkbox | - |
| Is Role-Based | is_role_based_email | Checkbox | - |
| Is Free Provider | is_free_email_provider | Checkbox | - |
| Is Catch-All Domain | is_catchall_domain | Checkbox | - |
리포팅 및 대시보드
검증 리포트 생성
이메일 품질을 추적하기 위한 리포트 작성:
연락처 품질 리포트:
- 검증 상태별 총 연락처
- 검증 점수 분포
- 일회용 이메일 비율
리드 소스 품질:
- 리드 소스별 검증 상태
- 채널 간 품질 비교
추세 분석:
- 시간 경과에 따른 무효한 이메일
- 정리 후 개선 상황
대시보드 위젯
Widget 1: Email Quality Pie Chart
- Segments: valid, invalid, unknown
- Filter: Created in last 30 days
Widget 2: Verification Score Histogram
- X-axis: Score ranges (0-0.5, 0.5-0.8, 0.8-1.0)
- Y-axis: Contact count
Widget 3: Disposable Email Trend
- Line chart over time
- Goal: Reduce to less than 5%모범 사례
1. 진입 지점에서 검증
연락처가 생성될 때 즉시 이메일 검증:
- 폼 제출
- 가져오기 프로세스
- API 통합
- 수동 입력
2. 정기적으로 재검증
이메일 유효성은 시간이 지나면서 변합니다:
- 활성 연락처에 대해 월별 재검증 설정
- 주요 캠페인 전에 재검증
- 검증 날짜를 추적하여 오래된 데이터 식별
3. Unknown 결과 처리
unknown 상태 이메일의 경우:
- 즉시 제거하지 마세요
- 검토 대상으로 플래그
- 24시간 후 재검증 시도
- 백업 신호로 발신자 평판 데이터 사용
4. 품질별 세분화
이메일 품질을 기반으로 스마트 목록 생성:
High Quality:
status = "valid" AND score > 0.8 AND disposable = false
Medium Quality:
status = "valid" AND (score <= 0.8 OR disposable = true)
Low Quality:
status = "invalid" OR status = "unknown"5. 발신자 평판 보호
무효한 이메일로 절대 발송하지 마세요:
- 모든 마케팅 목록에서
invalid상태 제외 - 캠페인 후 반송률 모니터링
- 나쁜 데이터의 출처 조사
문제 해결
워크플로가 실행되지 않음
- 등록 기준 확인
- 워크플로가 켜져 있는지 확인
- 충돌하는 워크플로 확인
- 워크플로 오류 로그 검토
웹훅 오류
- API 키가 올바른지 확인
- 웹훅 URL에 접근 가능한지 확인
- 워크플로 히스토리에서 요청/응답 검토
- 먼저 Postman에서 API 호출 테스트
속성이 업데이트되지 않음
- 속성 내부 이름이 정확히 일치하는지 확인
- 커스텀 코드가 올바른 필드 이름을 반환하는지 확인
- 속성 업데이트에 대한 사용자 권한 확인