Customer Match
CRM-list audiences with hashed member upload
Customer Match audiences
Target a CRM list via Customer Match. Create an empty audience, then upload members. adAccountId is the Google Ads customer ID (no dashes). Email only on Google (any phone is ignored); values are SHA256-hashed server-side before upload.
// 1. Create the (empty) Customer Match audience
await zernio.adaudiences.createAdAudience({
body: {
accountId: 'acc_googleads_123',
adAccountId: '1234567890', // Google Ads customer ID
type: 'customer_list',
name: 'Newsletter subscribers',
},
});
// 2. Upload members to the returned audience id
await zernio.adaudiences.addUsersToAdAudience({
path: { audienceId: 'aud_abc123' }, // id from the create response
body: { users: [{ email: 'jane@example.com' }, { email: 'sam@example.com' }] },
});# 1. Create the (empty) Customer Match audience
client.ad_audiences.create_ad_audience(
account_id="acc_googleads_123",
ad_account_id="1234567890", # Google Ads customer ID
type="customer_list",
name="Newsletter subscribers",
)
# 2. Upload members to the returned audience id
client.ad_audiences.add_users_to_ad_audience(
audience_id="aud_abc123", # id from the create response
users=[{"email": "jane@example.com"}, {"email": "sam@example.com"}],
)# 1. Create
curl -X POST "https://zernio.com/api/v1/ads/audiences" \
-H "Authorization: Bearer YOUR_API_KEY" -H "Content-Type: application/json" \
-d '{ "accountId": "acc_googleads_123", "adAccountId": "1234567890", "type": "customer_list", "name": "Newsletter subscribers" }'
# 2. Upload members (use the audience id from the create response)
curl -X POST "https://zernio.com/api/v1/ads/audiences/AUDIENCE_ID/users" \
-H "Authorization: Bearer YOUR_API_KEY" -H "Content-Type: application/json" \
-d '{ "users": [{ "email": "jane@example.com" }, { "email": "sam@example.com" }] }'