It seems like you cannot currently add WiFi as a campaign targeting setting like you can mobile carriers as a Carrier using CampaignCriterionService. Therefore, I'd like to propose the following feature enhancement to CampaignCriterionService.
Request:
Capability to ADD WiFi targeting using CampaignCriterionService.
This missing feature has been available via the AdWords UI for a long time. Furthermore, if you query for data using CampaignCriterionService, campaigns that have WiFi targeting set will come back in the API as a CampaignCriterion Carrier with ID 79999, so that data already seems to be in the system and accessible via the API--you just can't ADD it via the API.
Related Request:
Once the above has been implemented, add WiFi (ID 79999) to ConstantDataService's getCarrierCriterion operation.
WiFi currently does not come back from ConstantDataService, which makes sense since you cannot currently target it with the API. But if it becomes targetable via the API, then it makes sense for ConstantDataService to also provide WiFi as a Carrier.
Thanks for considering our request.
Mark