Authenticate via OAuth 2.0 using the Microsoft Advertising authorization endpoint and obtain an access token with the Bing Ads API scope
Call the Campaign Management API AddAudiences operation to create a CustomerList audience, specifying the name, scope (Customer or Account level), and membership duration in days
Retrieve the audience ID from the response, then prepare hashed contact data: normalize and SHA-256 hash email addresses and phone numbers following Microsoft's specification
Call the Campaign Management API ApplyCustomerListItems operation, passing the audience ID and a list of CustomerListUserData objects containing hashed emails or phone numbers in batches of up to 1,000 records
Poll the GetCustomerListUploadStatus operation (or check the audience status in the UI) until the upload processing is complete and the audience size estimate is populated
Target the audience by adding an AudienceCriterion to an ad group or campaign using AddAdGroupCriterions or AddCampaignCriterions, setting the audienceId and bidAdjustment
Known gotchas
Microsoft Advertising requires Customer Match audiences to have a minimum of 300 matched users before they are eligible for targeting; smaller uploads will show as active but will not reach the serving threshold
Phone numbers must be formatted as plain digits with country code and no punctuation before hashing; unhashed or incorrectly formatted values are silently discarded during matching
Customer Match is only available to accounts that meet Microsoft Advertising's eligibility criteria (account history and spend thresholds); new accounts may not have access to this feature
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp