var client = new CampaignService.CampaignService();
//create Campaign with Status
Campaign campaign = new Campaign();
campaign.id = CurrentCampaignId;
switch (index)
{
case 0:
campaign.status=CampaignStatus.ENABLED;
break;
case 1:
campaign.status=CampaignStatus.PAUSED;
break;
case 2:
campaign.status=CampaignStatus.REMOVED;
break;
}
//Create the Operation
CampaignOperation operation = new CampaignOperation();
operation.operand = campaign;
operation.operatorSpecified = true;
operation.@operator= Operator.REMOVE;
try
{
client.PreAuthenticate = true;
client.UseDefaultCredentials = true;
client.RequestHeader = new SoapHeader
{
clientCustomerId = clientCustomerId,
developerToken = "XXXXXXXXXXXXXXXXXXXXX",
partialFailure = false,
userAgent = "AdWordsChangeStatus",
validateOnly = false,
};
client.PreAuthenticate = true;
CampaignReturnValue returnValue = client.mutate(new CampaignOperation[] {operation});
if (returnValue != null && returnValue.value != null && returnValue.value.Length > 0)
{
Campaign changedCampaign = returnValue.value[0];
}
else
{
Console.WriteLine("No status has changed");
}
}
catch (Exception ex)
{
throw new System.ApplicationException("Failed to change status", ex);
}