-
Notifications
You must be signed in to change notification settings - Fork 199
/
SetBidModifier.vb
executable file
·112 lines (102 loc) · 4.95 KB
/
SetBidModifier.vb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
' Copyright 2018 Google LLC
'
' Licensed under the Apache License, Version 2.0 (the "License");
' you may not use this file except in compliance with the License.
' You may obtain a copy of the License at
'
' http://www.apache.org/licenses/LICENSE-2.0
'
' Unless required by applicable law or agreed to in writing, software
' distributed under the License is distributed on an "AS IS" BASIS,
' WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
' See the License for the specific language governing permissions and
' limitations under the License.
Imports Google.Api.Ads.AdWords.Lib
Imports Google.Api.Ads.AdWords.v201809
Namespace Google.Api.Ads.AdWords.Examples.VB.v201809
''' <summary>
''' This code example sets a bid modifier for the mobile platform on given
''' campaign. The campaign must be an enhanced type of campaign. To get
''' campaigns, run GetCampaigns.vb. To enhance a campaign, run
''' SetCampaignEnhanced.vb.
''' </summary>
Public Class SetBidModifier
Inherits ExampleBase
''' <summary>
''' Main method, to run this code example as a standalone application.
''' </summary>
''' <param name="args">The command line arguments.</param>
Public Shared Sub Main(ByVal args As String())
Dim codeExample As New SetBidModifier
Console.WriteLine(codeExample.Description)
Try
Dim campaignId As Long = Long.Parse("INSERT_CAMPAIGN_ID_HERE")
Dim bidModifier As Double = Double.Parse("INSERT_BID_MODIFIER_HERE")
codeExample.Run(New AdWordsUser, campaignId, bidModifier)
Catch e As Exception
Console.WriteLine("An exception occurred while running this code example. {0}",
ExampleUtilities.FormatException(e))
End Try
End Sub
''' <summary>
''' Returns a description about the code example.
''' </summary>
'''
Public Overrides ReadOnly Property Description() As String
Get
Return "This code example sets a bid modifier for the mobile platform on given " &
"campaign. The campaign must be an enhanced type of campaign. To get " &
"campaigns, run GetCampaigns.vb. To enhance a campaign, run " &
"SetCampaignEnhanced.vb."
End Get
End Property
''' <summary>
''' Runs the code example.
''' </summary>
''' <param name="user">The AdWords user.</param>
''' <param name="campaignId">Id of the campaign whose bid should be modified.
''' </param>
''' <param name="bidModifier">The bid modifier.</param>
Public Sub Run(ByVal user As AdWordsUser, ByVal campaignId As Long,
ByVal bidModifier As Double)
Using campaignCriterionService As CampaignCriterionService = CType(
user.GetService(
AdWordsService.v201809.CampaignCriterionService),
CampaignCriterionService)
' Create mobile platform. The ID can be found in the documentation.
' https://developers.google.com/adwords/api/docs/appendix/platforms
Dim mobile As New Platform()
mobile.id = 30001
' Create criterion with modified bid.
Dim criterion As New CampaignCriterion()
criterion.campaignId = campaignId
criterion.criterion = mobile
criterion.bidModifier = bidModifier
' Create SET operation.
Dim operation As New CampaignCriterionOperation()
operation.operator = [Operator].SET
operation.operand = criterion
Try
' Update campaign criteria.
Dim result As CampaignCriterionReturnValue = campaignCriterionService.mutate(
New CampaignCriterionOperation() {operation})
' Display campaign criteria.
If Not result.value Is Nothing Then
For Each newCriterion As CampaignCriterion In result.value
Console.WriteLine(
"Campaign criterion with campaign id '{0}', criterion id '{1}' " &
"and type '{2}' was modified with bid {3:F2}.",
newCriterion.campaignId,
newCriterion.criterion.id, newCriterion.criterion.type,
newCriterion.bidModifier)
Next
Else
Console.WriteLine("No campaigns were modified.")
End If
Catch e As Exception
Throw New System.ApplicationException("Failed to set bid modifier.", e)
End Try
End Using
End Sub
End Class
End Namespace