什麼是 SendGrid?
SendGrid 是領先的雲端信件傳送平台,受到全球超過 80,000 家公司信賴,包括 Uber、Spotify 和 Airbnb。成立於 2009 年,現為 Twilio 旗下公司,SendGrid 專精於交易型和行銷信件傳送,擁有業界領先的基礎設施。
核心功能:
- 交易型信件:傳送密碼重設、訂單確認、通知和帳戶更新,確保可靠送達
- 行銷活動:使用拖放編輯器和 A/B 測試建立並發送促銷信件
- 信件 API:業界標準 REST API 和 SMTP 中繼,實現無縫整合
- 送達率最佳化:進階分析、專用 IP 位址和信譽監控
- 範本管理:動態信件範本,支援個人化和條件邏輯
- Webhook 整合:即時事件通知,追蹤退信、開信、點擊和取消訂閱
為什麼開發者和企業選擇 SendGrid:
- 99.99% 正常運行 SLA - 關鍵任務信件可靠性
- 全球基礎設施 - 從最接近收件者的資料中心傳送信件
- 開發者友善 API - 完善的 REST API 文件,支援 7 種以上語言的 SDK
- 專業送達率團隊 - 專職專家協助最大化收件匣送達率
- 全面分析 - 即時追蹤送達率指標、互動和寄件者信譽
- 靈活定價 - 提供免費方案,按使用量付費模式
熱門使用情境:
- SaaS 應用程式:用戶引導信件、功能公告、訂閱續約
- 電子商務:訂單確認、出貨通知、購物車遺棄挽回
- 金融服務:交易警示、帳戶報表、安全通知
- 醫療保健:預約提醒、檢驗結果、病患通訊
- 教育:課程註冊確認、作業通知、成績報告
SendGrid 每月處理超過 1,000 億封信件,平均送達率超過 95%。然而,這項令人印象深刻的表現完全取決於一個關鍵因素:信件列表品質。無效的信箱地址會破壞您的寄件者信譽並降低送達率——這正是我們的信箱驗證服務成為必需品的原因。
為什麼要將 BillionVerify 與 SendGrid 整合?
SendGrid 設計用於可靠的信件傳送,但它無法在發送前驗證信箱地址是否有效。如果您的列表包含無效地址,您將面臨毀滅性後果:
- ❌ 寄件者信譽受損:高退信率會破壞您的 SendGrid 寄件者分數,導致所有未來信件(即使是寄給有效收件者)都落入垃圾信件匣
- ❌ 送達率崩潰:如果退信率超過 5%,Gmail 和 Outlook 等 ISP 會將您的域名標記為不可靠
- ❌ 浪費預算:您為永遠無法送達的信件支付 SendGrid 費用
- ❌ 黑名單風險:重複退信可能導致您的 IP 位址或域名被主要 ISP 列入黑名單
- ❌ 分析數據不準確:無效信箱會扭曲您的互動指標,使 A/B 測試不可靠
- ❌ 客戶體驗問題:資料庫中的無效信箱表示真實客戶無法收到重要的交易訊息
SendGrid 信譽問題
SendGrid 根據以下因素為每位寄件者分配 信譽分數(0-100):
- 退信率(目標:<5%,理想 <1%)
- 垃圾信件投訴率(目標:<0.1%)
- 互動率(開信、點擊)
- 列表品質信號
對未驗證列表發送一次包含 10-15% 無效信箱的活動,可能會 永久損害您的寄件者信譽,需要數週或數月才能恢復——如果恢復是可能的話。
解決方案
BillionVerify + SendGrid 整合可協助您:
- ✅ 發送前驗證:在信箱進入 SendGrid 聯絡人資料庫前進行驗證
- ✅ 保護寄件者信譽:透過 99.9% 驗證準確率將退信率維持在 1% 以下
- ✅ 最大化送達率:確保您的交易型和行銷信件送達收件匣
- ✅ 清理現有列表:在啟動活動前批次驗證整個 SendGrid 聯絡人資料庫
- ✅ 自動化驗證:將驗證整合到註冊流程和用戶引導過程中
- ✅ 降低成本:只發送給有效、可送達的信箱地址
運作方式
整合遵循以下工作流程:
- 用戶操作:用戶註冊您的服務或輸入信箱
- 預先驗證:BillionVerify 在信箱加入 SendGrid 前進行驗證
- 多層驗證:我們的 API 執行全面檢查:
- 語法驗證(RFC 5322 合規性)
- DNS 查詢(域名存在且正確配置)
- MX 記錄驗證(郵件伺服器存在並接受郵件)
- SMTP 握手(信箱存在且運作中)
- 進階風險偵測(臨時、全接收、角色型信箱)
- 結果處理:
- ✅ 有效信箱:發送至 SendGrid 進行傳送
- ❌ 無效信箱:在發送前拒絕或標記
- ⚠️ 風險信箱:標記以供人工審查或二次驗證
- SendGrid 傳送:僅透過 SendGrid 發送已驗證的高品質信箱
整合方法
方法 1:發送前 API 驗證(建議)
在加入 SendGrid 之前 驗證信箱。這是保護寄件者信譽最有效的方法。
前置需求
- BillionVerify API 金鑰(在此取得)
- SendGrid API 金鑰
- 基礎程式設計知識(JavaScript、Python、PHP 或 Ruby)
架構
使用者註冊表單
↓
BillionVerify API(驗證信箱)
↓
有效?→ SendGrid API(新增聯絡人 + 發送)
無效?→ 拒絕或記錄
JavaScript/Node.js 範例
// 範例:透過 SendGrid 發送歡迎訊息前驗證信箱
const axios = require('axios');
const sgMail = require('@sendgrid/mail');
sgMail.setApiKey(process.env.SENDGRID_API_KEY);
async function sendWelcomeEmail(email, name) {
try {
// 步驟 1:使用 BillionVerify 驗證信箱
const verificationResult = await axios.post(
'https://api.billionverify.com/v1/verify',
{ email },
{
headers: {
'Authorization': `Bearer ${process.env.BILLIONVERIFY_API_KEY}`,
'Content-Type': 'application/json'
}
}
);
const { status, risk_level, is_disposable, is_catch_all, is_role } = verificationResult.data;
// 步驟 2:僅當信箱有效且低風險時發送
if (status === 'valid' && risk_level === 'low' && !is_disposable) {
// 信箱可安全發送
const msg = {
to: email,
from: 'welcome@yourdomain.com',
subject: '歡迎加入我們的服務!',
text: `您好 ${name},歡迎來到我們的平台!`,
html: `<h1>您好 ${name}</h1><p>歡迎來到我們的平台!</p>`,
};
await sgMail.send(msg);
console.log(`✅ 歡迎信件已發送至 ${email}`);
// 可選:新增至 SendGrid 行銷聯絡人
await addToSendGridContacts(email, name, {
email_verified: true,
risk_level: 'low'
});
return { success: true, sent: true };
} else if (status === 'invalid') {
// 信箱無效 - 不發送
console.log(`❌ 信箱 ${email} 無效。不發送。`);
return { success: false, reason: 'invalid_email' };
} else if (is_disposable) {
// 臨時信箱 - 封鎖或標記
console.log(`⚠️ 信箱 ${email} 是臨時信箱。標記中。`);
return { success: false, reason: 'disposable_email' };
} else {
// 風險信箱 - 標記以供審查
console.log(`⚠️ 信箱 ${email} 有風險(${risk_level})。需要人工審查。`);
return { success: false, reason: 'risky_email', risk_level };
}
} catch (error) {
console.error('驗證或發送錯誤:', error);
return { success: false, reason: 'api_error' };
}
}
async function addToSendGridContacts(email, name, customFields) {
const data = {
contacts: [
{
email: email,
first_name: name.split(' ')[0],
last_name: name.split(' ')[1] || '',
custom_fields: customFields
}
]
};
await axios.put(
'https://api.sendgrid.com/v3/marketing/contacts',
data,
{
headers: {
'Authorization': `Bearer ${process.env.SENDGRID_API_KEY}`,
'Content-Type': 'application/json'
}
}
);
}
// 使用範例
app.post('/api/signup', async (req, res) => {
const { email, name } = req.body;
const result = await sendWelcomeEmail(email, name);
if (result.success) {
res.json({ message: '帳戶已建立並發送歡迎信件!' });
} else {
res.status(400).json({
error: '無效的信箱地址',
reason: result.reason
});
}
});
Python 範例
import requests
from sendgrid import SendGridAPIClient
from sendgrid.helpers.mail import Mail
BILLIONVERIFY_API_KEY = 'your_billionverify_api_key'
SENDGRID_API_KEY = 'your_sendgrid_api_key'
def send_welcome_email(email, name):
# 步驟 1:使用 BillionVerify 驗證信箱
verification_response = requests.post(
'https://api.billionverify.com/v1/verify',
json={'email': email},
headers={
'Authorization': f'Bearer {BILLIONVERIFY_API_KEY}',
'Content-Type': 'application/json'
}
)
result = verification_response.json()
# 步驟 2:僅當有效且低風險時發送
if result['status'] == 'valid' and result['risk_level'] == 'low' and not result.get('is_disposable'):
# 可安全發送
message = Mail(
from_email='welcome@yourdomain.com',
to_emails=email,
subject=f'歡迎 {name}!',
html_content=f'<h1>您好 {name}</h1><p>歡迎來到我們的平台!</p>'
)
try:
sg = SendGridAPIClient(SENDGRID_API_KEY)
response = sg.send(message)
print(f"✅ 信件已發送至 {email},狀態碼:{response.status_code}")
# 可選:新增至行銷聯絡人
add_to_sendgrid_contacts(email, name, {
'email_verified': True,
'risk_level': 'low'
})
return {'success': True, 'sent': True}
except Exception as e:
print(f"發送信件錯誤:{e}")
return {'success': False, 'reason': 'sendgrid_error'}
elif result['status'] == 'invalid':
print(f"❌ 信箱 {email} 無效。不發送。")
return {'success': False, 'reason': 'invalid_email'}
elif result.get('is_disposable'):
print(f"⚠️ 信箱 {email} 是臨時信箱。封鎖中。")
return {'success': False, 'reason': 'disposable_email'}
else:
print(f"⚠️ 信箱 {email} 有風險。需要人工審查。")
return {'success': False, 'reason': 'risky_email'}
def add_to_sendgrid_contacts(email, name, custom_fields):
data = {
'contacts': [
{
'email': email,
'first_name': name.split(' ')[0],
'last_name': ' '.join(name.split(' ')[1:]) if len(name.split(' ')) > 1 else '',
'custom_fields': custom_fields
}
]
}
requests.put(
'https://api.sendgrid.com/v3/marketing/contacts',
json=data,
headers={
'Authorization': f'Bearer {SENDGRID_API_KEY}',
'Content-Type': 'application/json'
}
)
方法 2:Webhook 事件驗證
根據 SendGrid webhook 事件(退信、封鎖、垃圾信件投訴)驗證信箱。
SendGrid Webhook 設定
在 SendGrid 中配置 Webhook:
- 前往 設定 → 郵件設定 → 事件 Webhook
- 輸入您的 webhook URL:
https://yourdomain.com/webhook/sendgrid - 選擇事件:退信、捨棄、垃圾信件投訴、封鎖
- 儲存設定
Webhook 處理器範例(Node.js):
const express = require('express');
const axios = require('axios');
const app = express();
app.use(express.json());
app.post('/webhook/sendgrid', async (req, res) => {
const events = req.body;
for (const event of events) {
const { event: eventType, email } = event;
// 處理退信和封鎖
if (['bounce', 'dropped', 'blocked'].includes(eventType)) {
console.log(`⚠️ SendGrid 事件:${email} 的 ${eventType}`);
// 驗證信箱以檢查是否永久無效
const verificationResult = await axios.post(
'https://api.billionverify.com/v1/verify',
{ email },
{
headers: {
'Authorization': `Bearer ${process.env.BILLIONVERIFY_API_KEY}`,
'Content-Type': 'application/json'
}
}
);
const { status } = verificationResult.data;
if (status === 'invalid') {
// 加入永久封鎖列表
await addToSuppressionList(email, 'invalid_email');
console.log(`❌ 信箱 ${email} 已加入封鎖列表`);
}
}
}
res.status(200).send('OK');
});
async function addToSuppressionList(email, reason) {
// 加入 SendGrid 封鎖列表
await axios.post(
'https://api.sendgrid.com/v3/suppression/bounces',
{
emails: [
{
email: email,
reason: reason
}
]
},
{
headers: {
'Authorization': `Bearer ${process.env.SENDGRID_API_KEY}`,
'Content-Type': 'application/json'
}
}
);
// 同時記錄到您的資料庫以進行分析
// await logInvalidEmail(email, reason);
}
app.listen(3000, () => console.log('Webhook 伺服器運行於連接埠 3000'));
方法 3:批次列表驗證
在啟動活動前清理整個 SendGrid 聯絡人資料庫。
批次驗證工作流程
匯出 SendGrid 聯絡人:
# 透過 SendGrid UI 或 API 匯出聯絡人 # 設定 → 行銷 → 聯絡人 → 匯出
上傳至 BillionVerify:
- 前往批次信箱驗證
- 上傳 CSV 檔案(支援最多 100 萬個信箱)
- 等待驗證(每小時超過 100,000 個信箱)
下載結果:
- 下載包含結果的已驗證 CSV
- 結果包含:status、risk_level、is_disposable、is_catch_all、is_role
重新匯入至 SendGrid:
// 僅將有效信箱匯入 SendGrid const validEmails = verifiedData.filter( row => row.status === 'valid' && row.risk_level === 'low' ); await axios.put( 'https://api.sendgrid.com/v3/marketing/contacts', { contacts: validEmails }, { headers: { 'Authorization': `Bearer ${process.env.SENDGRID_API_KEY}`, 'Content-Type': 'application/json' } } );
主要功能
🔄 即時註冊驗證
使用我們的信箱驗證 API 在用戶註冊服務時即時驗證信箱:
- 防止無效信箱進入您的資料庫
- 即時向用戶顯示錯誤訊息
- 從第一天起保護您的 SendGrid 寄件者信譽
- 將退信率降低至接近零(<0.5%)
使用情境:用戶註冊、電子報註冊、結帳表單
🧹 活動前列表清理
使用批次信箱驗證在啟動 SendGrid 活動前清理聯絡人列表:
- 上傳包含最多 100 萬個信箱的 CSV 檔案
- 每小時處理超過 100,000 個信箱
- 下載包含詳細驗證結果的清理列表
- 移除無效、風險和臨時信箱
使用情境:每月電子報活動、產品發表、季節促銷
⚡ 交易型信件保護
在透過 SendGrid 發送關鍵交易訊息前驗證信箱:
- 密碼重設信件
- 訂單確認
- 帳戶通知
- 出貨更新
- 付款收據
使用情境:電子商務、SaaS 應用程式、金融服務
🎯 進階風險偵測
透過專門的偵測功能超越基本驗證:
- 全接收偵測:識別接受任何信箱地址的全接收域名
- 臨時信箱偵測:封鎖臨時信箱(mailinator.com、guerrillamail.com、10minutemail.com)
- 角色型帳戶偵測:標記一般信箱(info@、support@、admin@、noreply@)
- 語法驗證:確保 RFC 5322 合規性
- MX/DNS 驗證:驗證郵件伺服器配置
使用情境:詐騙預防、潛在客戶品質評分、用戶驗證
🔔 Webhook 事件回應
自動重新驗證被 SendGrid 退信或封鎖的信箱:
- 即時 webhook 整合
- 自動封鎖列表更新
- 退信分類和處理
- 垃圾信件投訴處理
使用情境:持續列表清理、信譽保護
定價
BillionVerify 提供靈活的定價方案,隨著您的 SendGrid 使用量擴展:
| 方案 | 點數 | 價格 | 每封信箱價格 | 最適合 |
|---|---|---|---|---|
| 免費試用 | 100 | $0 | 免費 | 測試整合 |
| 入門版 | 1,000 | $5 | $0.005 | 小型應用程式 |
| 成長版 | 10,000 | $40 | $0.004 | 成長中的 SaaS 產品 |
| 專業版 | 50,000 | $175 | $0.0035 | 行銷團隊 |
| 商業版 | 100,000 | $300 | $0.003 | 大量發送者 |
| 企業版 | 客製 | 客製 | 從 $0.002 起 | 企業應用程式 |
SendGrid 用戶專屬優惠
開始使用 BillionVerify 並節省費用:
- ✅ 100 個免費驗證點數(無需信用卡)
- ✅ 首月 8 折優惠(任何月繳方案)
- ✅ 免費整合支援(我們將協助您設定)
領取方式:註冊並發送電子郵件至 support@billionverify.com,附上您的 SendGrid 帳戶信箱。深入瞭解我們的定價方案。
使用情境
情境 1:保護 SaaS 引導流程
挑戰:一家 SaaS 公司每月透過 SendGrid 發送 50,000 封歡迎信件,但 12% 因無效註冊而退信,損害寄件者信譽。
解決方案:在建立帳戶前於註冊表單整合 BillionVerify 即時驗證。
結果:
- ✅ 退信率從 12% 降至 0.3%
- ✅ SendGrid 寄件者信譽從 72 提升至 98
- ✅ 信件送達率提升至 99% 以上
- ✅ 客戶支援工單減少 40%(較少「我沒收到信件」的投訴)
- ✅ 每月節省 $800 SendGrid 費用
情境 2:電子商務訂單確認保護
挑戰:一家電子商務商店每月發送 20,000 封訂單確認信件,但 8% 無效,導致漏送和客戶投訴。
解決方案:在處理訂單前於結帳時驗證客戶信箱地址。
結果:
- ✅ 無效結帳信箱從 8% 降至 0.5%
- ✅ 訂單確認送達率:99.5%
- ✅ 客戶滿意度分數提升 15%
- ✅ 減少 60%「我的訂單在哪裡」支援工單
- ✅ 保護 SendGrid 寄件者信譽
情境 3:行銷活動列表清理
挑戰:一家 B2B 公司擁有 100,000 個信箱的 SendGrid 聯絡人列表,但已 2 年未清理。計劃發動大型產品發表活動。
解決方案:在啟動活動前批次驗證整個聯絡人資料庫。
結果:
- ✅ 識別並移除 18,000 個無效信箱(18%)
- ✅ 識別 5,000 個臨時信箱(5%)
- ✅ 活動退信率:0.6%(相較於業界平均 5-10%)
- ✅ 開信率提升 35%(更乾淨的列表 = 更好的互動信號)
- ✅ 避免潛在的 SendGrid 帳戶停權
- ✅ 節省 $2,500 浪費的活動發送費用
情境 4:防止臨時信箱濫用
挑戰:一個免費試用 SaaS 產品吸引許多使用臨時信箱(10minutemail.com、guerrillamail.com)的用戶濫用免費方案。
解決方案:在註冊時實施即時臨時信箱偵測。
結果:
- ✅ 每月封鎖 4,500 個臨時信箱註冊
- ✅ 免費試用濫用減少 78%
- ✅ 試用轉付費轉換率提升 22%
- ✅ SendGrid 互動指標改善
- ✅ 減少假帳戶的伺服器成本
SendGrid 整合常見問題
這個整合如何與 SendGrid 配合運作?
BillionVerify + SendGrid 整合透過 API 運作。您在將信箱加入 SendGrid 或透過 SendGrid 發送之前驗證信箱。我們的 API 即時驗證信箱(不到 1 秒)並返回詳細結果。只有有效、低風險的信箱才透過 SendGrid 發送,保護您的寄件者信譽。
會拖慢我的應用程式嗎?
不會。BillionVerify 的 API 平均回應時間不到 1 秒(通常為 300-500 毫秒)。為了獲得更快的效能,您可以:
- 使用非同步驗證(註冊後在背景驗證)
- 為先前驗證過的信箱啟用快取
- 在非尖峰時段批次驗證信箱
我可以驗證現有的 SendGrid 聯絡人嗎?
可以!您可以:
- 透過 API 或 UI 匯出 SendGrid 聯絡人
- 上傳 至 BillionVerify 的批次驗證工具
- 下載 包含詳細狀態的驗證結果
- 重新匯入 至 SendGrid,更新自訂欄位
或使用我們的 API 透過指令碼完全自動化此過程。
無效信箱會怎麼處理?
您可以完全控制如何處理無效信箱:
- 在註冊時 拒絕 它們(建議)
- 加入 SendGrid 封鎖列表 以防止未來發送
- 在資料庫中 標記 它們以供人工審查
- 記錄 它們以進行詐騙偵測分析
我們建議在註冊時拒絕或加入封鎖列表以保護寄件者信譽。
驗證準確度如何?
BillionVerify 透過多層驗證維持 99.9% 準確度:
- 語法驗證(RFC 5322 合規性)
- DNS 查詢(域名存在且正確配置)
- MX 記錄驗證(郵件伺服器存在並接受郵件)
- SMTP 握手(信箱存在且可接收郵件)
- 進階風險偵測(全接收、臨時、角色型信箱)
我們每天驗證數千個域名以維持準確率。
BillionVerify 支援 SendGrid 自訂欄位嗎?
支援!您可以在 SendGrid 自訂欄位中儲存驗證結果:
- 信箱狀態(有效/無效/風險)
- 風險級別(低/中/高)
- 驗證日期(時間戳記)
- 全接收狀態(true/false)
- 臨時信箱(true/false)
- 角色型帳戶(true/false)
這讓您可以根據驗證結果細分聯絡人並建立目標活動。
有免費試用嗎?
有!BillionVerify 提供:
- ✅ 100 個免費驗證點數(無需信用卡)
- ✅ 所有功能完整存取(API、批次驗證、進階偵測)
- ✅ 30 天退款保證(付費方案)
- ✅ 免費整合支援(我們將協助您設定)
整合有多安全?
BillionVerify 非常重視安全性:
- 🔒 加密:所有 API 呼叫使用 HTTPS/TLS 1.3
- 🔒 符合 GDPR:我們不儲存或分享您的信箱資料
- 🔒 SOC 2 認證:業界標準安全實踐
- 🔒 API 金鑰安全:金鑰已加密,可隨時輪換
- 🔒 零資料保留:信箱即時處理且不永久儲存
企業客戶可獲得完整稽核日誌。
BillionVerify 與 SendGrid 內建驗證有何不同?
SendGrid 提供基本驗證(語法和 DNS 檢查),但 BillionVerify 提供:
- ✅ SMTP 驗證:實際連接到郵件伺服器以驗證信箱存在
- ✅ 進階風險偵測:識別臨時、全接收和角色型信箱
- ✅ 99.9% 準確度:比基本 DNS/語法檢查更高的準確度
- ✅ 即時驗證:在信箱進入 SendGrid 前驗證
- ✅ 批次驗證:在幾分鐘內清理整個列表
- ✅ 主動保護:預防退信而非對其做出反應
SendGrid 的驗證是被動的(退信發生後),而 BillionVerify 是主動的(預防退信)。
準備好開始了嗎?
立即使用 BillionVerify 保護您的 SendGrid 寄件者信譽:
- ✅ 99.9% 驗證準確度 - 業界領先精準度
- ✅ <1 秒驗證速度 - 不影響用戶體驗
- ✅ 簡易整合 - 透過我們的 API 在 10 分鐘內設定完成
- ✅ 靈活定價 - 僅為使用量付費,每封信箱從 $0.002 起
- ✅ 24/7 支援 - 專家團隊隨時協助
準備好保護您的 SendGrid 送達率了嗎?立即開始免費試用,獲得 100 個免費驗證點數 - 無需信用卡。
