如何用Node.js通过Google Ads API实现增强转化?无相关文档指引
Node.js 基于 Google Ads API 实现增强转化
前置准备
- 安装官方 Node.js 客户端库:
npm install google-ads-api - 完成 API 认证配置:准备好 OAuth2 客户端凭据、Google Ads 客户 ID、开发者令牌,以及关联的转化动作(ConversionAction)ID。
核心实现逻辑
增强转化的核心是上传经过哈希处理的用户身份数据(如邮箱、手机号),配合转化事件信息,让 Google Ads 更精准地归因转化。通过 Ads API 的 ConversionUploadService 完成上传,以下是关键步骤:
处理用户身份数据
对用户的邮箱、手机号等信息做标准化哈希:- 邮箱:转为小写、去除前后空格,再用 SHA-256 哈希
- 手机号:去除所有非数字字符,再用 SHA-256 哈希
示例哈希处理代码:
const crypto = require('crypto'); function hashData(data) { if (!data) return null; const normalized = data.trim().toLowerCase(); return crypto.createHash('sha256').update(normalized).digest('hex'); }构建增强转化上传请求
通过客户端创建转化上传请求,包含转化动作 ID、转化时间、价值,以及哈希后的用户身份信息:const { GoogleAdsApi, enums } = require('google-ads-api'); const client = new GoogleAdsApi({ client_id: 'YOUR_OAUTH_CLIENT_ID', client_secret: 'YOUR_OAUTH_CLIENT_SECRET', developer_token: 'YOUR_DEVELOPER_TOKEN', }); async function uploadEnhancedConversion() { const customer = client.Customer({ customer_id: 'YOUR_CUSTOMER_ID', // 格式:123-456-7890 refresh_token: 'YOUR_REFRESH_TOKEN', }); const conversionUploadOperation = { create: { conversion_action: `customers/YOUR_CUSTOMER_ID/conversionActions/YOUR_CONVERSION_ACTION_ID`, conversion_date_time: new Date().toISOString().replace('Z', '+00:00'), conversion_value: 99.99, currency_code: 'USD', // 增强转化身份信息 user_identifiers: [ { hashed_email: hashData('user@example.com'), hashed_phone_number: hashData('+1234567890'), address_info: { hashed_first_name: hashData('John'), hashed_last_name: hashData('Doe'), hashed_street_address: hashData('123 Main St'), city: 'New York', region: 'NY', postal_code: '10001', country_code: 'US', }, }, ], }, }; try { const response = await customer.conversionUploads.uploadClickConversions({ operations: [conversionUploadOperation], partial_failure: true, }); console.log('增强转化上传成功:', response); } catch (err) { console.error('上传失败:', err); } } uploadEnhancedConversion();
关键注意事项
- 数据合规:必须获得用户明确授权,才能收集并上传其身份数据
- 哈希规范:严格遵循 Google 的哈希要求(SHA-256、标准化处理),否则数据无法被正确匹配
- 转化动作配置:确保在 Google Ads 后台已创建并启用了支持增强转化的转化动作
- 错误处理:开启
partial_failure参数,允许部分成功上传,便于排查单条数据的问题
内容的提问来源于stack exchange,提问作者hemant jangid
相关产品推荐
相关产品推荐

