diff --git a/ChangeLog b/ChangeLog
index 122fac6bcf9..f7489fe443e 100755
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,19 @@
+24.8.0
+======
+
+ AdWords:
+ -
+
+ Ad Manager:
+ - Added support for v201908.
+ - Removed support for v201808.
+ - Removed examples for v201811.
+ - Updated ProposalService and ProposalLineItemService example for Sales
+ Management deprecation.
+
+ Common:
+ -
+
24.7.1
======
diff --git a/examples/AdManager/CSharp/AdManager.Examples.CSharp.csproj b/examples/AdManager/CSharp/AdManager.Examples.CSharp.csproj
index 326c72e9ab6..b2d2a43a706 100755
--- a/examples/AdManager/CSharp/AdManager.Examples.CSharp.csproj
+++ b/examples/AdManager/CSharp/AdManager.Examples.CSharp.csproj
@@ -5,7 +5,6 @@
Google.AdManager.Examples.CSharpExeGoogle.Api.Ads.AdManager.Examples.CSharp.Program
- truetrue$(ProjectDir)..\..\..\src\Common\AdsApi.snkpdbonly
@@ -16,7 +15,7 @@
-
+
@@ -37,8 +36,4 @@
App.config
-
-
-
diff --git a/examples/AdManager/CSharp/OAuth/AdManager.Examples.CSharp.OAuth.csproj b/examples/AdManager/CSharp/OAuth/AdManager.Examples.CSharp.OAuth.csproj
index 8e4564ae63c..2dc7059ba0b 100755
--- a/examples/AdManager/CSharp/OAuth/AdManager.Examples.CSharp.OAuth.csproj
+++ b/examples/AdManager/CSharp/OAuth/AdManager.Examples.CSharp.OAuth.csproj
@@ -84,7 +84,7 @@
-
+
diff --git a/examples/AdManager/CSharp/v201811/BaseRateService/CreateProductBaseRates.cs b/examples/AdManager/CSharp/v201811/BaseRateService/CreateProductBaseRates.cs
deleted file mode 100755
index 14892d44e8c..00000000000
--- a/examples/AdManager/CSharp/v201811/BaseRateService/CreateProductBaseRates.cs
+++ /dev/null
@@ -1,105 +0,0 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This code example creates a product base rate. To determine which base rates exist,
- /// run GetAllBaseRates.cs.
- ///
- public class CreateProductBaseRates : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get
- {
- return "This code example creates a product base rate. To determine which base " +
- "rates exist, run GetAllBaseRates.cs.";
- }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- CreateProductBaseRates codeExample = new CreateProductBaseRates();
- Console.WriteLine(codeExample.Description);
- codeExample.Run(new AdManagerUser());
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user)
- {
- using (BaseRateService baseRateService = user.GetService())
- {
- // Set the rate card ID to add the base rate to.
- long rateCardId = long.Parse(_T("INSERT_RATE_CARD_ID_HERE"));
-
- // Set the product to apply this base rate to.
- long productId = long.Parse(_T("INSERT_PRODUCT_ID_HERE"));
-
- // Create a base rate for a product.
- ProductBaseRate productBaseRate = new ProductBaseRate();
-
- // Set the rate card ID that the product base rate belongs to.
- productBaseRate.rateCardId = rateCardId;
-
- // Set the product the base rate will be applied to.
- productBaseRate.productId = productId;
-
- // Create a rate worth $2 and set that on the product base rate.
- productBaseRate.rate = new Money()
- {
- currencyCode = "USD",
- microAmount = 2000000L
- };
-
- try
- {
- // Create the base rate on the server.
- BaseRate[] baseRates = baseRateService.createBaseRates(new BaseRate[]
- {
- productBaseRate
- });
-
- foreach (BaseRate createdBaseRate in baseRates)
- {
- Console.WriteLine(
- "A product base rate with ID '{0}', name '{1}' " +
- "and rate '{2} {3}' was created.", createdBaseRate.id,
- createdBaseRate.GetType().Name,
- (((ProductBaseRate) createdBaseRate).rate.microAmount / 1000000f),
- ((ProductBaseRate) createdBaseRate).rate.currencyCode);
- }
- }
- catch (Exception e)
- {
- Console.WriteLine("Failed to create base rates. Exception says \"{0}\"",
- e.Message);
- }
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/BaseRateService/CreateProductTemplateBaseRates.cs b/examples/AdManager/CSharp/v201811/BaseRateService/CreateProductTemplateBaseRates.cs
deleted file mode 100755
index 1625ce536ba..00000000000
--- a/examples/AdManager/CSharp/v201811/BaseRateService/CreateProductTemplateBaseRates.cs
+++ /dev/null
@@ -1,106 +0,0 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This code example creates a product template base rate. To determine which base rates exist,
- /// run GetAllBaseRates.cs.
- ///
- public class CreateProductTemplateBaseRates : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get
- {
- return "This code example creates a product template base rate. To determine " +
- "which base rates exist, run GetAllBaseRates.cs.";
- }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- CreateProductTemplateBaseRates codeExample = new CreateProductTemplateBaseRates();
- Console.WriteLine(codeExample.Description);
- codeExample.Run(new AdManagerUser());
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user)
- {
- using (BaseRateService baseRateService = user.GetService())
- {
- // Set the rate card ID to add the base rate to.
- long rateCardId = long.Parse(_T("INSERT_RATE_CARD_ID_HERE"));
-
- // Set the product template to apply this base rate to.
- long productTemplateId = long.Parse(_T("INSERT_PRODUCT_TEMPLATE_ID_HERE"));
-
- // Create a base rate for a product template.
- ProductTemplateBaseRate productTemplateBaseRate = new ProductTemplateBaseRate();
-
- // Set the rate card ID that the product template base rate belongs to.
- productTemplateBaseRate.rateCardId = rateCardId;
-
- // Set the product template the base rate will be applied to.
- productTemplateBaseRate.productTemplateId = productTemplateId;
-
- // Create a rate worth $2 and set that on the product template base rate.
- productTemplateBaseRate.rate = new Money()
- {
- currencyCode = "USD",
- microAmount = 2000000L
- };
-
- try
- {
- // Create the base rate on the server.
- BaseRate[] baseRates = baseRateService.createBaseRates(new BaseRate[]
- {
- productTemplateBaseRate
- });
-
- foreach (BaseRate createdBaseRate in baseRates)
- {
- Console.WriteLine(
- "A product template base rate with ID '{0}', name '{1}' " +
- "and rate '{2} {3}' was created.", createdBaseRate.id,
- createdBaseRate.GetType().Name,
- (((ProductTemplateBaseRate) createdBaseRate).rate.microAmount /
- 1000000f),
- ((ProductTemplateBaseRate) createdBaseRate).rate.currencyCode);
- }
- }
- catch (Exception e)
- {
- Console.WriteLine("Failed to create base rates. Exception says \"{0}\"",
- e.Message);
- }
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/BaseRateService/GetAllBaseRates.cs b/examples/AdManager/CSharp/v201811/BaseRateService/GetAllBaseRates.cs
deleted file mode 100755
index 8972f67f092..00000000000
--- a/examples/AdManager/CSharp/v201811/BaseRateService/GetAllBaseRates.cs
+++ /dev/null
@@ -1,94 +0,0 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This example gets all base rates.
- ///
- public class GetAllBaseRates : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get { return "This example gets all base rates."; }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- GetAllBaseRates codeExample = new GetAllBaseRates();
- Console.WriteLine(codeExample.Description);
- try
- {
- codeExample.Run(new AdManagerUser());
- }
- catch (Exception e)
- {
- Console.WriteLine("Failed to get base rates. Exception says \"{0}\"", e.Message);
- }
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user)
- {
- using (BaseRateService baseRateService = user.GetService())
- {
- // Create a statement to select base rates.
- int pageSize = StatementBuilder.SUGGESTED_PAGE_LIMIT;
- StatementBuilder statementBuilder =
- new StatementBuilder().OrderBy("id ASC").Limit(pageSize);
-
- // Retrieve a small amount of base rates at a time, paging through until all
- // base rates have been retrieved.
- int totalResultSetSize = 0;
- do
- {
- BaseRatePage page =
- baseRateService.getBaseRatesByStatement(statementBuilder.ToStatement());
-
- // Print out some information for each base rate.
- if (page.results != null)
- {
- totalResultSetSize = page.totalResultSetSize;
- int i = page.startIndex;
- foreach (BaseRate baseRate in page.results)
- {
- Console.WriteLine(
- "{0}) Base rate with ID {1}, type \"{2}\", and rate card ID {3} " +
- "was found.",
- i++, baseRate.id, baseRate.GetType().Name, baseRate.rateCardId);
- }
- }
-
- statementBuilder.IncreaseOffsetBy(pageSize);
- } while (statementBuilder.GetOffset() < totalResultSetSize);
-
- Console.WriteLine("Number of results found: {0}", totalResultSetSize);
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/BaseRateService/GetBaseRatesForRateCard.cs b/examples/AdManager/CSharp/v201811/BaseRateService/GetBaseRatesForRateCard.cs
deleted file mode 100755
index d2fbe818efc..00000000000
--- a/examples/AdManager/CSharp/v201811/BaseRateService/GetBaseRatesForRateCard.cs
+++ /dev/null
@@ -1,96 +0,0 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This example gets all base rates belonging to a rate card.
- ///
- public class GetBaseRatesForRateCard : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get { return "This example gets all base rates belonging to a rate card."; }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- GetBaseRatesForRateCard codeExample = new GetBaseRatesForRateCard();
- long rateCardId = long.Parse("INSERT_RATE_CARD_ID_HERE");
- Console.WriteLine(codeExample.Description);
- try
- {
- codeExample.Run(new AdManagerUser(), rateCardId);
- }
- catch (Exception e)
- {
- Console.WriteLine("Failed to get base rates. Exception says \"{0}\"", e.Message);
- }
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user, long rateCardId)
- {
- using (BaseRateService baseRateService = user.GetService())
- {
- // Create a statement to select base rates.
- int pageSize = StatementBuilder.SUGGESTED_PAGE_LIMIT;
- StatementBuilder statementBuilder = new StatementBuilder()
- .Where("rateCardId = :rateCardId").OrderBy("id ASC").Limit(pageSize)
- .AddValue("rateCardId", rateCardId);
-
- // Retrieve a small amount of base rates at a time, paging through until all
- // base rates have been retrieved.
- int totalResultSetSize = 0;
- do
- {
- BaseRatePage page =
- baseRateService.getBaseRatesByStatement(statementBuilder.ToStatement());
-
- // Print out some information for each base rate.
- if (page.results != null)
- {
- totalResultSetSize = page.totalResultSetSize;
- int i = page.startIndex;
- foreach (BaseRate baseRate in page.results)
- {
- Console.WriteLine(
- "{0}) Base rate with ID {1}, type \"{2}\", and rate card ID {3} " +
- "was found.",
- i++, baseRate.id, baseRate.GetType().Name, baseRate.rateCardId);
- }
- }
-
- statementBuilder.IncreaseOffsetBy(pageSize);
- } while (statementBuilder.GetOffset() < totalResultSetSize);
-
- Console.WriteLine("Number of results found: {0}", totalResultSetSize);
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/BaseRateService/UpdateBaseRates.cs b/examples/AdManager/CSharp/v201811/BaseRateService/UpdateBaseRates.cs
deleted file mode 100755
index 1524a042e9a..00000000000
--- a/examples/AdManager/CSharp/v201811/BaseRateService/UpdateBaseRates.cs
+++ /dev/null
@@ -1,121 +0,0 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-using System.Collections.Generic;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This code example updates a base rate's value. To determine which base rates
- /// exist, run GetAllBaseRates.cs.
- ///
- public class UpdateBaseRates : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get
- {
- return "This code example updates a base rate's value. To determine which base " +
- "rates exist, run GetAllBaseRates.cs.";
- }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- UpdateBaseRates codeExample = new UpdateBaseRates();
- Console.WriteLine(codeExample.Description);
- codeExample.Run(new AdManagerUser());
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user)
- {
- using (BaseRateService baseRateService = user.GetService())
- {
- long baseRateId = long.Parse(_T("INSERT_BASE_RATE_ID_HERE"));
-
- // Create a statement to get the baseRate.
- StatementBuilder statementBuilder = new StatementBuilder()
- .Where("id = :id")
- .OrderBy("id ASC")
- .Limit(1)
- .AddValue("id", baseRateId);
-
- try
- {
- // Get base rates by statement.
- BaseRatePage page =
- baseRateService.getBaseRatesByStatement(statementBuilder.ToStatement());
-
- BaseRate baseRate = page.results[0];
-
- // Update base rate value to $3 USD.
- Money newRate = new Money()
- {
- currencyCode = "USD",
- microAmount = 3000000L
- };
-
- if (baseRate is ProductTemplateBaseRate)
- {
- ((ProductTemplateBaseRate) baseRate).rate = newRate;
- }
- else if (baseRate is ProductBaseRate)
- {
- ((ProductBaseRate) baseRate).rate = newRate;
- }
-
- // Update the base rates on the server.
- BaseRate[] baseRates = baseRateService.updateBaseRates(new BaseRate[]
- {
- baseRate
- });
-
- if (baseRates != null)
- {
- foreach (BaseRate updatedBaseRate in baseRates)
- {
- Console.WriteLine(
- "Base rate with ID ='{0}' and type '{1}' belonging to rate card " +
- "'{2}' was updated.", baseRate.id, baseRate.GetType().Name,
- baseRate.rateCardId);
- }
- }
- else
- {
- Console.WriteLine("No base rates updated.");
- }
- }
- catch (Exception e)
- {
- Console.WriteLine("Failed to update base rates. Exception says \"{0}\"",
- e.Message);
- }
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/ExchangeRateService/CreateExchangeRates.cs b/examples/AdManager/CSharp/v201811/ExchangeRateService/CreateExchangeRates.cs
deleted file mode 100755
index a4c48f1b527..00000000000
--- a/examples/AdManager/CSharp/v201811/ExchangeRateService/CreateExchangeRates.cs
+++ /dev/null
@@ -1,99 +0,0 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This code example creates a new exchange rate. To determine which
- /// exchange rates exist, run GetAllExchangeRates.cs.
- ///
- public class CreateExchangeRates : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get
- {
- return "This code example creates a new exchange rate. To determine which " +
- "exchange rates exist, run GetAllExchangeRates.cs.";
- }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- CreateExchangeRates codeExample = new CreateExchangeRates();
- Console.WriteLine(codeExample.Description);
- codeExample.Run(new AdManagerUser());
- }
-
- ///
- /// Run the code examples.
- ///
- public void Run(AdManagerUser user)
- {
- using (ExchangeRateService exchangeRateService = user.GetService())
- {
- // Create an exchange rate.
- ExchangeRate exchangeRate = new ExchangeRate();
-
- // Set the currency code.
- exchangeRate.currencyCode = "AUD";
-
- // Set the direction of the conversion (from the network currency).
- exchangeRate.direction = ExchangeRateDirection.FROM_NETWORK;
-
- // Set the conversion value as 1.5 (this value is multiplied by 10,000,000,000)
- exchangeRate.exchangeRate = 15000000000L;
-
- // Do not refresh exchange rate from Google data. Update manually only.
- exchangeRate.refreshRate = ExchangeRateRefreshRate.FIXED;
-
- try
- {
- // Create the exchange rate on the server.
- ExchangeRate[] exchangeRates = exchangeRateService.createExchangeRates(
- new ExchangeRate[]
- {
- exchangeRate
- });
-
- foreach (ExchangeRate createdExchangeRate in exchangeRates)
- {
- Console.WriteLine(
- "An exchange rate with ID '{0}', currency code '{1}', " +
- "direction '{2}' and exchange rate '{3}' was created.", exchangeRate.id,
- exchangeRate.currencyCode, exchangeRate.direction,
- (exchangeRate.exchangeRate / 10000000000f));
- }
- }
- catch (Exception e)
- {
- Console.WriteLine("Failed to create exchange rates. Exception says \"{0}\"",
- e.Message);
- }
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/ExchangeRateService/GetExchangeRatesForCurrencyCode.cs b/examples/AdManager/CSharp/v201811/ExchangeRateService/GetExchangeRatesForCurrencyCode.cs
deleted file mode 100755
index afc8b10a467..00000000000
--- a/examples/AdManager/CSharp/v201811/ExchangeRateService/GetExchangeRatesForCurrencyCode.cs
+++ /dev/null
@@ -1,98 +0,0 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This example gets the exchange rate for a specific currency code.
- ///
- public class GetExchangeRatesForCurrencyCode : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get { return "This example gets the exchange rate for a specific currency code."; }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- GetExchangeRatesForCurrencyCode codeExample = new GetExchangeRatesForCurrencyCode();
- string currencyCode = "INSERT_CURRENCY_CODE_HERE";
- Console.WriteLine(codeExample.Description);
- try
- {
- codeExample.Run(new AdManagerUser(), currencyCode);
- }
- catch (Exception e)
- {
- Console.WriteLine("Failed to get exchange rates. Exception says \"{0}\"",
- e.Message);
- }
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user, string currencyCode)
- {
- using (ExchangeRateService exchangeRateService = user.GetService())
- {
- // Create a statement to select exchange rates.
- int pageSize = StatementBuilder.SUGGESTED_PAGE_LIMIT;
- StatementBuilder statementBuilder = new StatementBuilder()
- .Where("currencyCode = :currencyCode").OrderBy("id ASC").Limit(pageSize)
- .AddValue("currencyCode", currencyCode);
-
- // Retrieve a small amount of exchange rates at a time, paging through until all
- // exchange rates have been retrieved.
- int totalResultSetSize = 0;
- do
- {
- ExchangeRatePage page =
- exchangeRateService.getExchangeRatesByStatement(
- statementBuilder.ToStatement());
-
- // Print out some information for each exchange rate.
- if (page.results != null)
- {
- totalResultSetSize = page.totalResultSetSize;
- int i = page.startIndex;
- foreach (ExchangeRate exchangeRate in page.results)
- {
- Console.WriteLine(
- "{0}) Exchange rate with ID {1}, " + "currency code \"{2}\", " +
- "and exchange rate {3} was found.", i++, exchangeRate.id,
- exchangeRate.currencyCode, exchangeRate.exchangeRate);
- }
- }
-
- statementBuilder.IncreaseOffsetBy(pageSize);
- } while (statementBuilder.GetOffset() < totalResultSetSize);
-
- Console.WriteLine("Number of results found: {0}", totalResultSetSize);
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/ExchangeRateService/UpdateExchangeRates.cs b/examples/AdManager/CSharp/v201811/ExchangeRateService/UpdateExchangeRates.cs
deleted file mode 100755
index 78c1600a551..00000000000
--- a/examples/AdManager/CSharp/v201811/ExchangeRateService/UpdateExchangeRates.cs
+++ /dev/null
@@ -1,111 +0,0 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This code example updates a fixed exchange rate's value. To determine which
- /// exchange rates exist, run GetAllExchangeRates.cs.
- ///
- public class UpdateExchangeRates : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get
- {
- return
- "This code example updates a fixed exchange rate's value. To determine which " +
- "exchange rates exist, run GetAllExchangeRates.cs.";
- }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- UpdateExchangeRates codeExample = new UpdateExchangeRates();
- Console.WriteLine(codeExample.Description);
- codeExample.Run(new AdManagerUser());
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user)
- {
- using (ExchangeRateService exchangeRateService = user.GetService())
- {
- // Set the ID of the exchange rate.
- long exchangeRateId = long.Parse(_T("INSERT_EXCHANGE_RATE_ID_HERE"));
-
- // Create a statement to get the exchange rate.
- StatementBuilder statementBuilder = new StatementBuilder()
- .Where("id = :exchangeRateId and refreshRate = :refreshRate").OrderBy("id ASC")
- .Limit(1).AddValue("exchangeRateId", exchangeRateId)
- .AddValue("refreshRate", ExchangeRateRefreshRate.FIXED.ToString());
-
- try
- {
- // Get exchange rates by statement.
- ExchangeRatePage page =
- exchangeRateService.getExchangeRatesByStatement(
- statementBuilder.ToStatement());
-
- ExchangeRate exchangeRate = page.results[0];
-
- // Update the exchange rate value to 1.5.
- exchangeRate.exchangeRate = 15000000000L;
-
- // Update the exchange rate on the server.
- ExchangeRate[] exchangeRates = exchangeRateService.updateExchangeRates(
- new ExchangeRate[]
- {
- exchangeRate
- });
-
- if (exchangeRates != null)
- {
- foreach (ExchangeRate updatedExchangeRate in exchangeRates)
- {
- Console.WriteLine(
- "An exchange rate with ID '{0}', currency code '{1}', " +
- "direction '{2}' and exchange rate '{3}' was updated.",
- exchangeRate.id, exchangeRate.currencyCode, exchangeRate.direction,
- (exchangeRate.exchangeRate / 10000000000f));
- }
- }
- else
- {
- Console.WriteLine("No exchange rates updated.");
- }
- }
- catch (Exception e)
- {
- Console.WriteLine("Failed to update exchange rates. Exception says \"{0}\"",
- e.Message);
- }
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/PackageService/CreatePackages.cs b/examples/AdManager/CSharp/v201811/PackageService/CreatePackages.cs
deleted file mode 100755
index 9129771b4ea..00000000000
--- a/examples/AdManager/CSharp/v201811/PackageService/CreatePackages.cs
+++ /dev/null
@@ -1,102 +0,0 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This code example creates a package. To determine which packages exist,
- /// run GetAllPackages.cs.
- ///
- public class CreatePackages : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get
- {
- return "This code example creates a package. To determine which packages exist, " +
- "run GetAllPackages.cs.";
- }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- CreatePackages codeExample = new CreatePackages();
- Console.WriteLine(codeExample.Description);
- codeExample.Run(new AdManagerUser());
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user)
- {
- using (PackageService packageService = user.GetService())
- {
- // Set the ID of the product package to create the package from.
- long productPackageId = long.Parse(_T("INSERT_PRODUCT_PACKAGE_ID"));
-
- // Set the proposal ID for the package.
- long proposalId = long.Parse(_T("INSERT_PROPOSAL_ID"));
-
- // Set the ID of the rate card the proposal line items belonging to the product
- // package are priced from.
- long rateCardId = long.Parse(_T("INSERT_RATE_CARD_ID"));
-
- // Create a local package.
- Package package = new Package();
- package.name = "Package #" + new Random().Next(int.MaxValue);
-
- // Set the proposal ID for the package.
- package.proposalId = proposalId;
-
- // Set the product package ID to create the package from.
- package.productPackageId = productPackageId;
-
- // Set the rate card ID the proposal line items are priced with.
- package.rateCardId = rateCardId;
-
- try
- {
- // Create the package on the server.
- Package[] packages = packageService.createPackages(new Package[]
- {
- package
- });
-
- foreach (Package createdPackage in packages)
- {
- Console.WriteLine("A package with ID \"{0}\" and name \"{1}\" was created.",
- createdPackage.id, createdPackage.name);
- }
- }
- catch (Exception e)
- {
- Console.WriteLine("Failed to create packages. Exception says \"{0}\"",
- e.Message);
- }
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/PackageService/CreateProposalLineItemsFromPackage.cs b/examples/AdManager/CSharp/v201811/PackageService/CreateProposalLineItemsFromPackage.cs
deleted file mode 100755
index 43fdafb6b32..00000000000
--- a/examples/AdManager/CSharp/v201811/PackageService/CreateProposalLineItemsFromPackage.cs
+++ /dev/null
@@ -1,114 +0,0 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-using System.Collections.Generic;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This code example creates all proposal line items within an IN_PROGRESS package.
- /// To determine which packages exist, run GetAllPackages.cs.
- ///
- public class CreateProposalLineItemsFromPackage : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get
- {
- return " This code example creates all proposal line items within an IN_PROGRESS " +
- "package. To determine which packages exist, run GetAllPackages.cs.";
- }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- CreateProposalLineItemsFromPackage codeExample =
- new CreateProposalLineItemsFromPackage();
- Console.WriteLine(codeExample.Description);
- codeExample.Run(new AdManagerUser());
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user)
- {
- using (PackageService packageService = user.GetService())
- {
- // Set the ID of the package to create line items from.
- long packageId = long.Parse(_T("INSERT_PACKAGE_ID_HERE"));
-
- // Create statement to select the package.
- StatementBuilder statementBuilder = new StatementBuilder()
- .Where("id = :id")
- .OrderBy("id ASC")
- .Limit(1)
- .AddValue("id", packageId);
-
- // Set default for page.
- PackagePage page = new PackagePage();
- List packageIds = new List();
-
- try
- {
- // Get the package.
- page = packageService.getPackagesByStatement(statementBuilder.ToStatement());
- Package package = page.results[0];
-
- Console.WriteLine(
- "Package with ID \"{0}\" will create proposal line items using " +
- "product package with ID \"{1}\"", package.id, package.productPackageId);
-
- // Modify statement for action.
- statementBuilder.RemoveLimitAndOffset();
-
- // Create action.
- CreateProposalLineItemsFromPackages action =
- new CreateProposalLineItemsFromPackages();
-
- // Perform action.
- UpdateResult result =
- packageService.performPackageAction(action, statementBuilder.ToStatement());
-
- // Display results.
- if (result != null && result.numChanges > 0)
- {
- Console.WriteLine("Proposal line items were created for {0} packages.",
- result.numChanges);
- }
- else
- {
- Console.WriteLine("No proposal line items were created.");
- }
- }
- catch (Exception e)
- {
- Console.WriteLine(
- "Failed to create proposal line items. Exception says \"{0}\"", e.Message);
- }
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/PackageService/GetInProgressPackages.cs b/examples/AdManager/CSharp/v201811/PackageService/GetInProgressPackages.cs
deleted file mode 100755
index 0f81ee8ddbc..00000000000
--- a/examples/AdManager/CSharp/v201811/PackageService/GetInProgressPackages.cs
+++ /dev/null
@@ -1,97 +0,0 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This example gets all packages in progress.
- ///
- public class GetInProgressPackages : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get { return "This example gets all packages in progress."; }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- GetInProgressPackages codeExample = new GetInProgressPackages();
- Console.WriteLine(codeExample.Description);
- try
- {
- codeExample.Run(new AdManagerUser());
- }
- catch (Exception e)
- {
- Console.WriteLine("Failed to get packages. Exception says \"{0}\"", e.Message);
- }
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user)
- {
- using (PackageService packageService = user.GetService())
- {
- // Create a statement to select packages.
- int pageSize = StatementBuilder.SUGGESTED_PAGE_LIMIT;
- StatementBuilder statementBuilder = new StatementBuilder()
- .Where("status = :status")
- .OrderBy("id ASC")
- .Limit(pageSize)
- .AddValue("status", PackageStatus.IN_PROGRESS.ToString());
-
- // Retrieve a small amount of packages at a time, paging through until all
- // packages have been retrieved.
- int totalResultSetSize = 0;
- do
- {
- PackagePage page =
- packageService.getPackagesByStatement(statementBuilder.ToStatement());
-
- // Print out some information for each package.
- if (page.results != null)
- {
- totalResultSetSize = page.totalResultSetSize;
- int i = page.startIndex;
- foreach (Package pkg in page.results)
- {
- Console.WriteLine(
- "{0}) Package with ID {1}, name \"{2}\", and proposal ID {3} was " +
- "found.",
- i++, pkg.id, pkg.name, pkg.proposalId);
- }
- }
-
- statementBuilder.IncreaseOffsetBy(pageSize);
- } while (statementBuilder.GetOffset() < totalResultSetSize);
-
- Console.WriteLine("Number of results found: {0}", totalResultSetSize);
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/PackageService/UpdatePackages.cs b/examples/AdManager/CSharp/v201811/PackageService/UpdatePackages.cs
deleted file mode 100755
index 8a17b87d1a9..00000000000
--- a/examples/AdManager/CSharp/v201811/PackageService/UpdatePackages.cs
+++ /dev/null
@@ -1,107 +0,0 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This code example updates the comments of a package. To determine which packages exist,
- /// run GetAllPackages.cs.
- ///
- public class UpdatePackages : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get
- {
- return "This code example updates the comments of a package. To determine which " +
- "packages exist, run GetAllPackages.cs.";
- }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- UpdatePackages codeExample = new UpdatePackages();
- Console.WriteLine(codeExample.Description);
- codeExample.Run(new AdManagerUser());
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user)
- {
- using (PackageService packageService = user.GetService())
- {
- long packageId = long.Parse(_T("INSERT_PACKAGE_ID_HERE"));
-
- // Create a statement to get the package.
- StatementBuilder statementBuilder = new StatementBuilder()
- .Where("id = :id")
- .OrderBy("id ASC")
- .Limit(1)
- .AddValue("id", packageId);
-
- try
- {
- // Get packages by statement.
- PackagePage page =
- packageService.getPackagesByStatement(statementBuilder.ToStatement());
-
- Package package = page.results[0];
-
- // Update the package object by changing its comments.
- package.comments = "This package is ready to be made into proposal line items.";
-
- // Update the package on the server.
- Package[] packages = packageService.updatePackages(new Package[]
- {
- package
- });
-
- if (packages != null)
- {
- foreach (Package updatedPackage in packages)
- {
- Console.WriteLine(
- "Package with ID = \"{0}\", name = \"{1}\", and " +
- "comments = \"{2}\" was updated.",
- updatedPackage.id, updatedPackage.name, updatedPackage.comments);
- }
- }
- else
- {
- Console.WriteLine("No packages updated.");
- }
- }
- catch (Exception e)
- {
- Console.WriteLine("Failed to update packages. Exception says \"{0}\"",
- e.Message);
- }
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/PremiumRateService/CreatePremiumRates.cs b/examples/AdManager/CSharp/v201811/PremiumRateService/CreatePremiumRates.cs
deleted file mode 100755
index 694a6e16567..00000000000
--- a/examples/AdManager/CSharp/v201811/PremiumRateService/CreatePremiumRates.cs
+++ /dev/null
@@ -1,123 +0,0 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This code example creates a premium rate. To determine which premium rates exist,
- /// run GetAllPremiumRates.cs.
- ///
- public class CreatePremiumRates : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get
- {
- return
- "This code example creates a premium rate. To determine which premium rates " +
- "exist, run GetAllPremiumRates.cs.";
- }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- CreatePremiumRates codeExample = new CreatePremiumRates();
- Console.WriteLine(codeExample.Description);
- codeExample.Run(new AdManagerUser());
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user)
- {
- using (PremiumRateService premiumRateService = user.GetService())
- {
- // Set the rate card ID to add the premium rate to.
- long rateCardId = long.Parse(_T("INSERT_RATE_CARD_ID_HERE"));
-
- PremiumRate premiumRate = new PremiumRate();
-
- // Create an ad unit premium to apply to the rate card.
- AdUnitPremiumFeature adUnitPremiumFeature = new AdUnitPremiumFeature();
-
- // Create a CPM based premium rate value with adjustments in micro amounts.
- // This will adjust a CPM priced proposal line item that has
- // inventory targeting specified by 2 units of the currency associated with
- // the rate card (this comes from absolute value adjustment).
- PremiumRateValue cpmPremiumRateValue = new PremiumRateValue();
- cpmPremiumRateValue.premiumFeature = adUnitPremiumFeature;
- cpmPremiumRateValue.rateType = RateType.CPM;
- cpmPremiumRateValue.adjustmentSize = 2000000L;
- cpmPremiumRateValue.adjustmentType = PremiumAdjustmentType.ABSOLUTE_VALUE;
-
- // Create a CPC based premium rate value with adjustments in milli amounts.
- // This will adjust a CPC priced proposal line item that has
- // inventory targeting specified by 10% of the cost associated with the rate
- // card (this comes from a percentage adjustment).
- PremiumRateValue cpcPremiumRateValue = new PremiumRateValue();
- cpcPremiumRateValue.premiumFeature = adUnitPremiumFeature;
- cpcPremiumRateValue.rateType = RateType.CPC;
- cpcPremiumRateValue.adjustmentSize = 10000L;
- cpcPremiumRateValue.adjustmentType = PremiumAdjustmentType.PERCENTAGE;
-
- // Associate premium rate with the rate card and set premium information.
- // This premium will apply for proposal line items targeting 'any' ad unit
- // for both CPM and CPC rate types.
- premiumRate.rateCardId = rateCardId;
- premiumRate.pricingMethod = PricingMethod.ANY_VALUE;
- premiumRate.premiumFeature = adUnitPremiumFeature;
- premiumRate.premiumRateValues = new PremiumRateValue[]
- {
- cpmPremiumRateValue,
- cpcPremiumRateValue
- };
-
- try
- {
- // Create the premium rate on the server.
- PremiumRate[] premiumRates = premiumRateService.createPremiumRates(
- new PremiumRate[]
- {
- premiumRate
- });
-
- foreach (PremiumRate createdPremiumRate in premiumRates)
- {
- Console.WriteLine(
- "A premium rate for '{0}' was added to the rate card with " +
- "ID of '{1}'.", createdPremiumRate.premiumFeature.GetType().Name,
- createdPremiumRate.rateCardId);
- }
- }
- catch (Exception e)
- {
- Console.WriteLine("Failed to create premium rates. Exception says \"{0}\"",
- e.Message);
- }
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/PremiumRateService/GetPremiumRatesForRateCard.cs b/examples/AdManager/CSharp/v201811/PremiumRateService/GetPremiumRatesForRateCard.cs
deleted file mode 100755
index 64ef246825a..00000000000
--- a/examples/AdManager/CSharp/v201811/PremiumRateService/GetPremiumRatesForRateCard.cs
+++ /dev/null
@@ -1,97 +0,0 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This example gets all premium rates on a specific rate card.
- ///
- public class GetPremiumRatesForRateCard : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get { return "This example gets all premium rates on a specific rate card."; }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- GetPremiumRatesForRateCard codeExample = new GetPremiumRatesForRateCard();
- long rateCardId = long.Parse("INSERT_RATE_CARD_ID_HERE");
- Console.WriteLine(codeExample.Description);
- try
- {
- codeExample.Run(new AdManagerUser(), rateCardId);
- }
- catch (Exception e)
- {
- Console.WriteLine("Failed to get premium rates. Exception says \"{0}\"", e.Message);
- }
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user, long rateCardId)
- {
- using (PremiumRateService premiumRateService = user.GetService())
- {
- // Create a statement to select premium rates.
- int pageSize = StatementBuilder.SUGGESTED_PAGE_LIMIT;
- StatementBuilder statementBuilder = new StatementBuilder()
- .Where("rateCardId = :rateCardId").OrderBy("id ASC").Limit(pageSize)
- .AddValue("rateCardId", rateCardId);
-
- // Retrieve a small amount of premium rates at a time, paging through until all
- // premium rates have been retrieved.
- int totalResultSetSize = 0;
- do
- {
- PremiumRatePage page =
- premiumRateService.getPremiumRatesByStatement(
- statementBuilder.ToStatement());
-
- // Print out some information for each premium rate.
- if (page.results != null)
- {
- totalResultSetSize = page.totalResultSetSize;
- int i = page.startIndex;
- foreach (PremiumRate premiumRate in page.results)
- {
- Console.WriteLine(
- "{0}) Premium rate with ID {1}, " + "premium feature \"{2}\", " +
- "and rate card ID {3} was found.", i++, premiumRate.id,
- premiumRate.GetType().Name, premiumRate.rateCardId);
- }
- }
-
- statementBuilder.IncreaseOffsetBy(pageSize);
- } while (statementBuilder.GetOffset() < totalResultSetSize);
-
- Console.WriteLine("Number of results found: {0}", totalResultSetSize);
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/PremiumRateService/UpdatePremiumRates.cs b/examples/AdManager/CSharp/v201811/PremiumRateService/UpdatePremiumRates.cs
deleted file mode 100755
index f5382e65ef5..00000000000
--- a/examples/AdManager/CSharp/v201811/PremiumRateService/UpdatePremiumRates.cs
+++ /dev/null
@@ -1,124 +0,0 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-using System.Collections.Generic;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This code example updates a premium rate to add a flat fee to an existing feature premium.
- /// To determine which premium rates exist, run GetAllPremiumRates.cs.
- ///
- public class UpdatePremiumRates : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get
- {
- return "This code example updates a premium rate to add a flat fee to an " +
- "existing feature premium. To determine which premium rates exist, " +
- "run GetAllPremiumRates.cs.";
- }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- UpdatePremiumRates codeExample = new UpdatePremiumRates();
- Console.WriteLine(codeExample.Description);
- codeExample.Run(new AdManagerUser());
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user)
- {
- using (PremiumRateService premiumRateService = user.GetService())
- {
- long premiumRateId = long.Parse(_T("INSERT_PREMIUM_RATE_ID_HERE"));
-
- // Create a statement to get the premium rate.
- StatementBuilder statementBuilder = new StatementBuilder()
- .Where("id = :id")
- .OrderBy("id ASC")
- .Limit(1)
- .AddValue("id", premiumRateId);
-
- try
- {
- // Get premium rates by statement.
- PremiumRatePage page =
- premiumRateService.getPremiumRatesByStatement(
- statementBuilder.ToStatement());
-
- PremiumRate premiumRate = page.results[0];
-
- // Create a flat fee based premium rate value with a 10% increase.
- PremiumRateValue flatFeePremiumRateValue = new PremiumRateValue();
- flatFeePremiumRateValue.premiumFeature = premiumRate.premiumFeature;
- flatFeePremiumRateValue.rateType = RateType.CPM;
- flatFeePremiumRateValue.adjustmentSize = 10000L;
- flatFeePremiumRateValue.adjustmentType = PremiumAdjustmentType.PERCENTAGE;
-
- // Update the premium rate's values to include a flat fee premium rate.
- List existingPremiumRateValues =
- (premiumRate.premiumRateValues != null)
- ? new List(premiumRate.premiumRateValues)
- : new List();
-
- existingPremiumRateValues.Add(flatFeePremiumRateValue);
- premiumRate.premiumRateValues = existingPremiumRateValues.ToArray();
-
- // Update the premium rates on the server.
- PremiumRate[] premiumRates = premiumRateService.updatePremiumRates(
- new PremiumRate[]
- {
- premiumRate
- });
-
- if (premiumRates != null)
- {
- foreach (PremiumRate updatedPremiumRate in premiumRates)
- {
- Console.WriteLine(
- "Premium rate with ID '{0}' associated with rate card ID '{1}' " +
- "was updated.", updatedPremiumRate.id,
- updatedPremiumRate.rateCardId);
- }
- }
- else
- {
- Console.WriteLine("No premium rates updated.");
- }
- }
- catch (Exception e)
- {
- Console.WriteLine("Failed to update premium rates. Exception says \"{0}\"",
- e.Message);
- }
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/ProductPackageItemService/GetAllProductPackageItems.cs b/examples/AdManager/CSharp/v201811/ProductPackageItemService/GetAllProductPackageItems.cs
deleted file mode 100755
index efa42ecf928..00000000000
--- a/examples/AdManager/CSharp/v201811/ProductPackageItemService/GetAllProductPackageItems.cs
+++ /dev/null
@@ -1,97 +0,0 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This example gets all product package items.
- ///
- public class GetAllProductPackageItems : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get { return "This example gets all product package items."; }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- GetAllProductPackageItems codeExample = new GetAllProductPackageItems();
- Console.WriteLine(codeExample.Description);
- try
- {
- codeExample.Run(new AdManagerUser());
- }
- catch (Exception e)
- {
- Console.WriteLine("Failed to get product package items. Exception says \"{0}\"",
- e.Message);
- }
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user)
- {
- using (ProductPackageItemService productPackageItemService =
- user.GetService())
- {
- // Create a statement to select product package items.
- int pageSize = StatementBuilder.SUGGESTED_PAGE_LIMIT;
- StatementBuilder statementBuilder =
- new StatementBuilder().OrderBy("id ASC").Limit(pageSize);
-
- // Retrieve a small amount of product package items at a time, paging through until
- // all product package items have been retrieved.
- int totalResultSetSize = 0;
- do
- {
- ProductPackageItemPage page =
- productPackageItemService.getProductPackageItemsByStatement(
- statementBuilder.ToStatement());
-
- // Print out some information for each product package item.
- if (page.results != null)
- {
- totalResultSetSize = page.totalResultSetSize;
- int i = page.startIndex;
- foreach (ProductPackageItem productPackageItem in page.results)
- {
- Console.WriteLine(
- "{0}) Product package item with ID {1}, " + "product id {2}, " +
- "and product package id {3} was found.", i++, productPackageItem.id,
- productPackageItem.productId, productPackageItem.productPackageId);
- }
- }
-
- statementBuilder.IncreaseOffsetBy(pageSize);
- } while (statementBuilder.GetOffset() < totalResultSetSize);
-
- Console.WriteLine("Number of results found: {0}", totalResultSetSize);
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/ProductPackageItemService/GetProductPackageItemsForProductPackage.cs b/examples/AdManager/CSharp/v201811/ProductPackageItemService/GetProductPackageItemsForProductPackage.cs
deleted file mode 100755
index 977a05013c1..00000000000
--- a/examples/AdManager/CSharp/v201811/ProductPackageItemService/GetProductPackageItemsForProductPackage.cs
+++ /dev/null
@@ -1,104 +0,0 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This example gets all product package items belonging to a product package.
- ///
- public class GetProductPackageItemsForProductPackage : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get
- {
- return
- "This example gets all product package items belonging to a product package.";
- }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- GetProductPackageItemsForProductPackage codeExample =
- new GetProductPackageItemsForProductPackage();
- long productPackageId = long.Parse("INSERT_PRODUCT_PACKAGE_ID_HERE");
- Console.WriteLine(codeExample.Description);
- try
- {
- codeExample.Run(new AdManagerUser(), productPackageId);
- }
- catch (Exception e)
- {
- Console.WriteLine("Failed to get product package items. Exception says \"{0}\"",
- e.Message);
- }
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user, long productPackageId)
- {
- using (ProductPackageItemService productPackageItemService =
- user.GetService())
- {
- // Create a statement to select product package items.
- int pageSize = StatementBuilder.SUGGESTED_PAGE_LIMIT;
- StatementBuilder statementBuilder = new StatementBuilder()
- .Where("productPackageId = :productPackageId").OrderBy("id ASC").Limit(pageSize)
- .AddValue("productPackageId", productPackageId);
-
- // Retrieve a small amount of product package items at a time, paging through until
- // all product package items have been retrieved.
- int totalResultSetSize = 0;
- do
- {
- ProductPackageItemPage page =
- productPackageItemService.getProductPackageItemsByStatement(
- statementBuilder.ToStatement());
-
- // Print out some information for each product package item.
- if (page.results != null)
- {
- totalResultSetSize = page.totalResultSetSize;
- int i = page.startIndex;
- foreach (ProductPackageItem productPackageItem in page.results)
- {
- Console.WriteLine(
- "{0}) Product package item with ID {1}, " + "product ID {2}, " +
- "and product package ID {3} was found.", i++, productPackageItem.id,
- productPackageItem.productId, productPackageItem.productPackageId);
- }
- }
-
- statementBuilder.IncreaseOffsetBy(pageSize);
- } while (statementBuilder.GetOffset() < totalResultSetSize);
-
- Console.WriteLine("Number of results found: {0}", totalResultSetSize);
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/ProductPackageService/ActivateProductPackage.cs b/examples/AdManager/CSharp/v201811/ProductPackageService/ActivateProductPackage.cs
deleted file mode 100755
index 206250c08ef..00000000000
--- a/examples/AdManager/CSharp/v201811/ProductPackageService/ActivateProductPackage.cs
+++ /dev/null
@@ -1,136 +0,0 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-using System.Collections.Generic;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This code example activates a product package. To determine which product packages exist,
- /// run GetAllProductPackages.cs.
- /// ProductPackageService.performProductPackageAction
- ///
- public class ActivateProductPackage : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get
- {
- return
- "This code example activates a product package. To determine which product " +
- "packages exist, run GetAllProductPackages.cs.";
- }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- ActivateProductPackage codeExample = new ActivateProductPackage();
- Console.WriteLine(codeExample.Description);
- codeExample.Run(new AdManagerUser());
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user)
- {
- using (ProductPackageService productPackageService =
- user.GetService())
- {
- // Set the ID of the product package.
- long productPackageId = long.Parse(_T("INSERT_PRODUCT_PACKAGE_ID_HERE"));
-
- // Create statement to select the product package.
- StatementBuilder statementBuilder = new StatementBuilder()
- .Where("id = :id")
- .OrderBy("id ASC")
- .Limit(1)
- .AddValue("id", productPackageId);
-
- // Set default for page.
- ProductPackagePage page = new ProductPackagePage();
- List productPackageIds = new List();
- int i = 0;
-
- try
- {
- do
- {
- // Get product packages by statement.
- page = productPackageService.getProductPackagesByStatement(
- statementBuilder.ToStatement());
-
- if (page.results != null)
- {
- foreach (ProductPackage productPackage in page.results)
- {
- Console.WriteLine(
- "{0}) Product package with ID = '{1}', name = '{2}', and " +
- "status ='{3}' will be activated.", i++, productPackage.id,
- productPackage.name, productPackage.status);
- productPackageIds.Add(productPackage.id.ToString());
- }
- }
-
- statementBuilder.IncreaseOffsetBy(StatementBuilder.SUGGESTED_PAGE_LIMIT);
- } while (statementBuilder.GetOffset() < page.totalResultSetSize);
-
- Console.WriteLine("Number of product packages to be activated: {0}",
- productPackageIds.Count);
-
- if (productPackageIds.Count > 0)
- {
- // Modify statement for action.
- statementBuilder.RemoveLimitAndOffset();
-
- // Create action.
- ActivateProductPackages action = new ActivateProductPackages();
-
- // Perform action.
- UpdateResult result =
- productPackageService.performProductPackageAction(action,
- statementBuilder.ToStatement());
-
- // Display results.
- if (result != null && result.numChanges > 0)
- {
- Console.WriteLine("Number of product packages activated: {0}",
- result.numChanges);
- }
- else
- {
- Console.WriteLine("No product packages were activated.");
- }
- }
- }
- catch (Exception e)
- {
- Console.WriteLine("Failed to activate product packages. Exception says \"{0}\"",
- e.Message);
- }
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/ProductPackageService/CreateProductPackages.cs b/examples/AdManager/CSharp/v201811/ProductPackageService/CreateProductPackages.cs
deleted file mode 100755
index bfeb147b953..00000000000
--- a/examples/AdManager/CSharp/v201811/ProductPackageService/CreateProductPackages.cs
+++ /dev/null
@@ -1,93 +0,0 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This code example creates a product package. To determine which product packages exist,
- /// run GetAllProductPackages.cs.
- ///
- public class CreateProductPackages : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get
- {
- return "This code example creates a product package. To determine which product " +
- "packges exist, run GetAllProductPackages.cs.";
- }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- CreateProductPackages codeExample = new CreateProductPackages();
- Console.WriteLine(codeExample.Description);
- codeExample.Run(new AdManagerUser());
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user)
- {
- using (ProductPackageService productPackageService =
- user.GetService())
- {
- // Set the ID of the rate card to associate the product package with.
- long rateCardId = long.Parse(_T("INSERT_RATE_CARD_ID_HERE"));
-
- // Create a product package.
- ProductPackage productPackage = new ProductPackage();
- productPackage.name = "Product package #" + new Random().Next(int.MaxValue);
- productPackage.rateCardIds = new long[]
- {
- rateCardId
- };
-
- try
- {
- // Create the product packages on the server.
- ProductPackage[] packages = productPackageService.createProductPackages(
- new ProductPackage[]
- {
- productPackage
- });
-
- foreach (ProductPackage createdProductPackage in packages)
- {
- Console.WriteLine(
- "A product package with ID \"{0}\" and name \"{1}\" was created.",
- createdProductPackage.id, createdProductPackage.name);
- }
- }
- catch (Exception e)
- {
- Console.WriteLine("Failed to create product packages. Exception says \"{0}\"",
- e.Message);
- }
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/ProductPackageService/GetAllProductPackages.cs b/examples/AdManager/CSharp/v201811/ProductPackageService/GetAllProductPackages.cs
deleted file mode 100755
index bb45836a0b4..00000000000
--- a/examples/AdManager/CSharp/v201811/ProductPackageService/GetAllProductPackages.cs
+++ /dev/null
@@ -1,97 +0,0 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This example gets all product packages.
- ///
- public class GetAllProductPackages : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get { return "This example gets all product packages."; }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- GetAllProductPackages codeExample = new GetAllProductPackages();
- Console.WriteLine(codeExample.Description);
- try
- {
- codeExample.Run(new AdManagerUser());
- }
- catch (Exception e)
- {
- Console.WriteLine("Failed to get product packages. Exception says \"{0}\"",
- e.Message);
- }
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user)
- {
- using (ProductPackageService productPackageService =
- user.GetService()
- )
- {
- // Create a statement to select product packages.
- int pageSize = StatementBuilder.SUGGESTED_PAGE_LIMIT;
- StatementBuilder statementBuilder =
- new StatementBuilder().OrderBy("id ASC").Limit(pageSize);
-
- // Retrieve a small amount of product packages at a time, paging through until all
- // product packages have been retrieved.
- int totalResultSetSize = 0;
- do
- {
- ProductPackagePage page =
- productPackageService.getProductPackagesByStatement(statementBuilder
- .ToStatement());
-
- // Print out some information for each product package.
- if (page.results != null)
- {
- totalResultSetSize = page.totalResultSetSize;
- int i = page.startIndex;
- foreach (ProductPackage productPackage in page.results)
- {
- Console.WriteLine(
- "{0}) Product package with ID {1} and name \"{2}\" was found.", i++,
- productPackage.id, productPackage.name);
- }
- }
-
- statementBuilder.IncreaseOffsetBy(pageSize);
- } while (statementBuilder.GetOffset() < totalResultSetSize);
-
- Console.WriteLine("Number of results found: {0}", totalResultSetSize);
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/ProductPackageService/UpdateProductPackages.cs b/examples/AdManager/CSharp/v201811/ProductPackageService/UpdateProductPackages.cs
deleted file mode 100755
index 612b26ac81b..00000000000
--- a/examples/AdManager/CSharp/v201811/ProductPackageService/UpdateProductPackages.cs
+++ /dev/null
@@ -1,112 +0,0 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This code example updates the notes of a product package. To determine which product
- /// packages exist, run GetAllProductPackages.cs.
- /// ProductPackageService.updateProductPackages
- ///
- public class UpdateProductPackages : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get
- {
- return "This code example updates the notes of a product package. To determine " +
- "which product packages exist, run GetAllProductPackages.cs.";
- }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- UpdateProductPackages codeExample = new UpdateProductPackages();
- Console.WriteLine(codeExample.Description);
- codeExample.Run(new AdManagerUser());
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user)
- {
- using (ProductPackageService productPackageService =
- user.GetService())
- {
- long productPackageId = long.Parse(_T("INSERT_PRODUCT_PACKAGE_ID_HERE"));
-
- // Create a statement to get the product package.
- StatementBuilder statementBuilder = new StatementBuilder()
- .Where("id = :id")
- .OrderBy("id ASC")
- .Limit(1)
- .AddValue("id", productPackageId);
-
- try
- {
- // Get the product package.
- ProductPackagePage page =
- productPackageService.getProductPackagesByStatement(statementBuilder
- .ToStatement());
-
- ProductPackage productPackage = page.results[0];
-
- // Update the product package object by changing its notes.
- productPackage.notes =
- "This product package is not to be sold before the end of the " + "month.";
-
- // Update the product packages on the server.
- ProductPackage[] productPackages = productPackageService.updateProductPackages(
- new ProductPackage[]
- {
- productPackage
- });
-
- if (productPackages != null)
- {
- foreach (ProductPackage updatedProductPackage in productPackages)
- {
- Console.WriteLine(
- "Product package with ID = \"{0}\", name = \"{1}\", and " +
- "notes = \"{2}\" was updated.", updatedProductPackage.id,
- updatedProductPackage.name, updatedProductPackage.notes);
- }
- }
- else
- {
- Console.WriteLine("No product packages updated.");
- }
- }
- catch (Exception e)
- {
- Console.WriteLine("Failed to update product packages. Exception says \"{0}\"",
- e.Message);
- }
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/ProductService/GetAllProducts.cs b/examples/AdManager/CSharp/v201811/ProductService/GetAllProducts.cs
deleted file mode 100755
index b6c9e8d92c9..00000000000
--- a/examples/AdManager/CSharp/v201811/ProductService/GetAllProducts.cs
+++ /dev/null
@@ -1,93 +0,0 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This example gets all products.
- ///
- public class GetAllProducts : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get { return "This example gets all products."; }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- GetAllProducts codeExample = new GetAllProducts();
- Console.WriteLine(codeExample.Description);
- try
- {
- codeExample.Run(new AdManagerUser());
- }
- catch (Exception e)
- {
- Console.WriteLine("Failed to get products. Exception says \"{0}\"", e.Message);
- }
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user)
- {
- using (ProductService productService = user.GetService())
- {
- // Create a statement to select products.
- int pageSize = StatementBuilder.SUGGESTED_PAGE_LIMIT;
- StatementBuilder statementBuilder =
- new StatementBuilder().OrderBy("id ASC").Limit(pageSize);
-
- // Retrieve a small amount of products at a time, paging through until all
- // products have been retrieved.
- int totalResultSetSize = 0;
- do
- {
- ProductPage page =
- productService.getProductsByStatement(statementBuilder.ToStatement());
-
- // Print out some information for each product.
- if (page.results != null)
- {
- totalResultSetSize = page.totalResultSetSize;
- int i = page.startIndex;
- foreach (Product product in page.results)
- {
- Console.WriteLine(
- "{0}) Product with ID {1} and name \"{2}\" was found.", i++,
- product.id, product.name);
- }
- }
-
- statementBuilder.IncreaseOffsetBy(pageSize);
- } while (statementBuilder.GetOffset() < totalResultSetSize);
-
- Console.WriteLine("Number of results found: {0}", totalResultSetSize);
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/ProductService/GetProductsForProductTemplate.cs b/examples/AdManager/CSharp/v201811/ProductService/GetProductsForProductTemplate.cs
deleted file mode 100755
index 62211a94c51..00000000000
--- a/examples/AdManager/CSharp/v201811/ProductService/GetProductsForProductTemplate.cs
+++ /dev/null
@@ -1,96 +0,0 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This example gets all products created from a product template.
- ///
- public class GetProductsForProductTemplate : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get { return "This example gets all products created from a product template."; }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- GetProductsForProductTemplate codeExample = new GetProductsForProductTemplate();
- long productTemplateId = long.Parse("INSERT_PRODUCT_TEMPLATE_ID_HERE");
- Console.WriteLine(codeExample.Description);
- try
- {
- codeExample.Run(new AdManagerUser(), productTemplateId);
- }
- catch (Exception e)
- {
- Console.WriteLine("Failed to get products. Exception says \"{0}\"", e.Message);
- }
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user, long productTemplateId)
- {
- using (ProductService productService = user.GetService())
- {
- // Create a statement to select products.
- int pageSize = StatementBuilder.SUGGESTED_PAGE_LIMIT;
- StatementBuilder statementBuilder = new StatementBuilder()
- .Where("productTemplateId = :productTemplateId").OrderBy("id ASC")
- .Limit(pageSize)
- .AddValue("productTemplateId", productTemplateId);
-
- // Retrieve a small amount of products at a time, paging through until all
- // products have been retrieved.
- int totalResultSetSize = 0;
- do
- {
- ProductPage page =
- productService.getProductsByStatement(statementBuilder.ToStatement());
-
- // Print out some information for each product.
- if (page.results != null)
- {
- totalResultSetSize = page.totalResultSetSize;
- int i = page.startIndex;
- foreach (Product product in page.results)
- {
- Console.WriteLine(
- "{0}) Product with ID {1} and name \"{2}\" was found.", i++,
- product.id, product.name);
- }
- }
-
- statementBuilder.IncreaseOffsetBy(pageSize);
- } while (statementBuilder.GetOffset() < totalResultSetSize);
-
- Console.WriteLine("Number of results found: {0}", totalResultSetSize);
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/ProductService/UpdateProducts.cs b/examples/AdManager/CSharp/v201811/ProductService/UpdateProducts.cs
deleted file mode 100755
index ffe17d6398f..00000000000
--- a/examples/AdManager/CSharp/v201811/ProductService/UpdateProducts.cs
+++ /dev/null
@@ -1,107 +0,0 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This code example updates the note of a product. To determine which products exist,
- /// run GetAllProducts.cs.
- ///
- public class UpdateProducts : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get
- {
- return "This code example updates the note of an product. To determine which " +
- "products exist, run GetAllProducts.cs.";
- }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- UpdateProducts codeExample = new UpdateProducts();
- Console.WriteLine(codeExample.Description);
- codeExample.Run(new AdManagerUser());
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user)
- {
- using (ProductService productService = user.GetService())
- {
- long productId = long.Parse(_T("INSERT_PRODUCT_ID_HERE"));
-
- // Create a statement to get the product.
- StatementBuilder statementBuilder = new StatementBuilder()
- .Where("id = :id")
- .OrderBy("id ASC")
- .Limit(1)
- .AddValue("id", productId);
-
- try
- {
- // Get products by statement.
- ProductPage page =
- productService.getProductsByStatement(statementBuilder.ToStatement());
-
- Product product = page.results[0];
-
- // Update the product object by changing its note.
- product.notes = "Product needs further review before approval.";
-
- // Update the products on the server.
- Product[] products = productService.updateProducts(new Product[]
- {
- product
- });
-
- if (products != null)
- {
- foreach (Product updatedProduct in products)
- {
- Console.WriteLine(
- "Product with ID = '{0}', name = '{1}', and notes = '{2}' was " +
- "updated.", updatedProduct.id, updatedProduct.name,
- updatedProduct.notes);
- }
- }
- else
- {
- Console.WriteLine("No products updated.");
- }
- }
- catch (Exception e)
- {
- Console.WriteLine("Failed to update products. Exception says \"{0}\"",
- e.Message);
- }
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/ProductTemplateService/ActivateProductTemplates.cs b/examples/AdManager/CSharp/v201811/ProductTemplateService/ActivateProductTemplates.cs
deleted file mode 100755
index c6d7469f20d..00000000000
--- a/examples/AdManager/CSharp/v201811/ProductTemplateService/ActivateProductTemplates.cs
+++ /dev/null
@@ -1,135 +0,0 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-using System.Collections.Generic;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This code example activates a product template. To determine which product templates
- /// exist, run GetAllProductTemplates.cs.
- ///
- public class ActivateProductTemplates : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get
- {
- return
- "This code example activates a product template. To determine which product " +
- "templates exist, run GetAllProductTemplates.cs.";
- }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- ActivateProductTemplates codeExample = new ActivateProductTemplates();
- Console.WriteLine(codeExample.Description);
- codeExample.Run(new AdManagerUser());
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user)
- {
- using (ProductTemplateService productTemplateService =
- user.GetService())
- {
- // Set the ID of the product template to activate.
- long productTemplateId = long.Parse(_T("INSERT_PRODUCT_TEMPLATE_ID_HERE"));
-
- // Create statement to select a product template by ID.
- StatementBuilder statementBuilder = new StatementBuilder()
- .Where("id = :id")
- .OrderBy("id ASC")
- .Limit(StatementBuilder.SUGGESTED_PAGE_LIMIT)
- .AddValue("id", productTemplateId);
-
- // Set default for page.
- ProductTemplatePage page = new ProductTemplatePage();
- List productTemplateIds = new List();
-
- try
- {
- do
- {
- // Get product templates by statement.
- page = productTemplateService.getProductTemplatesByStatement(
- statementBuilder.ToStatement());
-
- if (page.results != null)
- {
- int i = page.startIndex;
- foreach (ProductTemplate productTemplate in page.results)
- {
- Console.WriteLine(
- "{0}) Product template with ID ='{1}' will be activated.", i++,
- productTemplate.id);
- productTemplateIds.Add(productTemplate.id.ToString());
- }
- }
-
- statementBuilder.IncreaseOffsetBy(StatementBuilder.SUGGESTED_PAGE_LIMIT);
- } while (statementBuilder.GetOffset() < page.totalResultSetSize);
-
- Console.WriteLine("Number of product templates to be activated: {0}",
- productTemplateIds.Count);
-
- if (productTemplateIds.Count > 0)
- {
- // Modify statement.
- statementBuilder.RemoveLimitAndOffset();
-
- // Create action.
- Google.Api.Ads.AdManager.v201811.ActivateProductTemplates action =
- new Google.Api.Ads.AdManager.v201811.ActivateProductTemplates();
-
- // Perform action.
- UpdateResult result =
- productTemplateService.performProductTemplateAction(action,
- statementBuilder.ToStatement());
-
- // Display results.
- if (result != null && result.numChanges > 0)
- {
- Console.WriteLine("Number of product templates activated: {0}",
- result.numChanges);
- }
- else
- {
- Console.WriteLine("No product templates were activated.");
- }
- }
- }
- catch (Exception e)
- {
- Console.WriteLine(
- "Failed to activate product templates. Exception says \"{0}\"", e.Message);
- }
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/ProductTemplateService/CreateProductTemplates.cs b/examples/AdManager/CSharp/v201811/ProductTemplateService/CreateProductTemplates.cs
deleted file mode 100755
index 6e0735860ff..00000000000
--- a/examples/AdManager/CSharp/v201811/ProductTemplateService/CreateProductTemplates.cs
+++ /dev/null
@@ -1,195 +0,0 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This code example creates a product template. To see which product templates exist,
- /// run GetAllProductTemplates.cs.
- ///
- public class CreateProductTemplates : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get
- {
- return "This code example creates a product template. To see which product " +
- "templates exist, run GetAllProductTemplates.cs.";
- }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- CreateProductTemplates codeExample = new CreateProductTemplates();
- Console.WriteLine(codeExample.Description);
- codeExample.Run(new AdManagerUser());
- }
-
- ///
- /// Run the code examples.
- ///
- public void Run(AdManagerUser user)
- {
- using (ProductTemplateService productTemplateService =
- user.GetService())
-
- using (NetworkService networkService = user.GetService())
- {
- // Create a product template.
- ProductTemplate productTemplate = new ProductTemplate();
- productTemplate.name = "Product template #" + new Random().Next(int.MaxValue);
- productTemplate.description = "This product template creates standard " +
- "proposal line items targeting Chrome browsers with product segmentation " +
- "on ad units and geo targeting.";
-
- // Set the name macro which will be used to generate the names of the products.
- // This will create a segmentation based on the line item type, ad unit, and
- // location.
- productTemplate.nameMacro =
- " - - - ";
-
- // Set the product type so the created proposal line items will be trafficked
- // in DFP.
- productTemplate.productType = ProductType.DFP;
-
- // Set rate type to create CPM priced proposal line items.
- productTemplate.rateType = RateType.CPM;
-
- // Optionally set the creative rotation of the product to serve one or more
- // creatives.
- productTemplate.roadblockingType = RoadblockingType.ONE_OR_MORE;
- productTemplate.deliveryRateType = DeliveryRateType.AS_FAST_AS_POSSIBLE;
-
- // Create the master creative placeholder.
- CreativePlaceholder creativeMasterPlaceholder = new CreativePlaceholder();
- creativeMasterPlaceholder.size = new Size()
- {
- width = 728,
- height = 90,
- isAspectRatio = false
- };
-
- // Create companion creative placeholders.
- CreativePlaceholder companionCreativePlaceholder = new CreativePlaceholder();
- companionCreativePlaceholder.size = new Size()
- {
- width = 300,
- height = 250,
- isAspectRatio = false
- };
-
- // Set the size of creatives that can be associated with the product template.
- productTemplate.creativePlaceholders = new CreativePlaceholder[]
- {
- creativeMasterPlaceholder,
- companionCreativePlaceholder
- };
-
- // Set the type of proposal line item to be created from the product template.
- productTemplate.lineItemType = LineItemType.STANDARD;
-
- // Get the root ad unit ID used to target the whole site.
- String rootAdUnitId = networkService.getCurrentNetwork().effectiveRootAdUnitId;
-
- // Create ad unit targeting for the root ad unit (i.e. the whole network).
- AdUnitTargeting adUnitTargeting = new AdUnitTargeting();
- adUnitTargeting.adUnitId = rootAdUnitId;
- adUnitTargeting.includeDescendants = true;
-
- // Create geo targeting for the US.
- Location countryLocation = new Location();
- countryLocation.id = 2840L;
-
- // Create geo targeting for Hong Kong.
- Location regionLocation = new Location();
- regionLocation.id = 2344L;
-
- GeoTargeting geoTargeting = new GeoTargeting();
- geoTargeting.targetedLocations = new Location[]
- {
- countryLocation,
- regionLocation
- };
-
- // Add browser targeting to Chrome on the product template distinct from product
- // segmentation.
- Browser chromeBrowser = new Browser();
- chromeBrowser.id = 500072L;
-
- BrowserTargeting browserTargeting = new BrowserTargeting();
- browserTargeting.browsers = new Browser[]
- {
- chromeBrowser
- };
-
- TechnologyTargeting technologyTargeting = new TechnologyTargeting();
- technologyTargeting.browserTargeting = browserTargeting;
-
- Targeting productTemplateTargeting = new Targeting();
- productTemplateTargeting.technologyTargeting = technologyTargeting;
-
- productTemplate.builtInTargeting = productTemplateTargeting;
-
- productTemplate.customizableAttributes = new CustomizableAttributes()
- {
- allowPlacementTargetingCustomization = true
- };
-
- // Add inventory and geo targeting as product segmentation.
- ProductSegmentation productSegmentation = new ProductSegmentation();
- productSegmentation.adUnitSegments = new AdUnitTargeting[]
- {
- adUnitTargeting
- };
- productSegmentation.geoSegment = geoTargeting;
-
- productTemplate.productSegmentation = productSegmentation;
-
- try
- {
- // Create the product template on the server.
- ProductTemplate[] productTemplates =
- productTemplateService.createProductTemplates(new ProductTemplate[]
- {
- productTemplate
- });
-
- foreach (ProductTemplate createdProductTemplate in productTemplates)
- {
- Console.WriteLine(
- "A product template with ID \"{0}\" and name \"{1}\" was created.",
- createdProductTemplate.id, createdProductTemplate.name);
- }
- }
- catch (Exception e)
- {
- Console.WriteLine(
- "Failed to create product templates. Exception says \"{0}\"",
- e.Message);
- }
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/ProductTemplateService/CreateProgrammaticProductTemplates.cs b/examples/AdManager/CSharp/v201811/ProductTemplateService/CreateProgrammaticProductTemplates.cs
deleted file mode 100755
index 880b4af49d9..00000000000
--- a/examples/AdManager/CSharp/v201811/ProductTemplateService/CreateProgrammaticProductTemplates.cs
+++ /dev/null
@@ -1,172 +0,0 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This example creates a programmatic product template. Your network must have
- /// sales management enabled to run this example.
- ///
- /// To publish the created product template to Marketplace, you must create a
- /// ProductTemplateBaseRate with a Marketplace rate card.
- ///
- public class CreateProgrammaticProductTemplates : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get
- {
- return "This example creates a programmatic product template. Your network must " +
- "have sales management enabled to run this example. To publish the created " +
- "product template to Marketplace, you must create a ProductTemplateBaseRate " +
- "with a Marketplace rate card.";
- }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- CreateProgrammaticProductTemplates codeExample =
- new CreateProgrammaticProductTemplates();
- Console.WriteLine(codeExample.Description);
- codeExample.Run(new AdManagerUser());
- }
-
- ///
- /// Run the code examples.
- ///
- public void Run(AdManagerUser user)
- {
- using (ProductTemplateService productTemplateService =
- user.GetService())
-
- using (NetworkService networkService =
- user.GetService())
- {
- // Create a product template.
- ProductTemplate productTemplate = new ProductTemplate();
- productTemplate.name = "Programmatic product template #" +
- new Random().Next(int.MaxValue);
- productTemplate.description =
- "This product template creates programmatic proposal line " +
- "items targeting all ad units with product segmentation on geo targeting.";
-
- // Set the name macro which will be used to generate the names of the products.
- // This will create a segmentation based on the line item type, ad unit, and
- // location.
- productTemplate.nameMacro =
- " - - - ";
-
- // Set the product type so the created proposal line items will be trafficked in
- // DFP.
- productTemplate.productType = ProductType.DFP;
-
- // Set required Marketplace information.
- productTemplate.productTemplateMarketplaceInfo =
- new ProductTemplateMarketplaceInfo()
- {
- adExchangeEnvironment = AdExchangeEnvironment.DISPLAY,
- };
-
- // Set rate type to create CPM priced proposal line items.
- productTemplate.rateType = RateType.CPM;
-
- // Create the creative placeholder.
- CreativePlaceholder creativePlaceholder = new CreativePlaceholder();
- creativePlaceholder.size = new Size()
- {
- width = 300,
- height = 250,
- isAspectRatio = false
- };
-
- // Set the size of creatives that can be associated with the product template.
- productTemplate.creativePlaceholders = new CreativePlaceholder[]
- {
- creativePlaceholder
- };
-
- // Set the type of proposal line item to be created from the product template.
- productTemplate.lineItemType = LineItemType.STANDARD;
-
- // Get the root ad unit ID used to target the whole site.
- String rootAdUnitId = networkService.getCurrentNetwork().effectiveRootAdUnitId;
-
- // Create ad unit targeting for the root ad unit (i.e. the whole network).
- AdUnitTargeting adUnitTargeting = new AdUnitTargeting();
- adUnitTargeting.adUnitId = rootAdUnitId;
- adUnitTargeting.includeDescendants = true;
-
- // Create geo targeting for the US.
- Location countryLocation = new Location();
- countryLocation.id = 2840L;
-
- // Create geo targeting for Hong Kong.
- Location regionLocation = new Location();
- regionLocation.id = 2344L;
-
- GeoTargeting geoTargeting = new GeoTargeting();
- geoTargeting.targetedLocations = new Location[]
- {
- countryLocation,
- regionLocation
- };
-
- // Add inventory and geo targeting as product segmentation.
- ProductSegmentation productSegmentation = new ProductSegmentation();
- productSegmentation.adUnitSegments = new AdUnitTargeting[]
- {
- adUnitTargeting
- };
- productSegmentation.geoSegment = geoTargeting;
-
- productTemplate.productSegmentation = productSegmentation;
-
- try
- {
- // Create the product template on the server.
- ProductTemplate[] productTemplates =
- productTemplateService.createProductTemplates(new ProductTemplate[]
- {
- productTemplate
- });
-
- foreach (ProductTemplate createdProductTemplate in productTemplates)
- {
- Console.WriteLine(
- "A programmatic product template with ID \"{0}\" " +
- "and name \"{1}\" was created.", createdProductTemplate.id,
- createdProductTemplate.name);
- }
- }
- catch (Exception e)
- {
- Console.WriteLine(
- "Failed to create product templates. Exception says \"{0}\"",
- e.Message);
- }
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/ProductTemplateService/GetSponsorshipProductTemplates.cs b/examples/AdManager/CSharp/v201811/ProductTemplateService/GetSponsorshipProductTemplates.cs
deleted file mode 100755
index e8cff2c14d1..00000000000
--- a/examples/AdManager/CSharp/v201811/ProductTemplateService/GetSponsorshipProductTemplates.cs
+++ /dev/null
@@ -1,97 +0,0 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This example gets all sponsorship product templates.
- ///
- public class GetSponsorshipProductTemplates : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get { return "This example gets all sponsorship product templates."; }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- GetSponsorshipProductTemplates codeExample = new GetSponsorshipProductTemplates();
- Console.WriteLine(codeExample.Description);
- try
- {
- codeExample.Run(new AdManagerUser());
- }
- catch (Exception e)
- {
- Console.WriteLine("Failed to get product templates. Exception says \"{0}\"",
- e.Message);
- }
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user)
- {
- using (ProductTemplateService productTemplateService =
- user.GetService())
- {
- // Create a statement to select product templates.
- int pageSize = StatementBuilder.SUGGESTED_PAGE_LIMIT;
- StatementBuilder statementBuilder = new StatementBuilder()
- .Where("lineItemType = :lineItemType").OrderBy("id ASC").Limit(pageSize)
- .AddValue("lineItemType", LineItemType.SPONSORSHIP.ToString());
-
- // Retrieve a small amount of product templates at a time, paging through until all
- // product templates have been retrieved.
- int totalResultSetSize = 0;
- do
- {
- ProductTemplatePage page =
- productTemplateService.getProductTemplatesByStatement(
- statementBuilder.ToStatement());
-
- // Print out some information for each product template.
- if (page.results != null)
- {
- totalResultSetSize = page.totalResultSetSize;
- int i = page.startIndex;
- foreach (ProductTemplate productTemplate in page.results)
- {
- Console.WriteLine(
- "{0}) Product template with ID {1} and name \"{2}\" was found.",
- i++, productTemplate.id, productTemplate.name);
- }
- }
-
- statementBuilder.IncreaseOffsetBy(pageSize);
- } while (statementBuilder.GetOffset() < totalResultSetSize);
-
- Console.WriteLine("Number of results found: {0}", totalResultSetSize);
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/ProductTemplateService/UpdateProductTemplates.cs b/examples/AdManager/CSharp/v201811/ProductTemplateService/UpdateProductTemplates.cs
deleted file mode 100755
index e7b2ce0df68..00000000000
--- a/examples/AdManager/CSharp/v201811/ProductTemplateService/UpdateProductTemplates.cs
+++ /dev/null
@@ -1,137 +0,0 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-using System.Collections.Generic;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This example updates a product template's targeting to include a new GeoTarget.
- /// To determine which product templates exist, run GetAllProductTemplates.cs.
- ///
- public class UpdateProductTemplates : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get
- {
- return "This example updates a product template's targeting to include a new " +
- "GeoTarget. To determine which product templates exist, " +
- "run GetAllProductTemplates.cs.";
- }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- UpdateProductTemplates codeExample = new UpdateProductTemplates();
- Console.WriteLine(codeExample.Description);
- codeExample.Run(new AdManagerUser());
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user)
- {
- using (ProductTemplateService productTemplateService =
- user.GetService())
- {
- // Set the ID of the product template.
- long productTemplateId = long.Parse(_T("INSERT_PRODUCT_TEMPLATE_ID_HERE"));
-
- // Create a statement to get the product template.
- StatementBuilder statementBuilder = new StatementBuilder()
- .Where("id = :id")
- .OrderBy("id ASC")
- .Limit(1)
- .AddValue("id", productTemplateId);
-
- try
- {
- // Get product templates by statement.
- ProductTemplatePage page =
- productTemplateService.getProductTemplatesByStatement(
- statementBuilder.ToStatement());
-
- ProductTemplate productTemplate = page.results[0];
-
- // Add geo targeting for Canada to the product template.
- Location countryLocation = new Location();
- countryLocation.id = 2124L;
-
- Targeting productTemplateTargeting = productTemplate.builtInTargeting;
- GeoTargeting geoTargeting = productTemplateTargeting.geoTargeting;
-
- List existingTargetedLocations = new List();
-
- if (geoTargeting == null)
- {
- geoTargeting = new GeoTargeting();
- }
- else if (geoTargeting.targetedLocations != null)
- {
- existingTargetedLocations =
- new List(geoTargeting.targetedLocations);
- }
-
- existingTargetedLocations.Add(countryLocation);
-
- Location[] newTargetedLocations = new Location[existingTargetedLocations.Count];
- existingTargetedLocations.CopyTo(newTargetedLocations);
- geoTargeting.targetedLocations = newTargetedLocations;
-
- productTemplateTargeting.geoTargeting = geoTargeting;
- productTemplate.builtInTargeting = productTemplateTargeting;
-
- // Update the product template on the server.
- ProductTemplate[] productTemplates =
- productTemplateService.updateProductTemplates(new ProductTemplate[]
- {
- productTemplate
- });
-
- if (productTemplates != null)
- {
- foreach (ProductTemplate updatedProductTemplate in productTemplates)
- {
- Console.WriteLine(
- "A product template with ID = '{0}' and name '{1}' was updated.",
- updatedProductTemplate.id, updatedProductTemplate.name);
- }
- }
- else
- {
- Console.WriteLine("No product templates updated.");
- }
- }
- catch (Exception e)
- {
- Console.WriteLine("Failed to update product templates. Exception says \"{0}\"",
- e.Message);
- }
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/ProposalLineItemService/CreateProgrammaticProposalLineItems.cs b/examples/AdManager/CSharp/v201811/ProposalLineItemService/CreateProgrammaticProposalLineItems.cs
deleted file mode 100755
index 1e02c8235b0..00000000000
--- a/examples/AdManager/CSharp/v201811/ProposalLineItemService/CreateProgrammaticProposalLineItems.cs
+++ /dev/null
@@ -1,133 +0,0 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This code example creates a new programmatic proposal line item that
- /// uses its product's targeting. Your network must have sales management enabled
- /// to run this example.
- ///
- public class CreateProgrammaticProposalLineItems : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get
- {
- return "This code example creates a new programmatic proposal line item that " +
- "uses its product's targeting. Your network must have sales management " +
- "enabled to run this example.";
- }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- CreateProgrammaticProposalLineItems codeExample =
- new CreateProgrammaticProposalLineItems();
- Console.WriteLine(codeExample.Description);
-
- long proposalId = long.Parse(_T("INSERT_PROPOSAL_ID_HERE"));
- long rateCardId = long.Parse(_T("INSERT_RATE_CARD_ID_HERE"));
- long productId = long.Parse(_T("INSERT_PRODUCT_ID_HERE"));
-
- codeExample.Run(new AdManagerUser(), proposalId, rateCardId, productId);
- }
-
- ///
- /// Run the code examples.
- ///
- public void Run(AdManagerUser user, long proposalId, long rateCardId, long productId)
- {
- using (ProposalLineItemService proposalLineItemService =
- user.GetService())
- {
- // Create a proposal line item.
- ProposalLineItem proposalLineItem = new ProposalLineItem();
- proposalLineItem.name = "Programmatic proposal line item #" +
- new Random().Next(int.MaxValue);
- proposalLineItem.proposalId = proposalId;
- proposalLineItem.rateCardId = rateCardId;
- proposalLineItem.productId = productId;
-
- // Set the Marketplace information.
- proposalLineItem.marketplaceInfo = new ProposalLineItemMarketplaceInfo()
- {
- adExchangeEnvironment = AdExchangeEnvironment.DISPLAY
- };
-
- // Set the length of the proposal line item to run.
- proposalLineItem.startDateTime =
- DateTimeUtilities.FromDateTime(System.DateTime.Now.AddDays(7),
- "America/New_York");
- proposalLineItem.endDateTime =
- DateTimeUtilities.FromDateTime(System.DateTime.Now.AddDays(30),
- "America/New_York");
-
- // Set pricing for the proposal line item for 1000 impressions at a CPM of $2
- // for a total value of $2.
- proposalLineItem.goal = new Goal()
- {
- unitType = UnitType.IMPRESSIONS,
- units = 1000L
- };
- proposalLineItem.netCost = new Money()
- {
- currencyCode = "USD",
- microAmount = 2000000L
- };
- proposalLineItem.netRate = new Money()
- {
- currencyCode = "USD",
- microAmount = 2000000L
- };
- proposalLineItem.rateType = RateType.CPM;
-
- try
- {
- // Create the proposal line item on the server.
- ProposalLineItem[] proposalLineItems =
- proposalLineItemService.createProposalLineItems(new ProposalLineItem[]
- {
- proposalLineItem
- });
-
- foreach (ProposalLineItem createdProposalLineItem in proposalLineItems)
- {
- Console.WriteLine(
- "A programmatic proposal line item with ID \"{0}\" " +
- "and name \"{1}\" was created.", createdProposalLineItem.id,
- createdProposalLineItem.name);
- }
- }
- catch (Exception e)
- {
- Console.WriteLine(
- "Failed to create proposal line items. Exception says \"{0}\"", e.Message);
- }
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/ProposalLineItemService/CreateProgrammaticProposalLineItemsForNonSalesManagement.cs b/examples/AdManager/CSharp/v201811/ProposalLineItemService/CreateProgrammaticProposalLineItemsForNonSalesManagement.cs
deleted file mode 100755
index dd6fe31af95..00000000000
--- a/examples/AdManager/CSharp/v201811/ProposalLineItemService/CreateProgrammaticProposalLineItemsForNonSalesManagement.cs
+++ /dev/null
@@ -1,170 +0,0 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This example creates a new programmatic proposal line item in a
- /// non-sales management network.
- ///
- public class CreateProgrammaticProposalLineItemsForNonSalesManagement : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get
- {
- return "This example creates a new programmatic proposal line item in a " +
- "non-sales management network.";
- }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- CreateProgrammaticProposalLineItemsForNonSalesManagement codeExample =
- new CreateProgrammaticProposalLineItemsForNonSalesManagement();
- Console.WriteLine(codeExample.Description);
-
- // Set the ID of the proposal that the proposal line item will belong to.
- long proposalId = long.Parse(_T("INSERT_PROPOSAL_ID_HERE"));
-
- codeExample.Run(new AdManagerUser(), proposalId);
- }
-
- ///
- /// Run the code examples.
- ///
- public void Run(AdManagerUser user, long proposalId)
- {
- using (ProposalLineItemService proposalLineItemService =
- user.GetService())
-
- using (NetworkService networkService = user.GetService())
- {
- ProposalLineItem proposalLineItem = new ProposalLineItem();
- proposalLineItem.name = "Programmatic proposal line item #" +
- new Random().Next(int.MaxValue);
- proposalLineItem.proposalId = proposalId;
- proposalLineItem.lineItemType = LineItemType.STANDARD;
-
- // Set required Marketplace information.
- proposalLineItem.marketplaceInfo = new ProposalLineItemMarketplaceInfo()
- {
- adExchangeEnvironment = AdExchangeEnvironment.DISPLAY
- };
-
- // Get the root ad unit ID used to target the whole site.
- String rootAdUnitId = networkService.getCurrentNetwork().effectiveRootAdUnitId;
-
- // Create inventory targeting.
- InventoryTargeting inventoryTargeting = new InventoryTargeting();
-
- // Create ad unit targeting for the root ad unit (i.e. the whole network).
- AdUnitTargeting adUnitTargeting = new AdUnitTargeting();
- adUnitTargeting.adUnitId = rootAdUnitId;
- adUnitTargeting.includeDescendants = true;
-
- inventoryTargeting.targetedAdUnits = new AdUnitTargeting[]
- {
- adUnitTargeting
- };
-
- // Create targeting.
- Targeting targeting = new Targeting();
- targeting.inventoryTargeting = inventoryTargeting;
- proposalLineItem.targeting = targeting;
-
- // Create creative placeholder.
- Size size = new Size()
- {
- width = 300,
- height = 250,
- isAspectRatio = false
- };
- CreativePlaceholder creativePlaceholder = new CreativePlaceholder();
- creativePlaceholder.size = size;
-
- proposalLineItem.creativePlaceholders = new CreativePlaceholder[]
- {
- creativePlaceholder
- };
-
- // Set the length of the proposal line item to run.
- proposalLineItem.startDateTime =
- DateTimeUtilities.FromDateTime(System.DateTime.Now.AddDays(7),
- "America/New_York");
- proposalLineItem.endDateTime =
- DateTimeUtilities.FromDateTime(System.DateTime.Now.AddDays(30),
- "America/New_York");
-
- // Set delivery specifications for the proposal line item.
- proposalLineItem.deliveryRateType = DeliveryRateType.EVENLY;
-
- // Set pricing for the proposal line item for 1000 impressions at a CPM of $2
- // for a total value of $2.
- proposalLineItem.goal = new Goal()
- {
- unitType = UnitType.IMPRESSIONS,
- units = 1000L
- };
- proposalLineItem.netCost = new Money()
- {
- currencyCode = "USD",
- microAmount = 2000000L
- };
- proposalLineItem.netRate = new Money()
- {
- currencyCode = "USD",
- microAmount = 2000000L
- };
- proposalLineItem.rateType = RateType.CPM;
-
- try
- {
- // Create the proposal line item on the server.
- ProposalLineItem[] proposalLineItems =
- proposalLineItemService.createProposalLineItems(new ProposalLineItem[]
- {
- proposalLineItem
- });
-
- foreach (ProposalLineItem createdProposalLineItem in proposalLineItems)
- {
- Console.WriteLine(
- "A programmatic proposal line item with ID \"{0}\" " +
- "and name \"{1}\" was created.", createdProposalLineItem.id,
- createdProposalLineItem.name);
- }
- }
- catch (Exception e)
- {
- Console.WriteLine(
- "Failed to create programmatic proposal line items. " +
- "Exception says \"{0}\"", e.Message);
- }
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/ProposalLineItemService/CreateProposalLineItems.cs b/examples/AdManager/CSharp/v201811/ProposalLineItemService/CreateProposalLineItems.cs
deleted file mode 100755
index a21d527bb70..00000000000
--- a/examples/AdManager/CSharp/v201811/ProposalLineItemService/CreateProposalLineItems.cs
+++ /dev/null
@@ -1,158 +0,0 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This code example creates a new proposal line items. To determine which
- /// proposal line items exist, run GetAllProposalLineItems.cs. To determine
- /// which proposals exist, run GetAllProposals.cs.
- ///
- public class CreateProposalLineItems : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get
- {
- return "This code example creates new proposal line items. To determine which " +
- "proposal line items exist, run GetAllProposalLineItems.cs. To determine " +
- "which proposals exist, run GetAllProposals.cs.";
- }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- CreateProposalLineItems codeExample = new CreateProposalLineItems();
- Console.WriteLine(codeExample.Description);
- codeExample.Run(new AdManagerUser());
- }
-
- ///
- /// Run the code examples.
- ///
- public void Run(AdManagerUser user)
- {
- using (ProposalLineItemService proposalLineItemService =
- user.GetService())
-
- using (NetworkService networkService = user.GetService())
- {
- long proposalId = long.Parse(_T("INSERT_PROPOSAL_ID_HERE"));
- long rateCardId = long.Parse(_T("INSERT_RATE_CARD_ID_HERE"));
- long productId = long.Parse(_T("INSERT_PRODUCT_ID_HERE"));
-
- // Get the root ad unit ID used to target the whole site.
- String rootAdUnitId = networkService.getCurrentNetwork().effectiveRootAdUnitId;
-
- // Create inventory targeting.
- InventoryTargeting inventoryTargeting = new InventoryTargeting();
-
- // Create ad unit targeting for the root ad unit (i.e. the whole network).
- AdUnitTargeting adUnitTargeting = new AdUnitTargeting();
- adUnitTargeting.adUnitId = rootAdUnitId;
- adUnitTargeting.includeDescendants = true;
-
- inventoryTargeting.targetedAdUnits = new AdUnitTargeting[]
- {
- adUnitTargeting
- };
-
- // Create targeting.
- Targeting targeting = new Targeting();
- targeting.inventoryTargeting = inventoryTargeting;
-
- // Create a proposal line item.
- ProposalLineItem proposalLineItem = new ProposalLineItem();
- proposalLineItem.name =
- "Proposal line item #" + new Random().Next(int.MaxValue);
-
- proposalLineItem.proposalId = proposalId;
- proposalLineItem.rateCardId = rateCardId;
- proposalLineItem.productId = productId;
- proposalLineItem.targeting = targeting;
-
- // Set the length of the proposal line item to run.
- proposalLineItem.startDateTime =
- DateTimeUtilities.FromDateTime(System.DateTime.Now.AddDays(7),
- "America/New_York");
- proposalLineItem.endDateTime =
- DateTimeUtilities.FromDateTime(System.DateTime.Now.AddDays(30),
- "America/New_York");
-
- // Set delivery specifications for the proposal line item.
- proposalLineItem.deliveryRateType = DeliveryRateType.EVENLY;
- proposalLineItem.creativeRotationType = CreativeRotationType.OPTIMIZED;
-
- // Set billing specifications for the proposal line item.
- proposalLineItem.billingCap = BillingCap.CAPPED_CUMULATIVE;
- proposalLineItem.billingSource = BillingSource.THIRD_PARTY_VOLUME;
-
- // Set pricing for the proposal line item for 1000 impressions at a CPM of $2
- // for a total value of $2.
- proposalLineItem.goal = new Goal()
- {
- unitType = UnitType.IMPRESSIONS,
- units = 1000L
- };
- proposalLineItem.netCost = new Money()
- {
- currencyCode = "USD",
- microAmount = 2000000L
- };
- proposalLineItem.netRate = new Money()
- {
- currencyCode = "USD",
- microAmount = 2000000L
- };
- proposalLineItem.rateType = RateType.CPM;
-
- try
- {
- // Create the proposal line item on the server.
- ProposalLineItem[] proposalLineItems =
- proposalLineItemService.createProposalLineItems(new ProposalLineItem[]
- {
- proposalLineItem
- });
-
- foreach (ProposalLineItem createdProposalLineItem in proposalLineItems)
- {
- Console.WriteLine(
- "A proposal line item with ID \"{0}\" and name \"{1}\" was " +
- "created.",
- createdProposalLineItem.id, createdProposalLineItem.name);
- }
- }
- catch (Exception e)
- {
- Console.WriteLine(
- "Failed to create proposal line items. Exception says \"{0}\"",
- e.Message);
- }
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/ProposalService/CreateProgrammaticProposals.cs b/examples/AdManager/CSharp/v201811/ProposalService/CreateProgrammaticProposals.cs
deleted file mode 100755
index 57dc597f4e2..00000000000
--- a/examples/AdManager/CSharp/v201811/ProposalService/CreateProgrammaticProposals.cs
+++ /dev/null
@@ -1,128 +0,0 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This example creates a programmatic proposal. Your network must have sales management
- /// enabled to run this example.
- ///
- public class CreateProgrammaticProposals : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get
- {
- return
- "This example creates a programmatic proposal. Your network must have sales " +
- "management enabled to run this example.";
- }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- CreateProgrammaticProposals codeExample = new CreateProgrammaticProposals();
- Console.WriteLine(codeExample.Description);
-
- // Set the advertiser, salesperson, and trafficker to assign to each
- // order.
- long advertiserId = long.Parse(_T("INSERT_ADVERTISER_ID_HERE"));
- long buyerId = long.Parse(_T("INSERT_BUYER_ID_HERE"));
- long primarySalespersonId = long.Parse(_T("INSERT_PRIMARY_SALESPERSON_ID_HERE"));
- long primaryTraffickerId = long.Parse(_T("INSERT_PRIMARY_TRAFFICKER_ID_HERE"));
-
- codeExample.Run(new AdManagerUser(), advertiserId, buyerId, primarySalespersonId,
- primaryTraffickerId);
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user, long advertiserId, long buyerId,
- long primarySalespersonId, long primaryTraffickerId)
- {
- using (ProposalService proposalService = user.GetService())
- using (NetworkService networkService = user.GetService())
- {
- // Create a proposal.
- Proposal proposal = new Proposal();
- proposal.name = "Programmatic proposal #" + new Random().Next(int.MaxValue);
-
- // Set the required Marketplace information.
- proposal.marketplaceInfo = new ProposalMarketplaceInfo()
- {
- buyerAccountId = buyerId
- };
- proposal.isProgrammatic = true;
-
- // Create a proposal company association.
- ProposalCompanyAssociation proposalCompanyAssociation =
- new ProposalCompanyAssociation();
- proposalCompanyAssociation.companyId = advertiserId;
- proposalCompanyAssociation.type = ProposalCompanyAssociationType.ADVERTISER;
- proposal.advertiser = proposalCompanyAssociation;
-
- // Create salesperson splits for the primary salesperson.
- SalespersonSplit primarySalesperson = new SalespersonSplit();
- primarySalesperson.userId = primarySalespersonId;
- primarySalesperson.split = 100000;
- proposal.primarySalesperson = primarySalesperson;
-
- // Set the probability to close to 100%.
- proposal.probabilityOfClose = 100000L;
-
- // Set the primary trafficker on the proposal for when it becomes an order.
- proposal.primaryTraffickerId = primaryTraffickerId;
-
- // Create a budget for the proposal worth 100 in the network local currency.
- Money budget = new Money();
- budget.microAmount = 100000000L;
- budget.currencyCode = networkService.getCurrentNetwork().currencyCode;
- proposal.budget = budget;
-
- try
- {
- // Create the proposal on the server.
- Proposal[] proposals = proposalService.createProposals(new Proposal[]
- {
- proposal
- });
-
- foreach (Proposal createdProposal in proposals)
- {
- Console.WriteLine(
- "A programmatic proposal with ID \"{0}\" and name \"{1}\" " +
- "was created.", createdProposal.id, createdProposal.name);
- }
- }
- catch (Exception e)
- {
- Console.WriteLine("Failed to create proposals. Exception says \"{0}\"",
- e.Message);
- }
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/ProposalService/CreateProgrammaticProposalsForNonSalesManagement.cs b/examples/AdManager/CSharp/v201811/ProposalService/CreateProgrammaticProposalsForNonSalesManagement.cs
deleted file mode 100755
index 71b4b1f75a6..00000000000
--- a/examples/AdManager/CSharp/v201811/ProposalService/CreateProgrammaticProposalsForNonSalesManagement.cs
+++ /dev/null
@@ -1,117 +0,0 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This example creates a programmatic proposal for networks not using sales management.
- ///
- public class CreateProgrammaticProposalsForNonSalesManagement : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get
- {
- return "This example creates a programmatic proposal for networks " +
- "not using sales management";
- }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- CreateProgrammaticProposalsForNonSalesManagement codeExample =
- new CreateProgrammaticProposalsForNonSalesManagement();
- Console.WriteLine(codeExample.Description);
-
- long primarySalespersonId = long.Parse(_T("INSERT_PRIMARY_SALESPERSON_ID_HERE"));
- long primaryTraffickerId = long.Parse(_T("INSERT_PRIMARY_TRAFFICKER_ID_HERE"));
-
- // Set the ID of the programmatic buyer. This can be obtained through the
- // Programmatic_Buyer PQL table.
- long programmaticBuyerId = long.Parse(_T("INSERT_PROGRAMMATIC_BUYER_ID_HERE"));
-
- long advertiserId = long.Parse(_T("INSERT_ADVERTISER_ID_HERE"));
-
- codeExample.Run(new AdManagerUser(), primarySalespersonId, primaryTraffickerId,
- programmaticBuyerId, advertiserId);
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user, long primarySalespersonId, long primaryTraffickerId,
- long programmaticBuyerId, long advertiserId)
- {
- using (ProposalService proposalService = user.GetService())
- {
-
- // Create a proposal with the minimum required fields.
- Proposal proposal = new Proposal()
- {
- name = "Programmatic proposal #" + new Random().Next(int.MaxValue),
- isProgrammatic = true,
- // Set required Marketplace information
- marketplaceInfo = new ProposalMarketplaceInfo()
- {
- buyerAccountId = programmaticBuyerId
- }
- };
-
- // Set fields that are required before sending the proposal to the buyer.
- proposal.primaryTraffickerId = primaryTraffickerId;
- proposal.sellerContactIds = new long[] { primarySalespersonId };
- proposal.primarySalesperson = new SalespersonSplit()
- {
- userId = primarySalespersonId,
- split = 100000
- };
- proposal.advertiser = new ProposalCompanyAssociation()
- {
- type = ProposalCompanyAssociationType.ADVERTISER,
- companyId = advertiserId
- };
-
- try
- {
- // Create the proposal on the server.
- Proposal[] proposals =
- proposalService.createProposals(new Proposal[] { proposal });
-
- foreach (Proposal createdProposal in proposals)
- {
- Console.WriteLine("A programmatic proposal with ID \"{0}\" " +
- "and name \"{1}\" was created.",
- createdProposal.id, createdProposal.name);
- }
- }
- catch (Exception e)
- {
- Console.WriteLine("Failed to create proposals. Exception says \"{0}\"",
- e.Message);
- }
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/ProposalService/CreateProposals.cs b/examples/AdManager/CSharp/v201811/ProposalService/CreateProposals.cs
deleted file mode 100755
index b53c6dd5338..00000000000
--- a/examples/AdManager/CSharp/v201811/ProposalService/CreateProposals.cs
+++ /dev/null
@@ -1,134 +0,0 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This code example creates new proposals. To determine which proposals exist,
- /// run GetAllProposals.cs.
- ///
- public class CreateProposals : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get
- {
- return "This code example creates new proposals. To determine which proposals " +
- "exist, run GetAllProposals.cs.";
- }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- CreateProposals codeExample = new CreateProposals();
- Console.WriteLine(codeExample.Description);
- codeExample.Run(new AdManagerUser());
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user)
- {
- using (ProposalService proposalService = user.GetService())
-
- using (NetworkService networkService = user.GetService())
- {
- // Set the advertiser, salesperson, and trafficker to assign to each
- // order.
- long advertiserId = long.Parse(_T("INSERT_ADVERTISER_ID_HERE"));
- long primarySalespersonId =
- long.Parse(_T("INSERT_PRIMARY_SALESPERSON_ID_HERE"));
- long secondarySalespersonId =
- long.Parse(_T("INSERT_SECONDARY_SALESPERSON_ID_HERE"));
- long primaryTraffickerId = long.Parse(_T("INSERT_PRIMARY_TRAFFICKER_ID_HERE"));
- long secondaryTraffickerId =
- long.Parse(_T("INSERT_SECONDARY_TRAFFICKER_ID_HERE"));
-
- // Create a proposal.
- Proposal proposal = new Proposal();
- proposal.name = "Proposal #" + new Random().Next(int.MaxValue);
-
- // Create a proposal company association.
- ProposalCompanyAssociation proposalCompanyAssociation =
- new ProposalCompanyAssociation();
- proposalCompanyAssociation.companyId = advertiserId;
- proposalCompanyAssociation.type = ProposalCompanyAssociationType.ADVERTISER;
- proposal.advertiser = proposalCompanyAssociation;
-
- // Create salesperson splits for the primary salesperson and secondary
- // salespeople.
- SalespersonSplit primarySalesperson = new SalespersonSplit();
- primarySalesperson.userId = primarySalespersonId;
- primarySalesperson.split = 75000;
- proposal.primarySalesperson = primarySalesperson;
-
- SalespersonSplit secondarySalesperson = new SalespersonSplit();
- secondarySalesperson.userId = secondarySalespersonId;
- secondarySalesperson.split = 25000;
- proposal.secondarySalespeople = new SalespersonSplit[]
- {
- secondarySalesperson
- };
-
- // Set the probability to close to 100%.
- proposal.probabilityOfClose = 100000L;
-
- // Set the primary trafficker on the proposal for when it becomes an order.
- proposal.primaryTraffickerId = primaryTraffickerId;
-
- // Create a budget for the proposal worth 100 in the network local currency.
- Money budget = new Money();
- budget.microAmount = 100000000L;
- budget.currencyCode = networkService.getCurrentNetwork().currencyCode;
- proposal.budget = budget;
-
- proposal.billingCap = BillingCap.CAPPED_CUMULATIVE;
- proposal.billingSource = BillingSource.DFP_VOLUME;
-
- try
- {
- // Create the proposal on the server.
- Proposal[] proposals = proposalService.createProposals(new Proposal[]
- {
- proposal
- });
-
- foreach (Proposal createdProposal in proposals)
- {
- Console.WriteLine(
- "A proposal with ID \"{0}\" and name \"{1}\" was created.",
- createdProposal.id, createdProposal.name);
- }
- }
- catch (Exception e)
- {
- Console.WriteLine("Failed to create proposals. Exception says \"{0}\"",
- e.Message);
- }
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/ProposalService/SubmitProposalsForApproval.cs b/examples/AdManager/CSharp/v201811/ProposalService/SubmitProposalsForApproval.cs
deleted file mode 100755
index b791b02a036..00000000000
--- a/examples/AdManager/CSharp/v201811/ProposalService/SubmitProposalsForApproval.cs
+++ /dev/null
@@ -1,132 +0,0 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-using System.Collections.Generic;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This code example submits a proposal for approval. To determine which proposals exist,
- /// run GetAllProposals.cs.
- ///
- public class ApproveProposal : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get
- {
- return "This code example submits a proposal for approval. To determine which " +
- "proposals exist, run GetAllProposals.cs.";
- }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- ApproveProposal codeExample = new ApproveProposal();
- Console.WriteLine(codeExample.Description);
- codeExample.Run(new AdManagerUser());
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user)
- {
- using (ProposalService proposalService = user.GetService())
- {
- // Set the ID of the proposal.
- long proposalId = long.Parse(_T("INSERT_PROPOSAL_ID_HERE"));
-
- // Create statement to select the proposal.
- StatementBuilder statementBuilder = new StatementBuilder()
- .Where("id = :id")
- .OrderBy("id ASC")
- .Limit(1)
- .AddValue("id", proposalId);
-
- // Set default for page.
- ProposalPage page = new ProposalPage();
- List proposalIds = new List();
- int i = 0;
-
- try
- {
- do
- {
- // Get proposals by statement.
- page = proposalService.getProposalsByStatement(
- statementBuilder.ToStatement());
-
- if (page.results != null)
- {
- foreach (Proposal proposal in page.results)
- {
- Console.WriteLine(
- "{0}) Proposal with ID = '{1}', name = '{2}', and " +
- "status ='{3}' will be approved.", i++, proposal.id,
- proposal.name, proposal.status);
- proposalIds.Add(proposal.id.ToString());
- }
- }
-
- statementBuilder.IncreaseOffsetBy(StatementBuilder.SUGGESTED_PAGE_LIMIT);
- } while (statementBuilder.GetOffset() < page.totalResultSetSize);
-
- Console.WriteLine("Number of proposals to be approved: {0}", proposalIds.Count);
-
- if (proposalIds.Count > 0)
- {
- // Modify statement for action.
- statementBuilder.RemoveLimitAndOffset();
-
- // Create action.
- SubmitProposalsForApproval action = new SubmitProposalsForApproval();
-
- // Perform action.
- UpdateResult result =
- proposalService.performProposalAction(action,
- statementBuilder.ToStatement());
-
- // Display results.
- if (result != null && result.numChanges > 0)
- {
- Console.WriteLine("Number of proposals approved: {0}",
- result.numChanges);
- }
- else
- {
- Console.WriteLine("No proposals were approved.");
- }
- }
- }
- catch (Exception e)
- {
- Console.WriteLine("Failed to approve proposals. Exception says \"{0}\"",
- e.Message);
- }
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/RateCardService/GetAllRateCards.cs b/examples/AdManager/CSharp/v201811/RateCardService/GetAllRateCards.cs
deleted file mode 100755
index dfc6a1e525b..00000000000
--- a/examples/AdManager/CSharp/v201811/RateCardService/GetAllRateCards.cs
+++ /dev/null
@@ -1,94 +0,0 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This example gets all rate cards.
- ///
- public class GetAllRateCards : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get { return "This example gets all rate cards."; }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- GetAllRateCards codeExample = new GetAllRateCards();
- Console.WriteLine(codeExample.Description);
- try
- {
- codeExample.Run(new AdManagerUser());
- }
- catch (Exception e)
- {
- Console.WriteLine("Failed to get rate cards. Exception says \"{0}\"", e.Message);
- }
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user)
- {
- using (RateCardService rateCardService = user.GetService())
- {
- // Create a statement to select rate cards.
- int pageSize = StatementBuilder.SUGGESTED_PAGE_LIMIT;
- StatementBuilder statementBuilder =
- new StatementBuilder().OrderBy("id ASC").Limit(pageSize);
-
- // Retrieve a small amount of rate cards at a time, paging through until all
- // rate cards have been retrieved.
- int totalResultSetSize = 0;
- do
- {
- RateCardPage page =
- rateCardService.getRateCardsByStatement(statementBuilder.ToStatement());
-
- // Print out some information for each rate card.
- if (page.results != null)
- {
- totalResultSetSize = page.totalResultSetSize;
- int i = page.startIndex;
- foreach (RateCard rateCard in page.results)
- {
- Console.WriteLine(
- "{0}) Rate card with ID {1}, name \"{2}\", and currency code " +
- "\"{3}\" was found.",
- i++, rateCard.id, rateCard.name, rateCard.currencyCode);
- }
- }
-
- statementBuilder.IncreaseOffsetBy(pageSize);
- } while (statementBuilder.GetOffset() < totalResultSetSize);
-
- Console.WriteLine("Number of results found: {0}", totalResultSetSize);
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/RateCardService/GetMarketplaceRateCards.cs b/examples/AdManager/CSharp/v201811/RateCardService/GetMarketplaceRateCards.cs
deleted file mode 100755
index c215990d39a..00000000000
--- a/examples/AdManager/CSharp/v201811/RateCardService/GetMarketplaceRateCards.cs
+++ /dev/null
@@ -1,99 +0,0 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This example gets all rate cards that can be used for Marketplace products.
- ///
- public class GetMarketplaceRateCards : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get
- {
- return
- "This example gets all rate cards that can be used for Marketplace products.";
- }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- GetMarketplaceRateCards codeExample = new GetMarketplaceRateCards();
- Console.WriteLine(codeExample.Description);
- try
- {
- codeExample.Run(new AdManagerUser());
- }
- catch (Exception e)
- {
- Console.WriteLine("Failed to get rate cards. Exception says \"{0}\"", e.Message);
- }
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user)
- {
- using (RateCardService rateCardService = user.GetService())
- {
- // Create a statement to select rate cards.
- int pageSize = StatementBuilder.SUGGESTED_PAGE_LIMIT;
- StatementBuilder statementBuilder = new StatementBuilder()
- .Where("forMarketplace = :forMarketplace").OrderBy("id ASC").Limit(pageSize)
- .AddValue("forMarketplace", true);
-
- // Retrieve a small amount of rate cards at a time, paging through until all
- // rate cards have been retrieved.
- int totalResultSetSize = 0;
- do
- {
- RateCardPage page =
- rateCardService.getRateCardsByStatement(statementBuilder.ToStatement());
-
- // Print out some information for each rate card.
- if (page.results != null)
- {
- totalResultSetSize = page.totalResultSetSize;
- int i = page.startIndex;
- foreach (RateCard rateCard in page.results)
- {
- Console.WriteLine(
- "{0}) Rate card with ID {1}, name \"{2}\", and currency code " +
- "\"{3}\" was found.",
- i++, rateCard.id, rateCard.name, rateCard.currencyCode);
- }
- }
-
- statementBuilder.IncreaseOffsetBy(pageSize);
- } while (statementBuilder.GetOffset() < totalResultSetSize);
-
- Console.WriteLine("Number of results found: {0}", totalResultSetSize);
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/ReconciliationLineItemReportService/GetReconciliationLineItemReportsForReconciliationReport.cs b/examples/AdManager/CSharp/v201811/ReconciliationLineItemReportService/GetReconciliationLineItemReportsForReconciliationReport.cs
deleted file mode 100755
index 2d977a5ada2..00000000000
--- a/examples/AdManager/CSharp/v201811/ReconciliationLineItemReportService/GetReconciliationLineItemReportsForReconciliationReport.cs
+++ /dev/null
@@ -1,114 +0,0 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This example gets a reconciliation report's data for line items that served through DFP.
- ///
- public class GetReconciliationLineItemReportsForReconciliationReport : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get
- {
- return
- "This example gets a reconciliation report's data for line items that served " +
- "through DFP.";
- }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- GetReconciliationLineItemReportsForReconciliationReport codeExample =
- new GetReconciliationLineItemReportsForReconciliationReport();
- long reconciliationReportId = long.Parse("INSERT_RECONCILIATION_REPORT_ID_HERE");
- Console.WriteLine(codeExample.Description);
- try
- {
- codeExample.Run(new AdManagerUser(), reconciliationReportId);
- }
- catch (Exception e)
- {
- Console.WriteLine(
- "Failed to get reconciliation line item reports. Exception says \"{0}\"",
- e.Message);
- }
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user, long reconciliationReportId)
- {
- using (ReconciliationLineItemReportService reconciliationLineItemReportService =
- user.GetService())
- {
- // Create a statement to select reconciliation line item reports.
- int pageSize = StatementBuilder.SUGGESTED_PAGE_LIMIT;
- StatementBuilder statementBuilder = new StatementBuilder()
- .Where("reconciliationReportId = :reconciliationReportId AND " +
- "lineItemId != :lineItemId").OrderBy("lineItemId ASC").Limit(pageSize)
- .AddValue("reconciliationReportId", reconciliationReportId)
- .AddValue("lineItemId", 0);
-
- // Retrieve a small amount of reconciliation line item reports at a time, paging
- // through until all reconciliation line item reports have been retrieved.
- int totalResultSetSize = 0;
- do
- {
- ReconciliationLineItemReportPage page =
- reconciliationLineItemReportService
- .getReconciliationLineItemReportsByStatement(statementBuilder
- .ToStatement());
-
- // Print out some information for each reconciliation line item report.
- if (page.results != null)
- {
- totalResultSetSize = page.totalResultSetSize;
- int i = page.startIndex;
- foreach (ReconciliationLineItemReport reconciliationLineItemReport in page
- .results)
- {
- Console.WriteLine(
- "{0}) Reconciliation line item report with ID {1}, " +
- "line item ID {2}, " + "reconciliation source \"{3}\", " +
- "and reconciled volume {4} was found.", i++,
- reconciliationLineItemReport.id,
- reconciliationLineItemReport.lineItemId,
- reconciliationLineItemReport.reconciliationSource,
- reconciliationLineItemReport.reconciledVolume);
- }
- }
-
- statementBuilder.IncreaseOffsetBy(pageSize);
- } while (statementBuilder.GetOffset() < totalResultSetSize);
-
- Console.WriteLine("Number of results found: {0}", totalResultSetSize);
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/ReconciliationOrderReportService/GetReconciliationOrderReportsForReconciliationReport.cs b/examples/AdManager/CSharp/v201811/ReconciliationOrderReportService/GetReconciliationOrderReportsForReconciliationReport.cs
deleted file mode 100755
index abcb6f62fbf..00000000000
--- a/examples/AdManager/CSharp/v201811/ReconciliationOrderReportService/GetReconciliationOrderReportsForReconciliationReport.cs
+++ /dev/null
@@ -1,108 +0,0 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This example gets all reconciliation order reports for a given reconciliation report.
- ///
- public class GetReconciliationOrderReportsForReconciliationReport : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get
- {
- return "This example gets all reconciliation order reports for a given " +
- "reconciliation report.";
- }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- GetReconciliationOrderReportsForReconciliationReport codeExample =
- new GetReconciliationOrderReportsForReconciliationReport();
- long reconciliationReportId = long.Parse("INSERT_RECONCILIATION_REPORT_ID_HERE");
- Console.WriteLine(codeExample.Description);
- try
- {
- codeExample.Run(new AdManagerUser(), reconciliationReportId);
- }
- catch (Exception e)
- {
- Console.WriteLine(
- "Failed to get reconciliation order reports. Exception says \"{0}\"",
- e.Message);
- }
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user, long reconciliationReportId)
- {
- using (ReconciliationOrderReportService reconciliationOrderReportService =
- user.GetService())
- {
- // Create a statement to select reconciliation order reports.
- int pageSize = StatementBuilder.SUGGESTED_PAGE_LIMIT;
- StatementBuilder statementBuilder = new StatementBuilder()
- .Where("reconciliationReportId = :reconciliationReportId").OrderBy("id ASC")
- .Limit(pageSize)
- .AddValue("reconciliationReportId", reconciliationReportId);
-
- // Retrieve a small amount of reconciliation order reports at a time, paging through
- // until all reconciliation order reports have been retrieved.
- int totalResultSetSize = 0;
- do
- {
- ReconciliationOrderReportPage page =
- reconciliationOrderReportService.getReconciliationOrderReportsByStatement(
- statementBuilder.ToStatement());
-
- // Print out some information for each reconciliation order report.
- if (page.results != null)
- {
- totalResultSetSize = page.totalResultSetSize;
- int i = page.startIndex;
- foreach (ReconciliationOrderReport reconciliationOrderReport in page.results
- )
- {
- Console.WriteLine(
- "{0}) Reconciliation order report with ID {1} and status \"{2}\" " +
- "was found.",
- i++, reconciliationOrderReport.id,
- reconciliationOrderReport.status);
- }
- }
-
- statementBuilder.IncreaseOffsetBy(pageSize);
- } while (statementBuilder.GetOffset() < totalResultSetSize);
-
- Console.WriteLine("Number of results found: {0}", totalResultSetSize);
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/ReconciliationReportRowService/GetReconciliationReportRowsForReconciliationReport.cs b/examples/AdManager/CSharp/v201811/ReconciliationReportRowService/GetReconciliationReportRowsForReconciliationReport.cs
deleted file mode 100755
index 84407364ec8..00000000000
--- a/examples/AdManager/CSharp/v201811/ReconciliationReportRowService/GetReconciliationReportRowsForReconciliationReport.cs
+++ /dev/null
@@ -1,110 +0,0 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This example gets a reconciliation report's rows for line items that served through DFP.
- ///
- public class GetReconciliationReportRowsForReconciliationReport : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get
- {
- return
- "This example gets a reconciliation report's rows for line items that served " +
- "through DFP.";
- }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- GetReconciliationReportRowsForReconciliationReport codeExample =
- new GetReconciliationReportRowsForReconciliationReport();
- long reconciliationReportId = long.Parse("INSERT_RECONCILIATION_REPORT_ID_HERE");
- Console.WriteLine(codeExample.Description);
- try
- {
- codeExample.Run(new AdManagerUser(), reconciliationReportId);
- }
- catch (Exception e)
- {
- Console.WriteLine(
- "Failed to get reconciliation report rows. Exception says \"{0}\"", e.Message);
- }
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user, long reconciliationReportId)
- {
- using (ReconciliationReportRowService reconciliationReportRowService =
- user.GetService())
- {
- // Create a statement to select reconciliation report rows.
- int pageSize = StatementBuilder.SUGGESTED_PAGE_LIMIT;
- StatementBuilder statementBuilder = new StatementBuilder()
- .Where("reconciliationReportId = :reconciliationReportId AND " +
- "lineItemId != :lineItemId").OrderBy("id ASC").Limit(pageSize)
- .AddValue("reconciliationReportId", reconciliationReportId)
- .AddValue("lineItemId", 0);
-
- // Retrieve a small amount of reconciliation report rows at a time, paging through
- // until all reconciliation report rows have been retrieved.
- int totalResultSetSize = 0;
- do
- {
- ReconciliationReportRowPage page =
- reconciliationReportRowService.getReconciliationReportRowsByStatement(
- statementBuilder.ToStatement());
-
- // Print out some information for each reconciliation report row.
- if (page.results != null)
- {
- totalResultSetSize = page.totalResultSetSize;
- int i = page.startIndex;
- foreach (ReconciliationReportRow reconciliationReportRow in page.results)
- {
- Console.WriteLine(
- "{0}) Reconciliation report row with ID {1}, " +
- "reconciliation source \"{2}\", " +
- "and reconciled volume {3} was found.", i++,
- reconciliationReportRow.id,
- reconciliationReportRow.reconciliationSource,
- reconciliationReportRow.reconciledVolume);
- }
- }
-
- statementBuilder.IncreaseOffsetBy(pageSize);
- } while (statementBuilder.GetOffset() < totalResultSetSize);
-
- Console.WriteLine("Number of results found: {0}", totalResultSetSize);
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/ReconciliationReportService/GetAllReconciliationReports.cs b/examples/AdManager/CSharp/v201811/ReconciliationReportService/GetAllReconciliationReports.cs
deleted file mode 100755
index 58728ba6ca0..00000000000
--- a/examples/AdManager/CSharp/v201811/ReconciliationReportService/GetAllReconciliationReports.cs
+++ /dev/null
@@ -1,101 +0,0 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This example gets all reconciliation reports.
- ///
- public class GetAllReconciliationReports : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get { return "This example gets all reconciliation reports."; }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- GetAllReconciliationReports codeExample = new GetAllReconciliationReports();
- Console.WriteLine(codeExample.Description);
- try
- {
- codeExample.Run(new AdManagerUser());
- }
- catch (Exception e)
- {
- Console.WriteLine("Failed to get reconciliation reports. Exception says \"{0}\"",
- e.Message);
- }
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user)
- {
- using (ReconciliationReportService reconciliationReportService =
- user.GetService())
- {
- // Create a statement to select reconciliation reports.
- int pageSize = StatementBuilder.SUGGESTED_PAGE_LIMIT;
- StatementBuilder statementBuilder =
- new StatementBuilder().OrderBy("id ASC").Limit(pageSize);
-
- // Retrieve a small amount of reconciliation reports at a time, paging through until
- // all reconciliation reports have been retrieved.
- int totalResultSetSize = 0;
- do
- {
- ReconciliationReportPage page =
- reconciliationReportService.getReconciliationReportsByStatement(
- statementBuilder.ToStatement());
-
- // Print out some information for each reconciliation report.
- if (page.results != null)
- {
- totalResultSetSize = page.totalResultSetSize;
- int i = page.startIndex;
- foreach (ReconciliationReport reconciliationReport in page.results)
- {
- String startDateString =
- new System.DateTime(day: reconciliationReport.startDate.day,
- month: reconciliationReport.startDate.month,
- year: reconciliationReport.startDate.year).ToString("d");
- Console.WriteLine(
- "{0}) Reconciliation report with ID {1} and start date \"{2}\" " +
- "was found.",
- i++, reconciliationReport.id, startDateString);
- }
- }
-
- statementBuilder.IncreaseOffsetBy(pageSize);
- } while (statementBuilder.GetOffset() < totalResultSetSize);
-
- Console.WriteLine("Number of results found: {0}", totalResultSetSize);
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/ReconciliationReportService/GetReconciliationReportForLastBillingPeriod.cs b/examples/AdManager/CSharp/v201811/ReconciliationReportService/GetReconciliationReportForLastBillingPeriod.cs
deleted file mode 100755
index 80f5e3c65a0..00000000000
--- a/examples/AdManager/CSharp/v201811/ReconciliationReportService/GetReconciliationReportForLastBillingPeriod.cs
+++ /dev/null
@@ -1,107 +0,0 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This example gets the previous billing period's reconciliation report.
- ///
- public class GetReconciliationReportForLastBillingPeriod : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get { return "This example gets the previous billing period's reconciliation report."; }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- GetReconciliationReportForLastBillingPeriod codeExample =
- new GetReconciliationReportForLastBillingPeriod();
- Console.WriteLine(codeExample.Description);
- try
- {
- codeExample.Run(new AdManagerUser());
- }
- catch (Exception e)
- {
- Console.WriteLine("Failed to get reconciliation reports. Exception says \"{0}\"",
- e.Message);
- }
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user)
- {
- using (ReconciliationReportService reconciliationReportService =
- user.GetService())
- {
- // Create a statement to select reconciliation reports.
- int pageSize = StatementBuilder.SUGGESTED_PAGE_LIMIT;
- StatementBuilder statementBuilder = new StatementBuilder()
- .Where("startDate = :startDate").OrderBy("id ASC").Limit(pageSize).AddValue(
- "startDate",
- DateTimeUtilities
- .FromDateTime(
- new System.DateTime(System.DateTime.Today.Year,
- System.DateTime.Today.Month - 1, 1), "America/New_York").date);
-
- // Retrieve a small amount of reconciliation reports at a time, paging through until
- // all reconciliation reports have been retrieved.
- int totalResultSetSize = 0;
- do
- {
- ReconciliationReportPage page =
- reconciliationReportService.getReconciliationReportsByStatement(
- statementBuilder.ToStatement());
-
- // Print out some information for each reconciliation report.
- if (page.results != null)
- {
- totalResultSetSize = page.totalResultSetSize;
- int i = page.startIndex;
- foreach (ReconciliationReport reconciliationReport in page.results)
- {
- String startDateString =
- new System.DateTime(day: reconciliationReport.startDate.day,
- month: reconciliationReport.startDate.month,
- year: reconciliationReport.startDate.year).ToString("d");
- Console.WriteLine(
- "{0}) Reconciliation report with ID {1} and start date \"{2}\" " +
- "was found.",
- i++, reconciliationReport.id, startDateString);
- }
- }
-
- statementBuilder.IncreaseOffsetBy(pageSize);
- } while (statementBuilder.GetOffset() < totalResultSetSize);
-
- Console.WriteLine("Number of results found: {0}", totalResultSetSize);
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/WorkflowRequestService/ApproveWorkflowApprovalRequests.cs b/examples/AdManager/CSharp/v201811/WorkflowRequestService/ApproveWorkflowApprovalRequests.cs
deleted file mode 100755
index 7480b1af770..00000000000
--- a/examples/AdManager/CSharp/v201811/WorkflowRequestService/ApproveWorkflowApprovalRequests.cs
+++ /dev/null
@@ -1,141 +0,0 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-using System.Collections.Generic;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This code example approves all workflow approval requests belonging to a specific proposal.
- /// To determine which proposals exist, run GetAllProposals.cs.
- ///
- public class ApproveWorkflowApprovalRequests : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get
- {
- return "This code example approves all workflow approval requests belonging to " +
- "a specific proposal. To determine which proposals exist, " +
- "run GetAllProposals.cs.";
- }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- ApproveWorkflowApprovalRequests codeExample = new ApproveWorkflowApprovalRequests();
- Console.WriteLine(codeExample.Description);
- codeExample.Run(new AdManagerUser());
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user)
- {
- using (WorkflowRequestService workflowRequestService =
- user.GetService())
- {
- // Set the ID of the proposal to approve workflow approval requests for.
- long proposalId = long.Parse(_T("INSERT_PROPOSAL_ID_HERE"));
-
- // Create a statement to select workflow approval requests for a proposal.
- StatementBuilder statementBuilder = new StatementBuilder()
- .Where(
- "WHERE entityId = :entityId and entityType = :entityType and type = :type")
- .OrderBy("id ASC")
- .Limit(StatementBuilder.SUGGESTED_PAGE_LIMIT)
- .AddValue("entityId", proposalId)
- .AddValue("entityType", WorkflowEntityType.PROPOSAL.ToString())
- .AddValue("type", WorkflowRequestType.WORKFLOW_APPROVAL_REQUEST.ToString());
-
- // Set default for page.
- WorkflowRequestPage page = new WorkflowRequestPage();
- List worflowRequestIds = new List();
-
- try
- {
- do
- {
- // Get workflow requests by statement.
- page = workflowRequestService.getWorkflowRequestsByStatement(
- statementBuilder.ToStatement());
-
- if (page.results != null)
- {
- int i = page.startIndex;
- foreach (WorkflowRequest workflowRequest in page.results)
- {
- Console.WriteLine(
- "{0}) Workflow approval request with ID '{1}' will be " +
- "approved.", i++, workflowRequest.id);
- worflowRequestIds.Add(workflowRequest.id);
- }
- }
-
- statementBuilder.IncreaseOffsetBy(StatementBuilder.SUGGESTED_PAGE_LIMIT);
- } while (statementBuilder.GetOffset() < page.totalResultSetSize);
-
- Console.WriteLine("Number of workflow approval requests to be approved: {0}",
- worflowRequestIds.Count);
-
- if (worflowRequestIds.Count > 0)
- {
- // Modify statement.
- statementBuilder.RemoveLimitAndOffset();
-
- // Create action.
- Google.Api.Ads.AdManager.v201811.ApproveWorkflowApprovalRequests action =
- new Google.Api.Ads.AdManager.v201811.ApproveWorkflowApprovalRequests();
-
- // Add a comment to the approval.
- action.comment = "The proposal looks good to me. Approved.";
-
- // Perform action.
- UpdateResult result =
- workflowRequestService.performWorkflowRequestAction(action,
- statementBuilder.ToStatement());
-
- // Display results.
- if (result != null && result.numChanges > 0)
- {
- Console.WriteLine("Number of workflow requests approved: {0}",
- result.numChanges);
- }
- else
- {
- Console.WriteLine("No workflow requests were approved.");
- }
- }
- }
- catch (Exception e)
- {
- Console.WriteLine("Failed to archive workflow requests. Exception says \"{0}\"",
- e.Message);
- }
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/WorkflowRequestService/GetWorkflowApprovalRequests.cs b/examples/AdManager/CSharp/v201811/WorkflowRequestService/GetWorkflowApprovalRequests.cs
deleted file mode 100755
index 8195233bd04..00000000000
--- a/examples/AdManager/CSharp/v201811/WorkflowRequestService/GetWorkflowApprovalRequests.cs
+++ /dev/null
@@ -1,105 +0,0 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This example gets workflow approval requests. Workflow approval requests must be
- /// approved or rejected for a workflow to finish.
- ///
- public class GetWorkflowApprovalRequests : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get
- {
- return "This example gets workflow approval requests. Workflow approval requests " +
- "must be approved or rejected for a workflow to finish.";
- }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- GetWorkflowApprovalRequests codeExample = new GetWorkflowApprovalRequests();
- Console.WriteLine(codeExample.Description);
- try
- {
- codeExample.Run(new AdManagerUser());
- }
- catch (Exception e)
- {
- Console.WriteLine("Failed to get workflow requests. Exception says \"{0}\"",
- e.Message);
- }
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user)
- {
- using (WorkflowRequestService workflowRequestService =
- user.GetService())
- {
- // Create a statement to select workflow requests.
- int pageSize = StatementBuilder.SUGGESTED_PAGE_LIMIT;
- StatementBuilder statementBuilder = new StatementBuilder()
- .Where("type = :type")
- .OrderBy("id ASC")
- .Limit(pageSize)
- .AddValue("type", WorkflowRequestType.WORKFLOW_APPROVAL_REQUEST.ToString());
-
- // Retrieve a small amount of workflow requests at a time, paging through until all
- // workflow requests have been retrieved.
- int totalResultSetSize = 0;
- do
- {
- WorkflowRequestPage page =
- workflowRequestService.getWorkflowRequestsByStatement(
- statementBuilder.ToStatement());
-
- // Print out some information for each workflow request.
- if (page.results != null)
- {
- totalResultSetSize = page.totalResultSetSize;
- int i = page.startIndex;
- foreach (WorkflowRequest workflowRequest in page.results)
- {
- Console.WriteLine(
- "{0}) Workflow request with ID {1}, " + "entity type \"{2}\", " +
- "and entity ID {3} was found.", i++, workflowRequest.id,
- workflowRequest.entityType, workflowRequest.entityId);
- }
- }
-
- statementBuilder.IncreaseOffsetBy(pageSize);
- } while (statementBuilder.GetOffset() < totalResultSetSize);
-
- Console.WriteLine("Number of results found: {0}", totalResultSetSize);
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/WorkflowRequestService/GetWorkflowExternalConditionRequests.cs b/examples/AdManager/CSharp/v201811/WorkflowRequestService/GetWorkflowExternalConditionRequests.cs
deleted file mode 100755
index bb4ec6fe32e..00000000000
--- a/examples/AdManager/CSharp/v201811/WorkflowRequestService/GetWorkflowExternalConditionRequests.cs
+++ /dev/null
@@ -1,108 +0,0 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This example gets workflow external condition requests. Workflow external condition
- /// requests must be triggered or skipped for a workflow to finish.
- ///
- public class GetWorkflowExternalConditionRequests : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get
- {
- return
- "This example gets workflow external condition requests. Workflow external " +
- "condition requests must be triggered or skipped for a workflow to finish.";
- }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- GetWorkflowExternalConditionRequests codeExample =
- new GetWorkflowExternalConditionRequests();
- Console.WriteLine(codeExample.Description);
- try
- {
- codeExample.Run(new AdManagerUser());
- }
- catch (Exception e)
- {
- Console.WriteLine("Failed to get workflow requests. Exception says \"{0}\"",
- e.Message);
- }
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user)
- {
- using (WorkflowRequestService workflowRequestService =
- user.GetService())
- {
- // Create a statement to select workflow requests.
- int pageSize = StatementBuilder.SUGGESTED_PAGE_LIMIT;
- StatementBuilder statementBuilder = new StatementBuilder()
- .Where("type = :type")
- .OrderBy("id ASC")
- .Limit(pageSize)
- .AddValue("type",
- WorkflowRequestType.WORKFLOW_EXTERNAL_CONDITION_REQUEST.ToString());
-
- // Retrieve a small amount of workflow requests at a time, paging through until all
- // workflow requests have been retrieved.
- int totalResultSetSize = 0;
- do
- {
- WorkflowRequestPage page =
- workflowRequestService.getWorkflowRequestsByStatement(
- statementBuilder.ToStatement());
-
- // Print out some information for each workflow request.
- if (page.results != null)
- {
- totalResultSetSize = page.totalResultSetSize;
- int i = page.startIndex;
- foreach (WorkflowRequest workflowRequest in page.results)
- {
- Console.WriteLine(
- "{0}) Workflow request with ID {1}, " + "entity type \"{2}\", " +
- "and entity ID {3} was found.", i++, workflowRequest.id,
- workflowRequest.entityType, workflowRequest.entityId);
- }
- }
-
- statementBuilder.IncreaseOffsetBy(pageSize);
- } while (statementBuilder.GetOffset() < totalResultSetSize);
-
- Console.WriteLine("Number of results found: {0}", totalResultSetSize);
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/WorkflowRequestService/TriggerWorkflowExternalConditionRequests.cs b/examples/AdManager/CSharp/v201811/WorkflowRequestService/TriggerWorkflowExternalConditionRequests.cs
deleted file mode 100755
index 6d8d19fdbaf..00000000000
--- a/examples/AdManager/CSharp/v201811/WorkflowRequestService/TriggerWorkflowExternalConditionRequests.cs
+++ /dev/null
@@ -1,148 +0,0 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
-
-using System;
-using System.Collections.Generic;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
-{
- ///
- /// This code example triggers all workflow external condition requests belonging to a
- /// specific proposal. Workflow external condition requests must be triggered or skipped
- /// for a workflow to finish. To determine which proposals exist, run GetAllProposals.cs.
- ///
- public class TriggerWorkflowExternalConditionRequests : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get
- {
- return "This code example triggers all workflow external condition requests " +
- "belonging to a specific proposal. Workflow external condition requests must " +
- "be triggered or skipped for a workflow to finish. To determine which " +
- "proposals exist, run GetAllProposals.cs.";
- }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- TriggerWorkflowExternalConditionRequests codeExample =
- new TriggerWorkflowExternalConditionRequests();
- Console.WriteLine(codeExample.Description);
- codeExample.Run(new AdManagerUser());
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user)
- {
- using (WorkflowRequestService proposalLineItemService =
- user.GetService())
- {
- // Set the ID of the proposal to trigger workflow external conditions for.c
- long proposalId = long.Parse(_T("INSERT_PROPOSAL_ID_HERE"));
-
- // Create a statement to select workflow external condition requests for a proposal.
- StatementBuilder statementBuilder = new StatementBuilder()
- .Where("entityId = :entityId and entityType = :entityType and type = :type")
- .OrderBy("id ASC")
- .Limit(StatementBuilder.SUGGESTED_PAGE_LIMIT)
- .AddValue("entityId", proposalId)
- .AddValue("entityType", WorkflowEntityType.PROPOSAL.ToString())
- .AddValue("type",
- WorkflowRequestType.WORKFLOW_EXTERNAL_CONDITION_REQUEST.ToString());
-
- // Set default for page.
- WorkflowRequestPage page = new WorkflowRequestPage();
- List workflowRequestIds = new List();
-
- try
- {
- do
- {
- // Get workflow requests by statement.
- page = proposalLineItemService.getWorkflowRequestsByStatement(
- statementBuilder.ToStatement());
-
- if (page.results != null)
- {
- int i = page.startIndex;
- foreach (WorkflowRequest workflowRequest in page.results)
- {
- Console.WriteLine(
- "{0}) Workflow external condition request with ID '{1}'" +
- " for {2} with ID '{3}' will be triggered.", i++,
- workflowRequest.id, workflowRequest.entityType.ToString(),
- workflowRequest.entityId);
- workflowRequestIds.Add(workflowRequest.id);
- }
- }
-
- statementBuilder.IncreaseOffsetBy(StatementBuilder.SUGGESTED_PAGE_LIMIT);
- } while (statementBuilder.GetOffset() < page.totalResultSetSize);
-
- Console.WriteLine(
- "Number of workflow external condition requests to be triggered: {0}",
- workflowRequestIds.Count);
-
- if (workflowRequestIds.Count > 0)
- {
- // Modify statement.
- statementBuilder.RemoveLimitAndOffset();
-
- // Create action.
- Google.Api.Ads.AdManager.v201811.TriggerWorkflowExternalConditionRequests action =
- new Google.Api.Ads.AdManager.v201811.
- TriggerWorkflowExternalConditionRequests();
-
- // Perform action.
- UpdateResult result =
- proposalLineItemService.performWorkflowRequestAction(action,
- statementBuilder.ToStatement());
-
- // Display results.
- if (result != null && result.numChanges > 0)
- {
- Console.WriteLine(
- "Number of workflow external condition requests triggered: {0}",
- result.numChanges);
- }
- else
- {
- Console.WriteLine(
- "No workflow external condition requests were triggered.");
- }
- }
- }
- catch (Exception e)
- {
- Console.WriteLine(
- "Failed to tirgger workflow external condition requests. Exception " +
- "says \"{0}\"", e.Message);
- }
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201902/ProposalLineItemService/CreateProgrammaticProposalLineItems.cs b/examples/AdManager/CSharp/v201902/ProposalLineItemService/CreateProgrammaticProposalLineItems.cs
deleted file mode 100755
index cf5520966b0..00000000000
--- a/examples/AdManager/CSharp/v201902/ProposalLineItemService/CreateProgrammaticProposalLineItems.cs
+++ /dev/null
@@ -1,133 +0,0 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201902;
-using Google.Api.Ads.AdManager.v201902;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201902
-{
- ///
- /// This code example creates a new programmatic proposal line item that
- /// uses its product's targeting. Your network must have sales management enabled
- /// to run this example.
- ///
- public class CreateProgrammaticProposalLineItems : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get
- {
- return "This code example creates a new programmatic proposal line item that " +
- "uses its product's targeting. Your network must have sales management " +
- "enabled to run this example.";
- }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- CreateProgrammaticProposalLineItems codeExample =
- new CreateProgrammaticProposalLineItems();
- Console.WriteLine(codeExample.Description);
-
- long proposalId = long.Parse(_T("INSERT_PROPOSAL_ID_HERE"));
- long rateCardId = long.Parse(_T("INSERT_RATE_CARD_ID_HERE"));
- long productId = long.Parse(_T("INSERT_PRODUCT_ID_HERE"));
-
- codeExample.Run(new AdManagerUser(), proposalId, rateCardId, productId);
- }
-
- ///
- /// Run the code examples.
- ///
- public void Run(AdManagerUser user, long proposalId, long rateCardId, long productId)
- {
- using (ProposalLineItemService proposalLineItemService =
- user.GetService())
- {
- // Create a proposal line item.
- ProposalLineItem proposalLineItem = new ProposalLineItem();
- proposalLineItem.name = "Programmatic proposal line item #" +
- new Random().Next(int.MaxValue);
- proposalLineItem.proposalId = proposalId;
- proposalLineItem.rateCardId = rateCardId;
- proposalLineItem.productId = productId;
-
- // Set the Marketplace information.
- proposalLineItem.marketplaceInfo = new ProposalLineItemMarketplaceInfo()
- {
- adExchangeEnvironment = AdExchangeEnvironment.DISPLAY
- };
-
- // Set the length of the proposal line item to run.
- proposalLineItem.startDateTime =
- DateTimeUtilities.FromDateTime(System.DateTime.Now.AddDays(7),
- "America/New_York");
- proposalLineItem.endDateTime =
- DateTimeUtilities.FromDateTime(System.DateTime.Now.AddDays(30),
- "America/New_York");
-
- // Set pricing for the proposal line item for 1000 impressions at a CPM of $2
- // for a total value of $2.
- proposalLineItem.goal = new Goal()
- {
- unitType = UnitType.IMPRESSIONS,
- units = 1000L
- };
- proposalLineItem.netCost = new Money()
- {
- currencyCode = "USD",
- microAmount = 2000000L
- };
- proposalLineItem.netRate = new Money()
- {
- currencyCode = "USD",
- microAmount = 2000000L
- };
- proposalLineItem.rateType = RateType.CPM;
-
- try
- {
- // Create the proposal line item on the server.
- ProposalLineItem[] proposalLineItems =
- proposalLineItemService.createProposalLineItems(new ProposalLineItem[]
- {
- proposalLineItem
- });
-
- foreach (ProposalLineItem createdProposalLineItem in proposalLineItems)
- {
- Console.WriteLine(
- "A programmatic proposal line item with ID \"{0}\" " +
- "and name \"{1}\" was created.", createdProposalLineItem.id,
- createdProposalLineItem.name);
- }
- }
- catch (Exception e)
- {
- Console.WriteLine(
- "Failed to create proposal line items. Exception says \"{0}\"", e.Message);
- }
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201902/ProposalLineItemService/CreateProgrammaticProposalLineItemsForNonSalesManagement.cs b/examples/AdManager/CSharp/v201902/ProposalLineItemService/CreateProgrammaticProposalLineItemsForNonSalesManagement.cs
deleted file mode 100755
index 5745362f1c9..00000000000
--- a/examples/AdManager/CSharp/v201902/ProposalLineItemService/CreateProgrammaticProposalLineItemsForNonSalesManagement.cs
+++ /dev/null
@@ -1,170 +0,0 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201902;
-using Google.Api.Ads.AdManager.v201902;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201902
-{
- ///
- /// This example creates a new programmatic proposal line item in a
- /// non-sales management network.
- ///
- public class CreateProgrammaticProposalLineItemsForNonSalesManagement : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get
- {
- return "This example creates a new programmatic proposal line item in a " +
- "non-sales management network.";
- }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- CreateProgrammaticProposalLineItemsForNonSalesManagement codeExample =
- new CreateProgrammaticProposalLineItemsForNonSalesManagement();
- Console.WriteLine(codeExample.Description);
-
- // Set the ID of the proposal that the proposal line item will belong to.
- long proposalId = long.Parse(_T("INSERT_PROPOSAL_ID_HERE"));
-
- codeExample.Run(new AdManagerUser(), proposalId);
- }
-
- ///
- /// Run the code examples.
- ///
- public void Run(AdManagerUser user, long proposalId)
- {
- using (ProposalLineItemService proposalLineItemService =
- user.GetService())
-
- using (NetworkService networkService = user.GetService())
- {
- ProposalLineItem proposalLineItem = new ProposalLineItem();
- proposalLineItem.name = "Programmatic proposal line item #" +
- new Random().Next(int.MaxValue);
- proposalLineItem.proposalId = proposalId;
- proposalLineItem.lineItemType = LineItemType.STANDARD;
-
- // Set required Marketplace information.
- proposalLineItem.marketplaceInfo = new ProposalLineItemMarketplaceInfo()
- {
- adExchangeEnvironment = AdExchangeEnvironment.DISPLAY
- };
-
- // Get the root ad unit ID used to target the whole site.
- String rootAdUnitId = networkService.getCurrentNetwork().effectiveRootAdUnitId;
-
- // Create inventory targeting.
- InventoryTargeting inventoryTargeting = new InventoryTargeting();
-
- // Create ad unit targeting for the root ad unit (i.e. the whole network).
- AdUnitTargeting adUnitTargeting = new AdUnitTargeting();
- adUnitTargeting.adUnitId = rootAdUnitId;
- adUnitTargeting.includeDescendants = true;
-
- inventoryTargeting.targetedAdUnits = new AdUnitTargeting[]
- {
- adUnitTargeting
- };
-
- // Create targeting.
- Targeting targeting = new Targeting();
- targeting.inventoryTargeting = inventoryTargeting;
- proposalLineItem.targeting = targeting;
-
- // Create creative placeholder.
- Size size = new Size()
- {
- width = 300,
- height = 250,
- isAspectRatio = false
- };
- CreativePlaceholder creativePlaceholder = new CreativePlaceholder();
- creativePlaceholder.size = size;
-
- proposalLineItem.creativePlaceholders = new CreativePlaceholder[]
- {
- creativePlaceholder
- };
-
- // Set the length of the proposal line item to run.
- proposalLineItem.startDateTime =
- DateTimeUtilities.FromDateTime(System.DateTime.Now.AddDays(7),
- "America/New_York");
- proposalLineItem.endDateTime =
- DateTimeUtilities.FromDateTime(System.DateTime.Now.AddDays(30),
- "America/New_York");
-
- // Set delivery specifications for the proposal line item.
- proposalLineItem.deliveryRateType = DeliveryRateType.EVENLY;
-
- // Set pricing for the proposal line item for 1000 impressions at a CPM of $2
- // for a total value of $2.
- proposalLineItem.goal = new Goal()
- {
- unitType = UnitType.IMPRESSIONS,
- units = 1000L
- };
- proposalLineItem.netCost = new Money()
- {
- currencyCode = "USD",
- microAmount = 2000000L
- };
- proposalLineItem.netRate = new Money()
- {
- currencyCode = "USD",
- microAmount = 2000000L
- };
- proposalLineItem.rateType = RateType.CPM;
-
- try
- {
- // Create the proposal line item on the server.
- ProposalLineItem[] proposalLineItems =
- proposalLineItemService.createProposalLineItems(new ProposalLineItem[]
- {
- proposalLineItem
- });
-
- foreach (ProposalLineItem createdProposalLineItem in proposalLineItems)
- {
- Console.WriteLine(
- "A programmatic proposal line item with ID \"{0}\" " +
- "and name \"{1}\" was created.", createdProposalLineItem.id,
- createdProposalLineItem.name);
- }
- }
- catch (Exception e)
- {
- Console.WriteLine(
- "Failed to create programmatic proposal line items. " +
- "Exception says \"{0}\"", e.Message);
- }
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201902/ProposalLineItemService/CreateProposalLineItems.cs b/examples/AdManager/CSharp/v201902/ProposalLineItemService/CreateProposalLineItems.cs
index d0a1e7407b3..3ce7d04e2fb 100755
--- a/examples/AdManager/CSharp/v201902/ProposalLineItemService/CreateProposalLineItems.cs
+++ b/examples/AdManager/CSharp/v201902/ProposalLineItemService/CreateProposalLineItems.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -21,9 +21,7 @@
namespace Google.Api.Ads.AdManager.Examples.CSharp.v201902
{
///
- /// This code example creates a new proposal line items. To determine which
- /// proposal line items exist, run GetAllProposalLineItems.cs. To determine
- /// which proposals exist, run GetAllProposals.cs.
+ /// This example creates a new proposal line item.
///
public class CreateProposalLineItems : SampleBase
{
@@ -34,9 +32,7 @@ public override string Description
{
get
{
- return "This code example creates new proposal line items. To determine which " +
- "proposal line items exist, run GetAllProposalLineItems.cs. To determine " +
- "which proposals exist, run GetAllProposals.cs.";
+ return "This example creates a new proposal line item.";
}
}
@@ -47,22 +43,34 @@ public static void Main()
{
CreateProposalLineItems codeExample = new CreateProposalLineItems();
Console.WriteLine(codeExample.Description);
- codeExample.Run(new AdManagerUser());
+
+ // Set the ID of the proposal that the proposal line item will belong to.
+ long proposalId = long.Parse(_T("INSERT_PROPOSAL_ID_HERE"));
+
+ codeExample.Run(new AdManagerUser(), proposalId);
}
///
/// Run the code examples.
///
- public void Run(AdManagerUser user)
+ public void Run(AdManagerUser user, long proposalId)
{
using (ProposalLineItemService proposalLineItemService =
- user.GetService())
+ user.GetService())
using (NetworkService networkService = user.GetService())
{
- long proposalId = long.Parse(_T("INSERT_PROPOSAL_ID_HERE"));
- long rateCardId = long.Parse(_T("INSERT_RATE_CARD_ID_HERE"));
- long productId = long.Parse(_T("INSERT_PRODUCT_ID_HERE"));
+ ProposalLineItem proposalLineItem = new ProposalLineItem();
+ proposalLineItem.name = "Proposal line item #" +
+ new Random().Next(int.MaxValue);
+ proposalLineItem.proposalId = proposalId;
+ proposalLineItem.lineItemType = LineItemType.STANDARD;
+
+ // Set required Marketplace information.
+ proposalLineItem.marketplaceInfo = new ProposalLineItemMarketplaceInfo()
+ {
+ adExchangeEnvironment = AdExchangeEnvironment.DISPLAY
+ };
// Get the root ad unit ID used to target the whole site.
String rootAdUnitId = networkService.getCurrentNetwork().effectiveRootAdUnitId;
@@ -83,16 +91,22 @@ public void Run(AdManagerUser user)
// Create targeting.
Targeting targeting = new Targeting();
targeting.inventoryTargeting = inventoryTargeting;
+ proposalLineItem.targeting = targeting;
- // Create a proposal line item.
- ProposalLineItem proposalLineItem = new ProposalLineItem();
- proposalLineItem.name =
- "Proposal line item #" + new Random().Next(int.MaxValue);
+ // Create creative placeholder.
+ Size size = new Size()
+ {
+ width = 300,
+ height = 250,
+ isAspectRatio = false
+ };
+ CreativePlaceholder creativePlaceholder = new CreativePlaceholder();
+ creativePlaceholder.size = size;
- proposalLineItem.proposalId = proposalId;
- proposalLineItem.rateCardId = rateCardId;
- proposalLineItem.productId = productId;
- proposalLineItem.targeting = targeting;
+ proposalLineItem.creativePlaceholders = new CreativePlaceholder[]
+ {
+ creativePlaceholder
+ };
// Set the length of the proposal line item to run.
proposalLineItem.startDateTime =
@@ -104,11 +118,6 @@ public void Run(AdManagerUser user)
// Set delivery specifications for the proposal line item.
proposalLineItem.deliveryRateType = DeliveryRateType.EVENLY;
- proposalLineItem.creativeRotationType = CreativeRotationType.OPTIMIZED;
-
- // Set billing specifications for the proposal line item.
- proposalLineItem.billingCap = BillingCap.CAPPED_CUMULATIVE;
- proposalLineItem.billingSource = BillingSource.THIRD_PARTY_VOLUME;
// Set pricing for the proposal line item for 1000 impressions at a CPM of $2
// for a total value of $2.
@@ -140,17 +149,16 @@ public void Run(AdManagerUser user)
foreach (ProposalLineItem createdProposalLineItem in proposalLineItems)
{
- Console.WriteLine(
- "A proposal line item with ID \"{0}\" and name \"{1}\" was " +
- "created.",
- createdProposalLineItem.id, createdProposalLineItem.name);
+ Console.WriteLine("A proposal line item with ID \"{0}\" " +
+ "and name \"{1}\" was created.", createdProposalLineItem.id,
+ createdProposalLineItem.name);
}
}
catch (Exception e)
{
Console.WriteLine(
- "Failed to create proposal line items. Exception says \"{0}\"",
- e.Message);
+ "Failed to create proposal line items. " +
+ "Exception says \"{0}\"", e.Message);
}
}
}
diff --git a/examples/AdManager/CSharp/v201902/ProposalService/CreateProgrammaticProposals.cs b/examples/AdManager/CSharp/v201902/ProposalService/CreateProgrammaticProposals.cs
deleted file mode 100755
index 1d6b5826c38..00000000000
--- a/examples/AdManager/CSharp/v201902/ProposalService/CreateProgrammaticProposals.cs
+++ /dev/null
@@ -1,128 +0,0 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201902;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201902
-{
- ///
- /// This example creates a programmatic proposal. Your network must have sales management
- /// enabled to run this example.
- ///
- public class CreateProgrammaticProposals : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get
- {
- return
- "This example creates a programmatic proposal. Your network must have sales " +
- "management enabled to run this example.";
- }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- CreateProgrammaticProposals codeExample = new CreateProgrammaticProposals();
- Console.WriteLine(codeExample.Description);
-
- // Set the advertiser, salesperson, and trafficker to assign to each
- // order.
- long advertiserId = long.Parse(_T("INSERT_ADVERTISER_ID_HERE"));
- long buyerId = long.Parse(_T("INSERT_BUYER_ID_HERE"));
- long primarySalespersonId = long.Parse(_T("INSERT_PRIMARY_SALESPERSON_ID_HERE"));
- long primaryTraffickerId = long.Parse(_T("INSERT_PRIMARY_TRAFFICKER_ID_HERE"));
-
- codeExample.Run(new AdManagerUser(), advertiserId, buyerId, primarySalespersonId,
- primaryTraffickerId);
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user, long advertiserId, long buyerId,
- long primarySalespersonId, long primaryTraffickerId)
- {
- using (ProposalService proposalService = user.GetService())
- using (NetworkService networkService = user.GetService())
- {
- // Create a proposal.
- Proposal proposal = new Proposal();
- proposal.name = "Programmatic proposal #" + new Random().Next(int.MaxValue);
-
- // Set the required Marketplace information.
- proposal.marketplaceInfo = new ProposalMarketplaceInfo()
- {
- buyerAccountId = buyerId
- };
- proposal.isProgrammatic = true;
-
- // Create a proposal company association.
- ProposalCompanyAssociation proposalCompanyAssociation =
- new ProposalCompanyAssociation();
- proposalCompanyAssociation.companyId = advertiserId;
- proposalCompanyAssociation.type = ProposalCompanyAssociationType.ADVERTISER;
- proposal.advertiser = proposalCompanyAssociation;
-
- // Create salesperson splits for the primary salesperson.
- SalespersonSplit primarySalesperson = new SalespersonSplit();
- primarySalesperson.userId = primarySalespersonId;
- primarySalesperson.split = 100000;
- proposal.primarySalesperson = primarySalesperson;
-
- // Set the probability to close to 100%.
- proposal.probabilityOfClose = 100000L;
-
- // Set the primary trafficker on the proposal for when it becomes an order.
- proposal.primaryTraffickerId = primaryTraffickerId;
-
- // Create a budget for the proposal worth 100 in the network local currency.
- Money budget = new Money();
- budget.microAmount = 100000000L;
- budget.currencyCode = networkService.getCurrentNetwork().currencyCode;
- proposal.budget = budget;
-
- try
- {
- // Create the proposal on the server.
- Proposal[] proposals = proposalService.createProposals(new Proposal[]
- {
- proposal
- });
-
- foreach (Proposal createdProposal in proposals)
- {
- Console.WriteLine(
- "A programmatic proposal with ID \"{0}\" and name \"{1}\" " +
- "was created.", createdProposal.id, createdProposal.name);
- }
- }
- catch (Exception e)
- {
- Console.WriteLine("Failed to create proposals. Exception says \"{0}\"",
- e.Message);
- }
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201902/ProposalService/CreateProgrammaticProposalsForNonSalesManagement.cs b/examples/AdManager/CSharp/v201902/ProposalService/CreateProgrammaticProposalsForNonSalesManagement.cs
deleted file mode 100755
index e52b4a7cf85..00000000000
--- a/examples/AdManager/CSharp/v201902/ProposalService/CreateProgrammaticProposalsForNonSalesManagement.cs
+++ /dev/null
@@ -1,117 +0,0 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201902;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201902
-{
- ///
- /// This example creates a programmatic proposal for networks not using sales management.
- ///
- public class CreateProgrammaticProposalsForNonSalesManagement : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get
- {
- return "This example creates a programmatic proposal for networks " +
- "not using sales management";
- }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- CreateProgrammaticProposalsForNonSalesManagement codeExample =
- new CreateProgrammaticProposalsForNonSalesManagement();
- Console.WriteLine(codeExample.Description);
-
- long primarySalespersonId = long.Parse(_T("INSERT_PRIMARY_SALESPERSON_ID_HERE"));
- long primaryTraffickerId = long.Parse(_T("INSERT_PRIMARY_TRAFFICKER_ID_HERE"));
-
- // Set the ID of the programmatic buyer. This can be obtained through the
- // Programmatic_Buyer PQL table.
- long programmaticBuyerId = long.Parse(_T("INSERT_PROGRAMMATIC_BUYER_ID_HERE"));
-
- long advertiserId = long.Parse(_T("INSERT_ADVERTISER_ID_HERE"));
-
- codeExample.Run(new AdManagerUser(), primarySalespersonId, primaryTraffickerId,
- programmaticBuyerId, advertiserId);
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user, long primarySalespersonId, long primaryTraffickerId,
- long programmaticBuyerId, long advertiserId)
- {
- using (ProposalService proposalService = user.GetService())
- {
-
- // Create a proposal with the minimum required fields.
- Proposal proposal = new Proposal()
- {
- name = "Programmatic proposal #" + new Random().Next(int.MaxValue),
- isProgrammatic = true,
- // Set required Marketplace information
- marketplaceInfo = new ProposalMarketplaceInfo()
- {
- buyerAccountId = programmaticBuyerId
- }
- };
-
- // Set fields that are required before sending the proposal to the buyer.
- proposal.primaryTraffickerId = primaryTraffickerId;
- proposal.sellerContactIds = new long[] { primarySalespersonId };
- proposal.primarySalesperson = new SalespersonSplit()
- {
- userId = primarySalespersonId,
- split = 100000
- };
- proposal.advertiser = new ProposalCompanyAssociation()
- {
- type = ProposalCompanyAssociationType.ADVERTISER,
- companyId = advertiserId
- };
-
- try
- {
- // Create the proposal on the server.
- Proposal[] proposals =
- proposalService.createProposals(new Proposal[] { proposal });
-
- foreach (Proposal createdProposal in proposals)
- {
- Console.WriteLine("A programmatic proposal with ID \"{0}\" " +
- "and name \"{1}\" was created.",
- createdProposal.id, createdProposal.name);
- }
- }
- catch (Exception e)
- {
- Console.WriteLine("Failed to create proposals. Exception says \"{0}\"",
- e.Message);
- }
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201902/ProposalService/CreateProposals.cs b/examples/AdManager/CSharp/v201902/ProposalService/CreateProposals.cs
index 282c9051ca3..7b8b6b70615 100755
--- a/examples/AdManager/CSharp/v201902/ProposalService/CreateProposals.cs
+++ b/examples/AdManager/CSharp/v201902/ProposalService/CreateProposals.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -20,8 +20,7 @@
namespace Google.Api.Ads.AdManager.Examples.CSharp.v201902
{
///
- /// This code example creates new proposals. To determine which proposals exist,
- /// run GetAllProposals.cs.
+ /// This example creates a proposal.
///
public class CreateProposals : SampleBase
{
@@ -32,8 +31,7 @@ public override string Description
{
get
{
- return "This code example creates new proposals. To determine which proposals " +
- "exist, run GetAllProposals.cs.";
+ return "This example creates a proposal";
}
}
@@ -42,93 +40,76 @@ public override string Description
///
public static void Main()
{
- CreateProposals codeExample = new CreateProposals();
+ CreateProposals codeExample =
+ new CreateProposals();
Console.WriteLine(codeExample.Description);
- codeExample.Run(new AdManagerUser());
+
+ long primarySalespersonId = long.Parse(_T("INSERT_PRIMARY_SALESPERSON_ID_HERE"));
+ long primaryTraffickerId = long.Parse(_T("INSERT_PRIMARY_TRAFFICKER_ID_HERE"));
+
+ // Set the ID of the programmatic buyer. This can be obtained through the
+ // Programmatic_Buyer PQL table.
+ long programmaticBuyerId = long.Parse(_T("INSERT_PROGRAMMATIC_BUYER_ID_HERE"));
+
+ long advertiserId = long.Parse(_T("INSERT_ADVERTISER_ID_HERE"));
+
+ codeExample.Run(new AdManagerUser(), primarySalespersonId, primaryTraffickerId,
+ programmaticBuyerId, advertiserId);
}
///
/// Run the code example.
///
- public void Run(AdManagerUser user)
+ public void Run(AdManagerUser user, long primarySalespersonId, long primaryTraffickerId,
+ long programmaticBuyerId, long advertiserId)
{
using (ProposalService proposalService = user.GetService())
+ {
- using (NetworkService networkService = user.GetService())
+ // Create a proposal with the minimum required fields.
+ Proposal proposal = new Proposal()
{
- // Set the advertiser, salesperson, and trafficker to assign to each
- // order.
- long advertiserId = long.Parse(_T("INSERT_ADVERTISER_ID_HERE"));
- long primarySalespersonId =
- long.Parse(_T("INSERT_PRIMARY_SALESPERSON_ID_HERE"));
- long secondarySalespersonId =
- long.Parse(_T("INSERT_SECONDARY_SALESPERSON_ID_HERE"));
- long primaryTraffickerId = long.Parse(_T("INSERT_PRIMARY_TRAFFICKER_ID_HERE"));
- long secondaryTraffickerId =
- long.Parse(_T("INSERT_SECONDARY_TRAFFICKER_ID_HERE"));
-
- // Create a proposal.
- Proposal proposal = new Proposal();
- proposal.name = "Proposal #" + new Random().Next(int.MaxValue);
-
- // Create a proposal company association.
- ProposalCompanyAssociation proposalCompanyAssociation =
- new ProposalCompanyAssociation();
- proposalCompanyAssociation.companyId = advertiserId;
- proposalCompanyAssociation.type = ProposalCompanyAssociationType.ADVERTISER;
- proposal.advertiser = proposalCompanyAssociation;
-
- // Create salesperson splits for the primary salesperson and secondary
- // salespeople.
- SalespersonSplit primarySalesperson = new SalespersonSplit();
- primarySalesperson.userId = primarySalespersonId;
- primarySalesperson.split = 75000;
- proposal.primarySalesperson = primarySalesperson;
-
- SalespersonSplit secondarySalesperson = new SalespersonSplit();
- secondarySalesperson.userId = secondarySalespersonId;
- secondarySalesperson.split = 25000;
- proposal.secondarySalespeople = new SalespersonSplit[]
+ name = "Programmatic proposal #" + new Random().Next(int.MaxValue),
+ // Set required Marketplace information
+ marketplaceInfo = new ProposalMarketplaceInfo()
{
- secondarySalesperson
- };
-
- // Set the probability to close to 100%.
- proposal.probabilityOfClose = 100000L;
-
- // Set the primary trafficker on the proposal for when it becomes an order.
- proposal.primaryTraffickerId = primaryTraffickerId;
-
- // Create a budget for the proposal worth 100 in the network local currency.
- Money budget = new Money();
- budget.microAmount = 100000000L;
- budget.currencyCode = networkService.getCurrentNetwork().currencyCode;
- proposal.budget = budget;
+ buyerAccountId = programmaticBuyerId
+ }
+ };
- proposal.billingCap = BillingCap.CAPPED_CUMULATIVE;
- proposal.billingSource = BillingSource.DFP_VOLUME;
+ // Set fields that are required before sending the proposal to the buyer.
+ proposal.primaryTraffickerId = primaryTraffickerId;
+ proposal.sellerContactIds = new long[] { primarySalespersonId };
+ proposal.primarySalesperson = new SalespersonSplit()
+ {
+ userId = primarySalespersonId,
+ split = 100000
+ };
+ proposal.advertiser = new ProposalCompanyAssociation()
+ {
+ type = ProposalCompanyAssociationType.ADVERTISER,
+ companyId = advertiserId
+ };
- try
- {
- // Create the proposal on the server.
- Proposal[] proposals = proposalService.createProposals(new Proposal[]
- {
- proposal
- });
+ try
+ {
+ // Create the proposal on the server.
+ Proposal[] proposals =
+ proposalService.createProposals(new Proposal[] { proposal });
- foreach (Proposal createdProposal in proposals)
- {
- Console.WriteLine(
- "A proposal with ID \"{0}\" and name \"{1}\" was created.",
- createdProposal.id, createdProposal.name);
- }
- }
- catch (Exception e)
+ foreach (Proposal createdProposal in proposals)
{
- Console.WriteLine("Failed to create proposals. Exception says \"{0}\"",
- e.Message);
+ Console.WriteLine("A programmatic proposal with ID \"{0}\" " +
+ "and name \"{1}\" was created.",
+ createdProposal.id, createdProposal.name);
}
}
+ catch (Exception e)
+ {
+ Console.WriteLine("Failed to create proposals. Exception says \"{0}\"",
+ e.Message);
+ }
+ }
}
}
}
diff --git a/examples/AdManager/CSharp/v201902/ProposalService/GetProposalsPendingApproval.cs b/examples/AdManager/CSharp/v201902/ProposalService/GetProposalsAwaitingSellerReview.cs
similarity index 86%
rename from examples/AdManager/CSharp/v201902/ProposalService/GetProposalsPendingApproval.cs
rename to examples/AdManager/CSharp/v201902/ProposalService/GetProposalsAwaitingSellerReview.cs
index 228cb6f04f3..c783ade7142 100755
--- a/examples/AdManager/CSharp/v201902/ProposalService/GetProposalsPendingApproval.cs
+++ b/examples/AdManager/CSharp/v201902/ProposalService/GetProposalsAwaitingSellerReview.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -21,16 +21,16 @@
namespace Google.Api.Ads.AdManager.Examples.CSharp.v201902
{
///
- /// This example gets all proposals pending approval.
+ /// This example gets all proposals awaiting seller review.
///
- public class GetProposalsPendingApproval : SampleBase
+ public class GetProposalsAwaitingSellerReivew : SampleBase
{
///
/// Returns a description about the code example.
///
public override string Description
{
- get { return "This example gets all proposals pending approval."; }
+ get { return "This example gets all proposals awaiting seller review."; }
}
///
@@ -38,7 +38,7 @@ public override string Description
///
public static void Main()
{
- GetProposalsPendingApproval codeExample = new GetProposalsPendingApproval();
+ GetProposalsAwaitingSellerReivew codeExample = new GetProposalsAwaitingSellerReivew();
Console.WriteLine(codeExample.Description);
try
{
@@ -60,10 +60,10 @@ public void Run(AdManagerUser user)
// Create a statement to select proposals.
int pageSize = StatementBuilder.SUGGESTED_PAGE_LIMIT;
StatementBuilder statementBuilder = new StatementBuilder()
- .Where("status = :status")
+ .Where("negotiationStatus = :status")
.OrderBy("id ASC")
.Limit(pageSize)
- .AddValue("status", ProposalStatus.PENDING_APPROVAL.ToString());
+ .AddValue("status", NegotiationStatus.AWAITING_SELLER_REVIEW.ToString());
// Retrieve a small amount of proposals at a time, paging through until all
// proposals have been retrieved.
diff --git a/examples/AdManager/CSharp/v201902/ProposalService/SubmitProposalsForApproval.cs b/examples/AdManager/CSharp/v201902/ProposalService/SubmitProposalsForApproval.cs
deleted file mode 100755
index 986a0b18664..00000000000
--- a/examples/AdManager/CSharp/v201902/ProposalService/SubmitProposalsForApproval.cs
+++ /dev/null
@@ -1,132 +0,0 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
-//
-// 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201902;
-using Google.Api.Ads.AdManager.v201902;
-
-using System;
-using System.Collections.Generic;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201902
-{
- ///
- /// This code example submits a proposal for approval. To determine which proposals exist,
- /// run GetAllProposals.cs.
- ///
- public class ApproveProposal : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get
- {
- return "This code example submits a proposal for approval. To determine which " +
- "proposals exist, run GetAllProposals.cs.";
- }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- ApproveProposal codeExample = new ApproveProposal();
- Console.WriteLine(codeExample.Description);
- codeExample.Run(new AdManagerUser());
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user)
- {
- using (ProposalService proposalService = user.GetService())
- {
- // Set the ID of the proposal.
- long proposalId = long.Parse(_T("INSERT_PROPOSAL_ID_HERE"));
-
- // Create statement to select the proposal.
- StatementBuilder statementBuilder = new StatementBuilder()
- .Where("id = :id")
- .OrderBy("id ASC")
- .Limit(1)
- .AddValue("id", proposalId);
-
- // Set default for page.
- ProposalPage page = new ProposalPage();
- List proposalIds = new List();
- int i = 0;
-
- try
- {
- do
- {
- // Get proposals by statement.
- page = proposalService.getProposalsByStatement(
- statementBuilder.ToStatement());
-
- if (page.results != null)
- {
- foreach (Proposal proposal in page.results)
- {
- Console.WriteLine(
- "{0}) Proposal with ID = '{1}', name = '{2}', and " +
- "status ='{3}' will be approved.", i++, proposal.id,
- proposal.name, proposal.status);
- proposalIds.Add(proposal.id.ToString());
- }
- }
-
- statementBuilder.IncreaseOffsetBy(StatementBuilder.SUGGESTED_PAGE_LIMIT);
- } while (statementBuilder.GetOffset() < page.totalResultSetSize);
-
- Console.WriteLine("Number of proposals to be approved: {0}", proposalIds.Count);
-
- if (proposalIds.Count > 0)
- {
- // Modify statement for action.
- statementBuilder.RemoveLimitAndOffset();
-
- // Create action.
- SubmitProposalsForApproval action = new SubmitProposalsForApproval();
-
- // Perform action.
- UpdateResult result =
- proposalService.performProposalAction(action,
- statementBuilder.ToStatement());
-
- // Display results.
- if (result != null && result.numChanges > 0)
- {
- Console.WriteLine("Number of proposals approved: {0}",
- result.numChanges);
- }
- else
- {
- Console.WriteLine("No proposals were approved.");
- }
- }
- }
- catch (Exception e)
- {
- Console.WriteLine("Failed to approve proposals. Exception says \"{0}\"",
- e.Message);
- }
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201905/ProposalLineItemService/CreateProgrammaticProposalLineItems.cs b/examples/AdManager/CSharp/v201905/ProposalLineItemService/CreateProgrammaticProposalLineItems.cs
deleted file mode 100755
index fdeffadd290..00000000000
--- a/examples/AdManager/CSharp/v201905/ProposalLineItemService/CreateProgrammaticProposalLineItems.cs
+++ /dev/null
@@ -1,133 +0,0 @@
-// Copyright 2019 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201905;
-using Google.Api.Ads.AdManager.v201905;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201905
-{
- ///
- /// This code example creates a new programmatic proposal line item that
- /// uses its product's targeting. Your network must have sales management enabled
- /// to run this example.
- ///
- public class CreateProgrammaticProposalLineItems : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get
- {
- return "This code example creates a new programmatic proposal line item that " +
- "uses its product's targeting. Your network must have sales management " +
- "enabled to run this example.";
- }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- CreateProgrammaticProposalLineItems codeExample =
- new CreateProgrammaticProposalLineItems();
- Console.WriteLine(codeExample.Description);
-
- long proposalId = long.Parse(_T("INSERT_PROPOSAL_ID_HERE"));
- long rateCardId = long.Parse(_T("INSERT_RATE_CARD_ID_HERE"));
- long productId = long.Parse(_T("INSERT_PRODUCT_ID_HERE"));
-
- codeExample.Run(new AdManagerUser(), proposalId, rateCardId, productId);
- }
-
- ///
- /// Run the code examples.
- ///
- public void Run(AdManagerUser user, long proposalId, long rateCardId, long productId)
- {
- using (ProposalLineItemService proposalLineItemService =
- user.GetService())
- {
- // Create a proposal line item.
- ProposalLineItem proposalLineItem = new ProposalLineItem();
- proposalLineItem.name = "Programmatic proposal line item #" +
- new Random().Next(int.MaxValue);
- proposalLineItem.proposalId = proposalId;
- proposalLineItem.rateCardId = rateCardId;
- proposalLineItem.productId = productId;
-
- // Set the Marketplace information.
- proposalLineItem.marketplaceInfo = new ProposalLineItemMarketplaceInfo()
- {
- adExchangeEnvironment = AdExchangeEnvironment.DISPLAY
- };
-
- // Set the length of the proposal line item to run.
- proposalLineItem.startDateTime =
- DateTimeUtilities.FromDateTime(System.DateTime.Now.AddDays(7),
- "America/New_York");
- proposalLineItem.endDateTime =
- DateTimeUtilities.FromDateTime(System.DateTime.Now.AddDays(30),
- "America/New_York");
-
- // Set pricing for the proposal line item for 1000 impressions at a CPM of $2
- // for a total value of $2.
- proposalLineItem.goal = new Goal()
- {
- unitType = UnitType.IMPRESSIONS,
- units = 1000L
- };
- proposalLineItem.netCost = new Money()
- {
- currencyCode = "USD",
- microAmount = 2000000L
- };
- proposalLineItem.netRate = new Money()
- {
- currencyCode = "USD",
- microAmount = 2000000L
- };
- proposalLineItem.rateType = RateType.CPM;
-
- try
- {
- // Create the proposal line item on the server.
- ProposalLineItem[] proposalLineItems =
- proposalLineItemService.createProposalLineItems(new ProposalLineItem[]
- {
- proposalLineItem
- });
-
- foreach (ProposalLineItem createdProposalLineItem in proposalLineItems)
- {
- Console.WriteLine(
- "A programmatic proposal line item with ID \"{0}\" " +
- "and name \"{1}\" was created.", createdProposalLineItem.id,
- createdProposalLineItem.name);
- }
- }
- catch (Exception e)
- {
- Console.WriteLine(
- "Failed to create proposal line items. Exception says \"{0}\"", e.Message);
- }
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201905/ProposalLineItemService/CreateProposalLineItems.cs b/examples/AdManager/CSharp/v201905/ProposalLineItemService/CreateProposalLineItems.cs
index 3b422a68aef..5b26235cbdd 100755
--- a/examples/AdManager/CSharp/v201905/ProposalLineItemService/CreateProposalLineItems.cs
+++ b/examples/AdManager/CSharp/v201905/ProposalLineItemService/CreateProposalLineItems.cs
@@ -21,9 +21,7 @@
namespace Google.Api.Ads.AdManager.Examples.CSharp.v201905
{
///
- /// This code example creates a new proposal line items. To determine which
- /// proposal line items exist, run GetAllProposalLineItems.cs. To determine
- /// which proposals exist, run GetAllProposals.cs.
+ /// This example creates a new proposal line item.
///
public class CreateProposalLineItems : SampleBase
{
@@ -34,9 +32,7 @@ public override string Description
{
get
{
- return "This code example creates new proposal line items. To determine which " +
- "proposal line items exist, run GetAllProposalLineItems.cs. To determine " +
- "which proposals exist, run GetAllProposals.cs.";
+ return "This example creates a new proposal line item.";
}
}
@@ -47,22 +43,34 @@ public static void Main()
{
CreateProposalLineItems codeExample = new CreateProposalLineItems();
Console.WriteLine(codeExample.Description);
- codeExample.Run(new AdManagerUser());
+
+ // Set the ID of the proposal that the proposal line item will belong to.
+ long proposalId = long.Parse(_T("INSERT_PROPOSAL_ID_HERE"));
+
+ codeExample.Run(new AdManagerUser(), proposalId);
}
///
/// Run the code examples.
///
- public void Run(AdManagerUser user)
+ public void Run(AdManagerUser user, long proposalId)
{
using (ProposalLineItemService proposalLineItemService =
- user.GetService())
+ user.GetService())
using (NetworkService networkService = user.GetService())
{
- long proposalId = long.Parse(_T("INSERT_PROPOSAL_ID_HERE"));
- long rateCardId = long.Parse(_T("INSERT_RATE_CARD_ID_HERE"));
- long productId = long.Parse(_T("INSERT_PRODUCT_ID_HERE"));
+ ProposalLineItem proposalLineItem = new ProposalLineItem();
+ proposalLineItem.name = "Proposal line item #" +
+ new Random().Next(int.MaxValue);
+ proposalLineItem.proposalId = proposalId;
+ proposalLineItem.lineItemType = LineItemType.STANDARD;
+
+ // Set required Marketplace information.
+ proposalLineItem.marketplaceInfo = new ProposalLineItemMarketplaceInfo()
+ {
+ adExchangeEnvironment = AdExchangeEnvironment.DISPLAY
+ };
// Get the root ad unit ID used to target the whole site.
String rootAdUnitId = networkService.getCurrentNetwork().effectiveRootAdUnitId;
@@ -83,16 +91,22 @@ public void Run(AdManagerUser user)
// Create targeting.
Targeting targeting = new Targeting();
targeting.inventoryTargeting = inventoryTargeting;
+ proposalLineItem.targeting = targeting;
- // Create a proposal line item.
- ProposalLineItem proposalLineItem = new ProposalLineItem();
- proposalLineItem.name =
- "Proposal line item #" + new Random().Next(int.MaxValue);
+ // Create creative placeholder.
+ Size size = new Size()
+ {
+ width = 300,
+ height = 250,
+ isAspectRatio = false
+ };
+ CreativePlaceholder creativePlaceholder = new CreativePlaceholder();
+ creativePlaceholder.size = size;
- proposalLineItem.proposalId = proposalId;
- proposalLineItem.rateCardId = rateCardId;
- proposalLineItem.productId = productId;
- proposalLineItem.targeting = targeting;
+ proposalLineItem.creativePlaceholders = new CreativePlaceholder[]
+ {
+ creativePlaceholder
+ };
// Set the length of the proposal line item to run.
proposalLineItem.startDateTime =
@@ -104,11 +118,6 @@ public void Run(AdManagerUser user)
// Set delivery specifications for the proposal line item.
proposalLineItem.deliveryRateType = DeliveryRateType.EVENLY;
- proposalLineItem.creativeRotationType = CreativeRotationType.OPTIMIZED;
-
- // Set billing specifications for the proposal line item.
- proposalLineItem.billingCap = BillingCap.CAPPED_CUMULATIVE;
- proposalLineItem.billingSource = BillingSource.THIRD_PARTY_VOLUME;
// Set pricing for the proposal line item for 1000 impressions at a CPM of $2
// for a total value of $2.
@@ -140,17 +149,16 @@ public void Run(AdManagerUser user)
foreach (ProposalLineItem createdProposalLineItem in proposalLineItems)
{
- Console.WriteLine(
- "A proposal line item with ID \"{0}\" and name \"{1}\" was " +
- "created.",
- createdProposalLineItem.id, createdProposalLineItem.name);
+ Console.WriteLine("A proposal line item with ID \"{0}\" " +
+ "and name \"{1}\" was created.", createdProposalLineItem.id,
+ createdProposalLineItem.name);
}
}
catch (Exception e)
{
Console.WriteLine(
- "Failed to create proposal line items. Exception says \"{0}\"",
- e.Message);
+ "Failed to create proposal line items. " +
+ "Exception says \"{0}\"", e.Message);
}
}
}
diff --git a/examples/AdManager/CSharp/v201905/ProposalService/CreateProgrammaticProposals.cs b/examples/AdManager/CSharp/v201905/ProposalService/CreateProgrammaticProposals.cs
deleted file mode 100755
index 075bc57d738..00000000000
--- a/examples/AdManager/CSharp/v201905/ProposalService/CreateProgrammaticProposals.cs
+++ /dev/null
@@ -1,128 +0,0 @@
-// Copyright 2019 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201905;
-
-using System;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201905
-{
- ///
- /// This example creates a programmatic proposal. Your network must have sales management
- /// enabled to run this example.
- ///
- public class CreateProgrammaticProposals : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get
- {
- return
- "This example creates a programmatic proposal. Your network must have sales " +
- "management enabled to run this example.";
- }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- CreateProgrammaticProposals codeExample = new CreateProgrammaticProposals();
- Console.WriteLine(codeExample.Description);
-
- // Set the advertiser, salesperson, and trafficker to assign to each
- // order.
- long advertiserId = long.Parse(_T("INSERT_ADVERTISER_ID_HERE"));
- long buyerId = long.Parse(_T("INSERT_BUYER_ID_HERE"));
- long primarySalespersonId = long.Parse(_T("INSERT_PRIMARY_SALESPERSON_ID_HERE"));
- long primaryTraffickerId = long.Parse(_T("INSERT_PRIMARY_TRAFFICKER_ID_HERE"));
-
- codeExample.Run(new AdManagerUser(), advertiserId, buyerId, primarySalespersonId,
- primaryTraffickerId);
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user, long advertiserId, long buyerId,
- long primarySalespersonId, long primaryTraffickerId)
- {
- using (ProposalService proposalService = user.GetService())
- using (NetworkService networkService = user.GetService())
- {
- // Create a proposal.
- Proposal proposal = new Proposal();
- proposal.name = "Programmatic proposal #" + new Random().Next(int.MaxValue);
-
- // Set the required Marketplace information.
- proposal.marketplaceInfo = new ProposalMarketplaceInfo()
- {
- buyerAccountId = buyerId
- };
- proposal.isProgrammatic = true;
-
- // Create a proposal company association.
- ProposalCompanyAssociation proposalCompanyAssociation =
- new ProposalCompanyAssociation();
- proposalCompanyAssociation.companyId = advertiserId;
- proposalCompanyAssociation.type = ProposalCompanyAssociationType.ADVERTISER;
- proposal.advertiser = proposalCompanyAssociation;
-
- // Create salesperson splits for the primary salesperson.
- SalespersonSplit primarySalesperson = new SalespersonSplit();
- primarySalesperson.userId = primarySalespersonId;
- primarySalesperson.split = 100000;
- proposal.primarySalesperson = primarySalesperson;
-
- // Set the probability to close to 100%.
- proposal.probabilityOfClose = 100000L;
-
- // Set the primary trafficker on the proposal for when it becomes an order.
- proposal.primaryTraffickerId = primaryTraffickerId;
-
- // Create a budget for the proposal worth 100 in the network local currency.
- Money budget = new Money();
- budget.microAmount = 100000000L;
- budget.currencyCode = networkService.getCurrentNetwork().currencyCode;
- proposal.budget = budget;
-
- try
- {
- // Create the proposal on the server.
- Proposal[] proposals = proposalService.createProposals(new Proposal[]
- {
- proposal
- });
-
- foreach (Proposal createdProposal in proposals)
- {
- Console.WriteLine(
- "A programmatic proposal with ID \"{0}\" and name \"{1}\" " +
- "was created.", createdProposal.id, createdProposal.name);
- }
- }
- catch (Exception e)
- {
- Console.WriteLine("Failed to create proposals. Exception says \"{0}\"",
- e.Message);
- }
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201905/ProposalService/CreateProposals.cs b/examples/AdManager/CSharp/v201905/ProposalService/CreateProposals.cs
index 813263b33f2..6853b815ead 100755
--- a/examples/AdManager/CSharp/v201905/ProposalService/CreateProposals.cs
+++ b/examples/AdManager/CSharp/v201905/ProposalService/CreateProposals.cs
@@ -20,8 +20,7 @@
namespace Google.Api.Ads.AdManager.Examples.CSharp.v201905
{
///
- /// This code example creates new proposals. To determine which proposals exist,
- /// run GetAllProposals.cs.
+ /// This example creates a proposal.
///
public class CreateProposals : SampleBase
{
@@ -32,8 +31,7 @@ public override string Description
{
get
{
- return "This code example creates new proposals. To determine which proposals " +
- "exist, run GetAllProposals.cs.";
+ return "This example creates a proposal";
}
}
@@ -42,93 +40,76 @@ public override string Description
///
public static void Main()
{
- CreateProposals codeExample = new CreateProposals();
+ CreateProposals codeExample =
+ new CreateProposals();
Console.WriteLine(codeExample.Description);
- codeExample.Run(new AdManagerUser());
+
+ long primarySalespersonId = long.Parse(_T("INSERT_PRIMARY_SALESPERSON_ID_HERE"));
+ long primaryTraffickerId = long.Parse(_T("INSERT_PRIMARY_TRAFFICKER_ID_HERE"));
+
+ // Set the ID of the programmatic buyer. This can be obtained through the
+ // Programmatic_Buyer PQL table.
+ long programmaticBuyerId = long.Parse(_T("INSERT_PROGRAMMATIC_BUYER_ID_HERE"));
+
+ long advertiserId = long.Parse(_T("INSERT_ADVERTISER_ID_HERE"));
+
+ codeExample.Run(new AdManagerUser(), primarySalespersonId, primaryTraffickerId,
+ programmaticBuyerId, advertiserId);
}
///
/// Run the code example.
///
- public void Run(AdManagerUser user)
+ public void Run(AdManagerUser user, long primarySalespersonId, long primaryTraffickerId,
+ long programmaticBuyerId, long advertiserId)
{
using (ProposalService proposalService = user.GetService())
+ {
- using (NetworkService networkService = user.GetService())
+ // Create a proposal with the minimum required fields.
+ Proposal proposal = new Proposal()
{
- // Set the advertiser, salesperson, and trafficker to assign to each
- // order.
- long advertiserId = long.Parse(_T("INSERT_ADVERTISER_ID_HERE"));
- long primarySalespersonId =
- long.Parse(_T("INSERT_PRIMARY_SALESPERSON_ID_HERE"));
- long secondarySalespersonId =
- long.Parse(_T("INSERT_SECONDARY_SALESPERSON_ID_HERE"));
- long primaryTraffickerId = long.Parse(_T("INSERT_PRIMARY_TRAFFICKER_ID_HERE"));
- long secondaryTraffickerId =
- long.Parse(_T("INSERT_SECONDARY_TRAFFICKER_ID_HERE"));
-
- // Create a proposal.
- Proposal proposal = new Proposal();
- proposal.name = "Proposal #" + new Random().Next(int.MaxValue);
-
- // Create a proposal company association.
- ProposalCompanyAssociation proposalCompanyAssociation =
- new ProposalCompanyAssociation();
- proposalCompanyAssociation.companyId = advertiserId;
- proposalCompanyAssociation.type = ProposalCompanyAssociationType.ADVERTISER;
- proposal.advertiser = proposalCompanyAssociation;
-
- // Create salesperson splits for the primary salesperson and secondary
- // salespeople.
- SalespersonSplit primarySalesperson = new SalespersonSplit();
- primarySalesperson.userId = primarySalespersonId;
- primarySalesperson.split = 75000;
- proposal.primarySalesperson = primarySalesperson;
-
- SalespersonSplit secondarySalesperson = new SalespersonSplit();
- secondarySalesperson.userId = secondarySalespersonId;
- secondarySalesperson.split = 25000;
- proposal.secondarySalespeople = new SalespersonSplit[]
+ name = "Programmatic proposal #" + new Random().Next(int.MaxValue),
+ // Set required Marketplace information
+ marketplaceInfo = new ProposalMarketplaceInfo()
{
- secondarySalesperson
- };
-
- // Set the probability to close to 100%.
- proposal.probabilityOfClose = 100000L;
-
- // Set the primary trafficker on the proposal for when it becomes an order.
- proposal.primaryTraffickerId = primaryTraffickerId;
-
- // Create a budget for the proposal worth 100 in the network local currency.
- Money budget = new Money();
- budget.microAmount = 100000000L;
- budget.currencyCode = networkService.getCurrentNetwork().currencyCode;
- proposal.budget = budget;
+ buyerAccountId = programmaticBuyerId
+ }
+ };
- proposal.billingCap = BillingCap.CAPPED_CUMULATIVE;
- proposal.billingSource = BillingSource.DFP_VOLUME;
+ // Set fields that are required before sending the proposal to the buyer.
+ proposal.primaryTraffickerId = primaryTraffickerId;
+ proposal.sellerContactIds = new long[] { primarySalespersonId };
+ proposal.primarySalesperson = new SalespersonSplit()
+ {
+ userId = primarySalespersonId,
+ split = 100000
+ };
+ proposal.advertiser = new ProposalCompanyAssociation()
+ {
+ type = ProposalCompanyAssociationType.ADVERTISER,
+ companyId = advertiserId
+ };
- try
- {
- // Create the proposal on the server.
- Proposal[] proposals = proposalService.createProposals(new Proposal[]
- {
- proposal
- });
+ try
+ {
+ // Create the proposal on the server.
+ Proposal[] proposals =
+ proposalService.createProposals(new Proposal[] { proposal });
- foreach (Proposal createdProposal in proposals)
- {
- Console.WriteLine(
- "A proposal with ID \"{0}\" and name \"{1}\" was created.",
- createdProposal.id, createdProposal.name);
- }
- }
- catch (Exception e)
+ foreach (Proposal createdProposal in proposals)
{
- Console.WriteLine("Failed to create proposals. Exception says \"{0}\"",
- e.Message);
+ Console.WriteLine("A programmatic proposal with ID \"{0}\" " +
+ "and name \"{1}\" was created.",
+ createdProposal.id, createdProposal.name);
}
}
+ catch (Exception e)
+ {
+ Console.WriteLine("Failed to create proposals. Exception says \"{0}\"",
+ e.Message);
+ }
+ }
}
}
}
diff --git a/examples/AdManager/CSharp/v201905/ProposalService/GetProposalsPendingApproval.cs b/examples/AdManager/CSharp/v201905/ProposalService/GetProposalsAwaitingSellerReview.cs
similarity index 87%
rename from examples/AdManager/CSharp/v201905/ProposalService/GetProposalsPendingApproval.cs
rename to examples/AdManager/CSharp/v201905/ProposalService/GetProposalsAwaitingSellerReview.cs
index 7b451bb35c7..552ed93e009 100755
--- a/examples/AdManager/CSharp/v201905/ProposalService/GetProposalsPendingApproval.cs
+++ b/examples/AdManager/CSharp/v201905/ProposalService/GetProposalsAwaitingSellerReview.cs
@@ -21,16 +21,16 @@
namespace Google.Api.Ads.AdManager.Examples.CSharp.v201905
{
///
- /// This example gets all proposals pending approval.
+ /// This example gets all proposals awaiting seller review.
///
- public class GetProposalsPendingApproval : SampleBase
+ public class GetProposalsAwaitingSellerReivew : SampleBase
{
///
/// Returns a description about the code example.
///
public override string Description
{
- get { return "This example gets all proposals pending approval."; }
+ get { return "This example gets all proposals awaiting seller review."; }
}
///
@@ -38,7 +38,7 @@ public override string Description
///
public static void Main()
{
- GetProposalsPendingApproval codeExample = new GetProposalsPendingApproval();
+ GetProposalsAwaitingSellerReivew codeExample = new GetProposalsAwaitingSellerReivew();
Console.WriteLine(codeExample.Description);
try
{
@@ -60,10 +60,10 @@ public void Run(AdManagerUser user)
// Create a statement to select proposals.
int pageSize = StatementBuilder.SUGGESTED_PAGE_LIMIT;
StatementBuilder statementBuilder = new StatementBuilder()
- .Where("status = :status")
+ .Where("negotiationStatus = :status")
.OrderBy("id ASC")
.Limit(pageSize)
- .AddValue("status", ProposalStatus.PENDING_APPROVAL.ToString());
+ .AddValue("status", NegotiationStatus.AWAITING_SELLER_REVIEW.ToString());
// Retrieve a small amount of proposals at a time, paging through until all
// proposals have been retrieved.
diff --git a/examples/AdManager/CSharp/v201905/ProposalService/SubmitProposalsForApproval.cs b/examples/AdManager/CSharp/v201905/ProposalService/SubmitProposalsForApproval.cs
deleted file mode 100755
index 6eef618eb40..00000000000
--- a/examples/AdManager/CSharp/v201905/ProposalService/SubmitProposalsForApproval.cs
+++ /dev/null
@@ -1,132 +0,0 @@
-// Copyright 2019 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.
-
-using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201905;
-using Google.Api.Ads.AdManager.v201905;
-
-using System;
-using System.Collections.Generic;
-
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201905
-{
- ///
- /// This code example submits a proposal for approval. To determine which proposals exist,
- /// run GetAllProposals.cs.
- ///
- public class ApproveProposal : SampleBase
- {
- ///
- /// Returns a description about the code example.
- ///
- public override string Description
- {
- get
- {
- return "This code example submits a proposal for approval. To determine which " +
- "proposals exist, run GetAllProposals.cs.";
- }
- }
-
- ///
- /// Main method, to run this code example as a standalone application.
- ///
- public static void Main()
- {
- ApproveProposal codeExample = new ApproveProposal();
- Console.WriteLine(codeExample.Description);
- codeExample.Run(new AdManagerUser());
- }
-
- ///
- /// Run the code example.
- ///
- public void Run(AdManagerUser user)
- {
- using (ProposalService proposalService = user.GetService())
- {
- // Set the ID of the proposal.
- long proposalId = long.Parse(_T("INSERT_PROPOSAL_ID_HERE"));
-
- // Create statement to select the proposal.
- StatementBuilder statementBuilder = new StatementBuilder()
- .Where("id = :id")
- .OrderBy("id ASC")
- .Limit(1)
- .AddValue("id", proposalId);
-
- // Set default for page.
- ProposalPage page = new ProposalPage();
- List proposalIds = new List();
- int i = 0;
-
- try
- {
- do
- {
- // Get proposals by statement.
- page = proposalService.getProposalsByStatement(
- statementBuilder.ToStatement());
-
- if (page.results != null)
- {
- foreach (Proposal proposal in page.results)
- {
- Console.WriteLine(
- "{0}) Proposal with ID = '{1}', name = '{2}', and " +
- "status ='{3}' will be approved.", i++, proposal.id,
- proposal.name, proposal.status);
- proposalIds.Add(proposal.id.ToString());
- }
- }
-
- statementBuilder.IncreaseOffsetBy(StatementBuilder.SUGGESTED_PAGE_LIMIT);
- } while (statementBuilder.GetOffset() < page.totalResultSetSize);
-
- Console.WriteLine("Number of proposals to be approved: {0}", proposalIds.Count);
-
- if (proposalIds.Count > 0)
- {
- // Modify statement for action.
- statementBuilder.RemoveLimitAndOffset();
-
- // Create action.
- SubmitProposalsForApproval action = new SubmitProposalsForApproval();
-
- // Perform action.
- UpdateResult result =
- proposalService.performProposalAction(action,
- statementBuilder.ToStatement());
-
- // Display results.
- if (result != null && result.numChanges > 0)
- {
- Console.WriteLine("Number of proposals approved: {0}",
- result.numChanges);
- }
- else
- {
- Console.WriteLine("No proposals were approved.");
- }
- }
- }
- catch (Exception e)
- {
- Console.WriteLine("Failed to approve proposals. Exception says \"{0}\"",
- e.Message);
- }
- }
- }
- }
-}
diff --git a/examples/AdManager/CSharp/v201811/ActivityGroupService/CreateActivityGroups.cs b/examples/AdManager/CSharp/v201908/ActivityGroupService/CreateActivityGroups.cs
similarity index 96%
rename from examples/AdManager/CSharp/v201811/ActivityGroupService/CreateActivityGroups.cs
rename to examples/AdManager/CSharp/v201908/ActivityGroupService/CreateActivityGroups.cs
index 566e0ae65c3..b1b3ff3c7ad 100755
--- a/examples/AdManager/CSharp/v201811/ActivityGroupService/CreateActivityGroups.cs
+++ b/examples/AdManager/CSharp/v201908/ActivityGroupService/CreateActivityGroups.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,11 +13,11 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example creates new activity groups. To determine which activity
diff --git a/examples/AdManager/CSharp/v201811/ActivityGroupService/GetActiveActivityGroups.cs b/examples/AdManager/CSharp/v201908/ActivityGroupService/GetActiveActivityGroups.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/ActivityGroupService/GetActiveActivityGroups.cs
rename to examples/AdManager/CSharp/v201908/ActivityGroupService/GetActiveActivityGroups.cs
index 45fd814fd7e..6b7edcb7388 100755
--- a/examples/AdManager/CSharp/v201811/ActivityGroupService/GetActiveActivityGroups.cs
+++ b/examples/AdManager/CSharp/v201908/ActivityGroupService/GetActiveActivityGroups.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all active activity groups.
diff --git a/examples/AdManager/CSharp/v201811/ActivityGroupService/GetAllActivityGroups.cs b/examples/AdManager/CSharp/v201908/ActivityGroupService/GetAllActivityGroups.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/ActivityGroupService/GetAllActivityGroups.cs
rename to examples/AdManager/CSharp/v201908/ActivityGroupService/GetAllActivityGroups.cs
index fcc5520c024..96482d61fdc 100755
--- a/examples/AdManager/CSharp/v201811/ActivityGroupService/GetAllActivityGroups.cs
+++ b/examples/AdManager/CSharp/v201908/ActivityGroupService/GetAllActivityGroups.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all activity groups.
diff --git a/examples/AdManager/CSharp/v201811/ActivityGroupService/UpdateActivityGroups.cs b/examples/AdManager/CSharp/v201908/ActivityGroupService/UpdateActivityGroups.cs
similarity index 95%
rename from examples/AdManager/CSharp/v201811/ActivityGroupService/UpdateActivityGroups.cs
rename to examples/AdManager/CSharp/v201908/ActivityGroupService/UpdateActivityGroups.cs
index 2e4cb95c856..d22d500fe5e 100755
--- a/examples/AdManager/CSharp/v201811/ActivityGroupService/UpdateActivityGroups.cs
+++ b/examples/AdManager/CSharp/v201908/ActivityGroupService/UpdateActivityGroups.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,13 +13,13 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
-using Google.Api.Ads.AdManager.Util.v201811;
+using Google.Api.Ads.AdManager.v201908;
+using Google.Api.Ads.AdManager.Util.v201908;
using System;
using System.Collections.Generic;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example updates activity groups by adding a company. To
diff --git a/examples/AdManager/CSharp/v201811/ActivityService/CreateActivities.cs b/examples/AdManager/CSharp/v201908/ActivityService/CreateActivities.cs
similarity index 96%
rename from examples/AdManager/CSharp/v201811/ActivityService/CreateActivities.cs
rename to examples/AdManager/CSharp/v201908/ActivityService/CreateActivities.cs
index 721639d61d0..d391f0bc3a8 100755
--- a/examples/AdManager/CSharp/v201811/ActivityService/CreateActivities.cs
+++ b/examples/AdManager/CSharp/v201908/ActivityService/CreateActivities.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,11 +13,11 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example creates new activities. To determine which activities
diff --git a/examples/AdManager/CSharp/v201811/ActivityService/GetActiveActivities.cs b/examples/AdManager/CSharp/v201908/ActivityService/GetActiveActivities.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/ActivityService/GetActiveActivities.cs
rename to examples/AdManager/CSharp/v201908/ActivityService/GetActiveActivities.cs
index 72b86c6f321..198c1ad7092 100755
--- a/examples/AdManager/CSharp/v201811/ActivityService/GetActiveActivities.cs
+++ b/examples/AdManager/CSharp/v201908/ActivityService/GetActiveActivities.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all active activities.
diff --git a/examples/AdManager/CSharp/v201811/ActivityService/GetAllActivities.cs b/examples/AdManager/CSharp/v201908/ActivityService/GetAllActivities.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/ActivityService/GetAllActivities.cs
rename to examples/AdManager/CSharp/v201908/ActivityService/GetAllActivities.cs
index 513814bb9aa..bcd85a8ae3b 100755
--- a/examples/AdManager/CSharp/v201811/ActivityService/GetAllActivities.cs
+++ b/examples/AdManager/CSharp/v201908/ActivityService/GetAllActivities.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all activities.
diff --git a/examples/AdManager/CSharp/v201811/ActivityService/UpdateActivities.cs b/examples/AdManager/CSharp/v201908/ActivityService/UpdateActivities.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/ActivityService/UpdateActivities.cs
rename to examples/AdManager/CSharp/v201908/ActivityService/UpdateActivities.cs
index fad9f0443df..358656c82df 100755
--- a/examples/AdManager/CSharp/v201811/ActivityService/UpdateActivities.cs
+++ b/examples/AdManager/CSharp/v201908/ActivityService/UpdateActivities.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
-using Google.Api.Ads.AdManager.Util.v201811;
+using Google.Api.Ads.AdManager.v201908;
+using Google.Api.Ads.AdManager.Util.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example updates activity expected URLs. To determine which
diff --git a/examples/AdManager/CSharp/v201908/AdjustmentService/CreateTrafficAdjustments.cs b/examples/AdManager/CSharp/v201908/AdjustmentService/CreateTrafficAdjustments.cs
new file mode 100755
index 00000000000..9c10438a708
--- /dev/null
+++ b/examples/AdManager/CSharp/v201908/AdjustmentService/CreateTrafficAdjustments.cs
@@ -0,0 +1,195 @@
+// Copyright 2019 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.
+
+using Google.Api.Ads.AdManager.Lib;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
+
+using System;
+using System.Linq;
+
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
+{
+ ///
+ /// This example adds a historical adjustment of 110% for New Years Day Traffic.
+ ///
+ public class CreateTrafficAdjustments : SampleBase
+ {
+ ///
+ /// Returns a description about the code example.
+ ///
+ public override string Description
+ {
+ get { return "This example adds a historical adjustment of 110% for "
+ + "New Years Day Traffic."; }
+ }
+
+ ///
+ /// Main method, to run this code example as a standalone application.
+ ///
+ public static void Main()
+ {
+ GetAllTrafficAdjustments codeExample = new GetAllTrafficAdjustments();
+ Console.WriteLine(codeExample.Description);
+ try
+ {
+ codeExample.Run(new AdManagerUser());
+ }
+ catch (Exception e)
+ {
+ Console.WriteLine("Failed to update adjustments. Exception says \"{0}\"", e.Message);
+ }
+ }
+
+ ///
+ /// Run the code example.
+ ///
+ public void Run(AdManagerUser user)
+ {
+ using (AdjustmentService adjustmentService = user.GetService())
+ using (NetworkService networkService = user.GetService())
+ {
+ String rootAdUnitId = networkService.getCurrentNetwork().effectiveRootAdUnitId;
+
+ TrafficTimeSeriesFilterCriteria criteria = new TrafficTimeSeriesFilterCriteria() {
+ // Target all USA traffic.
+ targeting = new Targeting() {
+ inventoryTargeting = new InventoryTargeting() {
+ targetedAdUnits = new AdUnitTargeting[] {
+ new AdUnitTargeting() {
+ adUnitId = rootAdUnitId,
+ includeDescendants = true
+ }
+ }
+ },
+ geoTargeting = new GeoTargeting() {
+ targetedLocations = new Location[] {
+ new Location() {
+ id = 2840 // United States
+ }
+ }
+ }
+ },
+ // Adjust only 1920x1080 video traffic.
+ adUnitSizes = new AdUnitSize[] {
+ new AdUnitSize() {
+ size = new Size() {
+ width = 1920,
+ height = 1080
+ },
+ environmentType = EnvironmentType.VIDEO_PLAYER
+ }
+ }
+ };
+
+ // Create a new historical adjustment targeting next year's January with
+ // 105% of this year's January.
+ var januarySegment = new TrafficForecastAdjustmentSegment() {
+ basisType = BasisType.HISTORICAL,
+ historicalAdjustment = new HistoricalAdjustment() {
+ referenceDateRange = new DateRange() {
+ startDate = new Date() {
+ year = System.DateTime.Now.Year,
+ month = 1,
+ day = 1
+ },
+ endDate = new Date() {
+ year = System.DateTime.Now.Year,
+ month = 1,
+ day = 30
+ }
+ },
+ targetDateRange = new DateRange() {
+ startDate = new Date() {
+ year = System.DateTime.Now.Year + 1,
+ month = 1,
+ day = 30
+ },
+ endDate = new Date() {
+ year = new System.DateTime().Year + 1,
+ month = 1,
+ day = 30
+ }
+ },
+ milliPercentMultiplier = 105_000L
+ }
+ };
+
+ // Create a new absolute adjustment of 500,000 ad opportunities for Christmas
+ // and 1M ad opportunities for boxing day.
+ var holidaySegment = new TrafficForecastAdjustmentSegment() {
+ basisType = BasisType.ABSOLUTE,
+ adjustmentTimeSeries = new TimeSeries() {
+ timeSeriesDateRange = new DateRange() {
+ startDate = new Date() {
+ year = System.DateTime.Now.Year,
+ month = 12,
+ day = 24
+ },
+ endDate = new Date() {
+ year = System.DateTime.Now.Year,
+ month = 12,
+ day = 25
+ }
+ },
+ valuePeriodType = PeriodType.DAILY,
+ timeSeriesValues = new long[] { 500_000, 1_000_000}
+ }
+ };
+
+ // Create a new absolute adjustment of 900,000 ad opportunities for the first
+ // week in September.
+ var septemberSegment = new TrafficForecastAdjustmentSegment() {
+ basisType = BasisType.ABSOLUTE,
+ adjustmentTimeSeries = new TimeSeries() {
+ timeSeriesDateRange = new DateRange() {
+ startDate = new Date() {
+ year = System.DateTime.Now.Year + 1,
+ month = 9,
+ day = 1
+ },
+ endDate = new Date() {
+ year = System.DateTime.Now.Year + 1,
+ month = 9,
+ day = 7
+ }
+ },
+ valuePeriodType = PeriodType.CUSTOM,
+ timeSeriesValues = new long[] { 900_000 }
+ }
+ };
+
+
+ TrafficForecastAdjustment adjustment = new TrafficForecastAdjustment() {
+ filterCriteria = criteria,
+ forecastAdjustmentSegments = new TrafficForecastAdjustmentSegment[] {
+ januarySegment, holidaySegment, septemberSegment
+ }
+ };
+
+ TrafficForecastAdjustment[] adjustments =
+ adjustmentService.updateTrafficAdjustments(
+ new TrafficForecastAdjustment[] { adjustment });
+
+ foreach (TrafficForecastAdjustment updatedAdjustment in adjustments)
+ {
+ Console.WriteLine("Adjustment with ID {0} and {1} segments was "
+ + "created or updated.",
+ updatedAdjustment.id,
+ updatedAdjustment.forecastAdjustmentSegments.Length);
+ }
+ }
+ }
+ }
+}
diff --git a/examples/AdManager/CSharp/v201811/PremiumRateService/GetAllPremiumRates.cs b/examples/AdManager/CSharp/v201908/AdjustmentService/GetAllTrafficAdjustments.cs
similarity index 59%
rename from examples/AdManager/CSharp/v201811/PremiumRateService/GetAllPremiumRates.cs
rename to examples/AdManager/CSharp/v201908/AdjustmentService/GetAllTrafficAdjustments.cs
index 8a2799bbf46..7f2b6b522c8 100755
--- a/examples/AdManager/CSharp/v201811/PremiumRateService/GetAllPremiumRates.cs
+++ b/examples/AdManager/CSharp/v201908/AdjustmentService/GetAllTrafficAdjustments.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,24 +13,24 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
- /// This example gets all premium rates.
+ /// This example gets all traffic adjustments.
///
- public class GetAllPremiumRates : SampleBase
+ public class GetAllTrafficAdjustments : SampleBase
{
///
/// Returns a description about the code example.
///
public override string Description
{
- get { return "This example gets all premium rates."; }
+ get { return "This example gets all traffic adjustments."; }
}
///
@@ -38,7 +38,7 @@ public override string Description
///
public static void Main()
{
- GetAllPremiumRates codeExample = new GetAllPremiumRates();
+ GetAllTrafficAdjustments codeExample = new GetAllTrafficAdjustments();
Console.WriteLine(codeExample.Description);
try
{
@@ -46,7 +46,7 @@ public static void Main()
}
catch (Exception e)
{
- Console.WriteLine("Failed to get premium rates. Exception says \"{0}\"", e.Message);
+ Console.WriteLine("Failed to get adjustments. Exception says \"{0}\"", e.Message);
}
}
@@ -55,33 +55,34 @@ public static void Main()
///
public void Run(AdManagerUser user)
{
- using (PremiumRateService premiumRateService = user.GetService())
+ using (AdjustmentService adjustmentService = user.GetService())
{
- // Create a statement to select premium rates.
+ // Create a statement to select adjustments.
int pageSize = StatementBuilder.SUGGESTED_PAGE_LIMIT;
StatementBuilder statementBuilder =
new StatementBuilder().OrderBy("id ASC").Limit(pageSize);
- // Retrieve a small amount of premium rates at a time, paging through until all
- // premium rates have been retrieved.
+ // Retrieve a small amount of adjustments at a time, paging through until all
+ // adjustments have been retrieved.
int totalResultSetSize = 0;
do
{
- PremiumRatePage page =
- premiumRateService.getPremiumRatesByStatement(
+ TrafficForecastAdjustmentPage page =
+ adjustmentService.getTrafficAdjustmentsByStatement(
statementBuilder.ToStatement());
- // Print out some information for each premium rate.
+ // Print out some information for each adjustment.
if (page.results != null)
{
totalResultSetSize = page.totalResultSetSize;
int i = page.startIndex;
- foreach (PremiumRate premiumRate in page.results)
+ foreach (TrafficForecastAdjustment adjustment in page.results)
{
- Console.WriteLine(
- "{0}) Premium rate with ID {1}, " + "premium feature \"{2}\", " +
- "and rate card id {3} was found.", i++, premiumRate.id,
- premiumRate.GetType().Name, premiumRate.rateCardId);
+ Console.WriteLine("Forecast adjustment with ID {0} containing {1} "
+ + "segments was found.",
+ adjustment.id,
+ adjustment.forecastAdjustmentSegments != null ?
+ adjustment.forecastAdjustmentSegments.Length : 0);
}
}
diff --git a/examples/AdManager/CSharp/v201908/AdjustmentService/UpdateTrafficAdjustments.cs b/examples/AdManager/CSharp/v201908/AdjustmentService/UpdateTrafficAdjustments.cs
new file mode 100755
index 00000000000..5c6262c9b75
--- /dev/null
+++ b/examples/AdManager/CSharp/v201908/AdjustmentService/UpdateTrafficAdjustments.cs
@@ -0,0 +1,127 @@
+// Copyright 2019 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.
+
+using Google.Api.Ads.AdManager.Lib;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
+
+using System;
+using System.Linq;
+
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
+{
+ ///
+ /// This example adds a historical adjustment of 110% for New Years Day Traffic.
+ ///
+ public class UpdateTrafficAdjustments : SampleBase
+ {
+ ///
+ /// Returns a description about the code example.
+ ///
+ public override string Description
+ {
+ get { return "This example adds a historical adjustment of 110% for "
+ + "New Years Day Traffic."; }
+ }
+
+ ///
+ /// Main method, to run this code example as a standalone application.
+ ///
+ public static void Main()
+ {
+ GetAllTrafficAdjustments codeExample = new GetAllTrafficAdjustments();
+ Console.WriteLine(codeExample.Description);
+ try
+ {
+ codeExample.Run(new AdManagerUser());
+ }
+ catch (Exception e)
+ {
+ Console.WriteLine("Failed to update adjustments. Exception says \"{0}\"", e.Message);
+ }
+ }
+
+ ///
+ /// Run the code example.
+ ///
+ public void Run(AdManagerUser user)
+ {
+ using (AdjustmentService adjustmentService = user.GetService())
+ {
+ // Set the ID of the adjustment to update.
+ long adjustmentId = long.Parse(_T("INSERT_ADJUSTMENT_ID_HERE"));
+
+ // Create a statement to select adjustments.
+ StatementBuilder statementBuilder =
+ new StatementBuilder()
+ .Where("id = :id")
+ .OrderBy("id ASC")
+ .Limit(1)
+ .AddValue("id", adjustmentId);
+
+ TrafficForecastAdjustmentPage page = adjustmentService
+ .getTrafficAdjustmentsByStatement(statementBuilder.ToStatement());
+
+ TrafficForecastAdjustment adjustment = page.results[0];
+
+ // Create a new historical adjustment segment for New Years Day.
+ TrafficForecastAdjustmentSegment segment = new TrafficForecastAdjustmentSegment() {
+ basisType = BasisType.HISTORICAL,
+ historicalAdjustment = new HistoricalAdjustment() {
+ referenceDateRange = new DateRange() {
+ startDate = new Date() {
+ year = System.DateTime.Now.Year,
+ month = 1,
+ day = 1
+ },
+ endDate = new Date() {
+ year = System.DateTime.Now.Year,
+ month = 1,
+ day = 1
+ }
+ },
+ targetDateRange = new DateRange() {
+ startDate = new Date() {
+ year = System.DateTime.Now.Year + 1,
+ month = 1,
+ day = 1
+ },
+ endDate = new Date() {
+ year = System.DateTime.Now.Year + 1,
+ month = 1,
+ day = 1
+ }
+ },
+ milliPercentMultiplier = 110_000L
+ }
+ };
+
+ // Add the new historical segment to the adjustment.
+ adjustment.forecastAdjustmentSegments = adjustment.forecastAdjustmentSegments
+ .Concat(new TrafficForecastAdjustmentSegment[] { segment }).ToArray();
+
+ TrafficForecastAdjustment[] adjustments =
+ adjustmentService.updateTrafficAdjustments(
+ new TrafficForecastAdjustment[] { adjustment });
+
+ foreach (TrafficForecastAdjustment updatedAdjustment in adjustments)
+ {
+ Console.WriteLine("Adjustment with ID {0} and {1} segments was found.",
+ updatedAdjustment.id,
+ updatedAdjustment.forecastAdjustmentSegments.Length);
+ }
+ }
+ }
+ }
+}
diff --git a/examples/AdManager/CSharp/v201811/AudienceSegmentService/CreateAudienceSegments.cs b/examples/AdManager/CSharp/v201908/AudienceSegmentService/CreateAudienceSegments.cs
similarity index 97%
rename from examples/AdManager/CSharp/v201811/AudienceSegmentService/CreateAudienceSegments.cs
rename to examples/AdManager/CSharp/v201908/AudienceSegmentService/CreateAudienceSegments.cs
index 591bd0207e7..fb83f102ff8 100755
--- a/examples/AdManager/CSharp/v201811/AudienceSegmentService/CreateAudienceSegments.cs
+++ b/examples/AdManager/CSharp/v201908/AudienceSegmentService/CreateAudienceSegments.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,11 +13,11 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example creates new rule based first party audience segments. To
diff --git a/examples/AdManager/CSharp/v201811/AudienceSegmentService/GetAllAudienceSegments.cs b/examples/AdManager/CSharp/v201908/AudienceSegmentService/GetAllAudienceSegments.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/AudienceSegmentService/GetAllAudienceSegments.cs
rename to examples/AdManager/CSharp/v201908/AudienceSegmentService/GetAllAudienceSegments.cs
index 39b8e1e4346..ada9d8d2bd2 100755
--- a/examples/AdManager/CSharp/v201811/AudienceSegmentService/GetAllAudienceSegments.cs
+++ b/examples/AdManager/CSharp/v201908/AudienceSegmentService/GetAllAudienceSegments.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all audience segments.
diff --git a/examples/AdManager/CSharp/v201811/AudienceSegmentService/GetFirstPartyAudienceSegments.cs b/examples/AdManager/CSharp/v201908/AudienceSegmentService/GetFirstPartyAudienceSegments.cs
similarity index 95%
rename from examples/AdManager/CSharp/v201811/AudienceSegmentService/GetFirstPartyAudienceSegments.cs
rename to examples/AdManager/CSharp/v201908/AudienceSegmentService/GetFirstPartyAudienceSegments.cs
index cd3c9b25f5d..777ed13b96d 100755
--- a/examples/AdManager/CSharp/v201811/AudienceSegmentService/GetFirstPartyAudienceSegments.cs
+++ b/examples/AdManager/CSharp/v201908/AudienceSegmentService/GetFirstPartyAudienceSegments.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all first party audience segments.
diff --git a/examples/AdManager/CSharp/v201811/AudienceSegmentService/PopulateFirstPartyAudienceSegments.cs b/examples/AdManager/CSharp/v201908/AudienceSegmentService/PopulateFirstPartyAudienceSegments.cs
similarity index 95%
rename from examples/AdManager/CSharp/v201811/AudienceSegmentService/PopulateFirstPartyAudienceSegments.cs
rename to examples/AdManager/CSharp/v201908/AudienceSegmentService/PopulateFirstPartyAudienceSegments.cs
index badb9982eff..37eecbe0b62 100755
--- a/examples/AdManager/CSharp/v201811/AudienceSegmentService/PopulateFirstPartyAudienceSegments.cs
+++ b/examples/AdManager/CSharp/v201908/AudienceSegmentService/PopulateFirstPartyAudienceSegments.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example populates a specific rule base first party audience
diff --git a/examples/AdManager/CSharp/v201811/AudienceSegmentService/UpdateAudienceSegments.cs b/examples/AdManager/CSharp/v201908/AudienceSegmentService/UpdateAudienceSegments.cs
similarity index 95%
rename from examples/AdManager/CSharp/v201811/AudienceSegmentService/UpdateAudienceSegments.cs
rename to examples/AdManager/CSharp/v201908/AudienceSegmentService/UpdateAudienceSegments.cs
index 1f611d104b2..442866366a2 100755
--- a/examples/AdManager/CSharp/v201811/AudienceSegmentService/UpdateAudienceSegments.cs
+++ b/examples/AdManager/CSharp/v201908/AudienceSegmentService/UpdateAudienceSegments.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example updates a first party audience segment's member
diff --git a/examples/AdManager/CSharp/v201811/CdnConfigurationService/CreateCdnConfigurations.cs b/examples/AdManager/CSharp/v201908/CdnConfigurationService/CreateCdnConfigurations.cs
similarity index 97%
rename from examples/AdManager/CSharp/v201811/CdnConfigurationService/CreateCdnConfigurations.cs
rename to examples/AdManager/CSharp/v201908/CdnConfigurationService/CreateCdnConfigurations.cs
index 07346e041f6..f056437e76e 100755
--- a/examples/AdManager/CSharp/v201811/CdnConfigurationService/CreateCdnConfigurations.cs
+++ b/examples/AdManager/CSharp/v201908/CdnConfigurationService/CreateCdnConfigurations.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,11 +13,11 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example creates new CDN configurations.
diff --git a/examples/AdManager/CSharp/v201811/CdnConfigurationService/GetAllCdnConfigurations.cs b/examples/AdManager/CSharp/v201908/CdnConfigurationService/GetAllCdnConfigurations.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/CdnConfigurationService/GetAllCdnConfigurations.cs
rename to examples/AdManager/CSharp/v201908/CdnConfigurationService/GetAllCdnConfigurations.cs
index 531b6a158f3..bc53c7a533f 100755
--- a/examples/AdManager/CSharp/v201811/CdnConfigurationService/GetAllCdnConfigurations.cs
+++ b/examples/AdManager/CSharp/v201908/CdnConfigurationService/GetAllCdnConfigurations.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all CDN configurations.
diff --git a/examples/AdManager/CSharp/v201811/PackageService/GetAllPackages.cs b/examples/AdManager/CSharp/v201908/CmsMetadataService/GetAllCmsMetadataKeys.cs
similarity index 62%
rename from examples/AdManager/CSharp/v201811/PackageService/GetAllPackages.cs
rename to examples/AdManager/CSharp/v201908/CmsMetadataService/GetAllCmsMetadataKeys.cs
index e59e9870669..49f3c32b582 100755
--- a/examples/AdManager/CSharp/v201811/PackageService/GetAllPackages.cs
+++ b/examples/AdManager/CSharp/v201908/CmsMetadataService/GetAllCmsMetadataKeys.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,24 +13,24 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
- /// This example gets all packages.
+ /// This example gets all CMS metadata keys.
///
- public class GetAllPackages : SampleBase
+ public class GetAllCmsMetadataKeys : SampleBase
{
///
/// Returns a description about the code example.
///
public override string Description
{
- get { return "This example gets all packages."; }
+ get { return "This example gets all CMS metadata keys."; }
}
///
@@ -38,7 +38,7 @@ public override string Description
///
public static void Main()
{
- GetAllPackages codeExample = new GetAllPackages();
+ GetAllCmsMetadataKeys codeExample = new GetAllCmsMetadataKeys();
Console.WriteLine(codeExample.Description);
try
{
@@ -46,7 +46,8 @@ public static void Main()
}
catch (Exception e)
{
- Console.WriteLine("Failed to get packages. Exception says \"{0}\"", e.Message);
+ Console.WriteLine("Failed to get CMS metadata keys. Exception says \"{0}\"",
+ e.Message);
}
}
@@ -55,32 +56,31 @@ public static void Main()
///
public void Run(AdManagerUser user)
{
- using (PackageService packageService = user.GetService())
+ using (CmsMetadataService cmsMetadataService = user.GetService())
{
- // Create a statement to select packages.
+ // Create a statement to select CMS metadata keys.
int pageSize = StatementBuilder.SUGGESTED_PAGE_LIMIT;
StatementBuilder statementBuilder =
new StatementBuilder().OrderBy("id ASC").Limit(pageSize);
- // Retrieve a small amount of packages at a time, paging through until all
- // packages have been retrieved.
+ // Retrieve a small amount of CMS metadata keys at a time, paging through until all
+ // CMS metadata keys have been retrieved.
int totalResultSetSize = 0;
do
{
- PackagePage page =
- packageService.getPackagesByStatement(statementBuilder.ToStatement());
+ CmsMetadataKeyPage page = cmsMetadataService.getCmsMetadataKeysByStatement(
+ statementBuilder.ToStatement());
- // Print out some information for each package.
+ // Print out some information for each CMS metadata key.
if (page.results != null)
{
totalResultSetSize = page.totalResultSetSize;
int i = page.startIndex;
- foreach (Package pkg in page.results)
+ foreach (CmsMetadataKey cmsMetadataKey in page.results)
{
Console.WriteLine(
- "{0}) Package with ID {1}, name \"{2}\", and proposal id {3} was " +
- "found.",
- i++, pkg.id, pkg.name, pkg.proposalId);
+ "{0}) CMS metadata key with ID {1} and name \"{2}\" was found.",
+ i++, cmsMetadataKey.id, cmsMetadataKey.name);
}
}
diff --git a/examples/AdManager/CSharp/v201811/ExchangeRateService/GetAllExchangeRates.cs b/examples/AdManager/CSharp/v201908/CmsMetadataService/GetAllCmsMetadataValues.cs
similarity index 57%
rename from examples/AdManager/CSharp/v201811/ExchangeRateService/GetAllExchangeRates.cs
rename to examples/AdManager/CSharp/v201908/CmsMetadataService/GetAllCmsMetadataValues.cs
index c68e7d69416..265bfc2087c 100755
--- a/examples/AdManager/CSharp/v201811/ExchangeRateService/GetAllExchangeRates.cs
+++ b/examples/AdManager/CSharp/v201908/CmsMetadataService/GetAllCmsMetadataValues.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,24 +13,24 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
- /// This example gets all exchange rates.
+ /// This example gets all CMS metadata values.
///
- public class GetAllExchangeRates : SampleBase
+ public class GetAllCmsMetadataValues : SampleBase
{
///
/// Returns a description about the code example.
///
public override string Description
{
- get { return "This example gets all exchange rates."; }
+ get { return "This example gets all CMS metadata values."; }
}
///
@@ -38,7 +38,7 @@ public override string Description
///
public static void Main()
{
- GetAllExchangeRates codeExample = new GetAllExchangeRates();
+ GetAllCmsMetadataValues codeExample = new GetAllCmsMetadataValues();
Console.WriteLine(codeExample.Description);
try
{
@@ -46,7 +46,7 @@ public static void Main()
}
catch (Exception e)
{
- Console.WriteLine("Failed to get exchange rates. Exception says \"{0}\"",
+ Console.WriteLine("Failed to get CMS metadata values. Exception says \"{0}\"",
e.Message);
}
}
@@ -56,34 +56,36 @@ public static void Main()
///
public void Run(AdManagerUser user)
{
- using (ExchangeRateService exchangeRateService = user.GetService())
+ using (CmsMetadataService cmsMetadataService = user.GetService())
{
- // Create a statement to select exchange rates.
+ // Create a statement to select CMS metadata values.
int pageSize = StatementBuilder.SUGGESTED_PAGE_LIMIT;
StatementBuilder statementBuilder =
new StatementBuilder().OrderBy("id ASC").Limit(pageSize);
- // Retrieve a small amount of exchange rates at a time, paging through until all
- // exchange rates have been retrieved.
+ // Retrieve a small amount of CMS metadata values at a time, paging through until
+ // all CMS metadata values have been retrieved.
int totalResultSetSize = 0;
do
{
- ExchangeRatePage page =
- exchangeRateService.getExchangeRatesByStatement(
- statementBuilder.ToStatement());
+ CmsMetadataValuePage page = cmsMetadataService.getCmsMetadataValuesByStatement(
+ statementBuilder.ToStatement());
- // Print out some information for each exchange rate.
+ // Print out some information for each CMS metadata value.
if (page.results != null)
{
totalResultSetSize = page.totalResultSetSize;
int i = page.startIndex;
- foreach (ExchangeRate exchangeRate in page.results)
+ foreach (CmsMetadataValue cmsMetadataValue in page.results)
{
Console.WriteLine(
- "{0}) Exchange rate with ID {1}, " + "currency code \"{2}\", " +
- "direction \"{3}\", " + "and exchange rate {4} was found.", i++,
- exchangeRate.id, exchangeRate.currencyCode, exchangeRate.direction,
- exchangeRate.exchangeRate);
+ "{0}) CMS metadata value with ID {1} and name \"{2}\" associated "
+ + " with key ID {3} and name {4} was found.",
+ i++,
+ cmsMetadataValue.cmsMetadataValueId,
+ cmsMetadataValue.valueName,
+ cmsMetadataValue.key.id,
+ cmsMetadataValue.key.name);
}
}
diff --git a/examples/AdManager/CSharp/v201811/ProductPackageService/GetActiveProductPackages.cs b/examples/AdManager/CSharp/v201908/CmsMetadataService/GetCmsMetadataValuesForKey.cs
similarity index 55%
rename from examples/AdManager/CSharp/v201811/ProductPackageService/GetActiveProductPackages.cs
rename to examples/AdManager/CSharp/v201908/CmsMetadataService/GetCmsMetadataValuesForKey.cs
index 4d19fb28522..71defd3b64f 100755
--- a/examples/AdManager/CSharp/v201811/ProductPackageService/GetActiveProductPackages.cs
+++ b/examples/AdManager/CSharp/v201908/CmsMetadataService/GetCmsMetadataValuesForKey.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,24 +13,24 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
- /// This example gets all active product packages.
+ /// This example gets all CMS metadata values.
///
- public class GetActiveProductPackages : SampleBase
+ public class GetCmsMetadataValuesForKey : SampleBase
{
///
/// Returns a description about the code example.
///
public override string Description
{
- get { return "This example gets all active product packages."; }
+ get { return "This example gets all CMS metadata values."; }
}
///
@@ -38,7 +38,7 @@ public override string Description
///
public static void Main()
{
- GetActiveProductPackages codeExample = new GetActiveProductPackages();
+ GetAllCmsMetadataValues codeExample = new GetAllCmsMetadataValues();
Console.WriteLine(codeExample.Description);
try
{
@@ -46,7 +46,7 @@ public static void Main()
}
catch (Exception e)
{
- Console.WriteLine("Failed to get product packages. Exception says \"{0}\"",
+ Console.WriteLine("Failed to get CMS metadata values. Exception says \"{0}\"",
e.Message);
}
}
@@ -56,37 +56,41 @@ public static void Main()
///
public void Run(AdManagerUser user)
{
- using (ProductPackageService productPackageService =
- user.GetService()
- )
+ using (CmsMetadataService cmsMetadataService = user.GetService())
{
- // Create a statement to select product packages.
+ string cmsMetadataKeyName = "INSERT_CMS_METADATA_KEY_NAME_HERE";
+
+ // Create a statement to select CMS metadata values.
int pageSize = StatementBuilder.SUGGESTED_PAGE_LIMIT;
StatementBuilder statementBuilder = new StatementBuilder()
- .Where("status = :status")
+ .Where("cmsKey = :cmsMetadataKeyName")
.OrderBy("id ASC")
.Limit(pageSize)
- .AddValue("status", ProductPackageStatus.ACTIVE.ToString());
+ .AddValue("cmsKey", cmsMetadataKeyName);
- // Retrieve a small amount of product packages at a time, paging through until all
- // product packages have been retrieved.
+ // Retrieve a small amount of CMS metadata values at a time, paging through until
+ // all CMS metadata values have been retrieved.
int totalResultSetSize = 0;
do
{
- ProductPackagePage page =
- productPackageService.getProductPackagesByStatement(statementBuilder
- .ToStatement());
+ CmsMetadataValuePage page = cmsMetadataService.getCmsMetadataValuesByStatement(
+ statementBuilder.ToStatement());
- // Print out some information for each product package.
+ // Print out some information for each CMS metadata value.
if (page.results != null)
{
totalResultSetSize = page.totalResultSetSize;
int i = page.startIndex;
- foreach (ProductPackage productPackage in page.results)
+ foreach (CmsMetadataValue cmsMetadataValue in page.results)
{
Console.WriteLine(
- "{0}) Product package with ID {1} and name \"{2}\" was found.", i++,
- productPackage.id, productPackage.name);
+ "{0}) CMS metadata value with ID {1} and name \"{2}\" associated "
+ + " with key ID {3} and name {4} was found.",
+ i++,
+ cmsMetadataValue.cmsMetadataValueId,
+ cmsMetadataValue.valueName,
+ cmsMetadataValue.key.id,
+ cmsMetadataValue.key.name);
}
}
diff --git a/examples/AdManager/CSharp/v201811/CompanyService/CreateCompanies.cs b/examples/AdManager/CSharp/v201908/CompanyService/CreateCompanies.cs
similarity index 95%
rename from examples/AdManager/CSharp/v201811/CompanyService/CreateCompanies.cs
rename to examples/AdManager/CSharp/v201908/CompanyService/CreateCompanies.cs
index 928d010ba96..75badeecaa6 100755
--- a/examples/AdManager/CSharp/v201811/CompanyService/CreateCompanies.cs
+++ b/examples/AdManager/CSharp/v201908/CompanyService/CreateCompanies.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,11 +13,11 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example creates new companies. To determine which companies
diff --git a/examples/AdManager/CSharp/v201811/CompanyService/GetAdvertisers.cs b/examples/AdManager/CSharp/v201908/CompanyService/GetAdvertisers.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/CompanyService/GetAdvertisers.cs
rename to examples/AdManager/CSharp/v201908/CompanyService/GetAdvertisers.cs
index 26e93cc1374..7fc9275802c 100755
--- a/examples/AdManager/CSharp/v201811/CompanyService/GetAdvertisers.cs
+++ b/examples/AdManager/CSharp/v201908/CompanyService/GetAdvertisers.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all companies that are advertisers.
diff --git a/examples/AdManager/CSharp/v201811/CompanyService/GetAllCompanies.cs b/examples/AdManager/CSharp/v201908/CompanyService/GetAllCompanies.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/CompanyService/GetAllCompanies.cs
rename to examples/AdManager/CSharp/v201908/CompanyService/GetAllCompanies.cs
index 5eb819ac2ff..2238068fbfe 100755
--- a/examples/AdManager/CSharp/v201811/CompanyService/GetAllCompanies.cs
+++ b/examples/AdManager/CSharp/v201908/CompanyService/GetAllCompanies.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all companies.
diff --git a/examples/AdManager/CSharp/v201811/CompanyService/UpdateCompanies.cs b/examples/AdManager/CSharp/v201908/CompanyService/UpdateCompanies.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/CompanyService/UpdateCompanies.cs
rename to examples/AdManager/CSharp/v201908/CompanyService/UpdateCompanies.cs
index 47b5970324f..3854c47a6e7 100755
--- a/examples/AdManager/CSharp/v201811/CompanyService/UpdateCompanies.cs
+++ b/examples/AdManager/CSharp/v201908/CompanyService/UpdateCompanies.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example updates company comments. To determine which companies exist,
diff --git a/examples/AdManager/CSharp/v201811/ContactService/CreateContacts.cs b/examples/AdManager/CSharp/v201908/ContactService/CreateContacts.cs
similarity index 95%
rename from examples/AdManager/CSharp/v201811/ContactService/CreateContacts.cs
rename to examples/AdManager/CSharp/v201908/ContactService/CreateContacts.cs
index 74b424c774b..3683935b6de 100755
--- a/examples/AdManager/CSharp/v201811/ContactService/CreateContacts.cs
+++ b/examples/AdManager/CSharp/v201908/ContactService/CreateContacts.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,11 +13,11 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example creates new contacts. To determine which contacts exist,
diff --git a/examples/AdManager/CSharp/v201811/ContactService/GetAllContacts.cs b/examples/AdManager/CSharp/v201908/ContactService/GetAllContacts.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/ContactService/GetAllContacts.cs
rename to examples/AdManager/CSharp/v201908/ContactService/GetAllContacts.cs
index 2facb0d8d36..34de76f938f 100755
--- a/examples/AdManager/CSharp/v201811/ContactService/GetAllContacts.cs
+++ b/examples/AdManager/CSharp/v201908/ContactService/GetAllContacts.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all contacts.
diff --git a/examples/AdManager/CSharp/v201811/ContactService/GetUninvitedContacts.cs b/examples/AdManager/CSharp/v201908/ContactService/GetUninvitedContacts.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/ContactService/GetUninvitedContacts.cs
rename to examples/AdManager/CSharp/v201908/ContactService/GetUninvitedContacts.cs
index 162b8fcc29c..fef46f5eb5b 100755
--- a/examples/AdManager/CSharp/v201811/ContactService/GetUninvitedContacts.cs
+++ b/examples/AdManager/CSharp/v201908/ContactService/GetUninvitedContacts.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all contacts that aren't invited yet.
diff --git a/examples/AdManager/CSharp/v201811/ContactService/UpdateContacts.cs b/examples/AdManager/CSharp/v201908/ContactService/UpdateContacts.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/ContactService/UpdateContacts.cs
rename to examples/AdManager/CSharp/v201908/ContactService/UpdateContacts.cs
index 5245a5370e5..b3e7d22f222 100755
--- a/examples/AdManager/CSharp/v201811/ContactService/UpdateContacts.cs
+++ b/examples/AdManager/CSharp/v201908/ContactService/UpdateContacts.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
-using Google.Api.Ads.AdManager.Util.v201811;
+using Google.Api.Ads.AdManager.v201908;
+using Google.Api.Ads.AdManager.Util.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example updates contact addresses. To determine which contacts
diff --git a/examples/AdManager/CSharp/v201811/ContentService/GetAllContent.cs b/examples/AdManager/CSharp/v201908/ContentService/GetAllContent.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/ContentService/GetAllContent.cs
rename to examples/AdManager/CSharp/v201908/ContentService/GetAllContent.cs
index 0d087e5b1cf..e030046208d 100755
--- a/examples/AdManager/CSharp/v201811/ContentService/GetAllContent.cs
+++ b/examples/AdManager/CSharp/v201908/ContentService/GetAllContent.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all content.
diff --git a/examples/AdManager/CSharp/v201811/CreativeService/CopyImageCreatives.cs b/examples/AdManager/CSharp/v201908/CreativeService/CopyImageCreatives.cs
similarity index 96%
rename from examples/AdManager/CSharp/v201811/CreativeService/CopyImageCreatives.cs
rename to examples/AdManager/CSharp/v201908/CreativeService/CopyImageCreatives.cs
index 0378c4883a1..ab6dd5d77a4 100755
--- a/examples/AdManager/CSharp/v201811/CreativeService/CopyImageCreatives.cs
+++ b/examples/AdManager/CSharp/v201908/CreativeService/CopyImageCreatives.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -14,12 +14,12 @@
using Google.Api.Ads.Common.Util;
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example creates a copy of an image creative. This would
diff --git a/examples/AdManager/CSharp/v201811/CreativeService/CreateCreativeFromTemplate.cs b/examples/AdManager/CSharp/v201908/CreativeService/CreateCreativeFromTemplate.cs
similarity index 97%
rename from examples/AdManager/CSharp/v201811/CreativeService/CreateCreativeFromTemplate.cs
rename to examples/AdManager/CSharp/v201908/CreativeService/CreateCreativeFromTemplate.cs
index b286e5d7900..2583bef059f 100755
--- a/examples/AdManager/CSharp/v201811/CreativeService/CreateCreativeFromTemplate.cs
+++ b/examples/AdManager/CSharp/v201908/CreativeService/CreateCreativeFromTemplate.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -14,11 +14,11 @@
using Google.Api.Ads.Common.Util;
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example creates a new template creative for a given advertiser.
diff --git a/examples/AdManager/CSharp/v201811/CreativeService/CreateCreatives.cs b/examples/AdManager/CSharp/v201908/CreativeService/CreateCreatives.cs
similarity index 97%
rename from examples/AdManager/CSharp/v201811/CreativeService/CreateCreatives.cs
rename to examples/AdManager/CSharp/v201908/CreativeService/CreateCreatives.cs
index 7de55af69b9..3c0703f21ea 100755
--- a/examples/AdManager/CSharp/v201811/CreativeService/CreateCreatives.cs
+++ b/examples/AdManager/CSharp/v201908/CreativeService/CreateCreatives.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -14,11 +14,11 @@
using Google.Api.Ads.Common.Util;
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example creates new image creatives for a given advertiser. To
diff --git a/examples/AdManager/CSharp/v201811/CreativeService/CreateCustomCreative.cs b/examples/AdManager/CSharp/v201908/CreativeService/CreateCustomCreative.cs
similarity index 97%
rename from examples/AdManager/CSharp/v201811/CreativeService/CreateCustomCreative.cs
rename to examples/AdManager/CSharp/v201908/CreativeService/CreateCustomCreative.cs
index 97312174bec..cc78d13f48f 100755
--- a/examples/AdManager/CSharp/v201811/CreativeService/CreateCustomCreative.cs
+++ b/examples/AdManager/CSharp/v201908/CreativeService/CreateCustomCreative.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -14,11 +14,11 @@
using Google.Api.Ads.Common.Util;
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example creates a custom creative for a given advertiser. To
diff --git a/examples/AdManager/CSharp/v201811/CreativeService/CreateNativeCreative.cs b/examples/AdManager/CSharp/v201908/CreativeService/CreateNativeCreative.cs
similarity index 97%
rename from examples/AdManager/CSharp/v201811/CreativeService/CreateNativeCreative.cs
rename to examples/AdManager/CSharp/v201908/CreativeService/CreateNativeCreative.cs
index 7544fe9aa57..acb554db015 100755
--- a/examples/AdManager/CSharp/v201811/CreativeService/CreateNativeCreative.cs
+++ b/examples/AdManager/CSharp/v201908/CreativeService/CreateNativeCreative.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -14,13 +14,13 @@
using Google.Api.Ads.Common.Util;
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
using System.Collections.Generic;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example creates a new native creative. To determine which creatives
diff --git a/examples/AdManager/CSharp/v201811/CreativeService/GetAllCreatives.cs b/examples/AdManager/CSharp/v201908/CreativeService/GetAllCreatives.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/CreativeService/GetAllCreatives.cs
rename to examples/AdManager/CSharp/v201908/CreativeService/GetAllCreatives.cs
index 8b8aebd05cc..af99e615c66 100755
--- a/examples/AdManager/CSharp/v201811/CreativeService/GetAllCreatives.cs
+++ b/examples/AdManager/CSharp/v201908/CreativeService/GetAllCreatives.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all creatives.
diff --git a/examples/AdManager/CSharp/v201811/CreativeService/GetImageCreatives.cs b/examples/AdManager/CSharp/v201908/CreativeService/GetImageCreatives.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/CreativeService/GetImageCreatives.cs
rename to examples/AdManager/CSharp/v201908/CreativeService/GetImageCreatives.cs
index 3e2e0d4deb2..d6b06ec2d94 100755
--- a/examples/AdManager/CSharp/v201811/CreativeService/GetImageCreatives.cs
+++ b/examples/AdManager/CSharp/v201908/CreativeService/GetImageCreatives.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all image creatives.
diff --git a/examples/AdManager/CSharp/v201811/CreativeService/UpdateCreatives.cs b/examples/AdManager/CSharp/v201908/CreativeService/UpdateCreatives.cs
similarity index 95%
rename from examples/AdManager/CSharp/v201811/CreativeService/UpdateCreatives.cs
rename to examples/AdManager/CSharp/v201908/CreativeService/UpdateCreatives.cs
index 95f8d53b7fa..3c4d8b0c064 100755
--- a/examples/AdManager/CSharp/v201811/CreativeService/UpdateCreatives.cs
+++ b/examples/AdManager/CSharp/v201908/CreativeService/UpdateCreatives.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example updates image creatives. To create an image creative, run
diff --git a/examples/AdManager/CSharp/v201811/CreativeSetService/GetAllCreativeSets.cs b/examples/AdManager/CSharp/v201908/CreativeSetService/GetAllCreativeSets.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/CreativeSetService/GetAllCreativeSets.cs
rename to examples/AdManager/CSharp/v201908/CreativeSetService/GetAllCreativeSets.cs
index b3b411e64db..9c97dd7133c 100755
--- a/examples/AdManager/CSharp/v201811/CreativeSetService/GetAllCreativeSets.cs
+++ b/examples/AdManager/CSharp/v201908/CreativeSetService/GetAllCreativeSets.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all creative sets.
diff --git a/examples/AdManager/CSharp/v201811/CreativeSetService/GetCreativeSetsForMasterCreative.cs b/examples/AdManager/CSharp/v201908/CreativeSetService/GetCreativeSetsForMasterCreative.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/CreativeSetService/GetCreativeSetsForMasterCreative.cs
rename to examples/AdManager/CSharp/v201908/CreativeSetService/GetCreativeSetsForMasterCreative.cs
index dd9103c1f8d..af5f860d0bf 100755
--- a/examples/AdManager/CSharp/v201811/CreativeSetService/GetCreativeSetsForMasterCreative.cs
+++ b/examples/AdManager/CSharp/v201908/CreativeSetService/GetCreativeSetsForMasterCreative.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all creative sets for a master creative.
diff --git a/examples/AdManager/CSharp/v201811/CreativeTemplateService/GetAllCreativeTemplates.cs b/examples/AdManager/CSharp/v201908/CreativeTemplateService/GetAllCreativeTemplates.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/CreativeTemplateService/GetAllCreativeTemplates.cs
rename to examples/AdManager/CSharp/v201908/CreativeTemplateService/GetAllCreativeTemplates.cs
index 1127f38755d..94f84aacd82 100755
--- a/examples/AdManager/CSharp/v201811/CreativeTemplateService/GetAllCreativeTemplates.cs
+++ b/examples/AdManager/CSharp/v201908/CreativeTemplateService/GetAllCreativeTemplates.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all creative templates.
diff --git a/examples/AdManager/CSharp/v201811/CreativeTemplateService/GetSystemDefinedCreativeTemplates.cs b/examples/AdManager/CSharp/v201908/CreativeTemplateService/GetSystemDefinedCreativeTemplates.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/CreativeTemplateService/GetSystemDefinedCreativeTemplates.cs
rename to examples/AdManager/CSharp/v201908/CreativeTemplateService/GetSystemDefinedCreativeTemplates.cs
index fe1835cca21..8f16fcb4b9f 100755
--- a/examples/AdManager/CSharp/v201811/CreativeTemplateService/GetSystemDefinedCreativeTemplates.cs
+++ b/examples/AdManager/CSharp/v201908/CreativeTemplateService/GetSystemDefinedCreativeTemplates.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all system defined creative templates.
diff --git a/examples/AdManager/CSharp/v201811/CreativeWrapperService/CreateCreativeWrappers.cs b/examples/AdManager/CSharp/v201908/CreativeWrapperService/CreateCreativeWrappers.cs
similarity index 95%
rename from examples/AdManager/CSharp/v201811/CreativeWrapperService/CreateCreativeWrappers.cs
rename to examples/AdManager/CSharp/v201908/CreativeWrapperService/CreateCreativeWrappers.cs
index 333f7b4b393..c7f8d7f4958 100755
--- a/examples/AdManager/CSharp/v201811/CreativeWrapperService/CreateCreativeWrappers.cs
+++ b/examples/AdManager/CSharp/v201908/CreativeWrapperService/CreateCreativeWrappers.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,11 +13,11 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example creates a new creative wrapper. Creative wrappers must
diff --git a/examples/AdManager/CSharp/v201811/CreativeWrapperService/DeactivateCreativeWrappers.cs b/examples/AdManager/CSharp/v201908/CreativeWrapperService/DeactivateCreativeWrappers.cs
similarity index 95%
rename from examples/AdManager/CSharp/v201811/CreativeWrapperService/DeactivateCreativeWrappers.cs
rename to examples/AdManager/CSharp/v201908/CreativeWrapperService/DeactivateCreativeWrappers.cs
index 0a4a887abc8..d210c39b523 100755
--- a/examples/AdManager/CSharp/v201811/CreativeWrapperService/DeactivateCreativeWrappers.cs
+++ b/examples/AdManager/CSharp/v201908/CreativeWrapperService/DeactivateCreativeWrappers.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example deactivates all creative wrappers belonging to a label.
diff --git a/examples/AdManager/CSharp/v201811/CreativeWrapperService/GetActiveCreativeWrappers.cs b/examples/AdManager/CSharp/v201908/CreativeWrapperService/GetActiveCreativeWrappers.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/CreativeWrapperService/GetActiveCreativeWrappers.cs
rename to examples/AdManager/CSharp/v201908/CreativeWrapperService/GetActiveCreativeWrappers.cs
index ae1d5772881..55f4aa15829 100755
--- a/examples/AdManager/CSharp/v201811/CreativeWrapperService/GetActiveCreativeWrappers.cs
+++ b/examples/AdManager/CSharp/v201908/CreativeWrapperService/GetActiveCreativeWrappers.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all active creative wrappers.
diff --git a/examples/AdManager/CSharp/v201811/CreativeWrapperService/GetAllCreativeWrappers.cs b/examples/AdManager/CSharp/v201908/CreativeWrapperService/GetAllCreativeWrappers.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/CreativeWrapperService/GetAllCreativeWrappers.cs
rename to examples/AdManager/CSharp/v201908/CreativeWrapperService/GetAllCreativeWrappers.cs
index b3e478a69f4..11af3cde01c 100755
--- a/examples/AdManager/CSharp/v201811/CreativeWrapperService/GetAllCreativeWrappers.cs
+++ b/examples/AdManager/CSharp/v201908/CreativeWrapperService/GetAllCreativeWrappers.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all creative wrappers.
diff --git a/examples/AdManager/CSharp/v201811/CreativeWrapperService/UpdateCreativeWrappers.cs b/examples/AdManager/CSharp/v201908/CreativeWrapperService/UpdateCreativeWrappers.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/CreativeWrapperService/UpdateCreativeWrappers.cs
rename to examples/AdManager/CSharp/v201908/CreativeWrapperService/UpdateCreativeWrappers.cs
index e4074021b66..09d52b10ee3 100755
--- a/examples/AdManager/CSharp/v201811/CreativeWrapperService/UpdateCreativeWrappers.cs
+++ b/examples/AdManager/CSharp/v201908/CreativeWrapperService/UpdateCreativeWrappers.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,13 +13,13 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.v201908;
using System;
-using Google.Api.Ads.AdManager.Util.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example updates a creative wrapper to the 'OUTER' wrapping
diff --git a/examples/AdManager/CSharp/v201811/CustomFieldService/CreateCustomFieldOptions.cs b/examples/AdManager/CSharp/v201908/CustomFieldService/CreateCustomFieldOptions.cs
similarity index 96%
rename from examples/AdManager/CSharp/v201811/CustomFieldService/CreateCustomFieldOptions.cs
rename to examples/AdManager/CSharp/v201908/CustomFieldService/CreateCustomFieldOptions.cs
index c183acdfaed..92be55c7e00 100755
--- a/examples/AdManager/CSharp/v201811/CustomFieldService/CreateCustomFieldOptions.cs
+++ b/examples/AdManager/CSharp/v201908/CustomFieldService/CreateCustomFieldOptions.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,11 +13,11 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example creates custom field options for a drop-down custom
diff --git a/examples/AdManager/CSharp/v201811/CustomFieldService/CreateCustomFields.cs b/examples/AdManager/CSharp/v201908/CustomFieldService/CreateCustomFields.cs
similarity index 96%
rename from examples/AdManager/CSharp/v201811/CustomFieldService/CreateCustomFields.cs
rename to examples/AdManager/CSharp/v201908/CustomFieldService/CreateCustomFields.cs
index aacd5321499..f5170b03cdb 100755
--- a/examples/AdManager/CSharp/v201811/CustomFieldService/CreateCustomFields.cs
+++ b/examples/AdManager/CSharp/v201908/CustomFieldService/CreateCustomFields.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,11 +13,11 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example creates custom fields. To determine which custom fields
diff --git a/examples/AdManager/CSharp/v201811/CustomFieldService/DeactivateCustomFields.cs b/examples/AdManager/CSharp/v201908/CustomFieldService/DeactivateCustomFields.cs
similarity index 93%
rename from examples/AdManager/CSharp/v201811/CustomFieldService/DeactivateCustomFields.cs
rename to examples/AdManager/CSharp/v201908/CustomFieldService/DeactivateCustomFields.cs
index f9d05a8c324..9b7f164ff85 100755
--- a/examples/AdManager/CSharp/v201811/CustomFieldService/DeactivateCustomFields.cs
+++ b/examples/AdManager/CSharp/v201908/CustomFieldService/DeactivateCustomFields.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,13 +13,13 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
using System.Collections.Generic;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example deactivates a custom field. To determine which custom fields exist,
@@ -104,8 +104,8 @@ public void Run(AdManagerUser user)
statementBuilder.RemoveLimitAndOffset();
// Create action.
- Google.Api.Ads.AdManager.v201811.DeactivateCustomFields action =
- new Google.Api.Ads.AdManager.v201811.DeactivateCustomFields();
+ Google.Api.Ads.AdManager.v201908.DeactivateCustomFields action =
+ new Google.Api.Ads.AdManager.v201908.DeactivateCustomFields();
// Perform action.
UpdateResult result =
diff --git a/examples/AdManager/CSharp/v201811/CustomFieldService/GetAllCustomFields.cs b/examples/AdManager/CSharp/v201908/CustomFieldService/GetAllCustomFields.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/CustomFieldService/GetAllCustomFields.cs
rename to examples/AdManager/CSharp/v201908/CustomFieldService/GetAllCustomFields.cs
index 7fd044e55d5..0b8f58f177b 100755
--- a/examples/AdManager/CSharp/v201811/CustomFieldService/GetAllCustomFields.cs
+++ b/examples/AdManager/CSharp/v201908/CustomFieldService/GetAllCustomFields.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all custom fields.
diff --git a/examples/AdManager/CSharp/v201811/CustomFieldService/GetCustomFieldsForLineItems.cs b/examples/AdManager/CSharp/v201908/CustomFieldService/GetCustomFieldsForLineItems.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/CustomFieldService/GetCustomFieldsForLineItems.cs
rename to examples/AdManager/CSharp/v201908/CustomFieldService/GetCustomFieldsForLineItems.cs
index b8e2c595a7a..5c98ac706af 100755
--- a/examples/AdManager/CSharp/v201811/CustomFieldService/GetCustomFieldsForLineItems.cs
+++ b/examples/AdManager/CSharp/v201908/CustomFieldService/GetCustomFieldsForLineItems.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all custom fields that can be applied to line items.
diff --git a/examples/AdManager/CSharp/v201811/CustomFieldService/SetLineItemCustomFieldValue.cs b/examples/AdManager/CSharp/v201908/CustomFieldService/SetLineItemCustomFieldValue.cs
similarity index 97%
rename from examples/AdManager/CSharp/v201811/CustomFieldService/SetLineItemCustomFieldValue.cs
rename to examples/AdManager/CSharp/v201908/CustomFieldService/SetLineItemCustomFieldValue.cs
index 9ceb61d7654..d4c434e9109 100755
--- a/examples/AdManager/CSharp/v201811/CustomFieldService/SetLineItemCustomFieldValue.cs
+++ b/examples/AdManager/CSharp/v201908/CustomFieldService/SetLineItemCustomFieldValue.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,15 +13,15 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.v201908;
using System;
-using Google.Api.Ads.AdManager.Util.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
using System.Collections.Generic;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example sets custom field values on a line item. To determine
diff --git a/examples/AdManager/CSharp/v201811/CustomFieldService/UpdateCustomFields.cs b/examples/AdManager/CSharp/v201908/CustomFieldService/UpdateCustomFields.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/CustomFieldService/UpdateCustomFields.cs
rename to examples/AdManager/CSharp/v201908/CustomFieldService/UpdateCustomFields.cs
index 536f2b2b509..e78757fae2e 100755
--- a/examples/AdManager/CSharp/v201811/CustomFieldService/UpdateCustomFields.cs
+++ b/examples/AdManager/CSharp/v201908/CustomFieldService/UpdateCustomFields.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,13 +13,13 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.v201908;
using System;
-using Google.Api.Ads.AdManager.Util.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example updates custom field descriptions. To determine which
diff --git a/examples/AdManager/CSharp/v201811/CustomTargetingService/CreateCustomTargetingKeysAndValues.cs b/examples/AdManager/CSharp/v201908/CustomTargetingService/CreateCustomTargetingKeysAndValues.cs
similarity index 98%
rename from examples/AdManager/CSharp/v201811/CustomTargetingService/CreateCustomTargetingKeysAndValues.cs
rename to examples/AdManager/CSharp/v201908/CustomTargetingService/CreateCustomTargetingKeysAndValues.cs
index f64762a6937..5208c92b290 100755
--- a/examples/AdManager/CSharp/v201811/CustomTargetingService/CreateCustomTargetingKeysAndValues.cs
+++ b/examples/AdManager/CSharp/v201908/CustomTargetingService/CreateCustomTargetingKeysAndValues.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,11 +13,11 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example creates new custom targeting keys and values. To
diff --git a/examples/AdManager/CSharp/v201811/CustomTargetingService/GetAllCustomTargetingKeysAndValues.cs b/examples/AdManager/CSharp/v201908/CustomTargetingService/GetAllCustomTargetingKeysAndValues.cs
similarity index 97%
rename from examples/AdManager/CSharp/v201811/CustomTargetingService/GetAllCustomTargetingKeysAndValues.cs
rename to examples/AdManager/CSharp/v201908/CustomTargetingService/GetAllCustomTargetingKeysAndValues.cs
index eb1abed29fe..35517dedf61 100755
--- a/examples/AdManager/CSharp/v201811/CustomTargetingService/GetAllCustomTargetingKeysAndValues.cs
+++ b/examples/AdManager/CSharp/v201908/CustomTargetingService/GetAllCustomTargetingKeysAndValues.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,13 +13,13 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
using System.Collections.Generic;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all custom targeting values.
diff --git a/examples/AdManager/CSharp/v201811/CustomTargetingService/GetPredefinedCustomTargetingKeysAndValues.cs b/examples/AdManager/CSharp/v201908/CustomTargetingService/GetPredefinedCustomTargetingKeysAndValues.cs
similarity index 97%
rename from examples/AdManager/CSharp/v201811/CustomTargetingService/GetPredefinedCustomTargetingKeysAndValues.cs
rename to examples/AdManager/CSharp/v201908/CustomTargetingService/GetPredefinedCustomTargetingKeysAndValues.cs
index 7d664e8208b..edad9e608b8 100755
--- a/examples/AdManager/CSharp/v201811/CustomTargetingService/GetPredefinedCustomTargetingKeysAndValues.cs
+++ b/examples/AdManager/CSharp/v201908/CustomTargetingService/GetPredefinedCustomTargetingKeysAndValues.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,13 +13,13 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
using System.Collections.Generic;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets predefined custom targeting keys and values.
diff --git a/examples/AdManager/CSharp/v201811/CustomTargetingService/UpdateCustomTargetingKeys.cs b/examples/AdManager/CSharp/v201908/CustomTargetingService/UpdateCustomTargetingKeys.cs
similarity index 95%
rename from examples/AdManager/CSharp/v201811/CustomTargetingService/UpdateCustomTargetingKeys.cs
rename to examples/AdManager/CSharp/v201908/CustomTargetingService/UpdateCustomTargetingKeys.cs
index 2e575b487b6..45f969a44ae 100755
--- a/examples/AdManager/CSharp/v201811/CustomTargetingService/UpdateCustomTargetingKeys.cs
+++ b/examples/AdManager/CSharp/v201908/CustomTargetingService/UpdateCustomTargetingKeys.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -14,12 +14,12 @@
using Google.Api.Ads.Common.Util;
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example updates the display name of each custom targeting key up
diff --git a/examples/AdManager/CSharp/v201811/CustomTargetingService/UpdateCustomTargetingValues.cs b/examples/AdManager/CSharp/v201908/CustomTargetingService/UpdateCustomTargetingValues.cs
similarity index 95%
rename from examples/AdManager/CSharp/v201811/CustomTargetingService/UpdateCustomTargetingValues.cs
rename to examples/AdManager/CSharp/v201908/CustomTargetingService/UpdateCustomTargetingValues.cs
index 8e2ea7a19bc..b57cbc82f8a 100755
--- a/examples/AdManager/CSharp/v201811/CustomTargetingService/UpdateCustomTargetingValues.cs
+++ b/examples/AdManager/CSharp/v201908/CustomTargetingService/UpdateCustomTargetingValues.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -14,12 +14,12 @@
using Google.Api.Ads.Common.Util;
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example updates the display name of custom targeting values. To determine
diff --git a/examples/AdManager/CSharp/v201811/ForecastService/GetAvailabilityForecast.cs b/examples/AdManager/CSharp/v201908/ForecastService/GetAvailabilityForecast.cs
similarity index 97%
rename from examples/AdManager/CSharp/v201811/ForecastService/GetAvailabilityForecast.cs
rename to examples/AdManager/CSharp/v201908/ForecastService/GetAvailabilityForecast.cs
index 79cc734e16e..db1b413a4e9 100755
--- a/examples/AdManager/CSharp/v201811/ForecastService/GetAvailabilityForecast.cs
+++ b/examples/AdManager/CSharp/v201908/ForecastService/GetAvailabilityForecast.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -14,11 +14,11 @@
using System;
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
-using DateTime = Google.Api.Ads.AdManager.v201811.DateTime;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
+using DateTime = Google.Api.Ads.AdManager.v201908.DateTime;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example gets a forecast for a prospective line item.
diff --git a/examples/AdManager/CSharp/v201811/ForecastService/GetAvailabilityForecastById.cs b/examples/AdManager/CSharp/v201908/ForecastService/GetAvailabilityForecastById.cs
similarity index 96%
rename from examples/AdManager/CSharp/v201811/ForecastService/GetAvailabilityForecastById.cs
rename to examples/AdManager/CSharp/v201908/ForecastService/GetAvailabilityForecastById.cs
index 09c3631c057..19fcb0a256b 100755
--- a/examples/AdManager/CSharp/v201811/ForecastService/GetAvailabilityForecastById.cs
+++ b/examples/AdManager/CSharp/v201908/ForecastService/GetAvailabilityForecastById.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,11 +13,11 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example gets a forecast for an existing line item. To determine
diff --git a/examples/AdManager/CSharp/v201811/ForecastService/GetDeliveryForecastByIds.cs b/examples/AdManager/CSharp/v201908/ForecastService/GetDeliveryForecastByIds.cs
similarity index 96%
rename from examples/AdManager/CSharp/v201811/ForecastService/GetDeliveryForecastByIds.cs
rename to examples/AdManager/CSharp/v201908/ForecastService/GetDeliveryForecastByIds.cs
index 78501bb6215..564bc5e2a59 100755
--- a/examples/AdManager/CSharp/v201811/ForecastService/GetDeliveryForecastByIds.cs
+++ b/examples/AdManager/CSharp/v201908/ForecastService/GetDeliveryForecastByIds.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,11 +13,11 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example gets a delivery forecast for existing line items. To determine
diff --git a/examples/AdManager/CSharp/v201811/InventoryService/CreateAdUnits.cs b/examples/AdManager/CSharp/v201908/InventoryService/CreateAdUnits.cs
similarity index 96%
rename from examples/AdManager/CSharp/v201811/InventoryService/CreateAdUnits.cs
rename to examples/AdManager/CSharp/v201908/InventoryService/CreateAdUnits.cs
index 52d6bdb205d..8a95943ed8e 100755
--- a/examples/AdManager/CSharp/v201811/InventoryService/CreateAdUnits.cs
+++ b/examples/AdManager/CSharp/v201908/InventoryService/CreateAdUnits.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,11 +13,11 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example creates new ad units under the effective root ad unit.
diff --git a/examples/AdManager/CSharp/v201811/InventoryService/CreateVideoAdUnit.cs b/examples/AdManager/CSharp/v201908/InventoryService/CreateVideoAdUnit.cs
similarity index 97%
rename from examples/AdManager/CSharp/v201811/InventoryService/CreateVideoAdUnit.cs
rename to examples/AdManager/CSharp/v201908/InventoryService/CreateVideoAdUnit.cs
index f1da7273fe4..018fa587c36 100755
--- a/examples/AdManager/CSharp/v201811/InventoryService/CreateVideoAdUnit.cs
+++ b/examples/AdManager/CSharp/v201908/InventoryService/CreateVideoAdUnit.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,11 +13,11 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example creates a new video ad unit under the effective root
diff --git a/examples/AdManager/CSharp/v201811/InventoryService/DeActivateAdUnits.cs b/examples/AdManager/CSharp/v201908/InventoryService/DeActivateAdUnits.cs
similarity index 96%
rename from examples/AdManager/CSharp/v201811/InventoryService/DeActivateAdUnits.cs
rename to examples/AdManager/CSharp/v201908/InventoryService/DeActivateAdUnits.cs
index 39a2eab65c2..38369e86006 100755
--- a/examples/AdManager/CSharp/v201811/InventoryService/DeActivateAdUnits.cs
+++ b/examples/AdManager/CSharp/v201908/InventoryService/DeActivateAdUnits.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,13 +13,13 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
using System.Collections.Generic;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example deactivates all active ad units. To determine which ad
diff --git a/examples/AdManager/CSharp/v201811/InventoryService/GetAdUnitsByStatement.cs b/examples/AdManager/CSharp/v201908/InventoryService/GetAdUnitsByStatement.cs
similarity index 95%
rename from examples/AdManager/CSharp/v201811/InventoryService/GetAdUnitsByStatement.cs
rename to examples/AdManager/CSharp/v201908/InventoryService/GetAdUnitsByStatement.cs
index aabeffe47de..1fceec8406f 100755
--- a/examples/AdManager/CSharp/v201811/InventoryService/GetAdUnitsByStatement.cs
+++ b/examples/AdManager/CSharp/v201908/InventoryService/GetAdUnitsByStatement.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example gets all child ad units of the effective root ad unit. To create an ad
diff --git a/examples/AdManager/CSharp/v201811/InventoryService/GetAllAdUnitSizes.cs b/examples/AdManager/CSharp/v201908/InventoryService/GetAllAdUnitSizes.cs
similarity index 92%
rename from examples/AdManager/CSharp/v201811/InventoryService/GetAllAdUnitSizes.cs
rename to examples/AdManager/CSharp/v201908/InventoryService/GetAllAdUnitSizes.cs
index b1c0d89ca47..6b62a80b73e 100755
--- a/examples/AdManager/CSharp/v201811/InventoryService/GetAllAdUnitSizes.cs
+++ b/examples/AdManager/CSharp/v201908/InventoryService/GetAllAdUnitSizes.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all ad unit sizes.
diff --git a/examples/AdManager/CSharp/v201811/InventoryService/GetAllAdUnits.cs b/examples/AdManager/CSharp/v201908/InventoryService/GetAllAdUnits.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/InventoryService/GetAllAdUnits.cs
rename to examples/AdManager/CSharp/v201908/InventoryService/GetAllAdUnits.cs
index b7402d3aa4e..15a94a66472 100755
--- a/examples/AdManager/CSharp/v201811/InventoryService/GetAllAdUnits.cs
+++ b/examples/AdManager/CSharp/v201908/InventoryService/GetAllAdUnits.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all ad units.
diff --git a/examples/AdManager/CSharp/v201811/InventoryService/GetInventoryTree.cs b/examples/AdManager/CSharp/v201908/InventoryService/GetInventoryTree.cs
similarity index 97%
rename from examples/AdManager/CSharp/v201811/InventoryService/GetInventoryTree.cs
rename to examples/AdManager/CSharp/v201908/InventoryService/GetInventoryTree.cs
index d4852d3cd72..323f334088e 100755
--- a/examples/AdManager/CSharp/v201811/InventoryService/GetInventoryTree.cs
+++ b/examples/AdManager/CSharp/v201908/InventoryService/GetInventoryTree.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,14 +13,14 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
using System.Collections.Generic;
using System.Text;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example retrieves a previously created ad units and creates
diff --git a/examples/AdManager/CSharp/v201811/InventoryService/UpdateAdUnits.cs b/examples/AdManager/CSharp/v201908/InventoryService/UpdateAdUnits.cs
similarity index 95%
rename from examples/AdManager/CSharp/v201811/InventoryService/UpdateAdUnits.cs
rename to examples/AdManager/CSharp/v201908/InventoryService/UpdateAdUnits.cs
index 19861a75678..4336cb23225 100755
--- a/examples/AdManager/CSharp/v201811/InventoryService/UpdateAdUnits.cs
+++ b/examples/AdManager/CSharp/v201908/InventoryService/UpdateAdUnits.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,13 +13,13 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
using System.Collections.Generic;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example updates an ad unit's sizes by adding a banner ad size.
diff --git a/examples/AdManager/CSharp/v201811/LabelService/CreateLabels.cs b/examples/AdManager/CSharp/v201908/LabelService/CreateLabels.cs
similarity index 96%
rename from examples/AdManager/CSharp/v201811/LabelService/CreateLabels.cs
rename to examples/AdManager/CSharp/v201908/LabelService/CreateLabels.cs
index 1cb122b8bc6..ade67bfbfd6 100755
--- a/examples/AdManager/CSharp/v201811/LabelService/CreateLabels.cs
+++ b/examples/AdManager/CSharp/v201908/LabelService/CreateLabels.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.v201908;
using System;
using System.Text;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example creates new labels. To determine which labels exist, run
diff --git a/examples/AdManager/CSharp/v201811/LabelService/DeactivateActiveLabels.cs b/examples/AdManager/CSharp/v201908/LabelService/DeactivateActiveLabels.cs
similarity index 95%
rename from examples/AdManager/CSharp/v201811/LabelService/DeactivateActiveLabels.cs
rename to examples/AdManager/CSharp/v201908/LabelService/DeactivateActiveLabels.cs
index 6a3bb37311f..552534d5cb3 100755
--- a/examples/AdManager/CSharp/v201811/LabelService/DeactivateActiveLabels.cs
+++ b/examples/AdManager/CSharp/v201908/LabelService/DeactivateActiveLabels.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,13 +13,13 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
using System.Collections.Generic;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example deactivates all active labels. To determine which labels
diff --git a/examples/AdManager/CSharp/v201811/LabelService/GetActiveLabels.cs b/examples/AdManager/CSharp/v201908/LabelService/GetActiveLabels.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/LabelService/GetActiveLabels.cs
rename to examples/AdManager/CSharp/v201908/LabelService/GetActiveLabels.cs
index 97bbba0b4c4..aee10cbdcf8 100755
--- a/examples/AdManager/CSharp/v201811/LabelService/GetActiveLabels.cs
+++ b/examples/AdManager/CSharp/v201908/LabelService/GetActiveLabels.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all active labels.
diff --git a/examples/AdManager/CSharp/v201811/LabelService/GetAllLabels.cs b/examples/AdManager/CSharp/v201908/LabelService/GetAllLabels.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/LabelService/GetAllLabels.cs
rename to examples/AdManager/CSharp/v201908/LabelService/GetAllLabels.cs
index 03d7a5da2a6..3efa06d33f2 100755
--- a/examples/AdManager/CSharp/v201811/LabelService/GetAllLabels.cs
+++ b/examples/AdManager/CSharp/v201908/LabelService/GetAllLabels.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all labels.
diff --git a/examples/AdManager/CSharp/v201811/LabelService/UpdateLabels.cs b/examples/AdManager/CSharp/v201908/LabelService/UpdateLabels.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/LabelService/UpdateLabels.cs
rename to examples/AdManager/CSharp/v201908/LabelService/UpdateLabels.cs
index d0216e9f0c7..a220028a579 100755
--- a/examples/AdManager/CSharp/v201811/LabelService/UpdateLabels.cs
+++ b/examples/AdManager/CSharp/v201908/LabelService/UpdateLabels.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example updates a label's description. To determine which labels
diff --git a/examples/AdManager/CSharp/v201811/LineItemCreativeAssociationService/ActivateLicas.cs b/examples/AdManager/CSharp/v201908/LineItemCreativeAssociationService/ActivateLicas.cs
similarity index 96%
rename from examples/AdManager/CSharp/v201811/LineItemCreativeAssociationService/ActivateLicas.cs
rename to examples/AdManager/CSharp/v201908/LineItemCreativeAssociationService/ActivateLicas.cs
index a899347a961..46e2a4305fa 100755
--- a/examples/AdManager/CSharp/v201811/LineItemCreativeAssociationService/ActivateLicas.cs
+++ b/examples/AdManager/CSharp/v201908/LineItemCreativeAssociationService/ActivateLicas.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,13 +13,13 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
using System.Collections.Generic;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example activates all LICAs for a given line item. To
diff --git a/examples/AdManager/CSharp/v201811/LineItemCreativeAssociationService/CreateLicas.cs b/examples/AdManager/CSharp/v201908/LineItemCreativeAssociationService/CreateLicas.cs
similarity index 96%
rename from examples/AdManager/CSharp/v201811/LineItemCreativeAssociationService/CreateLicas.cs
rename to examples/AdManager/CSharp/v201908/LineItemCreativeAssociationService/CreateLicas.cs
index a816259ebb8..46ce552175a 100755
--- a/examples/AdManager/CSharp/v201811/LineItemCreativeAssociationService/CreateLicas.cs
+++ b/examples/AdManager/CSharp/v201908/LineItemCreativeAssociationService/CreateLicas.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,11 +13,11 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example creates new line item creative associations (LICAs) for
diff --git a/examples/AdManager/CSharp/v201811/LineItemCreativeAssociationService/DeactivateLicas.cs b/examples/AdManager/CSharp/v201908/LineItemCreativeAssociationService/DeactivateLicas.cs
similarity index 96%
rename from examples/AdManager/CSharp/v201811/LineItemCreativeAssociationService/DeactivateLicas.cs
rename to examples/AdManager/CSharp/v201908/LineItemCreativeAssociationService/DeactivateLicas.cs
index 756cce58df4..bf6fcb8f3e0 100755
--- a/examples/AdManager/CSharp/v201811/LineItemCreativeAssociationService/DeactivateLicas.cs
+++ b/examples/AdManager/CSharp/v201908/LineItemCreativeAssociationService/DeactivateLicas.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,13 +13,13 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
using System.Collections.Generic;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example deactivates all LICAs for a given line item. To determine
diff --git a/examples/AdManager/CSharp/v201811/LineItemCreativeAssociationService/GetAllLicas.cs b/examples/AdManager/CSharp/v201908/LineItemCreativeAssociationService/GetAllLicas.cs
similarity index 95%
rename from examples/AdManager/CSharp/v201811/LineItemCreativeAssociationService/GetAllLicas.cs
rename to examples/AdManager/CSharp/v201908/LineItemCreativeAssociationService/GetAllLicas.cs
index bcd15b668eb..5d8430b32df 100755
--- a/examples/AdManager/CSharp/v201811/LineItemCreativeAssociationService/GetAllLicas.cs
+++ b/examples/AdManager/CSharp/v201908/LineItemCreativeAssociationService/GetAllLicas.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all line item creative associations.
diff --git a/examples/AdManager/CSharp/v201811/LineItemCreativeAssociationService/GetLicasForLineItem.cs b/examples/AdManager/CSharp/v201908/LineItemCreativeAssociationService/GetLicasForLineItem.cs
similarity index 95%
rename from examples/AdManager/CSharp/v201811/LineItemCreativeAssociationService/GetLicasForLineItem.cs
rename to examples/AdManager/CSharp/v201908/LineItemCreativeAssociationService/GetLicasForLineItem.cs
index f57f8c2d287..17ea1f4633a 100755
--- a/examples/AdManager/CSharp/v201811/LineItemCreativeAssociationService/GetLicasForLineItem.cs
+++ b/examples/AdManager/CSharp/v201908/LineItemCreativeAssociationService/GetLicasForLineItem.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all line item creative associations for a given line item.
diff --git a/examples/AdManager/CSharp/v201811/LineItemCreativeAssociationService/UpdateLicas.cs b/examples/AdManager/CSharp/v201908/LineItemCreativeAssociationService/UpdateLicas.cs
similarity index 95%
rename from examples/AdManager/CSharp/v201811/LineItemCreativeAssociationService/UpdateLicas.cs
rename to examples/AdManager/CSharp/v201908/LineItemCreativeAssociationService/UpdateLicas.cs
index fe0a69c14f3..12775c4a683 100755
--- a/examples/AdManager/CSharp/v201811/LineItemCreativeAssociationService/UpdateLicas.cs
+++ b/examples/AdManager/CSharp/v201908/LineItemCreativeAssociationService/UpdateLicas.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example updates the destination URL of a LICA. To determine which LICAs exist,
diff --git a/examples/AdManager/CSharp/v201811/LineItemService/ActivateLineItem.cs b/examples/AdManager/CSharp/v201908/LineItemService/ActivateLineItem.cs
similarity index 96%
rename from examples/AdManager/CSharp/v201811/LineItemService/ActivateLineItem.cs
rename to examples/AdManager/CSharp/v201908/LineItemService/ActivateLineItem.cs
index b5a65201574..d2e90fee883 100755
--- a/examples/AdManager/CSharp/v201811/LineItemService/ActivateLineItem.cs
+++ b/examples/AdManager/CSharp/v201908/LineItemService/ActivateLineItem.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,13 +13,13 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
using System.Collections.Generic;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example activates all line items for the given order. To be
diff --git a/examples/AdManager/CSharp/v201811/LineItemService/CreateLineItems.cs b/examples/AdManager/CSharp/v201908/LineItemService/CreateLineItems.cs
similarity index 97%
rename from examples/AdManager/CSharp/v201811/LineItemService/CreateLineItems.cs
rename to examples/AdManager/CSharp/v201908/LineItemService/CreateLineItems.cs
index 406ef0df36c..f9693064eef 100755
--- a/examples/AdManager/CSharp/v201811/LineItemService/CreateLineItems.cs
+++ b/examples/AdManager/CSharp/v201908/LineItemService/CreateLineItems.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example creates new line items. To determine which line items
@@ -117,7 +117,7 @@ public void Run(AdManagerUser user)
// Target only the weekend in the browser's timezone.
DayPart saturdayDayPart = new DayPart();
- saturdayDayPart.dayOfWeek = Google.Api.Ads.AdManager.v201811.DayOfWeek.SATURDAY;
+ saturdayDayPart.dayOfWeek = Google.Api.Ads.AdManager.v201908.DayOfWeek.SATURDAY;
saturdayDayPart.startTime = new TimeOfDay();
saturdayDayPart.startTime.hour = 0;
@@ -128,7 +128,7 @@ public void Run(AdManagerUser user)
saturdayDayPart.endTime.minute = MinuteOfHour.ZERO;
DayPart sundayDayPart = new DayPart();
- sundayDayPart.dayOfWeek = Google.Api.Ads.AdManager.v201811.DayOfWeek.SUNDAY;
+ sundayDayPart.dayOfWeek = Google.Api.Ads.AdManager.v201908.DayOfWeek.SUNDAY;
sundayDayPart.startTime = new TimeOfDay();
sundayDayPart.startTime.hour = 0;
diff --git a/examples/AdManager/CSharp/v201811/LineItemService/CreateVideoLineItem.cs b/examples/AdManager/CSharp/v201908/LineItemService/CreateVideoLineItem.cs
similarity index 90%
rename from examples/AdManager/CSharp/v201811/LineItemService/CreateVideoLineItem.cs
rename to examples/AdManager/CSharp/v201908/LineItemService/CreateVideoLineItem.cs
index 8650255f303..2bddf45cf0a 100755
--- a/examples/AdManager/CSharp/v201811/LineItemService/CreateVideoLineItem.cs
+++ b/examples/AdManager/CSharp/v201908/LineItemService/CreateVideoLineItem.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example creates a new line item to serve to video content. To
@@ -70,6 +70,10 @@ public void Run(AdManagerUser user)
long contentBundleId =
long.Parse(_T("INSERT_CONTENT_BUNDLE_ID_HERE"));
+ // Set the CMS metadata value to target
+ long cmsMetadataValueId =
+ long.Parse(_T("INSERT_CMS_METADATA_VALUE_ID_HERE"));
+
// Create content targeting.
ContentTargeting contentTargeting = new ContentTargeting()
{
@@ -107,13 +111,25 @@ public void Run(AdManagerUser user)
}
};
+ // Create custom criteria set
+ CustomCriteriaSet customCriteriaSet = new CustomCriteriaSet() {
+ logicalOperator = CustomCriteriaSetLogicalOperator.AND,
+ children = new CustomCriteriaNode[] {
+ new CmsMetadataCriteria() {
+ cmsMetadataValueIds = new long[] { cmsMetadataValueId },
+ @operator = CmsMetadataCriteriaComparisonOperator.EQUALS
+ }
+ }
+ };
+
// Create targeting.
Targeting targeting = new Targeting()
{
contentTargeting = contentTargeting,
inventoryTargeting = inventoryTargeting,
videoPositionTargeting = videoPositionTargeting,
- requestPlatformTargeting = requestPlatformTargeting
+ requestPlatformTargeting = requestPlatformTargeting,
+ customTargeting = customCriteriaSet
};
// Create local line item object.
diff --git a/examples/AdManager/CSharp/v201811/LineItemService/GetAllLineItems.cs b/examples/AdManager/CSharp/v201908/LineItemService/GetAllLineItems.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/LineItemService/GetAllLineItems.cs
rename to examples/AdManager/CSharp/v201908/LineItemService/GetAllLineItems.cs
index 244ba9f9bd3..956ac00d068 100755
--- a/examples/AdManager/CSharp/v201811/LineItemService/GetAllLineItems.cs
+++ b/examples/AdManager/CSharp/v201908/LineItemService/GetAllLineItems.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all line items.
diff --git a/examples/AdManager/CSharp/v201811/LineItemService/GetLineItemsThatNeedCreatives.cs b/examples/AdManager/CSharp/v201908/LineItemService/GetLineItemsThatNeedCreatives.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/LineItemService/GetLineItemsThatNeedCreatives.cs
rename to examples/AdManager/CSharp/v201908/LineItemService/GetLineItemsThatNeedCreatives.cs
index 77c0353a265..0fd0df984cd 100755
--- a/examples/AdManager/CSharp/v201811/LineItemService/GetLineItemsThatNeedCreatives.cs
+++ b/examples/AdManager/CSharp/v201908/LineItemService/GetLineItemsThatNeedCreatives.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all line items that are missing creatives.
diff --git a/examples/AdManager/CSharp/v201811/LineItemService/GetRecentlyUpdatedLineItems.cs b/examples/AdManager/CSharp/v201908/LineItemService/GetRecentlyUpdatedLineItems.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/LineItemService/GetRecentlyUpdatedLineItems.cs
rename to examples/AdManager/CSharp/v201908/LineItemService/GetRecentlyUpdatedLineItems.cs
index 46da03649f3..d8fd9a8f412 100755
--- a/examples/AdManager/CSharp/v201811/LineItemService/GetRecentlyUpdatedLineItems.cs
+++ b/examples/AdManager/CSharp/v201908/LineItemService/GetRecentlyUpdatedLineItems.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets only recently updated line items.
diff --git a/examples/AdManager/CSharp/v201811/LineItemService/TargetCustomCriteria.cs b/examples/AdManager/CSharp/v201908/LineItemService/TargetCustomCriteria.cs
similarity index 97%
rename from examples/AdManager/CSharp/v201811/LineItemService/TargetCustomCriteria.cs
rename to examples/AdManager/CSharp/v201908/LineItemService/TargetCustomCriteria.cs
index 23377fee688..f0a8cfdca64 100755
--- a/examples/AdManager/CSharp/v201811/LineItemService/TargetCustomCriteria.cs
+++ b/examples/AdManager/CSharp/v201908/LineItemService/TargetCustomCriteria.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,13 +13,13 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
using System.Text;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example updates a line item to add custom criteria targeting. To
diff --git a/examples/AdManager/CSharp/v201811/LineItemService/UpdateLineItems.cs b/examples/AdManager/CSharp/v201908/LineItemService/UpdateLineItems.cs
similarity index 95%
rename from examples/AdManager/CSharp/v201811/LineItemService/UpdateLineItems.cs
rename to examples/AdManager/CSharp/v201908/LineItemService/UpdateLineItems.cs
index 52f56ac299b..b8cb72fc9d1 100755
--- a/examples/AdManager/CSharp/v201811/LineItemService/UpdateLineItems.cs
+++ b/examples/AdManager/CSharp/v201908/LineItemService/UpdateLineItems.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,13 +13,13 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
using System.Collections.Generic;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example updates the delivery rate of a line items.
diff --git a/examples/AdManager/CSharp/v201811/NativeStyleService/CreateNativeStyles.cs b/examples/AdManager/CSharp/v201908/NativeStyleService/CreateNativeStyles.cs
similarity index 97%
rename from examples/AdManager/CSharp/v201811/NativeStyleService/CreateNativeStyles.cs
rename to examples/AdManager/CSharp/v201908/NativeStyleService/CreateNativeStyles.cs
index 7853d219ca7..4fb51fa820b 100755
--- a/examples/AdManager/CSharp/v201811/NativeStyleService/CreateNativeStyles.cs
+++ b/examples/AdManager/CSharp/v201908/NativeStyleService/CreateNativeStyles.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,11 +13,11 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example creates a new native style.
diff --git a/examples/AdManager/CSharp/v201811/NativeStyleService/GetAllNativeStyles.cs b/examples/AdManager/CSharp/v201908/NativeStyleService/GetAllNativeStyles.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/NativeStyleService/GetAllNativeStyles.cs
rename to examples/AdManager/CSharp/v201908/NativeStyleService/GetAllNativeStyles.cs
index ae509f39b6d..697c76e3983 100755
--- a/examples/AdManager/CSharp/v201811/NativeStyleService/GetAllNativeStyles.cs
+++ b/examples/AdManager/CSharp/v201908/NativeStyleService/GetAllNativeStyles.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all native styles.
diff --git a/examples/AdManager/CSharp/v201811/NetworkService/GetAllNetworks.cs b/examples/AdManager/CSharp/v201908/NetworkService/GetAllNetworks.cs
similarity index 93%
rename from examples/AdManager/CSharp/v201811/NetworkService/GetAllNetworks.cs
rename to examples/AdManager/CSharp/v201908/NetworkService/GetAllNetworks.cs
index 14a84bb8449..6572e36946a 100755
--- a/examples/AdManager/CSharp/v201811/NetworkService/GetAllNetworks.cs
+++ b/examples/AdManager/CSharp/v201908/NetworkService/GetAllNetworks.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,11 +13,11 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all networks.
diff --git a/examples/AdManager/CSharp/v201811/NetworkService/GetCurrentNetwork.cs b/examples/AdManager/CSharp/v201908/NetworkService/GetCurrentNetwork.cs
similarity index 93%
rename from examples/AdManager/CSharp/v201811/NetworkService/GetCurrentNetwork.cs
rename to examples/AdManager/CSharp/v201908/NetworkService/GetCurrentNetwork.cs
index 94748ecc027..abb4b470fcc 100755
--- a/examples/AdManager/CSharp/v201811/NetworkService/GetCurrentNetwork.cs
+++ b/examples/AdManager/CSharp/v201908/NetworkService/GetCurrentNetwork.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,11 +13,11 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example gets the current network that you can make requests
diff --git a/examples/AdManager/CSharp/v201811/NetworkService/MakeTestNetwork.cs b/examples/AdManager/CSharp/v201908/NetworkService/MakeTestNetwork.cs
similarity index 96%
rename from examples/AdManager/CSharp/v201811/NetworkService/MakeTestNetwork.cs
rename to examples/AdManager/CSharp/v201908/NetworkService/MakeTestNetwork.cs
index 72be32e0e38..d96cb1092c1 100755
--- a/examples/AdManager/CSharp/v201811/NetworkService/MakeTestNetwork.cs
+++ b/examples/AdManager/CSharp/v201908/NetworkService/MakeTestNetwork.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,11 +13,11 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example creates a test network. You do not need to have an Ad Manager
diff --git a/examples/AdManager/CSharp/v201811/OrderService/ApproveOrder.cs b/examples/AdManager/CSharp/v201908/OrderService/ApproveOrder.cs
similarity index 96%
rename from examples/AdManager/CSharp/v201811/OrderService/ApproveOrder.cs
rename to examples/AdManager/CSharp/v201908/OrderService/ApproveOrder.cs
index 61cf92e2e75..bc72c7093fe 100755
--- a/examples/AdManager/CSharp/v201811/OrderService/ApproveOrder.cs
+++ b/examples/AdManager/CSharp/v201908/OrderService/ApproveOrder.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,13 +13,13 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
using System.Collections.Generic;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example approves an order and all line items belonging to that order. To determine
diff --git a/examples/AdManager/CSharp/v201811/OrderService/CreateOrders.cs b/examples/AdManager/CSharp/v201908/OrderService/CreateOrders.cs
similarity index 95%
rename from examples/AdManager/CSharp/v201811/OrderService/CreateOrders.cs
rename to examples/AdManager/CSharp/v201908/OrderService/CreateOrders.cs
index adc210fe556..d3f856472c6 100755
--- a/examples/AdManager/CSharp/v201811/OrderService/CreateOrders.cs
+++ b/examples/AdManager/CSharp/v201908/OrderService/CreateOrders.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,11 +13,11 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example creates new orders. To determine which orders exist,
diff --git a/examples/AdManager/CSharp/v201811/OrderService/GetAllOrders.cs b/examples/AdManager/CSharp/v201908/OrderService/GetAllOrders.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/OrderService/GetAllOrders.cs
rename to examples/AdManager/CSharp/v201908/OrderService/GetAllOrders.cs
index f2f683ee41e..79942e6818e 100755
--- a/examples/AdManager/CSharp/v201811/OrderService/GetAllOrders.cs
+++ b/examples/AdManager/CSharp/v201908/OrderService/GetAllOrders.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all orders.
diff --git a/examples/AdManager/CSharp/v201811/OrderService/GetOrdersStartingSoon.cs b/examples/AdManager/CSharp/v201908/OrderService/GetOrdersStartingSoon.cs
similarity index 95%
rename from examples/AdManager/CSharp/v201811/OrderService/GetOrdersStartingSoon.cs
rename to examples/AdManager/CSharp/v201908/OrderService/GetOrdersStartingSoon.cs
index 9de1109b2aa..5444279edf2 100755
--- a/examples/AdManager/CSharp/v201811/OrderService/GetOrdersStartingSoon.cs
+++ b/examples/AdManager/CSharp/v201908/OrderService/GetOrdersStartingSoon.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all orders that are starting soon.
diff --git a/examples/AdManager/CSharp/v201811/OrderService/UpdateOrders.cs b/examples/AdManager/CSharp/v201908/OrderService/UpdateOrders.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/OrderService/UpdateOrders.cs
rename to examples/AdManager/CSharp/v201908/OrderService/UpdateOrders.cs
index 4847cd1b6b2..4bee72594fa 100755
--- a/examples/AdManager/CSharp/v201811/OrderService/UpdateOrders.cs
+++ b/examples/AdManager/CSharp/v201908/OrderService/UpdateOrders.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example updates the note of an order. To determine which orders exist,
diff --git a/examples/AdManager/CSharp/v201811/PlacementService/CreatePlacements.cs b/examples/AdManager/CSharp/v201908/PlacementService/CreatePlacements.cs
similarity index 97%
rename from examples/AdManager/CSharp/v201811/PlacementService/CreatePlacements.cs
rename to examples/AdManager/CSharp/v201908/PlacementService/CreatePlacements.cs
index 81929852920..2be6bedf020 100755
--- a/examples/AdManager/CSharp/v201811/PlacementService/CreatePlacements.cs
+++ b/examples/AdManager/CSharp/v201908/PlacementService/CreatePlacements.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,13 +13,13 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
using System.Collections.Generic;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example creates new placements for various ad unit sizes. To
diff --git a/examples/AdManager/CSharp/v201811/PlacementService/DeactivatePlacement.cs b/examples/AdManager/CSharp/v201908/PlacementService/DeactivatePlacement.cs
similarity index 96%
rename from examples/AdManager/CSharp/v201811/PlacementService/DeactivatePlacement.cs
rename to examples/AdManager/CSharp/v201908/PlacementService/DeactivatePlacement.cs
index 027ae09b459..a17b68d1e6f 100755
--- a/examples/AdManager/CSharp/v201811/PlacementService/DeactivatePlacement.cs
+++ b/examples/AdManager/CSharp/v201908/PlacementService/DeactivatePlacement.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,13 +13,13 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
using System.Collections.Generic;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example deactivates a placement. To determine which
diff --git a/examples/AdManager/CSharp/v201811/PlacementService/GetActivePlacements.cs b/examples/AdManager/CSharp/v201908/PlacementService/GetActivePlacements.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/PlacementService/GetActivePlacements.cs
rename to examples/AdManager/CSharp/v201908/PlacementService/GetActivePlacements.cs
index 5c84205262f..caa9a845ee8 100755
--- a/examples/AdManager/CSharp/v201811/PlacementService/GetActivePlacements.cs
+++ b/examples/AdManager/CSharp/v201908/PlacementService/GetActivePlacements.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all active placements.
diff --git a/examples/AdManager/CSharp/v201811/PlacementService/GetAllPlacements.cs b/examples/AdManager/CSharp/v201908/PlacementService/GetAllPlacements.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/PlacementService/GetAllPlacements.cs
rename to examples/AdManager/CSharp/v201908/PlacementService/GetAllPlacements.cs
index b9ea0f15e7c..24d52837f70 100755
--- a/examples/AdManager/CSharp/v201811/PlacementService/GetAllPlacements.cs
+++ b/examples/AdManager/CSharp/v201908/PlacementService/GetAllPlacements.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all placements.
diff --git a/examples/AdManager/CSharp/v201811/PlacementService/UpdatePlacements.cs b/examples/AdManager/CSharp/v201908/PlacementService/UpdatePlacements.cs
similarity index 95%
rename from examples/AdManager/CSharp/v201811/PlacementService/UpdatePlacements.cs
rename to examples/AdManager/CSharp/v201908/PlacementService/UpdatePlacements.cs
index 6ef00ad1cd7..91b2a8a84ee 100755
--- a/examples/AdManager/CSharp/v201811/PlacementService/UpdatePlacements.cs
+++ b/examples/AdManager/CSharp/v201908/PlacementService/UpdatePlacements.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example updates the description of a placement.
diff --git a/examples/AdManager/CSharp/v201811/ProposalLineItemService/ArchiveProposalLineItems.cs b/examples/AdManager/CSharp/v201908/ProposalLineItemService/ArchiveProposalLineItems.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/ProposalLineItemService/ArchiveProposalLineItems.cs
rename to examples/AdManager/CSharp/v201908/ProposalLineItemService/ArchiveProposalLineItems.cs
index 83dd85d342c..d1b656a19a9 100755
--- a/examples/AdManager/CSharp/v201811/ProposalLineItemService/ArchiveProposalLineItems.cs
+++ b/examples/AdManager/CSharp/v201908/ProposalLineItemService/ArchiveProposalLineItems.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,13 +13,13 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
using System.Collections.Generic;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example archives a proposal line item. To determine which proposal line items
@@ -103,8 +103,8 @@ public void Run(AdManagerUser user)
statementBuilder.RemoveLimitAndOffset();
// Create action.
- Google.Api.Ads.AdManager.v201811.ArchiveProposalLineItems action =
- new Google.Api.Ads.AdManager.v201811.ArchiveProposalLineItems();
+ Google.Api.Ads.AdManager.v201908.ArchiveProposalLineItems action =
+ new Google.Api.Ads.AdManager.v201908.ArchiveProposalLineItems();
// Perform action.
UpdateResult result =
diff --git a/examples/AdManager/CSharp/v201905/ProposalLineItemService/CreateProgrammaticProposalLineItemsForNonSalesManagement.cs b/examples/AdManager/CSharp/v201908/ProposalLineItemService/CreateProposalLineItems.cs
similarity index 86%
rename from examples/AdManager/CSharp/v201905/ProposalLineItemService/CreateProgrammaticProposalLineItemsForNonSalesManagement.cs
rename to examples/AdManager/CSharp/v201908/ProposalLineItemService/CreateProposalLineItems.cs
index db00a24ab62..733a0ee8409 100755
--- a/examples/AdManager/CSharp/v201905/ProposalLineItemService/CreateProgrammaticProposalLineItemsForNonSalesManagement.cs
+++ b/examples/AdManager/CSharp/v201908/ProposalLineItemService/CreateProposalLineItems.cs
@@ -13,18 +13,17 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201905;
-using Google.Api.Ads.AdManager.v201905;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201905
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
- /// This example creates a new programmatic proposal line item in a
- /// non-sales management network.
+ /// This example creates a new proposal line item.
///
- public class CreateProgrammaticProposalLineItemsForNonSalesManagement : SampleBase
+ public class CreateProposalLineItems : SampleBase
{
///
/// Returns a description about the code example.
@@ -33,8 +32,7 @@ public override string Description
{
get
{
- return "This example creates a new programmatic proposal line item in a " +
- "non-sales management network.";
+ return "This example creates a new proposal line item.";
}
}
@@ -43,8 +41,7 @@ public override string Description
///
public static void Main()
{
- CreateProgrammaticProposalLineItemsForNonSalesManagement codeExample =
- new CreateProgrammaticProposalLineItemsForNonSalesManagement();
+ CreateProposalLineItems codeExample = new CreateProposalLineItems();
Console.WriteLine(codeExample.Description);
// Set the ID of the proposal that the proposal line item will belong to.
@@ -64,7 +61,7 @@ public void Run(AdManagerUser user, long proposalId)
using (NetworkService networkService = user.GetService())
{
ProposalLineItem proposalLineItem = new ProposalLineItem();
- proposalLineItem.name = "Programmatic proposal line item #" +
+ proposalLineItem.name = "Proposal line item #" +
new Random().Next(int.MaxValue);
proposalLineItem.proposalId = proposalId;
proposalLineItem.lineItemType = LineItemType.STANDARD;
@@ -152,8 +149,7 @@ public void Run(AdManagerUser user, long proposalId)
foreach (ProposalLineItem createdProposalLineItem in proposalLineItems)
{
- Console.WriteLine(
- "A programmatic proposal line item with ID \"{0}\" " +
+ Console.WriteLine("A proposal line item with ID \"{0}\" " +
"and name \"{1}\" was created.", createdProposalLineItem.id,
createdProposalLineItem.name);
}
@@ -161,7 +157,7 @@ public void Run(AdManagerUser user, long proposalId)
catch (Exception e)
{
Console.WriteLine(
- "Failed to create programmatic proposal line items. " +
+ "Failed to create proposal line items. " +
"Exception says \"{0}\"", e.Message);
}
}
diff --git a/examples/AdManager/CSharp/v201811/ProposalLineItemService/GetAllProposalLineItems.cs b/examples/AdManager/CSharp/v201908/ProposalLineItemService/GetAllProposalLineItems.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/ProposalLineItemService/GetAllProposalLineItems.cs
rename to examples/AdManager/CSharp/v201908/ProposalLineItemService/GetAllProposalLineItems.cs
index 8d78d1b2f5a..08472a54725 100755
--- a/examples/AdManager/CSharp/v201811/ProposalLineItemService/GetAllProposalLineItems.cs
+++ b/examples/AdManager/CSharp/v201908/ProposalLineItemService/GetAllProposalLineItems.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all proposal line items.
diff --git a/examples/AdManager/CSharp/v201811/ProposalLineItemService/GetProposalLineItemsForProposal.cs b/examples/AdManager/CSharp/v201908/ProposalLineItemService/GetProposalLineItemsForProposal.cs
similarity index 95%
rename from examples/AdManager/CSharp/v201811/ProposalLineItemService/GetProposalLineItemsForProposal.cs
rename to examples/AdManager/CSharp/v201908/ProposalLineItemService/GetProposalLineItemsForProposal.cs
index f54f5811094..b079948b786 100755
--- a/examples/AdManager/CSharp/v201811/ProposalLineItemService/GetProposalLineItemsForProposal.cs
+++ b/examples/AdManager/CSharp/v201908/ProposalLineItemService/GetProposalLineItemsForProposal.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all proposal line items belonging to a specific proposal.
diff --git a/examples/AdManager/CSharp/v201811/ProposalLineItemService/UpdateProposalLineItems.cs b/examples/AdManager/CSharp/v201908/ProposalLineItemService/UpdateProposalLineItems.cs
similarity index 95%
rename from examples/AdManager/CSharp/v201811/ProposalLineItemService/UpdateProposalLineItems.cs
rename to examples/AdManager/CSharp/v201908/ProposalLineItemService/UpdateProposalLineItems.cs
index 01e057f427d..9091f1b3b57 100755
--- a/examples/AdManager/CSharp/v201811/ProposalLineItemService/UpdateProposalLineItems.cs
+++ b/examples/AdManager/CSharp/v201908/ProposalLineItemService/UpdateProposalLineItems.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example updates a proposal line item's notes. To determine which
diff --git a/examples/AdManager/CSharp/v201905/ProposalService/CreateProgrammaticProposalsForNonSalesManagement.cs b/examples/AdManager/CSharp/v201908/ProposalService/CreateProposals.cs
similarity index 87%
rename from examples/AdManager/CSharp/v201905/ProposalService/CreateProgrammaticProposalsForNonSalesManagement.cs
rename to examples/AdManager/CSharp/v201908/ProposalService/CreateProposals.cs
index 7c31f6ab505..9609426812c 100755
--- a/examples/AdManager/CSharp/v201905/ProposalService/CreateProgrammaticProposalsForNonSalesManagement.cs
+++ b/examples/AdManager/CSharp/v201908/ProposalService/CreateProposals.cs
@@ -13,16 +13,16 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201905;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201905
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
- /// This example creates a programmatic proposal for networks not using sales management.
+ /// This example creates a proposal.
///
- public class CreateProgrammaticProposalsForNonSalesManagement : SampleBase
+ public class CreateProposals : SampleBase
{
///
/// Returns a description about the code example.
@@ -31,8 +31,7 @@ public override string Description
{
get
{
- return "This example creates a programmatic proposal for networks " +
- "not using sales management";
+ return "This example creates a proposal";
}
}
@@ -41,8 +40,8 @@ public override string Description
///
public static void Main()
{
- CreateProgrammaticProposalsForNonSalesManagement codeExample =
- new CreateProgrammaticProposalsForNonSalesManagement();
+ CreateProposals codeExample =
+ new CreateProposals();
Console.WriteLine(codeExample.Description);
long primarySalespersonId = long.Parse(_T("INSERT_PRIMARY_SALESPERSON_ID_HERE"));
@@ -71,7 +70,6 @@ public void Run(AdManagerUser user, long primarySalespersonId, long primaryTraff
Proposal proposal = new Proposal()
{
name = "Programmatic proposal #" + new Random().Next(int.MaxValue),
- isProgrammatic = true,
// Set required Marketplace information
marketplaceInfo = new ProposalMarketplaceInfo()
{
diff --git a/examples/AdManager/CSharp/v201811/ProposalService/GetAllProposals.cs b/examples/AdManager/CSharp/v201908/ProposalService/GetAllProposals.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/ProposalService/GetAllProposals.cs
rename to examples/AdManager/CSharp/v201908/ProposalService/GetAllProposals.cs
index cb8624741b6..e10e98c4edf 100755
--- a/examples/AdManager/CSharp/v201811/ProposalService/GetAllProposals.cs
+++ b/examples/AdManager/CSharp/v201908/ProposalService/GetAllProposals.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all proposals.
diff --git a/examples/AdManager/CSharp/v201811/ProposalService/GetMarketplaceComments.cs b/examples/AdManager/CSharp/v201908/ProposalService/GetMarketplaceComments.cs
similarity index 95%
rename from examples/AdManager/CSharp/v201811/ProposalService/GetMarketplaceComments.cs
rename to examples/AdManager/CSharp/v201908/ProposalService/GetMarketplaceComments.cs
index 47eec0415da..9c22eee5395 100755
--- a/examples/AdManager/CSharp/v201811/ProposalService/GetMarketplaceComments.cs
+++ b/examples/AdManager/CSharp/v201908/ProposalService/GetMarketplaceComments.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets the Marketplace comments for a programmatic proposal.
diff --git a/examples/AdManager/CSharp/v201811/ProposalService/GetProposalsPendingApproval.cs b/examples/AdManager/CSharp/v201908/ProposalService/GetProposalsAwaitingSellerReview.cs
similarity index 82%
rename from examples/AdManager/CSharp/v201811/ProposalService/GetProposalsPendingApproval.cs
rename to examples/AdManager/CSharp/v201908/ProposalService/GetProposalsAwaitingSellerReview.cs
index b7c6fc0f084..657ad83679f 100755
--- a/examples/AdManager/CSharp/v201811/ProposalService/GetProposalsPendingApproval.cs
+++ b/examples/AdManager/CSharp/v201908/ProposalService/GetProposalsAwaitingSellerReview.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,24 +13,24 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
- /// This example gets all proposals pending approval.
+ /// This example gets all proposals awaiting seller review.
///
- public class GetProposalsPendingApproval : SampleBase
+ public class GetProposalsAwaitingSellerReivew : SampleBase
{
///
/// Returns a description about the code example.
///
public override string Description
{
- get { return "This example gets all proposals pending approval."; }
+ get { return "This example gets all proposals awaiting seller review."; }
}
///
@@ -38,7 +38,7 @@ public override string Description
///
public static void Main()
{
- GetProposalsPendingApproval codeExample = new GetProposalsPendingApproval();
+ GetProposalsAwaitingSellerReivew codeExample = new GetProposalsAwaitingSellerReivew();
Console.WriteLine(codeExample.Description);
try
{
@@ -60,10 +60,10 @@ public void Run(AdManagerUser user)
// Create a statement to select proposals.
int pageSize = StatementBuilder.SUGGESTED_PAGE_LIMIT;
StatementBuilder statementBuilder = new StatementBuilder()
- .Where("status = :status")
+ .Where("negotiationStatus = :status")
.OrderBy("id ASC")
.Limit(pageSize)
- .AddValue("status", ProposalStatus.PENDING_APPROVAL.ToString());
+ .AddValue("status", NegotiationStatus.AWAITING_SELLER_REVIEW.ToString());
// Retrieve a small amount of proposals at a time, paging through until all
// proposals have been retrieved.
diff --git a/examples/AdManager/CSharp/v201811/ProposalService/RequestBuyerAcceptance.cs b/examples/AdManager/CSharp/v201908/ProposalService/RequestBuyerAcceptance.cs
similarity index 93%
rename from examples/AdManager/CSharp/v201811/ProposalService/RequestBuyerAcceptance.cs
rename to examples/AdManager/CSharp/v201908/ProposalService/RequestBuyerAcceptance.cs
index 7e0d3343d42..67531ee5875 100755
--- a/examples/AdManager/CSharp/v201811/ProposalService/RequestBuyerAcceptance.cs
+++ b/examples/AdManager/CSharp/v201908/ProposalService/RequestBuyerAcceptance.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,13 +13,13 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
using System.Collections.Generic;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example sends programmatic proposals to Marketplace to request buyer acceptance.
@@ -105,8 +105,8 @@ public void Run(AdManagerUser user, long proposalId)
statementBuilder.RemoveLimitAndOffset();
// Create action.
- Google.Api.Ads.AdManager.v201811.RequestBuyerAcceptance action =
- new Google.Api.Ads.AdManager.v201811.RequestBuyerAcceptance();
+ Google.Api.Ads.AdManager.v201908.RequestBuyerAcceptance action =
+ new Google.Api.Ads.AdManager.v201908.RequestBuyerAcceptance();
// Perform action.
UpdateResult result =
diff --git a/examples/AdManager/CSharp/v201811/ProposalService/UpdateProposals.cs b/examples/AdManager/CSharp/v201908/ProposalService/UpdateProposals.cs
similarity index 95%
rename from examples/AdManager/CSharp/v201811/ProposalService/UpdateProposals.cs
rename to examples/AdManager/CSharp/v201908/ProposalService/UpdateProposals.cs
index f25f900365c..439d064639b 100755
--- a/examples/AdManager/CSharp/v201811/ProposalService/UpdateProposals.cs
+++ b/examples/AdManager/CSharp/v201908/ProposalService/UpdateProposals.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,13 +13,13 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
using System.Collections.Generic;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example updates the note of an proposal. To determine which proposals exist,
diff --git a/examples/AdManager/CSharp/v201811/PublisherQueryLanguageService/FetchMatchTables.cs b/examples/AdManager/CSharp/v201908/PublisherQueryLanguageService/FetchMatchTables.cs
similarity index 96%
rename from examples/AdManager/CSharp/v201811/PublisherQueryLanguageService/FetchMatchTables.cs
rename to examples/AdManager/CSharp/v201908/PublisherQueryLanguageService/FetchMatchTables.cs
index daaf0686867..684132e6dc9 100755
--- a/examples/AdManager/CSharp/v201811/PublisherQueryLanguageService/FetchMatchTables.cs
+++ b/examples/AdManager/CSharp/v201908/PublisherQueryLanguageService/FetchMatchTables.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -14,13 +14,13 @@
using Google.Api.Ads.Common.Util;
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
using System.Collections.Generic;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example fetches and creates match table files from the
diff --git a/examples/AdManager/CSharp/v201811/PublisherQueryLanguageService/GetAllLineItemsUsingPql.cs b/examples/AdManager/CSharp/v201908/PublisherQueryLanguageService/GetAllLineItemsUsingPql.cs
similarity index 93%
rename from examples/AdManager/CSharp/v201811/PublisherQueryLanguageService/GetAllLineItemsUsingPql.cs
rename to examples/AdManager/CSharp/v201908/PublisherQueryLanguageService/GetAllLineItemsUsingPql.cs
index ef6cae93d19..e7955af78dc 100755
--- a/examples/AdManager/CSharp/v201811/PublisherQueryLanguageService/GetAllLineItemsUsingPql.cs
+++ b/examples/AdManager/CSharp/v201908/PublisherQueryLanguageService/GetAllLineItemsUsingPql.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -14,19 +14,19 @@
using Google.Api.Ads.Common.Util;
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
using System.Collections.Generic;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example gets all line items in your network using the Line_Item
/// table. This code example may take a while to run. The Line_Item PQL table
/// schema can be found here:
- /// https://developers.google.com/doubleclick-publishers/docs/reference/v201811/PublisherQueryLanguageService#Line_Item
+ /// https://developers.google.com/doubleclick-publishers/docs/reference/v201908/PublisherQueryLanguageService#Line_Item
///
public class GetAllLineItemsUsingPql : SampleBase
{
@@ -40,7 +40,7 @@ public override string Description
return "This code example gets all line items in your network using the " +
"Line_Item table. This code example may take a while to run. The Line_Item " +
"PQL table schema can be found here: " +
- "https://developers.google.com/doubleclick-publishers/docs/reference/v201811/" +
+ "https://developers.google.com/doubleclick-publishers/docs/reference/v201908/" +
"PublisherQueryLanguageService#Line_Item";
}
}
diff --git a/examples/AdManager/CSharp/v201811/PublisherQueryLanguageService/GetAllProgrammaticBuyers.cs b/examples/AdManager/CSharp/v201908/PublisherQueryLanguageService/GetAllProgrammaticBuyers.cs
similarity index 95%
rename from examples/AdManager/CSharp/v201811/PublisherQueryLanguageService/GetAllProgrammaticBuyers.cs
rename to examples/AdManager/CSharp/v201908/PublisherQueryLanguageService/GetAllProgrammaticBuyers.cs
index 5875a0b233c..e4771f6e7ad 100755
--- a/examples/AdManager/CSharp/v201811/PublisherQueryLanguageService/GetAllProgrammaticBuyers.cs
+++ b/examples/AdManager/CSharp/v201908/PublisherQueryLanguageService/GetAllProgrammaticBuyers.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -14,13 +14,13 @@
using Google.Api.Ads.Common.Util;
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
using System.Collections.Generic;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all programmatic buyers in your network using the
diff --git a/examples/AdManager/CSharp/v201811/PublisherQueryLanguageService/GetGeoTargets.cs b/examples/AdManager/CSharp/v201908/PublisherQueryLanguageService/GetGeoTargets.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/PublisherQueryLanguageService/GetGeoTargets.cs
rename to examples/AdManager/CSharp/v201908/PublisherQueryLanguageService/GetGeoTargets.cs
index 1dd77aaaa96..031f8672a46 100755
--- a/examples/AdManager/CSharp/v201811/PublisherQueryLanguageService/GetGeoTargets.cs
+++ b/examples/AdManager/CSharp/v201908/PublisherQueryLanguageService/GetGeoTargets.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -14,20 +14,20 @@
using Google.Api.Ads.Common.Util;
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
using System.Collections.Generic;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example gets geographic criteria from the Geo_Target table,
/// such as all cities available to target. Other types include 'Country',
/// 'Region', 'State', 'Postal_Code', and 'DMA_Region' (i.e. Metro).
/// A full list of available geo target types can be found at
- /// https://developers.google.com/doubleclick-publishers/docs/reference/v201811/PublisherQueryLanguageService
+ /// https://developers.google.com/doubleclick-publishers/docs/reference/v201908/PublisherQueryLanguageService
///
public class GetGeoTargets : SampleBase
{
@@ -42,7 +42,7 @@ public override string Description
"such as all cities available to target. Other types include 'Country', " +
"'Region', 'State', 'Postal_Code', and 'DMA_Region' (i.e. Metro). " +
"A full list of available geo target types can be found at " +
- "https://developers.google.com/doubleclick-publishers/docs/reference/v201811/" +
+ "https://developers.google.com/doubleclick-publishers/docs/reference/v201908/" +
"PublisherQueryLanguageService";
}
}
diff --git a/examples/AdManager/CSharp/v201811/PublisherQueryLanguageService/GetLineItemsNamedLike.cs b/examples/AdManager/CSharp/v201908/PublisherQueryLanguageService/GetLineItemsNamedLike.cs
similarity index 95%
rename from examples/AdManager/CSharp/v201811/PublisherQueryLanguageService/GetLineItemsNamedLike.cs
rename to examples/AdManager/CSharp/v201908/PublisherQueryLanguageService/GetLineItemsNamedLike.cs
index 044e13c4a2c..3a74cac1382 100755
--- a/examples/AdManager/CSharp/v201811/PublisherQueryLanguageService/GetLineItemsNamedLike.cs
+++ b/examples/AdManager/CSharp/v201908/PublisherQueryLanguageService/GetLineItemsNamedLike.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -14,13 +14,13 @@
using Google.Api.Ads.Common.Util;
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
using System.Collections.Generic;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example gets all line items which have a name beginning with
diff --git a/examples/AdManager/CSharp/v201811/PublisherQueryLanguageService/GetRecentChanges.cs b/examples/AdManager/CSharp/v201908/PublisherQueryLanguageService/GetRecentChanges.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/PublisherQueryLanguageService/GetRecentChanges.cs
rename to examples/AdManager/CSharp/v201908/PublisherQueryLanguageService/GetRecentChanges.cs
index 96bc88ca707..def812a1609 100755
--- a/examples/AdManager/CSharp/v201811/PublisherQueryLanguageService/GetRecentChanges.cs
+++ b/examples/AdManager/CSharp/v201908/PublisherQueryLanguageService/GetRecentChanges.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -14,21 +14,21 @@
using Google.Api.Ads.Common.Util;
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
-using DateTime = Google.Api.Ads.AdManager.v201811.DateTime;
+using DateTime = Google.Api.Ads.AdManager.v201908.DateTime;
using System;
using System.Collections.Generic;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets recent changes in your network using the Change_History table.
///
/// A full list of available tables can be found at
- /// https://developers.google.com/doubleclick-publishers/docs/reference/v201811/PublisherQueryLanguageService
+ /// https://developers.google.com/doubleclick-publishers/docs/reference/v201908/PublisherQueryLanguageService
///
public class GetRecentChanges : SampleBase
{
@@ -41,7 +41,7 @@ public override string Description
{
return "This example gets recent changes in your network using the " +
"Change_History table. A full list of available tables can be found at " +
- "https://developers.google.com/doubleclick-publishers/docs/reference/v201811/" +
+ "https://developers.google.com/doubleclick-publishers/docs/reference/v201908/" +
"PublisherQueryLanguageService";
}
}
diff --git a/examples/AdManager/CSharp/v201811/ReportService/RunAdExchangeReport.cs b/examples/AdManager/CSharp/v201908/ReportService/RunAdExchangeReport.cs
similarity index 95%
rename from examples/AdManager/CSharp/v201811/ReportService/RunAdExchangeReport.cs
rename to examples/AdManager/CSharp/v201908/ReportService/RunAdExchangeReport.cs
index 2d04c3a8c1c..fcf0c6c23e7 100755
--- a/examples/AdManager/CSharp/v201811/ReportService/RunAdExchangeReport.cs
+++ b/examples/AdManager/CSharp/v201908/ReportService/RunAdExchangeReport.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -14,12 +14,12 @@
using Google.Api.Ads.Common.Util.Reports;
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
-using Google.Api.Ads.AdManager.Util.v201811;
+using Google.Api.Ads.AdManager.v201908;
+using Google.Api.Ads.AdManager.Util.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example runs a report on Ad Exchange data via the Ad Manager API.
diff --git a/examples/AdManager/CSharp/v201811/ReportService/RunDeliveryReport.cs b/examples/AdManager/CSharp/v201908/ReportService/RunDeliveryReport.cs
similarity index 96%
rename from examples/AdManager/CSharp/v201811/ReportService/RunDeliveryReport.cs
rename to examples/AdManager/CSharp/v201908/ReportService/RunDeliveryReport.cs
index 2b0d74b7d7d..2fc4e722f8b 100755
--- a/examples/AdManager/CSharp/v201811/ReportService/RunDeliveryReport.cs
+++ b/examples/AdManager/CSharp/v201908/ReportService/RunDeliveryReport.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -14,12 +14,12 @@
using Google.Api.Ads.Common.Util.Reports;
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
-using Google.Api.Ads.AdManager.Util.v201811;
+using Google.Api.Ads.AdManager.v201908;
+using Google.Api.Ads.AdManager.Util.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example runs a report similar to the "Orders report" in the Ad Manager
diff --git a/examples/AdManager/CSharp/v201811/ReportService/RunInventoryReport.cs b/examples/AdManager/CSharp/v201908/ReportService/RunInventoryReport.cs
similarity index 91%
rename from examples/AdManager/CSharp/v201811/ReportService/RunInventoryReport.cs
rename to examples/AdManager/CSharp/v201908/ReportService/RunInventoryReport.cs
index 2101bce387c..9975ee9a723 100755
--- a/examples/AdManager/CSharp/v201811/ReportService/RunInventoryReport.cs
+++ b/examples/AdManager/CSharp/v201908/ReportService/RunInventoryReport.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -14,12 +14,12 @@
using Google.Api.Ads.Common.Util.Reports;
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
-using Google.Api.Ads.AdManager.Util.v201811;
+using Google.Api.Ads.AdManager.v201908;
+using Google.Api.Ads.AdManager.Util.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example runs a report equal to the "Whole network report" in the
@@ -81,10 +81,10 @@ public void Run(AdManagerUser user)
{
Column.AD_SERVER_IMPRESSIONS,
Column.AD_SERVER_CLICKS,
- Column.DYNAMIC_ALLOCATION_INVENTORY_LEVEL_IMPRESSIONS,
- Column.DYNAMIC_ALLOCATION_INVENTORY_LEVEL_CLICKS,
- Column.TOTAL_INVENTORY_LEVEL_IMPRESSIONS,
- Column.TOTAL_INVENTORY_LEVEL_CPM_AND_CPC_REVENUE
+ Column.ADSENSE_LINE_ITEM_LEVEL_IMPRESSIONS,
+ Column.ADSENSE_LINE_ITEM_LEVEL_CLICKS,
+ Column.TOTAL_LINE_ITEM_LEVEL_IMPRESSIONS,
+ Column.TOTAL_LINE_ITEM_LEVEL_CPM_AND_CPC_REVENUE
};
// Set the filter statement.
diff --git a/examples/AdManager/CSharp/v201811/ReportService/RunReachReport.cs b/examples/AdManager/CSharp/v201908/ReportService/RunReachReport.cs
similarity index 95%
rename from examples/AdManager/CSharp/v201811/ReportService/RunReachReport.cs
rename to examples/AdManager/CSharp/v201908/ReportService/RunReachReport.cs
index 8f0f43ca8dd..207cb275e3a 100755
--- a/examples/AdManager/CSharp/v201811/ReportService/RunReachReport.cs
+++ b/examples/AdManager/CSharp/v201908/ReportService/RunReachReport.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -14,12 +14,12 @@
using Google.Api.Ads.Common.Util.Reports;
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
-using Google.Api.Ads.AdManager.Util.v201811;
+using Google.Api.Ads.AdManager.v201908;
+using Google.Api.Ads.AdManager.Util.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example runs a reach report. The report is saved to the specified file path.
diff --git a/examples/AdManager/CSharp/v201811/ReportService/RunReportWithCustomFields.cs b/examples/AdManager/CSharp/v201908/ReportService/RunReportWithCustomFields.cs
similarity index 97%
rename from examples/AdManager/CSharp/v201811/ReportService/RunReportWithCustomFields.cs
rename to examples/AdManager/CSharp/v201908/ReportService/RunReportWithCustomFields.cs
index 2e2cf956d44..70e7dd04983 100755
--- a/examples/AdManager/CSharp/v201811/ReportService/RunReportWithCustomFields.cs
+++ b/examples/AdManager/CSharp/v201908/ReportService/RunReportWithCustomFields.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -14,13 +14,13 @@
using Google.Api.Ads.Common.Util.Reports;
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
-using Google.Api.Ads.AdManager.Util.v201811;
+using Google.Api.Ads.AdManager.v201908;
+using Google.Api.Ads.AdManager.Util.v201908;
using System;
using System.Collections.Generic;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example runs a report that includes custom fields found in the
diff --git a/examples/AdManager/CSharp/v201811/ReportService/RunSalesReport.cs b/examples/AdManager/CSharp/v201908/ReportService/RunSalesReport.cs
similarity index 95%
rename from examples/AdManager/CSharp/v201811/ReportService/RunSalesReport.cs
rename to examples/AdManager/CSharp/v201908/ReportService/RunSalesReport.cs
index 8847177a3d8..41888fb5c38 100755
--- a/examples/AdManager/CSharp/v201811/ReportService/RunSalesReport.cs
+++ b/examples/AdManager/CSharp/v201908/ReportService/RunSalesReport.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -14,12 +14,12 @@
using Google.Api.Ads.Common.Util.Reports;
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
-using Google.Api.Ads.AdManager.Util.v201811;
+using Google.Api.Ads.AdManager.v201908;
+using Google.Api.Ads.AdManager.Util.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example runs a report equal to the "Sales by salespersons
diff --git a/examples/AdManager/CSharp/v201811/ReportService/RunSavedQuery.cs b/examples/AdManager/CSharp/v201908/ReportService/RunSavedQuery.cs
similarity index 95%
rename from examples/AdManager/CSharp/v201811/ReportService/RunSavedQuery.cs
rename to examples/AdManager/CSharp/v201908/ReportService/RunSavedQuery.cs
index 4fd6f757ad1..1143291d531 100755
--- a/examples/AdManager/CSharp/v201811/ReportService/RunSavedQuery.cs
+++ b/examples/AdManager/CSharp/v201908/ReportService/RunSavedQuery.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -14,12 +14,12 @@
using Google.Api.Ads.Common.Util.Reports;
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
-using Google.Api.Ads.AdManager.Util.v201811;
+using Google.Api.Ads.AdManager.v201908;
+using Google.Api.Ads.AdManager.Util.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example runs a report from a saved query.
diff --git a/examples/AdManager/CSharp/v201811/SuggestedAdUnitService/ApproveSuggestedAdUnits.cs b/examples/AdManager/CSharp/v201908/SuggestedAdUnitService/ApproveSuggestedAdUnits.cs
similarity index 93%
rename from examples/AdManager/CSharp/v201811/SuggestedAdUnitService/ApproveSuggestedAdUnits.cs
rename to examples/AdManager/CSharp/v201908/SuggestedAdUnitService/ApproveSuggestedAdUnits.cs
index 602508c519f..e83ba60542c 100755
--- a/examples/AdManager/CSharp/v201811/SuggestedAdUnitService/ApproveSuggestedAdUnits.cs
+++ b/examples/AdManager/CSharp/v201908/SuggestedAdUnitService/ApproveSuggestedAdUnits.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,14 +13,14 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.v201908;
using System;
using System.Collections.Generic;
-using Google.Api.Ads.AdManager.Util.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example approves all suggested ad units with 50 or more
@@ -102,8 +102,8 @@ public void Run(AdManagerUser user)
statementBuilder.RemoveLimitAndOffset();
// Create action.
- Google.Api.Ads.AdManager.v201811.ApproveSuggestedAdUnits action =
- new Google.Api.Ads.AdManager.v201811.ApproveSuggestedAdUnits();
+ Google.Api.Ads.AdManager.v201908.ApproveSuggestedAdUnits action =
+ new Google.Api.Ads.AdManager.v201908.ApproveSuggestedAdUnits();
// Perform action.
SuggestedAdUnitUpdateResult result =
diff --git a/examples/AdManager/CSharp/v201811/SuggestedAdUnitService/GetAllSuggestedAdUnits.cs b/examples/AdManager/CSharp/v201908/SuggestedAdUnitService/GetAllSuggestedAdUnits.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/SuggestedAdUnitService/GetAllSuggestedAdUnits.cs
rename to examples/AdManager/CSharp/v201908/SuggestedAdUnitService/GetAllSuggestedAdUnits.cs
index 04a75b51327..d532c0b375c 100755
--- a/examples/AdManager/CSharp/v201811/SuggestedAdUnitService/GetAllSuggestedAdUnits.cs
+++ b/examples/AdManager/CSharp/v201908/SuggestedAdUnitService/GetAllSuggestedAdUnits.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all suggested ad units.
diff --git a/examples/AdManager/CSharp/v201811/SuggestedAdUnitService/GetHighlyRequestedSuggestedAdUnits.cs b/examples/AdManager/CSharp/v201908/SuggestedAdUnitService/GetHighlyRequestedSuggestedAdUnits.cs
similarity index 95%
rename from examples/AdManager/CSharp/v201811/SuggestedAdUnitService/GetHighlyRequestedSuggestedAdUnits.cs
rename to examples/AdManager/CSharp/v201908/SuggestedAdUnitService/GetHighlyRequestedSuggestedAdUnits.cs
index c3e78f5d8d1..782e51486e2 100755
--- a/examples/AdManager/CSharp/v201811/SuggestedAdUnitService/GetHighlyRequestedSuggestedAdUnits.cs
+++ b/examples/AdManager/CSharp/v201908/SuggestedAdUnitService/GetHighlyRequestedSuggestedAdUnits.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all highly requested suggested ad units.
diff --git a/examples/AdManager/CSharp/v201811/ProductTemplateService/GetAllProductTemplates.cs b/examples/AdManager/CSharp/v201908/TargetingPresetService/GetAllTargetingPresets.cs
similarity index 64%
rename from examples/AdManager/CSharp/v201811/ProductTemplateService/GetAllProductTemplates.cs
rename to examples/AdManager/CSharp/v201908/TargetingPresetService/GetAllTargetingPresets.cs
index 859852f1f21..001f371d931 100755
--- a/examples/AdManager/CSharp/v201811/ProductTemplateService/GetAllProductTemplates.cs
+++ b/examples/AdManager/CSharp/v201908/TargetingPresetService/GetAllTargetingPresets.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,24 +13,24 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
- /// This example gets all product templates.
+ /// This example gets all targeting presets.
///
- public class GetAllProductTemplates : SampleBase
+ public class GetAllTargetingPresets : SampleBase
{
///
/// Returns a description about the code example.
///
public override string Description
{
- get { return "This example gets all product templates."; }
+ get { return "This example gets all targeting presets."; }
}
///
@@ -38,7 +38,7 @@ public override string Description
///
public static void Main()
{
- GetAllProductTemplates codeExample = new GetAllProductTemplates();
+ GetAllTargetingPresets codeExample = new GetAllTargetingPresets();
Console.WriteLine(codeExample.Description);
try
{
@@ -46,7 +46,7 @@ public static void Main()
}
catch (Exception e)
{
- Console.WriteLine("Failed to get product templates. Exception says \"{0}\"",
+ Console.WriteLine("Failed to get targeting presets. Exception says \"{0}\"",
e.Message);
}
}
@@ -56,33 +56,33 @@ public static void Main()
///
public void Run(AdManagerUser user)
{
- using (ProductTemplateService productTemplateService =
- user.GetService())
+ using (TargetingPresetService targetingPresetService =
+ user.GetService())
{
- // Create a statement to select product templates.
+ // Create a statement to select targeting presets.
int pageSize = StatementBuilder.SUGGESTED_PAGE_LIMIT;
StatementBuilder statementBuilder =
new StatementBuilder().OrderBy("id ASC").Limit(pageSize);
- // Retrieve a small amount of product templates at a time, paging through until all
- // product templates have been retrieved.
+ // Retrieve a small amount of targeting presets at a time, paging through until all
+ // targeting presets have been retrieved.
int totalResultSetSize = 0;
do
{
- ProductTemplatePage page =
- productTemplateService.getProductTemplatesByStatement(
+ TargetingPresetPage page =
+ targetingPresetService.getTargetingPresetsByStatement(
statementBuilder.ToStatement());
- // Print out some information for each product template.
+ // Print out some information for each targetingPreset.
if (page.results != null)
{
totalResultSetSize = page.totalResultSetSize;
int i = page.startIndex;
- foreach (ProductTemplate productTemplate in page.results)
+ foreach (TargetingPreset targetingPreset in page.results)
{
Console.WriteLine(
- "{0}) Product template with ID {1} and name \"{2}\" was found.",
- i++, productTemplate.id, productTemplate.name);
+ "{0}) Targeting preset with ID {1} and name \"{2}\" was found.", i++,
+ targetingPreset.id, targetingPreset.name);
}
}
diff --git a/examples/AdManager/CSharp/v201811/TeamService/CreateTeams.cs b/examples/AdManager/CSharp/v201908/TeamService/CreateTeams.cs
similarity index 95%
rename from examples/AdManager/CSharp/v201811/TeamService/CreateTeams.cs
rename to examples/AdManager/CSharp/v201908/TeamService/CreateTeams.cs
index ac84f6fdc2c..370c019e30c 100755
--- a/examples/AdManager/CSharp/v201811/TeamService/CreateTeams.cs
+++ b/examples/AdManager/CSharp/v201908/TeamService/CreateTeams.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,11 +13,11 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example creates new teams. To determine which teams exist, run
diff --git a/examples/AdManager/CSharp/v201811/TeamService/GetAllTeams.cs b/examples/AdManager/CSharp/v201908/TeamService/GetAllTeams.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/TeamService/GetAllTeams.cs
rename to examples/AdManager/CSharp/v201908/TeamService/GetAllTeams.cs
index d2bfd02f9a4..7d8715f6647 100755
--- a/examples/AdManager/CSharp/v201811/TeamService/GetAllTeams.cs
+++ b/examples/AdManager/CSharp/v201908/TeamService/GetAllTeams.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all teams.
diff --git a/examples/AdManager/CSharp/v201811/TeamService/UpdateTeams.cs b/examples/AdManager/CSharp/v201908/TeamService/UpdateTeams.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/TeamService/UpdateTeams.cs
rename to examples/AdManager/CSharp/v201908/TeamService/UpdateTeams.cs
index a105f0499c8..1a5b753204f 100755
--- a/examples/AdManager/CSharp/v201811/TeamService/UpdateTeams.cs
+++ b/examples/AdManager/CSharp/v201908/TeamService/UpdateTeams.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,13 +13,13 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.v201908;
using System;
-using Google.Api.Ads.AdManager.Util.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example updates a team by adding an ad unit to it. To
diff --git a/examples/AdManager/CSharp/v201811/UserService/CreateUsers.cs b/examples/AdManager/CSharp/v201908/UserService/CreateUsers.cs
similarity index 96%
rename from examples/AdManager/CSharp/v201811/UserService/CreateUsers.cs
rename to examples/AdManager/CSharp/v201908/UserService/CreateUsers.cs
index 8d1d98568c4..df91f1bb3f3 100755
--- a/examples/AdManager/CSharp/v201811/UserService/CreateUsers.cs
+++ b/examples/AdManager/CSharp/v201908/UserService/CreateUsers.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.v201908;
using System;
using System.Collections.Generic;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example creates new users. To determine which users
diff --git a/examples/AdManager/CSharp/v201811/UserService/DeactivateUser.cs b/examples/AdManager/CSharp/v201908/UserService/DeactivateUser.cs
similarity index 96%
rename from examples/AdManager/CSharp/v201811/UserService/DeactivateUser.cs
rename to examples/AdManager/CSharp/v201908/UserService/DeactivateUser.cs
index 3fa175752c7..3ab4acd0c07 100755
--- a/examples/AdManager/CSharp/v201811/UserService/DeactivateUser.cs
+++ b/examples/AdManager/CSharp/v201908/UserService/DeactivateUser.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,13 +13,13 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
using System.Collections.Generic;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example deactivates a user. Deactivated users can no longer make
diff --git a/examples/AdManager/CSharp/v201811/UserService/GetAllRoles.cs b/examples/AdManager/CSharp/v201908/UserService/GetAllRoles.cs
similarity index 91%
rename from examples/AdManager/CSharp/v201811/UserService/GetAllRoles.cs
rename to examples/AdManager/CSharp/v201908/UserService/GetAllRoles.cs
index c0b5ab90453..9e42c8334c7 100755
--- a/examples/AdManager/CSharp/v201811/UserService/GetAllRoles.cs
+++ b/examples/AdManager/CSharp/v201908/UserService/GetAllRoles.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all roles.
diff --git a/examples/AdManager/CSharp/v201811/UserService/GetAllUsers.cs b/examples/AdManager/CSharp/v201908/UserService/GetAllUsers.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/UserService/GetAllUsers.cs
rename to examples/AdManager/CSharp/v201908/UserService/GetAllUsers.cs
index e9e3ef1a3de..dccbbc5bcd1 100755
--- a/examples/AdManager/CSharp/v201811/UserService/GetAllUsers.cs
+++ b/examples/AdManager/CSharp/v201908/UserService/GetAllUsers.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all users.
diff --git a/examples/AdManager/CSharp/v201811/UserService/GetCurrentUser.cs b/examples/AdManager/CSharp/v201908/UserService/GetCurrentUser.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/UserService/GetCurrentUser.cs
rename to examples/AdManager/CSharp/v201908/UserService/GetCurrentUser.cs
index eb73a06ca15..946bce4ebde 100755
--- a/examples/AdManager/CSharp/v201811/UserService/GetCurrentUser.cs
+++ b/examples/AdManager/CSharp/v201908/UserService/GetCurrentUser.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,11 +13,11 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example gets current user. To create users, run CreateUsers.cs.
diff --git a/examples/AdManager/CSharp/v201811/UserService/GetUserByEmailAddress.cs b/examples/AdManager/CSharp/v201908/UserService/GetUserByEmailAddress.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/UserService/GetUserByEmailAddress.cs
rename to examples/AdManager/CSharp/v201908/UserService/GetUserByEmailAddress.cs
index 70c39debbdd..15508a614c8 100755
--- a/examples/AdManager/CSharp/v201811/UserService/GetUserByEmailAddress.cs
+++ b/examples/AdManager/CSharp/v201908/UserService/GetUserByEmailAddress.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets users by email.
diff --git a/examples/AdManager/CSharp/v201811/UserService/UpdateUsers.cs b/examples/AdManager/CSharp/v201908/UserService/UpdateUsers.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/UserService/UpdateUsers.cs
rename to examples/AdManager/CSharp/v201908/UserService/UpdateUsers.cs
index a429c6d7518..a69ec9f1f28 100755
--- a/examples/AdManager/CSharp/v201811/UserService/UpdateUsers.cs
+++ b/examples/AdManager/CSharp/v201908/UserService/UpdateUsers.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example updates a user by adding "Sr." to the end of its
diff --git a/examples/AdManager/CSharp/v201811/UserTeamAssociationService/CreateUserTeamAssociations.cs b/examples/AdManager/CSharp/v201908/UserTeamAssociationService/CreateUserTeamAssociations.cs
similarity index 96%
rename from examples/AdManager/CSharp/v201811/UserTeamAssociationService/CreateUserTeamAssociations.cs
rename to examples/AdManager/CSharp/v201908/UserTeamAssociationService/CreateUserTeamAssociations.cs
index c5de4e2b867..9e4810e8420 100755
--- a/examples/AdManager/CSharp/v201811/UserTeamAssociationService/CreateUserTeamAssociations.cs
+++ b/examples/AdManager/CSharp/v201908/UserTeamAssociationService/CreateUserTeamAssociations.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,11 +13,11 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example adds a user to a team by creating an association
diff --git a/examples/AdManager/CSharp/v201811/UserTeamAssociationService/DeleteUserTeamAssociations.cs b/examples/AdManager/CSharp/v201908/UserTeamAssociationService/DeleteUserTeamAssociations.cs
similarity index 96%
rename from examples/AdManager/CSharp/v201811/UserTeamAssociationService/DeleteUserTeamAssociations.cs
rename to examples/AdManager/CSharp/v201908/UserTeamAssociationService/DeleteUserTeamAssociations.cs
index 27b5aca8304..89ac6967c17 100755
--- a/examples/AdManager/CSharp/v201811/UserTeamAssociationService/DeleteUserTeamAssociations.cs
+++ b/examples/AdManager/CSharp/v201908/UserTeamAssociationService/DeleteUserTeamAssociations.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example removes the user from all its teams. To determine which
diff --git a/examples/AdManager/CSharp/v201811/UserTeamAssociationService/GetAllUserTeamAssociations.cs b/examples/AdManager/CSharp/v201908/UserTeamAssociationService/GetAllUserTeamAssociations.cs
similarity index 94%
rename from examples/AdManager/CSharp/v201811/UserTeamAssociationService/GetAllUserTeamAssociations.cs
rename to examples/AdManager/CSharp/v201908/UserTeamAssociationService/GetAllUserTeamAssociations.cs
index a43a21a53d0..414c056c560 100755
--- a/examples/AdManager/CSharp/v201811/UserTeamAssociationService/GetAllUserTeamAssociations.cs
+++ b/examples/AdManager/CSharp/v201908/UserTeamAssociationService/GetAllUserTeamAssociations.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all user team associations.
diff --git a/examples/AdManager/CSharp/v201811/UserTeamAssociationService/GetUserTeamAssociationsForUser.cs b/examples/AdManager/CSharp/v201908/UserTeamAssociationService/GetUserTeamAssociationsForUser.cs
similarity index 95%
rename from examples/AdManager/CSharp/v201811/UserTeamAssociationService/GetUserTeamAssociationsForUser.cs
rename to examples/AdManager/CSharp/v201908/UserTeamAssociationService/GetUserTeamAssociationsForUser.cs
index 3d6ed11d52f..d65237b9e32 100755
--- a/examples/AdManager/CSharp/v201811/UserTeamAssociationService/GetUserTeamAssociationsForUser.cs
+++ b/examples/AdManager/CSharp/v201908/UserTeamAssociationService/GetUserTeamAssociationsForUser.cs
@@ -1,4 +1,4 @@
-// Copyright 2017, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This example gets all user team associations (i.e. teams) for a given user.
diff --git a/examples/AdManager/CSharp/v201811/UserTeamAssociationService/UpdateUserTeamAssociations.cs b/examples/AdManager/CSharp/v201908/UserTeamAssociationService/UpdateUserTeamAssociations.cs
similarity index 96%
rename from examples/AdManager/CSharp/v201811/UserTeamAssociationService/UpdateUserTeamAssociations.cs
rename to examples/AdManager/CSharp/v201908/UserTeamAssociationService/UpdateUserTeamAssociations.cs
index ac859a38a49..7e426ba68db 100755
--- a/examples/AdManager/CSharp/v201811/UserTeamAssociationService/UpdateUserTeamAssociations.cs
+++ b/examples/AdManager/CSharp/v201908/UserTeamAssociationService/UpdateUserTeamAssociations.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,12 +13,12 @@
// limitations under the License.
using Google.Api.Ads.AdManager.Lib;
-using Google.Api.Ads.AdManager.Util.v201811;
-using Google.Api.Ads.AdManager.v201811;
+using Google.Api.Ads.AdManager.Util.v201908;
+using Google.Api.Ads.AdManager.v201908;
using System;
-namespace Google.Api.Ads.AdManager.Examples.CSharp.v201811
+namespace Google.Api.Ads.AdManager.Examples.CSharp.v201908
{
///
/// This code example updates user team associations by setting the
diff --git a/examples/AdWords/CSharp/AdWords.Examples.CSharp.csproj b/examples/AdWords/CSharp/AdWords.Examples.CSharp.csproj
index ef14863fbd5..0817e924ee4 100755
--- a/examples/AdWords/CSharp/AdWords.Examples.CSharp.csproj
+++ b/examples/AdWords/CSharp/AdWords.Examples.CSharp.csproj
@@ -5,7 +5,6 @@
Google.AdWords.Examples.CSharpExeGoogle.Api.Ads.AdWords.Examples.CSharp.Program
- truetrue$(ProjectDir)..\..\..\src\Common\AdsApi.snkpdbonly
@@ -16,7 +15,7 @@
-
+
@@ -39,8 +38,4 @@
Designer
-
-
-
diff --git a/examples/AdWords/CSharp/OAuth/AdWords.Examples.CSharp.OAuth.csproj b/examples/AdWords/CSharp/OAuth/AdWords.Examples.CSharp.OAuth.csproj
index 3e9562ce150..2e7a9e87bca 100755
--- a/examples/AdWords/CSharp/OAuth/AdWords.Examples.CSharp.OAuth.csproj
+++ b/examples/AdWords/CSharp/OAuth/AdWords.Examples.CSharp.OAuth.csproj
@@ -85,7 +85,7 @@
-
+ 14.0
diff --git a/examples/AdWords/Vb/AdWords.Examples.VB.vbproj b/examples/AdWords/Vb/AdWords.Examples.VB.vbproj
index a78a87b87a6..be0f1745c9c 100755
--- a/examples/AdWords/Vb/AdWords.Examples.VB.vbproj
+++ b/examples/AdWords/Vb/AdWords.Examples.VB.vbproj
@@ -5,7 +5,6 @@
Google.AdWords.Examples.VBExeGoogle.Api.Ads.AdWords.Examples.VB.Program
- truetrue$(ProjectDir)..\..\..\src\Common\AdsApi.snkpdbonly
@@ -16,7 +15,7 @@
-
+
@@ -34,8 +33,4 @@
Designer
-
-
-
diff --git a/src/AdManager/AdManager.csproj b/src/AdManager/AdManager.csproj
index 3261f6c5c2c..372a61a9fda 100755
--- a/src/AdManager/AdManager.csproj
+++ b/src/AdManager/AdManager.csproj
@@ -3,7 +3,7 @@
Google's Ad Manager API Dotnet Client LibraryGoogle.Dfp
- 24.7.1
+ 24.8.0This library provides you with functionality to access the Google's Ad Manager API.See https://github.com/googleads/googleads-dotnet-lib/blob/master/ChangeLogDFP Google
@@ -22,7 +22,6 @@
netstandard2.0;net452Google.AdManagerGoogle.Api.Ads.AdManager
- truetrue..\Common\AdsApi.snkpdbonly
@@ -47,12 +46,6 @@
-
-
-
-
-
- True
@@ -69,7 +62,4 @@
NET452
-
-
-
diff --git a/src/AdManager/Util/v201808/DateTimeUtilities.cs b/src/AdManager/Util/v201908/DateTimeUtilities.cs
similarity index 93%
rename from src/AdManager/Util/v201808/DateTimeUtilities.cs
rename to src/AdManager/Util/v201908/DateTimeUtilities.cs
index 992eee71e15..07727a4c42d 100755
--- a/src/AdManager/Util/v201808/DateTimeUtilities.cs
+++ b/src/AdManager/Util/v201908/DateTimeUtilities.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,7 +13,7 @@
// limitations under the License.
using Google.Api.Ads.Common.Util;
-using Google.Api.Ads.AdManager.v201808;
+using Google.Api.Ads.AdManager.v201908;
using System;
using System.Collections.Generic;
@@ -21,9 +21,9 @@
using NodaTime;
-using AdManagerDateTime = Google.Api.Ads.AdManager.v201808.DateTime;
+using AdManagerDateTime = Google.Api.Ads.AdManager.v201908.DateTime;
-namespace Google.Api.Ads.AdManager.Util.v201808
+namespace Google.Api.Ads.AdManager.Util.v201908
{
///
/// A utility class that allows you to build Datetime objects from strings.
@@ -65,7 +65,7 @@ public static AdManagerDateTime FromDateTime(System.DateTime dateTime, string ti
retval.hour = dateTime.Hour;
retval.minute = dateTime.Minute;
retval.second = dateTime.Second;
- retval.timeZoneID = timeZoneId;
+ retval.timeZoneId = timeZoneId;
return retval;
}
@@ -89,7 +89,7 @@ public static string ToString(AdManagerDateTime dateTime, string patternText,
{
LocalDateTime localDateTime = new LocalDateTime(dateTime.date.year, dateTime.date.month,
dateTime.date.day, dateTime.hour, dateTime.minute, dateTime.second);
- DateTimeZone timeZone = DateTimeZoneProviders.Tzdb[dateTime.timeZoneID];
+ DateTimeZone timeZone = DateTimeZoneProviders.Tzdb[dateTime.timeZoneId];
return timeZone.AtLeniently(localDateTime).ToString(patternText, formatProvider);
}
}
diff --git a/src/AdManager/Util/v201808/PqlUtilities.cs b/src/AdManager/Util/v201908/PqlUtilities.cs
similarity index 95%
rename from src/AdManager/Util/v201808/PqlUtilities.cs
rename to src/AdManager/Util/v201908/PqlUtilities.cs
index 9f8d28a7245..1629613141e 100755
--- a/src/AdManager/Util/v201808/PqlUtilities.cs
+++ b/src/AdManager/Util/v201908/PqlUtilities.cs
@@ -1,4 +1,4 @@
-// Copyright 2018, Google Inc. All Rights Reserved.
+// Copyright 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -13,7 +13,7 @@
// limitations under the License.
using Google.Api.Ads.Common.Util;
-using Google.Api.Ads.AdManager.v201808;
+using Google.Api.Ads.AdManager.v201908;
using System;
using System.Collections.Generic;
@@ -21,7 +21,7 @@
using System.Text;
using System.Reflection;
-namespace Google.Api.Ads.AdManager.Util.v201808
+namespace Google.Api.Ads.AdManager.Util.v201908
{
///
/// A utility class for handling PQL objects.
@@ -271,19 +271,19 @@ private static string GetTextValue(Object value)
return "";
}
- if (value is Google.Api.Ads.AdManager.v201808.Date)
+ if (value is Google.Api.Ads.AdManager.v201908.Date)
{
- Google.Api.Ads.AdManager.v201808.Date date =
- (Google.Api.Ads.AdManager.v201808.Date) value;
+ Google.Api.Ads.AdManager.v201908.Date date =
+ (Google.Api.Ads.AdManager.v201908.Date) value;
return string.Format("{0:0000}-{1:00}-{2:00}", date.year, date.month, date.day);
}
- else if (value is Google.Api.Ads.AdManager.v201808.DateTime)
+ else if (value is Google.Api.Ads.AdManager.v201908.DateTime)
{
- Google.Api.Ads.AdManager.v201808.DateTime dateTime =
- (Google.Api.Ads.AdManager.v201808.DateTime) value;
+ Google.Api.Ads.AdManager.v201908.DateTime dateTime =
+ (Google.Api.Ads.AdManager.v201908.DateTime) value;
return string.Format("{0:0000}-{1:00}-{2:00}T{3:00}:{4:00}:{5:00} {6}",
dateTime.date.year, dateTime.date.month, dateTime.date.day, dateTime.hour,
- dateTime.minute, dateTime.second, dateTime.timeZoneID);
+ dateTime.minute, dateTime.second, dateTime.timeZoneId);
}
else if (value is List
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "RequiredError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "RequiredError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
public enum RequiredErrorReason {
/// Missing required field.
///
@@ -803,7 +786,7 @@ public enum RequiredErrorReason {
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
public partial class RequiredCollectionError : ApiError {
private RequiredCollectionErrorReason reasonField;
@@ -837,7 +820,7 @@ public bool reasonSpecified {
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "RequiredCollectionError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "RequiredCollectionError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
public enum RequiredCollectionErrorReason {
/// A required collection is missing.
///
@@ -861,7 +844,7 @@ public enum RequiredCollectionErrorReason {
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
public partial class RangeError : ApiError {
private RangeErrorReason reasonField;
@@ -895,7 +878,7 @@ public bool reasonSpecified {
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "RangeError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "RangeError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
public enum RangeErrorReason {
TOO_HIGH = 0,
TOO_LOW = 1,
@@ -913,7 +896,7 @@ public enum RangeErrorReason {
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
public partial class QuotaError : ApiError {
private QuotaErrorReason reasonField;
@@ -947,7 +930,7 @@ public bool reasonSpecified {
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "QuotaError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "QuotaError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
public enum QuotaErrorReason {
/// The number of requests made per second is too high and has exceeded the
/// allowable limit. The recommended approach to handle this error is to wait about
@@ -984,7 +967,7 @@ public enum QuotaErrorReason {
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
public partial class PublisherQueryLanguageSyntaxError : ApiError {
private PublisherQueryLanguageSyntaxErrorReason reasonField;
@@ -1022,7 +1005,7 @@ public bool reasonSpecified {
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "PublisherQueryLanguageSyntaxError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "PublisherQueryLanguageSyntaxError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
public enum PublisherQueryLanguageSyntaxErrorReason {
/// Indicates that there was a PQL syntax error.
///
@@ -1041,7 +1024,7 @@ public enum PublisherQueryLanguageSyntaxErrorReason {
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
public partial class PublisherQueryLanguageContextError : ApiError {
private PublisherQueryLanguageContextErrorReason reasonField;
@@ -1079,7 +1062,7 @@ public bool reasonSpecified {
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "PublisherQueryLanguageContextError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "PublisherQueryLanguageContextError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
public enum PublisherQueryLanguageContextErrorReason {
/// Indicates that there was an error executing the PQL.
///
@@ -1097,7 +1080,7 @@ public enum PublisherQueryLanguageContextErrorReason {
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
public partial class PermissionError : ApiError {
private PermissionErrorReason reasonField;
@@ -1133,7 +1116,7 @@ public bool reasonSpecified {
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "PermissionError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "PermissionError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
public enum PermissionErrorReason {
/// User does not have the required permission for the request.
///
@@ -1151,7 +1134,7 @@ public enum PermissionErrorReason {
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
public partial class ParseError : ApiError {
private ParseErrorReason reasonField;
@@ -1189,7 +1172,7 @@ public bool reasonSpecified {
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "ParseError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "ParseError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
public enum ParseErrorReason {
/// Indicates an error in parsing an attribute.
///
@@ -1207,7 +1190,7 @@ public enum ParseErrorReason {
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
public partial class NotNullError : ApiError {
private NotNullErrorReason reasonField;
@@ -1245,7 +1228,7 @@ public bool reasonSpecified {
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "NotNullError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "NotNullError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
public enum NotNullErrorReason {
/// Assuming that a method will not have more than 3 arguments, if it does, return
/// NULL
@@ -1268,7 +1251,7 @@ public enum NotNullErrorReason {
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
public partial class InternalApiError : ApiError {
private InternalApiErrorReason reasonField;
@@ -1306,7 +1289,7 @@ public bool reasonSpecified {
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "InternalApiError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "InternalApiError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
public enum InternalApiErrorReason {
/// API encountered an unexpected internal error.
///
@@ -1335,7 +1318,7 @@ public enum InternalApiErrorReason {
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
public partial class FeatureError : ApiError {
private FeatureErrorReason reasonField;
@@ -1369,7 +1352,7 @@ public bool reasonSpecified {
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "FeatureError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "FeatureError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
public enum FeatureErrorReason {
/// A feature is being used that is not enabled on the current network.
///
@@ -1387,7 +1370,7 @@ public enum FeatureErrorReason {
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
public partial class CommonError : ApiError {
private CommonErrorReason reasonField;
@@ -1423,7 +1406,7 @@ public bool reasonSpecified {
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "CommonError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "CommonError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
public enum CommonErrorReason {
/// Indicates that an attempt was made to retrieve an entity that does not exist.
///
@@ -1457,7 +1440,7 @@ public enum CommonErrorReason {
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
public partial class CollectionSizeError : ApiError {
private CollectionSizeErrorReason reasonField;
@@ -1491,7 +1474,7 @@ public bool reasonSpecified {
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "CollectionSizeError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "CollectionSizeError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
public enum CollectionSizeErrorReason {
TOO_LARGE = 0,
/// The value returned if the actual value is not exposed by the requested API
@@ -1507,7 +1490,7 @@ public enum CollectionSizeErrorReason {
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
public partial class AuthenticationError : ApiError {
private AuthenticationErrorReason reasonField;
@@ -1541,7 +1524,7 @@ public bool reasonSpecified {
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "AuthenticationError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "AuthenticationError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
public enum AuthenticationErrorReason {
/// The SOAP message contains a request header with an ambiguous definition of the
/// authentication header fields. This means either the authToken and
@@ -1609,7 +1592,7 @@ public enum AuthenticationErrorReason {
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
public partial class ApiVersionError : ApiError {
private ApiVersionErrorReason reasonField;
@@ -1643,7 +1626,7 @@ public bool reasonSpecified {
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "ApiVersionError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "ApiVersionError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
public enum ApiVersionErrorReason {
/// Indicates that the operation is not allowed in the version the request was made
/// in.
@@ -1662,7 +1645,7 @@ public enum ApiVersionErrorReason {
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
public partial class ActivityError : ApiError {
private ActivityErrorReason reasonField;
@@ -1700,7 +1683,7 @@ public bool reasonSpecified {
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "ActivityError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "ActivityError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
public enum ActivityErrorReason {
/// The 'activities' feature is required but not enabled.
///
@@ -1733,7 +1716,7 @@ public enum ActivityErrorReason {
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
public partial class Statement {
private string queryField;
@@ -1791,7 +1774,7 @@ public String_ValueMapEntry[] values {
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
public partial class String_ValueMapEntry {
private string keyField;
@@ -1832,7 +1815,7 @@ public Value value {
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
[System.Xml.Serialization.XmlIncludeAttribute(typeof(TargetingValue))]
[System.Xml.Serialization.XmlIncludeAttribute(typeof(ChangeHistoryValue))]
public abstract partial class Value {
@@ -1845,7 +1828,7 @@ public abstract partial class Value {
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
public partial class TextValue : Value {
private string valueField;
@@ -1869,7 +1852,7 @@ public string value {
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
public partial class SetValue : Value {
private Value[] valuesField;
@@ -1894,7 +1877,7 @@ public Value[] values {
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
public partial class NumberValue : Value {
private string valueField;
@@ -1918,7 +1901,7 @@ public string value {
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
public partial class DateValue : Value {
private Date valueField;
@@ -1942,7 +1925,7 @@ public Date value {
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
public partial class Date {
private int yearField;
@@ -2042,7 +2025,7 @@ public bool daySpecified {
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
public partial class DateTimeValue : Value {
private DateTime valueField;
@@ -2066,7 +2049,7 @@ public DateTime value {
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
public partial class DateTime {
private Date dateField;
@@ -2082,7 +2065,7 @@ public partial class DateTime {
private bool secondFieldSpecified;
- private string timeZoneIDField;
+ private string timeZoneIdField;
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
public Date date {
@@ -2167,12 +2150,12 @@ public bool secondSpecified {
}
[System.Xml.Serialization.XmlElementAttribute(Order = 4)]
- public string timeZoneID {
+ public string timeZoneId {
get {
- return this.timeZoneIDField;
+ return this.timeZoneIdField;
}
set {
- this.timeZoneIDField = value;
+ this.timeZoneIdField = value;
}
}
}
@@ -2184,7 +2167,7 @@ public string timeZoneID {
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
public partial class BooleanValue : Value {
private bool valueField;
@@ -2228,7 +2211,7 @@ public bool valueSpecified {
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
[System.Xml.Serialization.XmlIncludeAttribute(typeof(TargetingValue))]
[System.Xml.Serialization.XmlIncludeAttribute(typeof(ChangeHistoryValue))]
public abstract partial class ObjectValue : Value {
@@ -2241,7 +2224,7 @@ public abstract partial class ObjectValue : Value {
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
public partial class ActivityGroupPage {
private int totalResultSetSizeField;
@@ -2320,7 +2303,7 @@ public ActivityGroup[] results {
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
- public interface ActivityGroupServiceInterfaceChannel : Google.Api.Ads.AdManager.v201808.ActivityGroupServiceInterface, System.ServiceModel.IClientChannel
+ public interface ActivityGroupServiceInterfaceChannel : Google.Api.Ads.AdManager.v201908.ActivityGroupServiceInterface, System.ServiceModel.IClientChannel
{
}
namespace Wrappers.ActivityGroupService
@@ -2328,11 +2311,11 @@ namespace Wrappers.ActivityGroupService
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
- [System.ServiceModel.MessageContractAttribute(WrapperName = "createActivityGroups", WrapperNamespace = "https://www.google.com/apis/ads/publisher/v201808", IsWrapped = true)]
+ [System.ServiceModel.MessageContractAttribute(WrapperName = "createActivityGroups", WrapperNamespace = "https://www.google.com/apis/ads/publisher/v201908", IsWrapped = true)]
public partial class createActivityGroupsRequest {
- [System.ServiceModel.MessageBodyMemberAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808", Order = 0)]
+ [System.ServiceModel.MessageBodyMemberAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908", Order = 0)]
[System.Xml.Serialization.XmlElementAttribute("activityGroups")]
- public Google.Api.Ads.AdManager.v201808.ActivityGroup[] activityGroups;
+ public Google.Api.Ads.AdManager.v201908.ActivityGroup[] activityGroups;
/// Creates a new instance of the class.
@@ -2341,7 +2324,7 @@ public createActivityGroupsRequest() {
/// Creates a new instance of the class.
- public createActivityGroupsRequest(Google.Api.Ads.AdManager.v201808.ActivityGroup[] activityGroups) {
+ public createActivityGroupsRequest(Google.Api.Ads.AdManager.v201908.ActivityGroup[] activityGroups) {
this.activityGroups = activityGroups;
}
}
@@ -2350,11 +2333,11 @@ public createActivityGroupsRequest(Google.Api.Ads.AdManager.v201808.ActivityGrou
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
- [System.ServiceModel.MessageContractAttribute(WrapperName = "createActivityGroupsResponse", WrapperNamespace = "https://www.google.com/apis/ads/publisher/v201808", IsWrapped = true)]
+ [System.ServiceModel.MessageContractAttribute(WrapperName = "createActivityGroupsResponse", WrapperNamespace = "https://www.google.com/apis/ads/publisher/v201908", IsWrapped = true)]
public partial class createActivityGroupsResponse {
- [System.ServiceModel.MessageBodyMemberAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808", Order = 0)]
+ [System.ServiceModel.MessageBodyMemberAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908", Order = 0)]
[System.Xml.Serialization.XmlElementAttribute("rval")]
- public Google.Api.Ads.AdManager.v201808.ActivityGroup[] rval;
+ public Google.Api.Ads.AdManager.v201908.ActivityGroup[] rval;
/// Creates a new instance of the class.
@@ -2363,7 +2346,7 @@ public createActivityGroupsResponse() {
/// Creates a new instance of the class.
- public createActivityGroupsResponse(Google.Api.Ads.AdManager.v201808.ActivityGroup[] rval) {
+ public createActivityGroupsResponse(Google.Api.Ads.AdManager.v201908.ActivityGroup[] rval) {
this.rval = rval;
}
}
@@ -2372,11 +2355,11 @@ public createActivityGroupsResponse(Google.Api.Ads.AdManager.v201808.ActivityGro
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
- [System.ServiceModel.MessageContractAttribute(WrapperName = "updateActivityGroups", WrapperNamespace = "https://www.google.com/apis/ads/publisher/v201808", IsWrapped = true)]
+ [System.ServiceModel.MessageContractAttribute(WrapperName = "updateActivityGroups", WrapperNamespace = "https://www.google.com/apis/ads/publisher/v201908", IsWrapped = true)]
public partial class updateActivityGroupsRequest {
- [System.ServiceModel.MessageBodyMemberAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808", Order = 0)]
+ [System.ServiceModel.MessageBodyMemberAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908", Order = 0)]
[System.Xml.Serialization.XmlElementAttribute("activityGroups")]
- public Google.Api.Ads.AdManager.v201808.ActivityGroup[] activityGroups;
+ public Google.Api.Ads.AdManager.v201908.ActivityGroup[] activityGroups;
/// Creates a new instance of the class.
@@ -2385,7 +2368,7 @@ public updateActivityGroupsRequest() {
/// Creates a new instance of the class.
- public updateActivityGroupsRequest(Google.Api.Ads.AdManager.v201808.ActivityGroup[] activityGroups) {
+ public updateActivityGroupsRequest(Google.Api.Ads.AdManager.v201908.ActivityGroup[] activityGroups) {
this.activityGroups = activityGroups;
}
}
@@ -2394,11 +2377,11 @@ public updateActivityGroupsRequest(Google.Api.Ads.AdManager.v201808.ActivityGrou
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
- [System.ServiceModel.MessageContractAttribute(WrapperName = "updateActivityGroupsResponse", WrapperNamespace = "https://www.google.com/apis/ads/publisher/v201808", IsWrapped = true)]
+ [System.ServiceModel.MessageContractAttribute(WrapperName = "updateActivityGroupsResponse", WrapperNamespace = "https://www.google.com/apis/ads/publisher/v201908", IsWrapped = true)]
public partial class updateActivityGroupsResponse {
- [System.ServiceModel.MessageBodyMemberAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808", Order = 0)]
+ [System.ServiceModel.MessageBodyMemberAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908", Order = 0)]
[System.Xml.Serialization.XmlElementAttribute("rval")]
- public Google.Api.Ads.AdManager.v201808.ActivityGroup[] rval;
+ public Google.Api.Ads.AdManager.v201908.ActivityGroup[] rval;
/// Creates a new instance of the class.
@@ -2407,18 +2390,18 @@ public updateActivityGroupsResponse() {
/// Creates a new instance of the class.
- public updateActivityGroupsResponse(Google.Api.Ads.AdManager.v201808.ActivityGroup[] rval) {
+ public updateActivityGroupsResponse(Google.Api.Ads.AdManager.v201908.ActivityGroup[] rval) {
this.rval = rval;
}
}
}
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
- [System.ServiceModel.ServiceContractAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808", ConfigurationName = "Google.Api.Ads.AdManager.v201808.ActivityGroupServiceInterface")]
+ [System.ServiceModel.ServiceContractAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908", ConfigurationName = "Google.Api.Ads.AdManager.v201908.ActivityGroupServiceInterface")]
public interface ActivityGroupServiceInterface
{
// CODEGEN: Parameter 'rval' requires additional schema information that cannot be captured using the parameter mode. The specific attribute is 'System.Xml.Serialization.XmlElementAttribute'.
[System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
- [System.ServiceModel.FaultContractAttribute(typeof(Google.Api.Ads.AdManager.v201808.ApiException), Action = "", Name = "ApiExceptionFault")]
+ [System.ServiceModel.FaultContractAttribute(typeof(Google.Api.Ads.AdManager.v201908.ApiException), Action = "", Name = "ApiExceptionFault")]
[System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults = true)]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApplicationException))]
[return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
@@ -2428,19 +2411,19 @@ public interface ActivityGroupServiceInterface
System.Threading.Tasks.Task createActivityGroupsAsync(Wrappers.ActivityGroupService.createActivityGroupsRequest request);
[System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
- [System.ServiceModel.FaultContractAttribute(typeof(Google.Api.Ads.AdManager.v201808.ApiException), Action = "", Name = "ApiExceptionFault")]
+ [System.ServiceModel.FaultContractAttribute(typeof(Google.Api.Ads.AdManager.v201908.ApiException), Action = "", Name = "ApiExceptionFault")]
[System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults = true)]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApplicationException))]
[return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
- Google.Api.Ads.AdManager.v201808.ActivityGroupPage getActivityGroupsByStatement(Google.Api.Ads.AdManager.v201808.Statement filterStatement);
+ Google.Api.Ads.AdManager.v201908.ActivityGroupPage getActivityGroupsByStatement(Google.Api.Ads.AdManager.v201908.Statement filterStatement);
[System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
[return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
- System.Threading.Tasks.Task getActivityGroupsByStatementAsync(Google.Api.Ads.AdManager.v201808.Statement filterStatement);
+ System.Threading.Tasks.Task getActivityGroupsByStatementAsync(Google.Api.Ads.AdManager.v201908.Statement filterStatement);
// CODEGEN: Parameter 'rval' requires additional schema information that cannot be captured using the parameter mode. The specific attribute is 'System.Xml.Serialization.XmlElementAttribute'.
[System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
- [System.ServiceModel.FaultContractAttribute(typeof(Google.Api.Ads.AdManager.v201808.ApiException), Action = "", Name = "ApiExceptionFault")]
+ [System.ServiceModel.FaultContractAttribute(typeof(Google.Api.Ads.AdManager.v201908.ApiException), Action = "", Name = "ApiExceptionFault")]
[System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults = true)]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApplicationException))]
[return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
@@ -2491,29 +2474,29 @@ public ActivityGroupService(System.ServiceModel.Channels.Binding binding, System
}
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
- Wrappers.ActivityGroupService.createActivityGroupsResponse Google.Api.Ads.AdManager.v201808.ActivityGroupServiceInterface.createActivityGroups(Wrappers.ActivityGroupService.createActivityGroupsRequest request) {
+ Wrappers.ActivityGroupService.createActivityGroupsResponse Google.Api.Ads.AdManager.v201908.ActivityGroupServiceInterface.createActivityGroups(Wrappers.ActivityGroupService.createActivityGroupsRequest request) {
return base.Channel.createActivityGroups(request);
}
/// Creates a new ActivityGroup objects.
/// the activity groups to be created.
/// the created activity groups with their IDs filled in.
- public virtual Google.Api.Ads.AdManager.v201808.ActivityGroup[] createActivityGroups(Google.Api.Ads.AdManager.v201808.ActivityGroup[] activityGroups) {
+ public virtual Google.Api.Ads.AdManager.v201908.ActivityGroup[] createActivityGroups(Google.Api.Ads.AdManager.v201908.ActivityGroup[] activityGroups) {
Wrappers.ActivityGroupService.createActivityGroupsRequest inValue = new Wrappers.ActivityGroupService.createActivityGroupsRequest();
inValue.activityGroups = activityGroups;
- Wrappers.ActivityGroupService.createActivityGroupsResponse retVal = ((Google.Api.Ads.AdManager.v201808.ActivityGroupServiceInterface)(this)).createActivityGroups(inValue);
+ Wrappers.ActivityGroupService.createActivityGroupsResponse retVal = ((Google.Api.Ads.AdManager.v201908.ActivityGroupServiceInterface)(this)).createActivityGroups(inValue);
return retVal.rval;
}
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
- System.Threading.Tasks.Task Google.Api.Ads.AdManager.v201808.ActivityGroupServiceInterface.createActivityGroupsAsync(Wrappers.ActivityGroupService.createActivityGroupsRequest request) {
+ System.Threading.Tasks.Task Google.Api.Ads.AdManager.v201908.ActivityGroupServiceInterface.createActivityGroupsAsync(Wrappers.ActivityGroupService.createActivityGroupsRequest request) {
return base.Channel.createActivityGroupsAsync(request);
}
- public virtual System.Threading.Tasks.Task createActivityGroupsAsync(Google.Api.Ads.AdManager.v201808.ActivityGroup[] activityGroups) {
+ public virtual System.Threading.Tasks.Task createActivityGroupsAsync(Google.Api.Ads.AdManager.v201908.ActivityGroup[] activityGroups) {
Wrappers.ActivityGroupService.createActivityGroupsRequest inValue = new Wrappers.ActivityGroupService.createActivityGroupsRequest();
inValue.activityGroups = activityGroups;
- return System.Threading.Tasks.Task.Factory.StartNew(() => (((Google.Api.Ads.AdManager.v201808.ActivityGroupServiceInterface)(this)).createActivityGroupsAsync(inValue)).Result.rval);
+ return System.Threading.Tasks.Task.Factory.StartNew(() => (((Google.Api.Ads.AdManager.v201908.ActivityGroupServiceInterface)(this)).createActivityGroupsAsync(inValue)).Result.rval);
}
/// Gets an ActivityGroupPage of a statement used to filter a set of activity
/// groups
/// the activity groups that match the given filter
- public virtual Google.Api.Ads.AdManager.v201808.ActivityGroupPage getActivityGroupsByStatement(Google.Api.Ads.AdManager.v201808.Statement filterStatement) {
+ public virtual Google.Api.Ads.AdManager.v201908.ActivityGroupPage getActivityGroupsByStatement(Google.Api.Ads.AdManager.v201908.Statement filterStatement) {
return base.Channel.getActivityGroupsByStatement(filterStatement);
}
- public virtual System.Threading.Tasks.Task getActivityGroupsByStatementAsync(Google.Api.Ads.AdManager.v201808.Statement filterStatement) {
+ public virtual System.Threading.Tasks.Task getActivityGroupsByStatementAsync(Google.Api.Ads.AdManager.v201908.Statement filterStatement) {
return base.Channel.getActivityGroupsByStatementAsync(filterStatement);
}
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
- Wrappers.ActivityGroupService.updateActivityGroupsResponse Google.Api.Ads.AdManager.v201808.ActivityGroupServiceInterface.updateActivityGroups(Wrappers.ActivityGroupService.updateActivityGroupsRequest request) {
+ Wrappers.ActivityGroupService.updateActivityGroupsResponse Google.Api.Ads.AdManager.v201908.ActivityGroupServiceInterface.updateActivityGroups(Wrappers.ActivityGroupService.updateActivityGroupsRequest request) {
return base.Channel.updateActivityGroups(request);
}
/// Updates the specified ActivityGroup objects.
/// the activity groups to update.
/// the updated activity groups.
- public virtual Google.Api.Ads.AdManager.v201808.ActivityGroup[] updateActivityGroups(Google.Api.Ads.AdManager.v201808.ActivityGroup[] activityGroups) {
+ public virtual Google.Api.Ads.AdManager.v201908.ActivityGroup[] updateActivityGroups(Google.Api.Ads.AdManager.v201908.ActivityGroup[] activityGroups) {
Wrappers.ActivityGroupService.updateActivityGroupsRequest inValue = new Wrappers.ActivityGroupService.updateActivityGroupsRequest();
inValue.activityGroups = activityGroups;
- Wrappers.ActivityGroupService.updateActivityGroupsResponse retVal = ((Google.Api.Ads.AdManager.v201808.ActivityGroupServiceInterface)(this)).updateActivityGroups(inValue);
+ Wrappers.ActivityGroupService.updateActivityGroupsResponse retVal = ((Google.Api.Ads.AdManager.v201908.ActivityGroupServiceInterface)(this)).updateActivityGroups(inValue);
return retVal.rval;
}
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
- System.Threading.Tasks.Task Google.Api.Ads.AdManager.v201808.ActivityGroupServiceInterface.updateActivityGroupsAsync(Wrappers.ActivityGroupService.updateActivityGroupsRequest request) {
+ System.Threading.Tasks.Task Google.Api.Ads.AdManager.v201908.ActivityGroupServiceInterface.updateActivityGroupsAsync(Wrappers.ActivityGroupService.updateActivityGroupsRequest request) {
return base.Channel.updateActivityGroupsAsync(request);
}
- public virtual System.Threading.Tasks.Task updateActivityGroupsAsync(Google.Api.Ads.AdManager.v201808.ActivityGroup[] activityGroups) {
+ public virtual System.Threading.Tasks.Task updateActivityGroupsAsync(Google.Api.Ads.AdManager.v201908.ActivityGroup[] activityGroups) {
Wrappers.ActivityGroupService.updateActivityGroupsRequest inValue = new Wrappers.ActivityGroupService.updateActivityGroupsRequest();
inValue.activityGroups = activityGroups;
- return System.Threading.Tasks.Task.Factory.StartNew(() => (((Google.Api.Ads.AdManager.v201808.ActivityGroupServiceInterface)(this)).updateActivityGroupsAsync(inValue)).Result.rval);
+ return System.Threading.Tasks.Task.Factory.StartNew(() => (((Google.Api.Ads.AdManager.v201908.ActivityGroupServiceInterface)(this)).updateActivityGroupsAsync(inValue)).Result.rval);
}
}
- namespace Wrappers.ContentBundleService
+ namespace Wrappers.ContentService
{
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
- [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
- [System.ServiceModel.MessageContractAttribute(WrapperName = "createContentBundles", WrapperNamespace = "https://www.google.com/apis/ads/publisher/v201808", IsWrapped = true)]
- public partial class createContentBundlesRequest {
- [System.ServiceModel.MessageBodyMemberAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808", Order = 0)]
- [System.Xml.Serialization.XmlElementAttribute("contentBundles")]
- public Google.Api.Ads.AdManager.v201808.ContentBundle[] contentBundles;
+ }
+ /// Contains information about Content from the CMS it was
+ /// ingested from.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class CmsContent {
+ private long idField;
- /// Creates a new instance of the class.
- public createContentBundlesRequest() {
- }
+ private bool idFieldSpecified;
- /// Creates a new instance of the class.
- public createContentBundlesRequest(Google.Api.Ads.AdManager.v201808.ContentBundle[] contentBundles) {
- this.contentBundles = contentBundles;
+ private string displayNameField;
+
+ private string cmsContentIdField;
+
+ /// The ID of the Content Source associated with the CMS in Ad Manager. This
+ /// attribute is read-only.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
+ public long id {
+ get {
+ return this.idField;
+ }
+ set {
+ this.idField = value;
+ this.idSpecified = true;
}
}
+ /// true, if a value is specified for ,
+ /// false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool idSpecified {
+ get {
+ return this.idFieldSpecified;
+ }
+ set {
+ this.idFieldSpecified = value;
+ }
+ }
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
- [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
- [System.ServiceModel.MessageContractAttribute(WrapperName = "createContentBundlesResponse", WrapperNamespace = "https://www.google.com/apis/ads/publisher/v201808", IsWrapped = true)]
- public partial class createContentBundlesResponse {
- [System.ServiceModel.MessageBodyMemberAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808", Order = 0)]
- [System.Xml.Serialization.XmlElementAttribute("rval")]
- public Google.Api.Ads.AdManager.v201808.ContentBundle[] rval;
-
- /// Creates a new instance of the class.
- public createContentBundlesResponse() {
+ /// The display name of the CMS this content is in. This attribute is read-only.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
+ public string displayName {
+ get {
+ return this.displayNameField;
}
+ set {
+ this.displayNameField = value;
+ }
+ }
- /// Creates a new instance of the class.
- public createContentBundlesResponse(Google.Api.Ads.AdManager.v201808.ContentBundle[] rval) {
- this.rval = rval;
+ /// The ID of the Content in the CMS. This ID will be a 3rd
+ /// party ID, usually the ID of the content in a CMS (Content Management System).
+ /// This attribute is read-only.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 2)]
+ public string cmsContentId {
+ get {
+ return this.cmsContentIdField;
+ }
+ set {
+ this.cmsContentIdField = value;
}
}
+ }
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
- [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
- [System.ServiceModel.MessageContractAttribute(WrapperName = "updateContentBundles", WrapperNamespace = "https://www.google.com/apis/ads/publisher/v201808", IsWrapped = true)]
- public partial class updateContentBundlesRequest {
- [System.ServiceModel.MessageBodyMemberAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808", Order = 0)]
- [System.Xml.Serialization.XmlElementAttribute("contentBundles")]
- public Google.Api.Ads.AdManager.v201808.ContentBundle[] contentBundles;
+ /// Represents an error associated with a DAI content's status.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class DaiIngestError {
+ private DaiIngestErrorReason reasonField;
- /// Creates a new instance of the class.
- public updateContentBundlesRequest() {
- }
+ private bool reasonFieldSpecified;
- /// Creates a new instance of the class.
- public updateContentBundlesRequest(Google.Api.Ads.AdManager.v201808.ContentBundle[] contentBundles) {
- this.contentBundles = contentBundles;
+ private string triggerField;
+
+ /// The error associated with the content.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
+ public DaiIngestErrorReason reason {
+ get {
+ return this.reasonField;
+ }
+ set {
+ this.reasonField = value;
+ this.reasonSpecified = true;
}
}
-
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
- [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
- [System.ServiceModel.MessageContractAttribute(WrapperName = "updateContentBundlesResponse", WrapperNamespace = "https://www.google.com/apis/ads/publisher/v201808", IsWrapped = true)]
- public partial class updateContentBundlesResponse {
- [System.ServiceModel.MessageBodyMemberAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808", Order = 0)]
- [System.Xml.Serialization.XmlElementAttribute("rval")]
- public Google.Api.Ads.AdManager.v201808.ContentBundle[] rval;
-
- /// Creates a new instance of the class.
- public updateContentBundlesResponse() {
+ /// true, if a value is specified for ,
+ /// false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool reasonSpecified {
+ get {
+ return this.reasonFieldSpecified;
}
+ set {
+ this.reasonFieldSpecified = value;
+ }
+ }
- /// Creates a new instance of the class.
- public updateContentBundlesResponse(Google.Api.Ads.AdManager.v201808.ContentBundle[] rval) {
- this.rval = rval;
+ /// The field, if any, that triggered the error.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
+ public string trigger {
+ get {
+ return this.triggerField;
+ }
+ set {
+ this.triggerField = value;
}
}
}
- /// A ContentBundle is a grouping of individual Content. A ContentBundle is defined as including
- /// the Content that match certain filter rules, along with the option
- /// to explicitly include or exclude certain Content IDs.
+
+
+ /// Describes what caused the DAI content to fail during the ingestion proccess.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum DaiIngestErrorReason {
+ /// The ingest URL provided in the publisher's content source feed is invalid. The
+ /// trigger for this error is the ingest URL specified in the publisher's feed.
+ ///
+ INVALID_INGEST_URL = 0,
+ /// The closed caption URL provided in the publisher's content source feed is
+ /// invalid. The trigger for this error is the closed caption URL specified in the
+ /// publisher's feed.
+ ///
+ INVALID_CLOSED_CAPTION_URL = 1,
+ /// There is no closed caption URL for a content in the publisher's content source
+ /// feed. There is no trigger for this error.
+ ///
+ MISSING_CLOSED_CAPTION_URL = 2,
+ /// There was an error while trying to fetch the HLS from the specified ingest URL.
+ /// The trigger for this error is the ingest URL specified in the publisher's feed.
+ ///
+ COULD_NOT_FETCH_HLS = 3,
+ /// There was an error while trying to fetch the subtitles from the specified closed
+ /// caption url. The trigger for this error is the closed caption URL specified in
+ /// the publisher's feed.
+ ///
+ COULD_NOT_FETCH_SUBTITLES = 4,
+ /// One of the subtitles from the closed caption URL is missing a language. The
+ /// trigger for this error is the closed caption URL that does not have a language
+ /// associated with it.
+ ///
+ MISSING_SUBTITLE_LANGUAGE = 5,
+ /// Error fetching the media files from the URLs specified in the master HLS
+ /// playlist. The trigger for this error is a media playlist URL within the
+ /// publisher's HLS playlist that could not be fetched.
+ ///
+ COULD_NOT_FETCH_MEDIA = 6,
+ /// The media from the publisher's CDN is malformed and cannot be conditioned. The
+ /// trigger for this error is a media playlist URL within the publisher's HLS
+ /// playlist that is malformed.
+ ///
+ MALFORMED_MEDIA_BYTES = 7,
+ /// A chapter time for the content is outside of the range of the content's
+ /// duration. The trigger for this error is the chapter time (a parsable long
+ /// representing the time in ms) that is out of bounds.
+ ///
+ CHAPTER_TIME_OUT_OF_BOUNDS = 8,
+ /// An internal error occurred while conditioning the content. There is no trigger
+ /// for this error.
+ ///
+ INTERNAL_ERROR = 9,
+ /// The content has chapter times but the content's source has no CDN settings for
+ /// midrolls. There is no trigger for this error.
+ ///
+ CONTENT_HAS_CHAPTER_TIMES_BUT_NO_MIDROLL_SETTINGS = 10,
+ /// There is bad/missing/malformed data in a media playlist. The trigger for this
+ /// error is the URL that points to the malformed media playlist.
+ ///
+ MALFORMED_MEDIA_PLAYLIST = 11,
+ /// There is bad/missing/malformed data in a subtitles file. The trigger for this
+ /// error is the URL that points to the malformed subtitles.
+ ///
+ MALFORMED_SUBTITLES = 12,
+ /// A playlist item has a URL that does not begin with the ingest common path
+ /// provided in the DAI settings. The trigger for this error is the playlist item
+ /// URL.
+ ///
+ PLAYLIST_ITEM_URL_DOES_NOT_MATCH_INGEST_COMMON_PATH = 13,
+ /// Uploading split media segments failed due to an authentication error.
+ ///
+ COULD_NOT_UPLOAD_SPLIT_MEDIA_AUTHENTICATION_FAILED = 14,
+ /// Uploading spit media segments failed due to a connection error.
+ ///
+ COULD_NOT_UPLOAD_SPLIT_MEDIA_CONNECTION_FAILED = 15,
+ /// Uploading split media segments failed due to a write error.
+ ///
+ COULD_NOT_UPLOAD_SPLIT_MEDIA_WRITE_FAILED = 16,
+ /// Variants in a playlist do not have the same number of discontinuities. The
+ /// trigger for this error is the master playlist URI.
+ ///
+ PLAYLISTS_HAVE_DIFFERENT_NUMBER_OF_DISCONTINUITIES = 17,
+ /// The playlist does not have a starting PTS value. The trigger for this error is
+ /// the master playlist URI.
+ ///
+ PLAYIST_HAS_NO_STARTING_PTS_VALUE = 18,
+ /// The PTS at a discontinuity varies too much between the different variants. The
+ /// trigger for this error is the master playlist URI.
+ ///
+ PLAYLIST_DISCONTINUITY_PTS_VALUES_DIFFER_TOO_MUCH = 19,
+ /// A media segment has no PTS. The trigger for this error is the segment data URI.
+ ///
+ SEGMENT_HAS_NO_PTS = 20,
+ /// The language in the subtitles file does not match the language specified in the
+ /// feed. The trigger for this error is the feed language and the parsed language
+ /// separated by a semi-colon, e.g. "en;sp".
+ ///
+ SUBTITLE_LANGUAGE_DOES_NOT_MATCH_LANGUAGE_IN_FEED = 21,
+ /// There are multiple subtitles files at the closed caption URI, and none of them
+ /// match the language defined in the feed. The trigger for this error is language
+ /// in the feed.
+ ///
+ CANNOT_DETERMINE_CORRECT_SUBTITLES_FOR_LANGUAGE = 22,
+ /// No CDN configuration found for the content. The trigger for this error is the
+ /// content's master playlist URI.
+ ///
+ NO_CDN_CONFIGURATION_FOUND = 23,
+ /// The content has midrolls but there was no split content config on the CDN
+ /// configuration for that content so the content was not conditioned. There is no
+ /// trigger for this error.
+ ///
+ CONTENT_HAS_MIDROLLS_BUT_NO_SPLIT_CONTENT_CONFIG = 24,
+ /// The content has midrolls but the source the content was ingested from has
+ /// mid-rolls disabled, so the content was not conditioned. There is no trigger for
+ /// this error.
+ ///
+ CONTENT_HAS_MIDROLLS_BUT_SOURCE_HAS_MIDROLLS_DISABLED = 25,
+ /// Error parsing ADTS while splitting the content. The trigger for this error is
+ /// the variant URL and the cue-point separated by a semi-colon, e.g.
+ /// "www.variant2.com;5000".
+ ///
+ ADTS_PARSE_ERROR = 26,
+ /// Error splitting an AAC segment. The trigger for this error is the variant URL
+ /// and the cue-point separated by a semi-colon, e.g. "www.variant2.com;5000".
+ ///
+ AAC_SPLIT_ERROR = 27,
+ /// Error parsing an AAC file while splitting the content. The trigger for this
+ /// error is the variant URL and the cue-point separated by a semi-colon, e.g.
+ /// "www.variant2.com;5000".
+ ///
+ AAC_PARSE_ERROR = 28,
+ /// Error parsing a TS file while splitting the content. The trigger for this error
+ /// is the variant URL and the cue-point separated by a semi-colon, e.g.
+ /// "www.variant2.com;5000".
+ ///
+ TS_PARSE_ERROR = 29,
+ /// Error splitting a TS file while splitting the content. The trigger for this
+ /// error is the variant URL and the cue-point separated by a semi-colon, e.g.
+ /// "www.variant2.com;5000".
+ ///
+ TS_SPLIT_ERROR = 30,
+ /// Encountered an unsupported container format while splitting the content. The
+ /// trigger for this error is the variant URL and the cue-point separated by a
+ /// semi-colon, e.g. "www.variant2.com;5000".
+ ///
+ UNSUPPORTED_CONTAINER_FORMAT = 31,
+ /// Encountered multiple elementary streams of the same media type (audio, video)
+ /// within a transport stream. The trigger for this error is the variant URL and the
+ /// cue-point separated by a semi-colon, e.g. "www.variant2.com;5000".
+ ///
+ MULTIPLE_ELEMENTARY_STREAMS_OF_SAME_MEDIA_TYPE_IN_TS = 40,
+ /// Encountered an unsupported TS media format while splitting the content. The
+ /// trigger for this error is the variant URL and the cue-point separated by a
+ /// semi-colon, e.g. "www.variant2.com;5000".
+ ///
+ UNSUPPORTED_TS_MEDIA_FORMAT = 32,
+ /// Error splitting because there were no i-frames near the target split point. The
+ /// trigger for this error is the variant URL and the cue-point separated by a
+ /// semi-colon, e.g. "www.variant2.com;5000".
+ ///
+ NO_IFRAMES_NEAR_CUE_POINT = 33,
+ /// Error splitting an AC-3 segment. The trigger for this error is the variant URL
+ /// and the cue-point separated by a semi-colon, e.g. "www.variant2.com;5000".
+ ///
+ AC3_SPLIT_ERROR = 35,
+ /// Error parsing an AC-3 file while splitting the content. The trigger for this
+ /// error is the variant URL and the cue-point separated by a semi-colon, e.g.
+ /// "www.variant2.com;5000".
+ ///
+ AC3_PARSE_ERROR = 36,
+ /// Error splitting an E-AC-3 segment. The trigger for this error is the variant URL
+ /// and the cue-point separated by a semi-colon, e.g. "www.variant2.com;5000".
+ ///
+ EAC3_SPLIT_ERROR = 37,
+ /// Error caused by an invalid encryption key. The trigger for this error is a media
+ /// playlist URL within the publisher's HLS playlist that has the invalid encryption
+ /// key.
+ ///
+ INVALID_ENCRYPTION_KEY = 38,
+ /// Error parsing an E-AC-3 file while splitting the content. The trigger for this
+ /// error is the variant URL and the cue-point separated by a semi-colon, e.g.
+ /// "www.variant2.com;5000".
+ ///
+ EAC3_PARSE_ERROR = 39,
+ /// The value returned if the actual value is not exposed by the requested API
+ /// version.
+ ///
+ UNKNOWN = 34,
+ }
+
+
+ /// A Content represents video metadata from a publisher's Content
+ /// Management System (CMS) that has been synced to Ad Manager.
Video line items
+ /// can be targeted to Content to indicate what ads should match when
+ /// the Content is being played.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class ContentBundle {
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class Content {
private long idField;
private bool idFieldSpecified;
private string nameField;
- private ContentBundleStatus statusField;
+ private ContentStatus statusField;
private bool statusFieldSpecified;
- /// ID that uniquely identifies the ContentBundle. This attribute is
- /// read-only and is assigned by Google when a content bundle is created.
+ private ContentStatusDefinedBy statusDefinedByField;
+
+ private bool statusDefinedByFieldSpecified;
+
+ private DaiIngestStatus hlsIngestStatusField;
+
+ private bool hlsIngestStatusFieldSpecified;
+
+ private DaiIngestError[] hlsIngestErrorsField;
+
+ private DateTime lastHlsIngestDateTimeField;
+
+ private DaiIngestStatus dashIngestStatusField;
+
+ private bool dashIngestStatusFieldSpecified;
+
+ private DaiIngestError[] dashIngestErrorsField;
+
+ private DateTime lastDashIngestDateTimeField;
+
+ private DateTime importDateTimeField;
+
+ private DateTime lastModifiedDateTimeField;
+
+ private long[] userDefinedCustomTargetingValueIdsField;
+
+ private long[] mappingRuleDefinedCustomTargetingValueIdsField;
+
+ private CmsContent[] cmsSourcesField;
+
+ /// Uniquely identifies the Content. This attribute is read-only and is
+ /// assigned by Google when the content is created.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
public long id {
@@ -2704,8 +2948,7 @@ public bool idSpecified {
}
}
- /// The name of the ContentBundle. This attribute is required and has a
- /// maximum length of 255 characters.
+ /// The name of the Content. This attribute is read-only.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 1)]
public string name {
@@ -2717,12 +2960,10 @@ public string name {
}
}
- /// The ContentBundleStatus of the
- /// ContentBundle. This attribute is read-only and defaults to ContentBundleStatus#INACTIVE.
+ /// The status of this Content. This attribute is read-only.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 2)]
- public ContentBundleStatus status {
+ public ContentStatus status {
get {
return this.statusField;
}
@@ -2744,258 +2985,288 @@ public bool statusSpecified {
this.statusFieldSpecified = value;
}
}
- }
-
- /// Status for ContentBundle objects.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum ContentBundleStatus {
- /// The object is active and stats are collected.
- ///
- ACTIVE = 0,
- /// The object is no longer active and no stats collected.
- ///
- INACTIVE = 1,
- /// The object has been archived.
+ /// Whether the content status was defined by the user, or by the source CMS from
+ /// which the content was ingested. This attribute is read-only.
///
- ARCHIVED = 2,
- }
-
-
- /// Encapsulates the generic errors thrown when there's an error with user request.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class RequestError : ApiError {
- private RequestErrorReason reasonField;
-
- private bool reasonFieldSpecified;
-
- [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public RequestErrorReason reason {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 3)]
+ public ContentStatusDefinedBy statusDefinedBy {
get {
- return this.reasonField;
+ return this.statusDefinedByField;
}
set {
- this.reasonField = value;
- this.reasonSpecified = true;
+ this.statusDefinedByField = value;
+ this.statusDefinedBySpecified = true;
}
}
- /// true, if a value is specified for ,
- /// false otherwise.
+ /// true, if a value is specified for , false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool reasonSpecified {
+ public bool statusDefinedBySpecified {
get {
- return this.reasonFieldSpecified;
+ return this.statusDefinedByFieldSpecified;
}
set {
- this.reasonFieldSpecified = value;
+ this.statusDefinedByFieldSpecified = value;
}
}
- }
-
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "RequestError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum RequestErrorReason {
- /// Error reason is unknown.
- ///
- UNKNOWN = 0,
- /// Invalid input.
- ///
- INVALID_INPUT = 1,
- /// The api version in the request has been discontinued. Please update to the new
- /// AdWords API version.
+ /// The current DAI ingest status of the HLS media for the . This
+ /// attribute is read-only and is null if the content is not eligible for dynamic ad
+ /// insertion or if the content does not have HLS media.
///
- UNSUPPORTED_VERSION = 2,
- }
+ [System.Xml.Serialization.XmlElementAttribute(Order = 4)]
+ public DaiIngestStatus hlsIngestStatus {
+ get {
+ return this.hlsIngestStatusField;
+ }
+ set {
+ this.hlsIngestStatusField = value;
+ this.hlsIngestStatusSpecified = true;
+ }
+ }
+ /// true, if a value is specified for , false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool hlsIngestStatusSpecified {
+ get {
+ return this.hlsIngestStatusFieldSpecified;
+ }
+ set {
+ this.hlsIngestStatusFieldSpecified = value;
+ }
+ }
- /// Class defining all validation errors for a placement.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class PlacementError : ApiError {
- private PlacementErrorReason reasonField;
+ /// The list of any errors that occurred during the most recent DAI ingestion
+ /// process of the HLS media. This attribute is read-only and will be null if the #hlsIngestStatus is DaiIngestStatus#STATUS_SUCCESS or if the content is not eligible for
+ /// dynamic ad insertion or if the content does not have HLS media.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute("hlsIngestErrors", Order = 5)]
+ public DaiIngestError[] hlsIngestErrors {
+ get {
+ return this.hlsIngestErrorsField;
+ }
+ set {
+ this.hlsIngestErrorsField = value;
+ }
+ }
- private bool reasonFieldSpecified;
+ /// The date and time at which this content's HLS media was last ingested for DAI.
+ /// This attribute is read-only and will be null if the content is not eligible for
+ /// dynamic ad insertion or if the content does not have HLS media.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 6)]
+ public DateTime lastHlsIngestDateTime {
+ get {
+ return this.lastHlsIngestDateTimeField;
+ }
+ set {
+ this.lastHlsIngestDateTimeField = value;
+ }
+ }
- [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public PlacementErrorReason reason {
+ /// The current DAI ingest status of the DASH media for the . This
+ /// attribute is read-only and is null if the content is not eligible for dynamic ad
+ /// insertion or if the content does not have DASH media.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 7)]
+ public DaiIngestStatus dashIngestStatus {
get {
- return this.reasonField;
+ return this.dashIngestStatusField;
}
set {
- this.reasonField = value;
- this.reasonSpecified = true;
+ this.dashIngestStatusField = value;
+ this.dashIngestStatusSpecified = true;
}
}
- /// true, if a value is specified for ,
- /// false otherwise.
+ /// true, if a value is specified for , false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool reasonSpecified {
+ public bool dashIngestStatusSpecified {
get {
- return this.reasonFieldSpecified;
+ return this.dashIngestStatusFieldSpecified;
}
set {
- this.reasonFieldSpecified = value;
+ this.dashIngestStatusFieldSpecified = value;
}
}
- }
-
- /// Possible reasons for the error.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "PlacementError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum PlacementErrorReason {
- /// Entity type is something other than inventory or content.
- ///
- INVALID_ENTITY_TYPE = 0,
- /// Shared inventory cannot be assigned to a placement.
- ///
- SHARED_INVENTORY_ASSIGNED = 1,
- /// Shared inventory from one distributor network cannot be in the same placement
- /// with inventory from another distributor.
- ///
- PLACEMENTS_CANNOT_INCLUDE_INVENTORY_FROM_MULTIPLE_DISTRIBUTOR_NETWORKS = 2,
- /// Shared inventory and local inventory cannot be in the same placement.
+ /// The list of any errors that occurred during the most recent DAI ingestion
+ /// process of the DASH media. This attribute is read-only and will be null if the
+ /// #hlsIngestStatus is DaiIngestStatus#STATUS_SUCCESS or if the content is not eligible for
+ /// dynamic ad insertion or if the content does not have DASH media.
///
- PLACEMENTS_CANNOT_INCLUDE_BOTH_LOCAL_AND_SHARED_INVENTORY = 3,
- /// The value returned if the actual value is not exposed by the requested API
- /// version.
+ [System.Xml.Serialization.XmlElementAttribute("dashIngestErrors", Order = 8)]
+ public DaiIngestError[] dashIngestErrors {
+ get {
+ return this.dashIngestErrorsField;
+ }
+ set {
+ this.dashIngestErrorsField = value;
+ }
+ }
+
+ /// The date and time at which this content's DASH media was last ingested for DAI.
+ /// This attribute is read-only and will be null if the content is not eligible for
+ /// dynamic ad insertion or if the content does not have DASH media.
///
- UNKNOWN = 4,
- }
+ [System.Xml.Serialization.XmlElementAttribute(Order = 9)]
+ public DateTime lastDashIngestDateTime {
+ get {
+ return this.lastDashIngestDateTimeField;
+ }
+ set {
+ this.lastDashIngestDateTimeField = value;
+ }
+ }
+ /// The date and time at which this content was published. This attribute is
+ /// read-only.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 10)]
+ public DateTime importDateTime {
+ get {
+ return this.importDateTimeField;
+ }
+ set {
+ this.importDateTimeField = value;
+ }
+ }
- /// Errors associated with the incorrect creation of a Condition.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class ContentFilterError : ApiError {
- private ContentFilterErrorReason reasonField;
+ /// The date and time at which this content was last modified. This attribute is
+ /// read-only.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 11)]
+ public DateTime lastModifiedDateTime {
+ get {
+ return this.lastModifiedDateTimeField;
+ }
+ set {
+ this.lastModifiedDateTimeField = value;
+ }
+ }
- private bool reasonFieldSpecified;
+ /// A collection of custom targeting value IDs manually assigned to this content by
+ /// the user. This attribute is optional.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute("userDefinedCustomTargetingValueIds", Order = 12)]
+ public long[] userDefinedCustomTargetingValueIds {
+ get {
+ return this.userDefinedCustomTargetingValueIdsField;
+ }
+ set {
+ this.userDefinedCustomTargetingValueIdsField = value;
+ }
+ }
- [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public ContentFilterErrorReason reason {
+ /// A collection of custom targeting value IDs automatically targeted to this
+ /// content via metadata mapping rules. This attribute is read-only.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute("mappingRuleDefinedCustomTargetingValueIds", Order = 13)]
+ public long[] mappingRuleDefinedCustomTargetingValueIds {
get {
- return this.reasonField;
+ return this.mappingRuleDefinedCustomTargetingValueIdsField;
}
set {
- this.reasonField = value;
- this.reasonSpecified = true;
+ this.mappingRuleDefinedCustomTargetingValueIdsField = value;
}
}
- /// true, if a value is specified for ,
- /// false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool reasonSpecified {
+ /// Information about the content from the CMS it was ingested from. This attribute
+ /// is read-only.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute("cmsSources", Order = 14)]
+ public CmsContent[] cmsSources {
get {
- return this.reasonFieldSpecified;
+ return this.cmsSourcesField;
}
set {
- this.reasonFieldSpecified = value;
+ this.cmsSourcesField = value;
}
}
}
- /// The reasons for the ContentFilterError.
+ /// Describes the status of a Content object.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "ContentFilterError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum ContentFilterErrorReason {
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum ContentStatus {
+ /// Indicates the Content has been created and is eligible to
+ /// have ads served against it.
+ ///
+ ACTIVE = 0,
+ /// Indicates the Content has been deactivated and cannot have
+ /// ads served against it.
+ ///
+ INACTIVE = 1,
+ /// Indicates the Content has been archived; user-visible.
+ ///
+ ARCHIVED = 2,
/// The value returned if the actual value is not exposed by the requested API
/// version.
///
- UNKNOWN = 0,
- WRONG_NUMBER_OF_ARGUMENTS = 1,
- ANY_FILTER_NOT_SUPPORTED = 2,
+ UNKNOWN = 3,
}
- [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
- [System.ServiceModel.ServiceContractAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808", ConfigurationName = "Google.Api.Ads.AdManager.v201808.ContentBundleServiceInterface")]
- public interface ContentBundleServiceInterface
- {
- // CODEGEN: Parameter 'rval' requires additional schema information that cannot be captured using the parameter mode. The specific attribute is 'System.Xml.Serialization.XmlElementAttribute'.
- [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
- [System.ServiceModel.FaultContractAttribute(typeof(Google.Api.Ads.AdManager.v201808.ApiException), Action = "", Name = "ApiExceptionFault")]
- [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults = true)]
- [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApplicationException))]
- [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
- Wrappers.ContentBundleService.createContentBundlesResponse createContentBundles(Wrappers.ContentBundleService.createContentBundlesRequest request);
-
- [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
- System.Threading.Tasks.Task createContentBundlesAsync(Wrappers.ContentBundleService.createContentBundlesRequest request);
-
- [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
- [System.ServiceModel.FaultContractAttribute(typeof(Google.Api.Ads.AdManager.v201808.ApiException), Action = "", Name = "ApiExceptionFault")]
- [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults = true)]
- [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApplicationException))]
- [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
- Google.Api.Ads.AdManager.v201808.ContentBundlePage getContentBundlesByStatement(Google.Api.Ads.AdManager.v201808.Statement filterStatement);
-
- [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
- [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
- System.Threading.Tasks.Task getContentBundlesByStatementAsync(Google.Api.Ads.AdManager.v201808.Statement filterStatement);
-
- [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
- [System.ServiceModel.FaultContractAttribute(typeof(Google.Api.Ads.AdManager.v201808.ApiException), Action = "", Name = "ApiExceptionFault")]
- [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults = true)]
- [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApplicationException))]
- [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
- Google.Api.Ads.AdManager.v201808.UpdateResult performContentBundleAction(Google.Api.Ads.AdManager.v201808.ContentBundleAction contentBundleAction, Google.Api.Ads.AdManager.v201808.Statement filterStatement);
-
- [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
- [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
- System.Threading.Tasks.Task performContentBundleActionAsync(Google.Api.Ads.AdManager.v201808.ContentBundleAction contentBundleAction, Google.Api.Ads.AdManager.v201808.Statement filterStatement);
+ /// Describes who defined the effective status of the Content.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum ContentStatusDefinedBy {
+ /// Indicates that the status of the Content is defined by the CMS.
+ ///
+ CMS = 0,
+ /// Indicates that the status of the Content is defined by the user.
+ ///
+ USER = 1,
+ }
- // CODEGEN: Parameter 'rval' requires additional schema information that cannot be captured using the parameter mode. The specific attribute is 'System.Xml.Serialization.XmlElementAttribute'.
- [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
- [System.ServiceModel.FaultContractAttribute(typeof(Google.Api.Ads.AdManager.v201808.ApiException), Action = "", Name = "ApiExceptionFault")]
- [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults = true)]
- [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApplicationException))]
- [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
- Wrappers.ContentBundleService.updateContentBundlesResponse updateContentBundles(Wrappers.ContentBundleService.updateContentBundlesRequest request);
- [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
- System.Threading.Tasks.Task updateContentBundlesAsync(Wrappers.ContentBundleService.updateContentBundlesRequest request);
+ /// The status of the DAI ingestion process. Only content with a status of #SUCCESS will be available for dynamic ad insertion.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum DaiIngestStatus {
+ /// The content was successfully ingested for DAI.
+ ///
+ SUCCESS = 0,
+ /// There was a non-fatal issue during the DAI ingestion proccess.
+ ///
+ WARNING = 1,
+ /// There was a non-fatal issue during the DAI ingestion proccess and the content is
+ /// not available for dynamic ad insertion.
+ ///
+ FAILURE = 2,
+ /// The value returned if the actual value is not exposed by the requested API
+ /// version.
+ ///
+ UNKNOWN = 3,
}
- /// Captures a page of ContentBundle objects.
+ /// Captures a page of Content objects.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class ContentBundlePage {
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class ContentPage {
private int totalResultSetSizeField;
private bool totalResultSetSizeFieldSpecified;
@@ -3004,7 +3275,7 @@ public partial class ContentBundlePage {
private bool startIndexFieldSpecified;
- private ContentBundle[] resultsField;
+ private Content[] resultsField;
/// The size of the total result set to which this page belongs.
///
@@ -3058,10 +3329,10 @@ public bool startIndexSpecified {
}
}
- /// The collection of content bundles contained within this page.
+ /// The collection of content contained within this page.
///
[System.Xml.Serialization.XmlElementAttribute("results", Order = 2)]
- public ContentBundle[] results {
+ public Content[] results {
get {
return this.resultsField;
}
@@ -3072,266 +3343,288 @@ public ContentBundle[] results {
}
- /// Represents the actions that can be performed on ContentBundle objects.
+ /// An error for a field which is an invalid type.
///
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(ExcludeContentFromContentBundle))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(DeactivateContentBundles))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(ActivateContentBundles))]
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public abstract partial class ContentBundleAction {
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class TypeError : ApiError {
}
- /// The action used for explicitly excluding specific content from a ContentBundle object.
+ /// A list of all errors to be used in conjunction with required number validators.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class ExcludeContentFromContentBundle : ContentBundleAction {
- private Statement contentStatementField;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class RequiredNumberError : ApiError {
+ private RequiredNumberErrorReason reasonField;
+
+ private bool reasonFieldSpecified;
- /// The Publisher Query Language statement specifying which Content to exclude from the ContentBundle. The statement is expressed in terms of
- /// Content fields such as name and status.
- ///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public Statement contentStatement {
+ public RequiredNumberErrorReason reason {
get {
- return this.contentStatementField;
+ return this.reasonField;
}
set {
- this.contentStatementField = value;
+ this.reasonField = value;
+ this.reasonSpecified = true;
}
}
- }
-
- /// The action used for deactivating ContentBundle
- /// objects.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class DeactivateContentBundles : ContentBundleAction {
+ /// true, if a value is specified for ,
+ /// false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool reasonSpecified {
+ get {
+ return this.reasonFieldSpecified;
+ }
+ set {
+ this.reasonFieldSpecified = value;
+ }
+ }
}
- /// The action used for activating ContentBundle
- /// objects.
+ /// Describes reasons for a number to be invalid.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class ActivateContentBundles : ContentBundleAction {
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "RequiredNumberError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum RequiredNumberErrorReason {
+ REQUIRED = 0,
+ TOO_LARGE = 1,
+ TOO_SMALL = 2,
+ TOO_LARGE_WITH_DETAILS = 3,
+ TOO_SMALL_WITH_DETAILS = 4,
+ /// The value returned if the actual value is not exposed by the requested API
+ /// version.
+ ///
+ UNKNOWN = 5,
}
- /// Represents the result of performing an action on objects.
+ /// Lists all errors associated with URLs.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class UpdateResult {
- private int numChangesField;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class InvalidUrlError : ApiError {
+ private InvalidUrlErrorReason reasonField;
- private bool numChangesFieldSpecified;
+ private bool reasonFieldSpecified;
- /// The number of objects that were changed as a result of performing the action.
- ///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public int numChanges {
+ public InvalidUrlErrorReason reason {
get {
- return this.numChangesField;
+ return this.reasonField;
}
set {
- this.numChangesField = value;
- this.numChangesSpecified = true;
+ this.reasonField = value;
+ this.reasonSpecified = true;
}
}
- /// true, if a value is specified for , false otherwise.
+ /// true, if a value is specified for ,
+ /// false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool numChangesSpecified {
+ public bool reasonSpecified {
get {
- return this.numChangesFieldSpecified;
+ return this.reasonFieldSpecified;
}
set {
- this.numChangesFieldSpecified = value;
+ this.reasonFieldSpecified = value;
}
}
}
- [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
- public interface ContentBundleServiceInterfaceChannel : Google.Api.Ads.AdManager.v201808.ContentBundleServiceInterface, System.ServiceModel.IClientChannel
- {
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "InvalidUrlError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum InvalidUrlErrorReason {
+ /// The URL contains invalid characters.
+ ///
+ ILLEGAL_CHARACTERS = 0,
+ /// The format of the URL is not allowed. This could occur for a number of reasons.
+ /// For example, if an invalid scheme is specified (like "ftp://") or if a port is
+ /// specified when not required, or if a query was specified when not required.
+ ///
+ INVALID_FORMAT = 1,
+ /// URL contains insecure scheme.
+ ///
+ INSECURE_SCHEME = 2,
+ /// The URL does not contain a scheme.
+ ///
+ NO_SCHEME = 3,
+ /// The value returned if the actual value is not exposed by the requested API
+ /// version.
+ ///
+ UNKNOWN = 4,
}
- /// Provides methods for creating, updating and retrieving ContentBundle objects.
A ContentBundle
- /// is a grouping of Content that match filter rules as well
- /// as taking into account explicitly included or excluded Content.
- ///
- [System.Diagnostics.DebuggerStepThroughAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
- public partial class ContentBundleService : AdManagerSoapClient, IContentBundleService {
- /// Creates a new instance of the
- /// class.
- public ContentBundleService() {
- }
-
- /// Creates a new instance of the
- /// class.
- public ContentBundleService(string endpointConfigurationName)
- : base(endpointConfigurationName) {
- }
+ [System.ServiceModel.ServiceContractAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908", ConfigurationName = "Google.Api.Ads.AdManager.v201908.ContentServiceInterface")]
+ public interface ContentServiceInterface
+ {
+ [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
+ [System.ServiceModel.FaultContractAttribute(typeof(Google.Api.Ads.AdManager.v201908.ApiException), Action = "", Name = "ApiExceptionFault")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults = true)]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApplicationException))]
+ [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
+ Google.Api.Ads.AdManager.v201908.ContentPage getContentByStatement(Google.Api.Ads.AdManager.v201908.Statement statement);
- /// Creates a new instance of the
- /// class.
- public ContentBundleService(string endpointConfigurationName, string remoteAddress)
- : base(endpointConfigurationName, remoteAddress) {
- }
+ [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
+ [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
+ System.Threading.Tasks.Task getContentByStatementAsync(Google.Api.Ads.AdManager.v201908.Statement statement);
- /// Creates a new instance of the
- /// class.
- public ContentBundleService(string endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress)
- : base(endpointConfigurationName, remoteAddress) {
- }
+ [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
+ [System.ServiceModel.FaultContractAttribute(typeof(Google.Api.Ads.AdManager.v201908.ApiException), Action = "", Name = "ApiExceptionFault")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults = true)]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApplicationException))]
+ [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
+ Google.Api.Ads.AdManager.v201908.ContentPage getContentByStatementAndCustomTargetingValue(Google.Api.Ads.AdManager.v201908.Statement filterStatement, long customTargetingValueId);
- /// Creates a new instance of the
- /// class.
- public ContentBundleService(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress)
- : base(binding, remoteAddress) {
- }
+ [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
+ [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
+ System.Threading.Tasks.Task getContentByStatementAndCustomTargetingValueAsync(Google.Api.Ads.AdManager.v201908.Statement filterStatement, long customTargetingValueId);
+ }
- [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
- Wrappers.ContentBundleService.createContentBundlesResponse Google.Api.Ads.AdManager.v201808.ContentBundleServiceInterface.createContentBundles(Wrappers.ContentBundleService.createContentBundlesRequest request) {
- return base.Channel.createContentBundles(request);
- }
- /// Creates new ContentBundle objects.
- /// the content bundles to create
- /// the created content bundles with their IDs filled in
- public virtual Google.Api.Ads.AdManager.v201808.ContentBundle[] createContentBundles(Google.Api.Ads.AdManager.v201808.ContentBundle[] contentBundles) {
- Wrappers.ContentBundleService.createContentBundlesRequest inValue = new Wrappers.ContentBundleService.createContentBundlesRequest();
- inValue.contentBundles = contentBundles;
- Wrappers.ContentBundleService.createContentBundlesResponse retVal = ((Google.Api.Ads.AdManager.v201808.ContentBundleServiceInterface)(this)).createContentBundles(inValue);
- return retVal.rval;
- }
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
+ public interface ContentServiceInterfaceChannel : Google.Api.Ads.AdManager.v201908.ContentServiceInterface, System.ServiceModel.IClientChannel
+ {
+ }
- [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
- System.Threading.Tasks.Task Google.Api.Ads.AdManager.v201808.ContentBundleServiceInterface.createContentBundlesAsync(Wrappers.ContentBundleService.createContentBundlesRequest request) {
- return base.Channel.createContentBundlesAsync(request);
- }
- public virtual System.Threading.Tasks.Task createContentBundlesAsync(Google.Api.Ads.AdManager.v201808.ContentBundle[] contentBundles) {
- Wrappers.ContentBundleService.createContentBundlesRequest inValue = new Wrappers.ContentBundleService.createContentBundlesRequest();
- inValue.contentBundles = contentBundles;
- return System.Threading.Tasks.Task.Factory.StartNew(() => (((Google.Api.Ads.AdManager.v201808.ContentBundleServiceInterface)(this)).createContentBundlesAsync(inValue)).Result.rval);
+ /// Service for retrieving Content.
Content
+ /// entities can be targeted in video LineItems.
You
+ /// can query for content that belongs to a particular category or has assigned
+ /// metadata. Categories and metadata for are stored in DFP as CustomCriteria.
For example, to find all
+ /// Content that is "genre=comedy", you would:
+ ///
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
+ public partial class ContentService : AdManagerSoapClient, IContentService {
+ /// Creates a new instance of the class.
+ ///
+ public ContentService() {
}
- /// Gets a ContentBundlePage of ContentBundle objects that satisfy the given Statement#query. The following fields are supported
- /// for filtering:
- /// a Publisher Query Language statement used to
- /// filter a set of content bundles
- /// the content bundles that match the given filter
- public virtual Google.Api.Ads.AdManager.v201808.ContentBundlePage getContentBundlesByStatement(Google.Api.Ads.AdManager.v201808.Statement filterStatement) {
- return base.Channel.getContentBundlesByStatement(filterStatement);
+ /// Creates a new instance of the class.
+ ///
+ public ContentService(string endpointConfigurationName)
+ : base(endpointConfigurationName) {
}
- public virtual System.Threading.Tasks.Task getContentBundlesByStatementAsync(Google.Api.Ads.AdManager.v201808.Statement filterStatement) {
- return base.Channel.getContentBundlesByStatementAsync(filterStatement);
+ /// Creates a new instance of the class.
+ ///
+ public ContentService(string endpointConfigurationName, string remoteAddress)
+ : base(endpointConfigurationName, remoteAddress) {
}
- /// Performs actions on ContentBundle objects that match
- /// the given Statement#query.
- /// the action to perform
- /// a Publisher Query Language statement used to
- /// filter a set of content bundles
- /// the result of the action performed
- public virtual Google.Api.Ads.AdManager.v201808.UpdateResult performContentBundleAction(Google.Api.Ads.AdManager.v201808.ContentBundleAction contentBundleAction, Google.Api.Ads.AdManager.v201808.Statement filterStatement) {
- return base.Channel.performContentBundleAction(contentBundleAction, filterStatement);
+ /// Creates a new instance of the class.
+ ///
+ public ContentService(string endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress)
+ : base(endpointConfigurationName, remoteAddress) {
}
- public virtual System.Threading.Tasks.Task performContentBundleActionAsync(Google.Api.Ads.AdManager.v201808.ContentBundleAction contentBundleAction, Google.Api.Ads.AdManager.v201808.Statement filterStatement) {
- return base.Channel.performContentBundleActionAsync(contentBundleAction, filterStatement);
+ /// Creates a new instance of the class.
+ ///
+ public ContentService(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress)
+ : base(binding, remoteAddress) {
}
- [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
- Wrappers.ContentBundleService.updateContentBundlesResponse Google.Api.Ads.AdManager.v201808.ContentBundleServiceInterface.updateContentBundles(Wrappers.ContentBundleService.updateContentBundlesRequest request) {
- return base.Channel.updateContentBundles(request);
+ /// Gets a ContentPage of Content
+ /// objects that satisfy the given Statement#query. The following
+ /// fields are supported for filtering:
+ /// a Publisher Query Language statement used to filter a
+ /// set of content
+ /// the content that matches the given filter
+ public virtual Google.Api.Ads.AdManager.v201908.ContentPage getContentByStatement(Google.Api.Ads.AdManager.v201908.Statement statement) {
+ return base.Channel.getContentByStatement(statement);
}
- /// Updates the specified ContentBundle objects.
- /// the content bundles to update
- /// the updated content bundles
- public virtual Google.Api.Ads.AdManager.v201808.ContentBundle[] updateContentBundles(Google.Api.Ads.AdManager.v201808.ContentBundle[] contentBundles) {
- Wrappers.ContentBundleService.updateContentBundlesRequest inValue = new Wrappers.ContentBundleService.updateContentBundlesRequest();
- inValue.contentBundles = contentBundles;
- Wrappers.ContentBundleService.updateContentBundlesResponse retVal = ((Google.Api.Ads.AdManager.v201808.ContentBundleServiceInterface)(this)).updateContentBundles(inValue);
- return retVal.rval;
+ public virtual System.Threading.Tasks.Task getContentByStatementAsync(Google.Api.Ads.AdManager.v201908.Statement statement) {
+ return base.Channel.getContentByStatementAsync(statement);
}
- [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
- System.Threading.Tasks.Task Google.Api.Ads.AdManager.v201808.ContentBundleServiceInterface.updateContentBundlesAsync(Wrappers.ContentBundleService.updateContentBundlesRequest request) {
- return base.Channel.updateContentBundlesAsync(request);
+ /// Gets a ContentPage of Content
+ /// objects that satisfy the given Statement#query.
+ /// Additionally, filters on the given value ID and key ID that the value belongs
+ /// to. The following fields are supported for filtering:
+ /// a Publisher Query Language statement used to
+ /// filter a set of content
+ /// the id of the value to match
+ /// the content that matches the given filter
+ public virtual Google.Api.Ads.AdManager.v201908.ContentPage getContentByStatementAndCustomTargetingValue(Google.Api.Ads.AdManager.v201908.Statement filterStatement, long customTargetingValueId) {
+ return base.Channel.getContentByStatementAndCustomTargetingValue(filterStatement, customTargetingValueId);
}
- public virtual System.Threading.Tasks.Task updateContentBundlesAsync(Google.Api.Ads.AdManager.v201808.ContentBundle[] contentBundles) {
- Wrappers.ContentBundleService.updateContentBundlesRequest inValue = new Wrappers.ContentBundleService.updateContentBundlesRequest();
- inValue.contentBundles = contentBundles;
- return System.Threading.Tasks.Task.Factory.StartNew(() => (((Google.Api.Ads.AdManager.v201808.ContentBundleServiceInterface)(this)).updateContentBundlesAsync(inValue)).Result.rval);
+ public virtual System.Threading.Tasks.Task getContentByStatementAndCustomTargetingValueAsync(Google.Api.Ads.AdManager.v201908.Statement filterStatement, long customTargetingValueId) {
+ return base.Channel.getContentByStatementAndCustomTargetingValueAsync(filterStatement, customTargetingValueId);
}
}
- namespace Wrappers.ContentMetadataKeyHierarchyService
+ namespace Wrappers.CreativeService
{
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
- [System.ServiceModel.MessageContractAttribute(WrapperName = "createContentMetadataKeyHierarchies", WrapperNamespace = "https://www.google.com/apis/ads/publisher/v201808", IsWrapped = true)]
- public partial class createContentMetadataKeyHierarchiesRequest {
- [System.ServiceModel.MessageBodyMemberAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808", Order = 0)]
- [System.Xml.Serialization.XmlElementAttribute("contentMetadataKeyHierarchies")]
- public Google.Api.Ads.AdManager.v201808.ContentMetadataKeyHierarchy[] contentMetadataKeyHierarchies;
+ [System.ServiceModel.MessageContractAttribute(WrapperName = "createCreatives", WrapperNamespace = "https://www.google.com/apis/ads/publisher/v201908", IsWrapped = true)]
+ public partial class createCreativesRequest {
+ [System.ServiceModel.MessageBodyMemberAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908", Order = 0)]
+ [System.Xml.Serialization.XmlElementAttribute("creatives")]
+ public Google.Api.Ads.AdManager.v201908.Creative[] creatives;
- /// Creates a new instance of the class.
- public createContentMetadataKeyHierarchiesRequest() {
+ /// Creates a new instance of the
+ /// class.
+ public createCreativesRequest() {
}
- /// Creates a new instance of the class.
- public createContentMetadataKeyHierarchiesRequest(Google.Api.Ads.AdManager.v201808.ContentMetadataKeyHierarchy[] contentMetadataKeyHierarchies) {
- this.contentMetadataKeyHierarchies = contentMetadataKeyHierarchies;
+ /// Creates a new instance of the
+ /// class.
+ public createCreativesRequest(Google.Api.Ads.AdManager.v201908.Creative[] creatives) {
+ this.creatives = creatives;
}
}
@@ -3339,20 +3632,20 @@ public createContentMetadataKeyHierarchiesRequest(Google.Api.Ads.AdManager.v2018
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
- [System.ServiceModel.MessageContractAttribute(WrapperName = "createContentMetadataKeyHierarchiesResponse", WrapperNamespace = "https://www.google.com/apis/ads/publisher/v201808", IsWrapped = true)]
- public partial class createContentMetadataKeyHierarchiesResponse {
- [System.ServiceModel.MessageBodyMemberAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808", Order = 0)]
+ [System.ServiceModel.MessageContractAttribute(WrapperName = "createCreativesResponse", WrapperNamespace = "https://www.google.com/apis/ads/publisher/v201908", IsWrapped = true)]
+ public partial class createCreativesResponse {
+ [System.ServiceModel.MessageBodyMemberAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908", Order = 0)]
[System.Xml.Serialization.XmlElementAttribute("rval")]
- public Google.Api.Ads.AdManager.v201808.ContentMetadataKeyHierarchy[] rval;
+ public Google.Api.Ads.AdManager.v201908.Creative[] rval;
- /// Creates a new instance of the class.
- public createContentMetadataKeyHierarchiesResponse() {
+ /// Creates a new instance of the
+ /// class.
+ public createCreativesResponse() {
}
- /// Creates a new instance of the class.
- public createContentMetadataKeyHierarchiesResponse(Google.Api.Ads.AdManager.v201808.ContentMetadataKeyHierarchy[] rval) {
+ /// Creates a new instance of the
+ /// class.
+ public createCreativesResponse(Google.Api.Ads.AdManager.v201908.Creative[] rval) {
this.rval = rval;
}
}
@@ -3361,21 +3654,21 @@ public createContentMetadataKeyHierarchiesResponse(Google.Api.Ads.AdManager.v201
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
- [System.ServiceModel.MessageContractAttribute(WrapperName = "updateContentMetadataKeyHierarchies", WrapperNamespace = "https://www.google.com/apis/ads/publisher/v201808", IsWrapped = true)]
- public partial class updateContentMetadataKeyHierarchiesRequest {
- [System.ServiceModel.MessageBodyMemberAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808", Order = 0)]
- [System.Xml.Serialization.XmlElementAttribute("contentMetadataKeyHierarchies")]
- public Google.Api.Ads.AdManager.v201808.ContentMetadataKeyHierarchy[] contentMetadataKeyHierarchies;
+ [System.ServiceModel.MessageContractAttribute(WrapperName = "updateCreatives", WrapperNamespace = "https://www.google.com/apis/ads/publisher/v201908", IsWrapped = true)]
+ public partial class updateCreativesRequest {
+ [System.ServiceModel.MessageBodyMemberAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908", Order = 0)]
+ [System.Xml.Serialization.XmlElementAttribute("creatives")]
+ public Google.Api.Ads.AdManager.v201908.Creative[] creatives;
- /// Creates a new instance of the class.
- public updateContentMetadataKeyHierarchiesRequest() {
+ /// Creates a new instance of the
+ /// class.
+ public updateCreativesRequest() {
}
- /// Creates a new instance of the class.
- public updateContentMetadataKeyHierarchiesRequest(Google.Api.Ads.AdManager.v201808.ContentMetadataKeyHierarchy[] contentMetadataKeyHierarchies) {
- this.contentMetadataKeyHierarchies = contentMetadataKeyHierarchies;
+ /// Creates a new instance of the
+ /// class.
+ public updateCreativesRequest(Google.Api.Ads.AdManager.v201908.Creative[] creatives) {
+ this.creatives = creatives;
}
}
@@ -3383,3741 +3676,3234 @@ public updateContentMetadataKeyHierarchiesRequest(Google.Api.Ads.AdManager.v2018
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
- [System.ServiceModel.MessageContractAttribute(WrapperName = "updateContentMetadataKeyHierarchiesResponse", WrapperNamespace = "https://www.google.com/apis/ads/publisher/v201808", IsWrapped = true)]
- public partial class updateContentMetadataKeyHierarchiesResponse {
- [System.ServiceModel.MessageBodyMemberAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808", Order = 0)]
+ [System.ServiceModel.MessageContractAttribute(WrapperName = "updateCreativesResponse", WrapperNamespace = "https://www.google.com/apis/ads/publisher/v201908", IsWrapped = true)]
+ public partial class updateCreativesResponse {
+ [System.ServiceModel.MessageBodyMemberAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908", Order = 0)]
[System.Xml.Serialization.XmlElementAttribute("rval")]
- public Google.Api.Ads.AdManager.v201808.ContentMetadataKeyHierarchy[] rval;
+ public Google.Api.Ads.AdManager.v201908.Creative[] rval;
- /// Creates a new instance of the class.
- public updateContentMetadataKeyHierarchiesResponse() {
+ /// Creates a new instance of the
+ /// class.
+ public updateCreativesResponse() {
}
- /// Creates a new instance of the class.
- public updateContentMetadataKeyHierarchiesResponse(Google.Api.Ads.AdManager.v201808.ContentMetadataKeyHierarchy[] rval) {
+ /// Creates a new instance of the
+ /// class.
+ public updateCreativesResponse(Google.Api.Ads.AdManager.v201908.Creative[] rval) {
this.rval = rval;
}
}
}
- /// A ContentMetadataKeyHierarchyLevel represents one level in a ContentMetadataKeyHierarchy. The level consists of a CustomTargetingKey and an integer that represents
- /// the level's position in the hierarchy. This is deprecated and will be removed as
- /// of V201811.
+ /// A base class for storing values of the CreativeTemplateVariable.
///
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(UrlCreativeTemplateVariableValue))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(StringCreativeTemplateVariableValue))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(LongCreativeTemplateVariableValue))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(AssetCreativeTemplateVariableValue))]
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class ContentMetadataKeyHierarchyLevel {
- private long customTargetingKeyIdField;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public abstract partial class BaseCreativeTemplateVariableValue {
+ private string uniqueNameField;
- private bool customTargetingKeyIdFieldSpecified;
+ /// A uniqueName of the CreativeTemplateVariable.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
+ public string uniqueName {
+ get {
+ return this.uniqueNameField;
+ }
+ set {
+ this.uniqueNameField = value;
+ }
+ }
+ }
- private int hierarchyLevelField;
- private bool hierarchyLevelFieldSpecified;
+ /// Stores values of CreativeTemplateVariable
+ /// of VariableType#URL.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class UrlCreativeTemplateVariableValue : BaseCreativeTemplateVariableValue {
+ private string valueField;
- /// The ID of the CustomTargetingKey associated
- /// with this level of the hierarchy. This attribute is readonly.
+ /// The url value of CreativeTemplateVariable
///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public long customTargetingKeyId {
+ public string value {
get {
- return this.customTargetingKeyIdField;
+ return this.valueField;
}
set {
- this.customTargetingKeyIdField = value;
- this.customTargetingKeyIdSpecified = true;
+ this.valueField = value;
}
}
+ }
- /// true, if a value is specified for , false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool customTargetingKeyIdSpecified {
+
+ /// Stores values of CreativeTemplateVariable
+ /// of VariableType#STRING and VariableType#LIST.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class StringCreativeTemplateVariableValue : BaseCreativeTemplateVariableValue {
+ private string valueField;
+
+ /// The string value of CreativeTemplateVariable
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
+ public string value {
get {
- return this.customTargetingKeyIdFieldSpecified;
+ return this.valueField;
}
set {
- this.customTargetingKeyIdFieldSpecified = value;
+ this.valueField = value;
}
}
+ }
+
+
+ /// Stores values of CreativeTemplateVariable
+ /// of VariableType#LONG.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class LongCreativeTemplateVariableValue : BaseCreativeTemplateVariableValue {
+ private long valueField;
+
+ private bool valueFieldSpecified;
- /// This content metadata key's position in the hierarchy. This attribute is
- /// readonly and can range from 1 to N, where N is the number of the levels in the
- /// hierarchy.
+ /// The long value of CreativeTemplateVariable
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
- public int hierarchyLevel {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
+ public long value {
get {
- return this.hierarchyLevelField;
+ return this.valueField;
}
set {
- this.hierarchyLevelField = value;
- this.hierarchyLevelSpecified = true;
+ this.valueField = value;
+ this.valueSpecified = true;
}
}
- /// true, if a value is specified for , false otherwise.
+ /// true, if a value is specified for ,
+ /// false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool hierarchyLevelSpecified {
+ public bool valueSpecified {
get {
- return this.hierarchyLevelFieldSpecified;
+ return this.valueFieldSpecified;
}
set {
- this.hierarchyLevelFieldSpecified = value;
+ this.valueFieldSpecified = value;
}
}
}
- /// A ContentMetadataKeyHierarchy defines a hierarchical relationship
- /// between content metadata keys. This is deprecated and will be removed as of
- /// V201811.
+ /// Stores values of CreativeTemplateVariable
+ /// of VariableType#ASSET.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class ContentMetadataKeyHierarchy {
- private int idField;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class AssetCreativeTemplateVariableValue : BaseCreativeTemplateVariableValue {
+ private CreativeAsset assetField;
- private bool idFieldSpecified;
+ /// The associated asset. This attribute is required when creating a new
+ /// TemplateCreative. To view the asset, use CreativeAsset#assetUrl.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
+ public CreativeAsset asset {
+ get {
+ return this.assetField;
+ }
+ set {
+ this.assetField = value;
+ }
+ }
+ }
- private string nameField;
- private ContentMetadataKeyHierarchyLevel[] hierarchyLevelsField;
+ /// A CreativeAsset is an asset that can be used in creatives.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class CreativeAsset {
+ private long assetIdField;
+
+ private bool assetIdFieldSpecified;
+
+ private byte[] assetByteArrayField;
- private ContentMetadataKeyHierarchyStatus statusField;
+ private string fileNameField;
- private bool statusFieldSpecified;
+ private long fileSizeField;
+
+ private bool fileSizeFieldSpecified;
+
+ private string assetUrlField;
+
+ private Size sizeField;
+
+ private ClickTag[] clickTagsField;
+
+ private ImageDensity imageDensityField;
+
+ private bool imageDensityFieldSpecified;
- /// The unique ID of the ContentMetadataKeyHierarchy. This value is
- /// readonly and is assigned by Google.
+ /// The ID of the asset. This attribute is generated by Google upon creation.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public int id {
+ public long assetId {
get {
- return this.idField;
+ return this.assetIdField;
}
set {
- this.idField = value;
- this.idSpecified = true;
+ this.assetIdField = value;
+ this.assetIdSpecified = true;
}
}
- /// true, if a value is specified for ,
+ /// true, if a value is specified for ,
/// false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool idSpecified {
+ public bool assetIdSpecified {
get {
- return this.idFieldSpecified;
+ return this.assetIdFieldSpecified;
}
set {
- this.idFieldSpecified = value;
+ this.assetIdFieldSpecified = value;
}
}
- /// The unique name of the ContentMetadataKeyHierarchy. This attribute
- /// is readonly and has a maximum length of 255 characters.
+ /// The content of the asset as a byte array. This attribute is required when
+ /// creating the creative that contains this asset if an assetId is not
+ /// provided. When updating the content, pass a new byte array, and set
+ /// to null. Otherwise, this field can be null. The
+ /// assetByteArray will be null when the creative is
+ /// retrieved.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
- public string name {
+ [System.Xml.Serialization.XmlElementAttribute(DataType = "base64Binary", Order = 1)]
+ public byte[] assetByteArray {
get {
- return this.nameField;
+ return this.assetByteArrayField;
}
set {
- this.nameField = value;
+ this.assetByteArrayField = value;
}
}
- /// The levels of the ContentMetadataKeyHierarchy. This attribute is
- /// readonly and the hierarchy levels must form a continuous set of 1, 2, ..., N
- /// where N is the number of levels in the hierarchy.
+ /// The file name of the asset. This attribute is required when creating a new asset
+ /// (e.g. when #assetByteArray is not null).
///
- [System.Xml.Serialization.XmlElementAttribute("hierarchyLevels", Order = 2)]
- public ContentMetadataKeyHierarchyLevel[] hierarchyLevels {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 2)]
+ public string fileName {
get {
- return this.hierarchyLevelsField;
+ return this.fileNameField;
}
set {
- this.hierarchyLevelsField = value;
+ this.fileNameField = value;
}
}
- /// The ContentMetadataKeyHierarchyStatus
- /// of the hierarchy. This attribute is read-only and defaults to ContentMetadataKeyHierarchyStatus#ACTIVE.
+ /// The file size of the asset in bytes. This attribute is read-only.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 3)]
- public ContentMetadataKeyHierarchyStatus status {
+ public long fileSize {
get {
- return this.statusField;
+ return this.fileSizeField;
}
set {
- this.statusField = value;
- this.statusSpecified = true;
+ this.fileSizeField = value;
+ this.fileSizeSpecified = true;
}
}
- /// true, if a value is specified for ,
- /// false otherwise.
+ /// true, if a value is specified for , false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool statusSpecified {
+ public bool fileSizeSpecified {
get {
- return this.statusFieldSpecified;
+ return this.fileSizeFieldSpecified;
}
set {
- this.statusFieldSpecified = value;
+ this.fileSizeFieldSpecified = value;
}
}
- }
-
- /// Represents the status of a ContentMetadataKeyHierarchy.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum ContentMetadataKeyHierarchyStatus {
- /// The hierarchy is active and user-visable.
- ///
- ACTIVE = 0,
- /// The hierarchy is deleted and not user-visable.
- ///
- DELETED = 1,
- /// The value returned if the actual value is not exposed by the requested API
- /// version.
+ /// A URL where the asset can be previewed at. This field is read-only and set by
+ /// Google.
///
- UNKNOWN = 2,
- }
-
-
- /// A list of all errors to be used in conjunction with required number validators.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class RequiredNumberError : ApiError {
- private RequiredNumberErrorReason reasonField;
-
- private bool reasonFieldSpecified;
-
- [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public RequiredNumberErrorReason reason {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 4)]
+ public string assetUrl {
get {
- return this.reasonField;
+ return this.assetUrlField;
}
set {
- this.reasonField = value;
- this.reasonSpecified = true;
+ this.assetUrlField = value;
}
}
- /// true, if a value is specified for ,
- /// false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool reasonSpecified {
+ /// The size of the asset. Note that this may not always reflect the actual physical
+ /// size of the asset, but may reflect the expected size. This attribute is
+ /// read-only and is populated by Google.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 5)]
+ public Size size {
get {
- return this.reasonFieldSpecified;
+ return this.sizeField;
}
set {
- this.reasonFieldSpecified = value;
+ this.sizeField = value;
}
}
- }
-
- /// Describes reasons for a number to be invalid.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "RequiredNumberError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum RequiredNumberErrorReason {
- REQUIRED = 0,
- TOO_LARGE = 1,
- TOO_SMALL = 2,
- TOO_LARGE_WITH_DETAILS = 3,
- TOO_SMALL_WITH_DETAILS = 4,
- /// The value returned if the actual value is not exposed by the requested API
- /// version.
+ /// The click tags of the asset. This field is read-only.
///
- UNKNOWN = 5,
- }
-
-
- /// Lists all errors associated with content hierarchies.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class ContentMetadataKeyHierarchyError : ApiError {
- private ContentMetadataKeyHierarchyErrorReason reasonField;
-
- private bool reasonFieldSpecified;
+ [System.Xml.Serialization.XmlElementAttribute("clickTags", Order = 6)]
+ public ClickTag[] clickTags {
+ get {
+ return this.clickTagsField;
+ }
+ set {
+ this.clickTagsField = value;
+ }
+ }
- [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public ContentMetadataKeyHierarchyErrorReason reason {
+ /// The display density of the image. This is the ratio between a dimension in
+ /// pixels of the image and the dimension in pixels that it should occupy in
+ /// device-independent pixels when displayed. This attribute is optional and
+ /// defaults to ONE_TO_ONE.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 7)]
+ public ImageDensity imageDensity {
get {
- return this.reasonField;
+ return this.imageDensityField;
}
set {
- this.reasonField = value;
- this.reasonSpecified = true;
+ this.imageDensityField = value;
+ this.imageDensitySpecified = true;
}
}
- /// true, if a value is specified for ,
- /// false otherwise.
+ /// true, if a value is specified for , false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool reasonSpecified {
+ public bool imageDensitySpecified {
get {
- return this.reasonFieldSpecified;
+ return this.imageDensityFieldSpecified;
}
set {
- this.reasonFieldSpecified = value;
+ this.imageDensityFieldSpecified = value;
}
}
}
- /// The reasons for the ContentMetadataKeyHierarchyError.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "ContentMetadataKeyHierarchyError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum ContentMetadataKeyHierarchyErrorReason {
- /// One or more levels of the hierarchy are missing. For example, if the levels are
- /// {1, 2, 2} or {1, 3, 4}, this error will be thrown.
- ///
- LEVEL_MISSING = 0,
- /// DSM networks can only have one hierarchy per network and that hierarchy can only
- /// have one level.
- ///
- INVALID_DSM_HIERARCHY = 1,
- /// Cannot load or save the network browse by key when the content metadata key
- /// hierarchy feature is enabled.
- ///
- CANNOT_USE_BROWSE_BY_KEY_WITH_HIERARCHY_FEATURE_ENABLED = 2,
- /// The value returned if the actual value is not exposed by the requested API
- /// version.
- ///
- UNKNOWN = 3,
- }
-
-
- [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
- [System.ServiceModel.ServiceContractAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808", ConfigurationName = "Google.Api.Ads.AdManager.v201808.ContentMetadataKeyHierarchyServiceInterface")]
- public interface ContentMetadataKeyHierarchyServiceInterface
- {
- // CODEGEN: Parameter 'rval' requires additional schema information that cannot be captured using the parameter mode. The specific attribute is 'System.Xml.Serialization.XmlElementAttribute'.
- [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
- [System.ServiceModel.FaultContractAttribute(typeof(Google.Api.Ads.AdManager.v201808.ApiException), Action = "", Name = "ApiExceptionFault")]
- [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults = true)]
- [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApplicationException))]
- [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
- Wrappers.ContentMetadataKeyHierarchyService.createContentMetadataKeyHierarchiesResponse createContentMetadataKeyHierarchies(Wrappers.ContentMetadataKeyHierarchyService.createContentMetadataKeyHierarchiesRequest request);
-
- [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
- System.Threading.Tasks.Task createContentMetadataKeyHierarchiesAsync(Wrappers.ContentMetadataKeyHierarchyService.createContentMetadataKeyHierarchiesRequest request);
-
- [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
- [System.ServiceModel.FaultContractAttribute(typeof(Google.Api.Ads.AdManager.v201808.ApiException), Action = "", Name = "ApiExceptionFault")]
- [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults = true)]
- [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApplicationException))]
- [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
- Google.Api.Ads.AdManager.v201808.ContentMetadataKeyHierarchyPage getContentMetadataKeyHierarchiesByStatement(Google.Api.Ads.AdManager.v201808.Statement filterStatement);
-
- [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
- [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
- System.Threading.Tasks.Task getContentMetadataKeyHierarchiesByStatementAsync(Google.Api.Ads.AdManager.v201808.Statement filterStatement);
-
- [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
- [System.ServiceModel.FaultContractAttribute(typeof(Google.Api.Ads.AdManager.v201808.ApiException), Action = "", Name = "ApiExceptionFault")]
- [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults = true)]
- [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApplicationException))]
- [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
- Google.Api.Ads.AdManager.v201808.UpdateResult performContentMetadataKeyHierarchyAction(Google.Api.Ads.AdManager.v201808.ContentMetadataKeyHierarchyAction contentMetadataKeyHierarchyAction, Google.Api.Ads.AdManager.v201808.Statement filterStatement);
-
- [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
- [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
- System.Threading.Tasks.Task performContentMetadataKeyHierarchyActionAsync(Google.Api.Ads.AdManager.v201808.ContentMetadataKeyHierarchyAction contentMetadataKeyHierarchyAction, Google.Api.Ads.AdManager.v201808.Statement filterStatement);
-
- // CODEGEN: Parameter 'rval' requires additional schema information that cannot be captured using the parameter mode. The specific attribute is 'System.Xml.Serialization.XmlElementAttribute'.
- [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
- [System.ServiceModel.FaultContractAttribute(typeof(Google.Api.Ads.AdManager.v201808.ApiException), Action = "", Name = "ApiExceptionFault")]
- [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults = true)]
- [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApplicationException))]
- [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
- Wrappers.ContentMetadataKeyHierarchyService.updateContentMetadataKeyHierarchiesResponse updateContentMetadataKeyHierarchies(Wrappers.ContentMetadataKeyHierarchyService.updateContentMetadataKeyHierarchiesRequest request);
-
- [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
- System.Threading.Tasks.Task updateContentMetadataKeyHierarchiesAsync(Wrappers.ContentMetadataKeyHierarchyService.updateContentMetadataKeyHierarchiesRequest request);
- }
-
-
- /// Captures a page of ContentMetadataKeyHierarchy objects. This
- /// is deprecated and will be removed as of V201811.
+ /// Represents the dimensions of an AdUnit, LineItem or Creative.
For
+ /// interstitial size (out-of-page), native, ignored and fluid size,
+ /// Size must be 1x1.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class ContentMetadataKeyHierarchyPage {
- private int totalResultSetSizeField;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class Size {
+ private int widthField;
- private bool totalResultSetSizeFieldSpecified;
+ private bool widthFieldSpecified;
- private int startIndexField;
+ private int heightField;
- private bool startIndexFieldSpecified;
+ private bool heightFieldSpecified;
- private ContentMetadataKeyHierarchy[] resultsField;
+ private bool isAspectRatioField;
- /// The size of the total result set to which this page belongs.
+ private bool isAspectRatioFieldSpecified;
+
+ /// The width of the AdUnit, LineItem or
+ /// Creative.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public int totalResultSetSize {
+ public int width {
get {
- return this.totalResultSetSizeField;
+ return this.widthField;
}
set {
- this.totalResultSetSizeField = value;
- this.totalResultSetSizeSpecified = true;
+ this.widthField = value;
+ this.widthSpecified = true;
}
}
- /// true, if a value is specified for , false otherwise.
+ /// true, if a value is specified for ,
+ /// false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool totalResultSetSizeSpecified {
+ public bool widthSpecified {
get {
- return this.totalResultSetSizeFieldSpecified;
+ return this.widthFieldSpecified;
}
set {
- this.totalResultSetSizeFieldSpecified = value;
+ this.widthFieldSpecified = value;
}
}
- /// The absolute index in the total result set on which this page begins.
+ /// The height of the AdUnit, LineItem
+ /// or Creative.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 1)]
- public int startIndex {
+ public int height {
get {
- return this.startIndexField;
+ return this.heightField;
}
set {
- this.startIndexField = value;
- this.startIndexSpecified = true;
+ this.heightField = value;
+ this.heightSpecified = true;
}
}
- /// true, if a value is specified for , false otherwise.
+ /// true, if a value is specified for ,
+ /// false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool startIndexSpecified {
+ public bool heightSpecified {
get {
- return this.startIndexFieldSpecified;
+ return this.heightFieldSpecified;
}
set {
- this.startIndexFieldSpecified = value;
+ this.heightFieldSpecified = value;
}
}
- /// The collection of content metadata key hierarchies contained within this page.
+ /// True if this size represents an aspect ratio, false otherwise.
///
- [System.Xml.Serialization.XmlElementAttribute("results", Order = 2)]
- public ContentMetadataKeyHierarchy[] results {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 2)]
+ public bool isAspectRatio {
get {
- return this.resultsField;
+ return this.isAspectRatioField;
}
set {
- this.resultsField = value;
+ this.isAspectRatioField = value;
+ this.isAspectRatioSpecified = true;
+ }
+ }
+
+ /// true, if a value is specified for , false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool isAspectRatioSpecified {
+ get {
+ return this.isAspectRatioFieldSpecified;
+ }
+ set {
+ this.isAspectRatioFieldSpecified = value;
}
}
}
- /// Represents the actions that can be performed on ContentMetadataKeyHierarchy objects.
+ /// Click tags define click-through URLs for each exit on an HTML5 creative. An exit
+ /// is any area that can be clicked that directs the browser to a landing page. Each
+ /// click tag defines the click-through URL for a different exit. In Ad Manager,
+ /// tracking pixels are attached to the click tags if URLs are valid.
///
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(DeleteContentMetadataKeyHierarchies))]
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public abstract partial class ContentMetadataKeyHierarchyAction {
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class ClickTag {
+ private string nameField;
+
+ private string urlField;
+
+ /// Name of the click tag, follows the regex "clickTag\\d*"
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
+ public string name {
+ get {
+ return this.nameField;
+ }
+ set {
+ this.nameField = value;
+ }
+ }
+
+ /// URL of the click tag.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
+ public string url {
+ get {
+ return this.urlField;
+ }
+ set {
+ this.urlField = value;
+ }
+ }
}
- /// The action used for deleting ContentMetadataKeyHierarchy objects.
+ /// Image densities.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class DeleteContentMetadataKeyHierarchies : ContentMetadataKeyHierarchyAction {
- }
-
-
- [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
- public interface ContentMetadataKeyHierarchyServiceInterfaceChannel : Google.Api.Ads.AdManager.v201808.ContentMetadataKeyHierarchyServiceInterface, System.ServiceModel.IClientChannel
- {
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum ImageDensity {
+ /// Indicates that there is a 1:1 ratio between the dimensions of the raw image and
+ /// the dimensions that it should be displayed at in device-independent pixels.
+ ///
+ ONE_TO_ONE = 0,
+ /// Indicates that there is a 3:2 ratio between the dimensions of the raw image and
+ /// the dimensions that it should be displayed at in device-independent pixels.
+ ///
+ THREE_TO_TWO = 1,
+ /// Indicates that there is a 2:1 ratio between the dimensions of the raw image and
+ /// the dimensions that it should be displayed at in device-independent pixels.
+ ///
+ TWO_TO_ONE = 2,
+ /// The value returned if the actual value is not exposed by the requested API
+ /// version.
+ ///
+ UNKNOWN = 3,
}
- /// Provides methods for creating, updating, and retrieving ContentMetadataKeyHierarchy objects. This
- /// is deprecated and will be removed as of V201811.
+ /// A CustomCreativeAsset is an association between a CustomCreative and an asset. Any assets that are
+ /// associated with a creative can be inserted into its HTML snippet.
///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
- public partial class ContentMetadataKeyHierarchyService : AdManagerSoapClient, IContentMetadataKeyHierarchyService {
- /// Creates a new instance of the class.
- public ContentMetadataKeyHierarchyService() {
- }
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class CustomCreativeAsset {
+ private string macroNameField;
- /// Creates a new instance of the class.
- public ContentMetadataKeyHierarchyService(string endpointConfigurationName)
- : base(endpointConfigurationName) {
- }
+ private CreativeAsset assetField;
- /// Creates a new instance of the class.
- public ContentMetadataKeyHierarchyService(string endpointConfigurationName, string remoteAddress)
- : base(endpointConfigurationName, remoteAddress) {
+ /// The name by which the associated asset will be referenced. For example, if the
+ /// value is "foo", then the asset can be inserted into an HTML snippet using the
+ /// macro: "%%FILE:foo%%".
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
+ public string macroName {
+ get {
+ return this.macroNameField;
+ }
+ set {
+ this.macroNameField = value;
+ }
}
- /// Creates a new instance of the class.
- public ContentMetadataKeyHierarchyService(string endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress)
- : base(endpointConfigurationName, remoteAddress) {
+ /// The asset. This attribute is required. To view the asset, use CreativeAsset#assetUrl.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
+ public CreativeAsset asset {
+ get {
+ return this.assetField;
+ }
+ set {
+ this.assetField = value;
+ }
}
+ }
- /// Creates a new instance of the class.
- public ContentMetadataKeyHierarchyService(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress)
- : base(binding, remoteAddress) {
- }
- [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
- Wrappers.ContentMetadataKeyHierarchyService.createContentMetadataKeyHierarchiesResponse Google.Api.Ads.AdManager.v201808.ContentMetadataKeyHierarchyServiceInterface.createContentMetadataKeyHierarchies(Wrappers.ContentMetadataKeyHierarchyService.createContentMetadataKeyHierarchiesRequest request) {
- return base.Channel.createContentMetadataKeyHierarchies(request);
- }
+ /// Metadata for a video asset.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class VideoMetadata {
+ private ScalableType scalableTypeField;
- /// Creates new ContentMetadataKeyHierarchy objects.
- ///
- /// a Publisher Query Language statement used to
- /// filter a set of content metadata key hierarchies
- /// the content metadata key hierarchies that match the given
- /// filter
- /// if the ID of the active network does not exist or
- /// there is a backend error
- public virtual Google.Api.Ads.AdManager.v201808.ContentMetadataKeyHierarchyPage getContentMetadataKeyHierarchiesByStatement(Google.Api.Ads.AdManager.v201808.Statement filterStatement) {
- return base.Channel.getContentMetadataKeyHierarchiesByStatement(filterStatement);
- }
+ private int bitRateField;
- public virtual System.Threading.Tasks.Task getContentMetadataKeyHierarchiesByStatementAsync(Google.Api.Ads.AdManager.v201808.Statement filterStatement) {
- return base.Channel.getContentMetadataKeyHierarchiesByStatementAsync(filterStatement);
- }
+ private bool bitRateFieldSpecified;
- /// Performs actions on ContentMetadataKeyHierarchy objects that
- /// match the given Statement#query.
- /// the action to perform
- /// a Publisher Query Language statement used to
- /// filter a set of hierarchies
- /// the result of the action performed
- public virtual Google.Api.Ads.AdManager.v201808.UpdateResult performContentMetadataKeyHierarchyAction(Google.Api.Ads.AdManager.v201808.ContentMetadataKeyHierarchyAction contentMetadataKeyHierarchyAction, Google.Api.Ads.AdManager.v201808.Statement filterStatement) {
- return base.Channel.performContentMetadataKeyHierarchyAction(contentMetadataKeyHierarchyAction, filterStatement);
- }
+ private int minimumBitRateField;
- public virtual System.Threading.Tasks.Task performContentMetadataKeyHierarchyActionAsync(Google.Api.Ads.AdManager.v201808.ContentMetadataKeyHierarchyAction contentMetadataKeyHierarchyAction, Google.Api.Ads.AdManager.v201808.Statement filterStatement) {
- return base.Channel.performContentMetadataKeyHierarchyActionAsync(contentMetadataKeyHierarchyAction, filterStatement);
- }
+ private bool minimumBitRateFieldSpecified;
- [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
- Wrappers.ContentMetadataKeyHierarchyService.updateContentMetadataKeyHierarchiesResponse Google.Api.Ads.AdManager.v201808.ContentMetadataKeyHierarchyServiceInterface.updateContentMetadataKeyHierarchies(Wrappers.ContentMetadataKeyHierarchyService.updateContentMetadataKeyHierarchiesRequest request) {
- return base.Channel.updateContentMetadataKeyHierarchies(request);
- }
+ private int maximumBitRateField;
- /// Updates the specified ContentMetadataKeyHierarchy objects.
- /// the hierarchies to update
- /// the updated hierarchies
- /// if there is an error updating the one of the
- /// hierarchies
- public virtual Google.Api.Ads.AdManager.v201808.ContentMetadataKeyHierarchy[] updateContentMetadataKeyHierarchies(Google.Api.Ads.AdManager.v201808.ContentMetadataKeyHierarchy[] contentMetadataKeyHierarchies) {
- Wrappers.ContentMetadataKeyHierarchyService.updateContentMetadataKeyHierarchiesRequest inValue = new Wrappers.ContentMetadataKeyHierarchyService.updateContentMetadataKeyHierarchiesRequest();
- inValue.contentMetadataKeyHierarchies = contentMetadataKeyHierarchies;
- Wrappers.ContentMetadataKeyHierarchyService.updateContentMetadataKeyHierarchiesResponse retVal = ((Google.Api.Ads.AdManager.v201808.ContentMetadataKeyHierarchyServiceInterface)(this)).updateContentMetadataKeyHierarchies(inValue);
- return retVal.rval;
- }
+ private bool maximumBitRateFieldSpecified;
- [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
- System.Threading.Tasks.Task Google.Api.Ads.AdManager.v201808.ContentMetadataKeyHierarchyServiceInterface.updateContentMetadataKeyHierarchiesAsync(Wrappers.ContentMetadataKeyHierarchyService.updateContentMetadataKeyHierarchiesRequest request) {
- return base.Channel.updateContentMetadataKeyHierarchiesAsync(request);
- }
+ private Size sizeField;
- public virtual System.Threading.Tasks.Task updateContentMetadataKeyHierarchiesAsync(Google.Api.Ads.AdManager.v201808.ContentMetadataKeyHierarchy[] contentMetadataKeyHierarchies) {
- Wrappers.ContentMetadataKeyHierarchyService.updateContentMetadataKeyHierarchiesRequest inValue = new Wrappers.ContentMetadataKeyHierarchyService.updateContentMetadataKeyHierarchiesRequest();
- inValue.contentMetadataKeyHierarchies = contentMetadataKeyHierarchies;
- return System.Threading.Tasks.Task.Factory.StartNew(() => (((Google.Api.Ads.AdManager.v201808.ContentMetadataKeyHierarchyServiceInterface)(this)).updateContentMetadataKeyHierarchiesAsync(inValue)).Result.rval);
- }
- }
- namespace Wrappers.ContentService
- {
- }
- /// Contains information about Content from the CMS it was
- /// ingested from.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class CmsContent {
- private long idField;
+ private MimeType mimeTypeField;
- private bool idFieldSpecified;
+ private bool mimeTypeFieldSpecified;
- private string displayNameField;
+ private VideoDeliveryType deliveryTypeField;
- private string cmsContentIdField;
+ private bool deliveryTypeFieldSpecified;
- /// The ID of the Content Source associated with the CMS in Ad Manager. This
- /// attribute is read-only.
+ private string[] codecsField;
+
+ /// The scalable type of the asset. This attribute is required.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public long id {
+ public ScalableType scalableType {
get {
- return this.idField;
+ return this.scalableTypeField;
}
set {
- this.idField = value;
- this.idSpecified = true;
+ this.scalableTypeField = value;
+ this.scalableTypeSpecified = true;
}
}
- /// true, if a value is specified for ,
- /// false otherwise.
+ /// true, if a value is specified for , false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool idSpecified {
+ public bool scalableTypeSpecified {
get {
- return this.idFieldSpecified;
+ return this.scalableTypeFieldSpecified;
}
set {
- this.idFieldSpecified = value;
+ this.scalableTypeFieldSpecified = value;
}
}
- /// The display name of the CMS this content is in. This attribute is read-only.
+ /// The duration of the asset in milliseconds. This attribute is required.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 1)]
- public string displayName {
+ public int duration {
get {
- return this.displayNameField;
+ return this.durationField;
}
set {
- this.displayNameField = value;
+ this.durationField = value;
+ this.durationSpecified = true;
}
}
- /// The ID of the Content in the CMS. This ID will be a 3rd
- /// party ID, usually the ID of the content in a CMS (Content Management System).
- /// This attribute is read-only.
+ /// true, if a value is specified for , false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool durationSpecified {
+ get {
+ return this.durationFieldSpecified;
+ }
+ set {
+ this.durationFieldSpecified = value;
+ }
+ }
+
+ /// The bit rate of the asset in kbps. If the asset can play at a range of bit rates
+ /// (such as an Http Live Streaming video), then set the bit rate to zero and
+ /// populate the minimum and maximum bit rate instead.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 2)]
- public string cmsContentId {
+ public int bitRate {
get {
- return this.cmsContentIdField;
+ return this.bitRateField;
}
set {
- this.cmsContentIdField = value;
+ this.bitRateField = value;
+ this.bitRateSpecified = true;
+ }
+ }
+
+ /// true, if a value is specified for ,
+ /// false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool bitRateSpecified {
+ get {
+ return this.bitRateFieldSpecified;
+ }
+ set {
+ this.bitRateFieldSpecified = value;
}
}
- }
+ /// The minimum bitrate of the video in kbps. Only set this if the asset can play at
+ /// a range of bit rates.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 3)]
+ public int minimumBitRate {
+ get {
+ return this.minimumBitRateField;
+ }
+ set {
+ this.minimumBitRateField = value;
+ this.minimumBitRateSpecified = true;
+ }
+ }
- /// Represents an error associated with a DAI content's status.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class DaiIngestError {
- private DaiIngestErrorReason reasonField;
+ /// true, if a value is specified for , false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool minimumBitRateSpecified {
+ get {
+ return this.minimumBitRateFieldSpecified;
+ }
+ set {
+ this.minimumBitRateFieldSpecified = value;
+ }
+ }
- private bool reasonFieldSpecified;
+ /// The maximum bitrate of the video in kbps. Only set this if the asset can play at
+ /// a range of bit rates.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 4)]
+ public int maximumBitRate {
+ get {
+ return this.maximumBitRateField;
+ }
+ set {
+ this.maximumBitRateField = value;
+ this.maximumBitRateSpecified = true;
+ }
+ }
- private string triggerField;
+ /// true, if a value is specified for , false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool maximumBitRateSpecified {
+ get {
+ return this.maximumBitRateFieldSpecified;
+ }
+ set {
+ this.maximumBitRateFieldSpecified = value;
+ }
+ }
- /// The error associated with the content.
+ /// The size (width and height) of the asset. This attribute is required.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public DaiIngestErrorReason reason {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 5)]
+ public Size size {
get {
- return this.reasonField;
+ return this.sizeField;
}
set {
- this.reasonField = value;
- this.reasonSpecified = true;
+ this.sizeField = value;
}
}
- /// true, if a value is specified for ,
- /// false otherwise.
+ /// The mime type of the asset. This attribute is required.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 6)]
+ public MimeType mimeType {
+ get {
+ return this.mimeTypeField;
+ }
+ set {
+ this.mimeTypeField = value;
+ this.mimeTypeSpecified = true;
+ }
+ }
+
+ /// true, if a value is specified for , false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool reasonSpecified {
+ public bool mimeTypeSpecified {
get {
- return this.reasonFieldSpecified;
+ return this.mimeTypeFieldSpecified;
}
set {
- this.reasonFieldSpecified = value;
+ this.mimeTypeFieldSpecified = value;
}
}
- /// The field, if any, that triggered the error.
+ /// The delivery type of the asset. This attribute is required.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
- public string trigger {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 7)]
+ public VideoDeliveryType deliveryType {
get {
- return this.triggerField;
+ return this.deliveryTypeField;
}
set {
- this.triggerField = value;
+ this.deliveryTypeField = value;
+ this.deliveryTypeSpecified = true;
}
}
- }
+ /// true, if a value is specified for , false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool deliveryTypeSpecified {
+ get {
+ return this.deliveryTypeFieldSpecified;
+ }
+ set {
+ this.deliveryTypeFieldSpecified = value;
+ }
+ }
- /// Describes what caused the DAI content to fail during the ingestion proccess.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum DaiIngestErrorReason {
- /// The ingest URL provided in the publisher's content source feed is invalid. The
- /// trigger for this error is the ingest URL specified in the publisher's feed.
+ /// The codecs of the asset. This attribute is optional and defaults to an empty
+ /// list.
///
- INVALID_INGEST_URL = 0,
- /// The closed caption URL provided in the publisher's content source feed is
- /// invalid. The trigger for this error is the closed caption URL specified in the
- /// publisher's feed.
+ [System.Xml.Serialization.XmlElementAttribute("codecs", Order = 8)]
+ public string[] codecs {
+ get {
+ return this.codecsField;
+ }
+ set {
+ this.codecsField = value;
+ }
+ }
+ }
+
+
+ /// The different ways a video/flash can scale.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum ScalableType {
+ /// The value returned if the actual value is not exposed by the requested API
+ /// version.
///
- INVALID_CLOSED_CAPTION_URL = 1,
- /// There is no closed caption URL for a content in the publisher's content source
- /// feed. There is no trigger for this error.
+ UNKNOWN = 0,
+ /// The creative should not be scaled.
///
- MISSING_CLOSED_CAPTION_URL = 2,
- /// There was an error while trying to fetch the HLS from the specified ingest URL.
- /// The trigger for this error is the ingest URL specified in the publisher's feed.
+ NOT_SCALABLE = 1,
+ /// The creative can be scaled and its aspect-ratio must be maintained.
///
- COULD_NOT_FETCH_HLS = 3,
- /// There was an error while trying to fetch the subtitles from the specified closed
- /// caption url. The trigger for this error is the closed caption URL specified in
- /// the publisher's feed.
+ RATIO_SCALABLE = 2,
+ /// The creative can be scaled and its aspect-ratio can be distorted.
///
- COULD_NOT_FETCH_SUBTITLES = 4,
- /// One of the subtitles from the closed caption URL is missing a language. The
- /// trigger for this error is the closed caption URL that does not have a language
- /// associated with it.
+ STRETCH_SCALABLE = 3,
+ }
+
+
+ /// Enum of supported mime types
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum MimeType {
+ /// The value returned if the actual value is not exposed by the requested API
+ /// version.
///
- MISSING_SUBTITLE_LANGUAGE = 5,
- /// Error fetching the media files from the URLs specified in the master HLS
- /// playlist. The trigger for this error is a media playlist URL within the
- /// publisher's HLS playlist that could not be fetched.
+ UNKNOWN = 0,
+ /// application/x-asp
///
- COULD_NOT_FETCH_MEDIA = 6,
- /// The media from the publisher's CDN is malformed and cannot be conditioned. The
- /// trigger for this error is a media playlist URL within the publisher's HLS
- /// playlist that is malformed.
+ ASP = 1,
+ /// audio/aiff
///
- MALFORMED_MEDIA_BYTES = 7,
- /// A chapter time for the content is outside of the range of the content's
- /// duration. The trigger for this error is the chapter time (a parsable long
- /// representing the time in ms) that is out of bounds.
+ AUDIO_AIFF = 2,
+ /// audio/basic
///
- CHAPTER_TIME_OUT_OF_BOUNDS = 8,
- /// An internal error occurred while conditioning the content. There is no trigger
- /// for this error.
+ AUDIO_BASIC = 3,
+ /// audio/flac
///
- INTERNAL_ERROR = 9,
- /// The content has chapter times but the content's source has no CDN settings for
- /// midrolls. There is no trigger for this error.
+ AUDIO_FLAC = 4,
+ /// audio/mid
///
- CONTENT_HAS_CHAPTER_TIMES_BUT_NO_MIDROLL_SETTINGS = 10,
- /// There is bad/missing/malformed data in a media playlist. The trigger for this
- /// error is the URL that points to the malformed media playlist.
+ AUDIO_MID = 5,
+ /// audio/mpeg
///
- MALFORMED_MEDIA_PLAYLIST = 11,
- /// There is bad/missing/malformed data in a subtitles file. The trigger for this
- /// error is the URL that points to the malformed subtitles.
+ AUDIO_MP3 = 6,
+ /// audio/mp4
///
- MALFORMED_SUBTITLES = 12,
- /// A playlist item has a URL that does not begin with the ingest common path
- /// provided in the DAI settings. The trigger for this error is the playlist item
- /// URL.
+ AUDIO_MP4 = 7,
+ /// audio/x-mpegurl
///
- PLAYLIST_ITEM_URL_DOES_NOT_MATCH_INGEST_COMMON_PATH = 13,
- /// Uploading split media segments failed due to an authentication error.
+ AUDIO_MPEG_URL = 8,
+ /// audio/x-ms-wma
///
- COULD_NOT_UPLOAD_SPLIT_MEDIA_AUTHENTICATION_FAILED = 14,
- /// Uploading spit media segments failed due to a connection error.
+ AUDIO_MS_WMA = 9,
+ /// audio/ogg
///
- COULD_NOT_UPLOAD_SPLIT_MEDIA_CONNECTION_FAILED = 15,
- /// Uploading split media segments failed due to a write error.
+ AUDIO_OGG = 10,
+ /// audio/x-pn-realaudio-plugin
///
- COULD_NOT_UPLOAD_SPLIT_MEDIA_WRITE_FAILED = 16,
- /// Variants in a playlist do not have the same number of discontinuities. The
- /// trigger for this error is the master playlist URI.
+ AUDIO_REAL_AUDIO_PLUGIN = 11,
+ /// audio/x-wav
///
- PLAYLISTS_HAVE_DIFFERENT_NUMBER_OF_DISCONTINUITIES = 17,
- /// The playlist does not have a starting PTS value. The trigger for this error is
- /// the master playlist URI.
+ AUDIO_WAV = 12,
+ /// application/binary
///
- PLAYIST_HAS_NO_STARTING_PTS_VALUE = 18,
- /// The PTS at a discontinuity varies too much between the different variants. The
- /// trigger for this error is the master playlist URI.
+ BINARY = 13,
+ /// application/dash+xml
///
- PLAYLIST_DISCONTINUITY_PTS_VALUES_DIFFER_TOO_MUCH = 19,
- /// A media segment has no PTS. The trigger for this error is the segment data URI.
+ DASH = 62,
+ /// application/x-director
///
- SEGMENT_HAS_NO_PTS = 20,
- /// The language in the subtitles file does not match the language specified in the
- /// feed. The trigger for this error is the feed language and the parsed language
- /// separated by a semi-colon, e.g. "en;sp".
+ DIRECTOR = 14,
+ /// application/x-shockwave-flash
///
- SUBTITLE_LANGUAGE_DOES_NOT_MATCH_LANGUAGE_IN_FEED = 21,
- /// There are multiple subtitles files at the closed caption URI, and none of them
- /// match the language defined in the feed. The trigger for this error is language
- /// in the feed.
+ FLASH = 15,
+ /// application/graphicconverter
///
- CANNOT_DETERMINE_CORRECT_SUBTITLES_FOR_LANGUAGE = 22,
- /// No CDN configuration found for the content. The trigger for this error is the
- /// content's master playlist URI.
+ GRAPHIC_CONVERTER = 16,
+ /// application/x-javascript
///
- NO_CDN_CONFIGURATION_FOUND = 23,
- /// The content has midrolls but there was no split content config on the CDN
- /// configuration for that content so the content was not conditioned. There is no
- /// trigger for this error.
+ JAVASCRIPT = 17,
+ /// application/json
///
- CONTENT_HAS_MIDROLLS_BUT_NO_SPLIT_CONTENT_CONFIG = 24,
- /// The content has midrolls but the source the content was ingested from has
- /// mid-rolls disabled, so the content was not conditioned. There is no trigger for
- /// this error.
+ JSON = 18,
+ /// image/x-win-bitmap
///
- CONTENT_HAS_MIDROLLS_BUT_SOURCE_HAS_MIDROLLS_DISABLED = 25,
- /// Error parsing ADTS while splitting the content. The trigger for this error is
- /// the variant URL and the cue-point separated by a semi-colon, e.g.
- /// "www.variant2.com;5000".
+ IMAGE_BITMAP = 19,
+ /// image/bmp
///
- ADTS_PARSE_ERROR = 26,
- /// Error splitting an AAC segment. The trigger for this error is the variant URL
- /// and the cue-point separated by a semi-colon, e.g. "www.variant2.com;5000".
+ IMAGE_BMP = 20,
+ /// image/gif
///
- AAC_SPLIT_ERROR = 27,
- /// Error parsing an AAC file while splitting the content. The trigger for this
- /// error is the variant URL and the cue-point separated by a semi-colon, e.g.
- /// "www.variant2.com;5000".
+ IMAGE_GIF = 21,
+ /// image/jpeg
///
- AAC_PARSE_ERROR = 28,
- /// Error parsing a TS file while splitting the content. The trigger for this error
- /// is the variant URL and the cue-point separated by a semi-colon, e.g.
- /// "www.variant2.com;5000".
+ IMAGE_JPEG = 22,
+ /// image/photoshop
///
- TS_PARSE_ERROR = 29,
- /// Error splitting a TS file while splitting the content. The trigger for this
- /// error is the variant URL and the cue-point separated by a semi-colon, e.g.
- /// "www.variant2.com;5000".
+ IMAGE_PHOTOSHOP = 23,
+ /// image/png
///
- TS_SPLIT_ERROR = 30,
- /// Encountered an unsupported container format while splitting the content. The
- /// trigger for this error is the variant URL and the cue-point separated by a
- /// semi-colon, e.g. "www.variant2.com;5000".
+ IMAGE_PNG = 24,
+ /// image/tiff
///
- UNSUPPORTED_CONTAINER_FORMAT = 31,
- /// Encountered multiple elementary streams of the same media type (audio, video)
- /// within a transport stream. The trigger for this error is the variant URL and the
- /// cue-point separated by a semi-colon, e.g. "www.variant2.com;5000".
+ IMAGE_TIFF = 25,
+ /// image/vnd.wap.wbmp
///
- MULTIPLE_ELEMENTARY_STREAMS_OF_SAME_MEDIA_TYPE_IN_TS = 40,
- /// Encountered an unsupported TS media format while splitting the content. The
- /// trigger for this error is the variant URL and the cue-point separated by a
- /// semi-colon, e.g. "www.variant2.com;5000".
+ IMAGE_WBMP = 26,
+ /// application/x-mpegURL
///
- UNSUPPORTED_TS_MEDIA_FORMAT = 32,
- /// Error splitting because there were no i-frames near the target split point. The
- /// trigger for this error is the variant URL and the cue-point separated by a
- /// semi-colon, e.g. "www.variant2.com;5000".
+ M3U8 = 27,
+ /// application/mac-binhex40
///
- NO_IFRAMES_NEAR_CUE_POINT = 33,
- /// Error splitting an AC-3 segment. The trigger for this error is the variant URL
- /// and the cue-point separated by a semi-colon, e.g. "www.variant2.com;5000".
+ MAC_BIN_HEX_40 = 28,
+ /// application/vnd.ms-excel
///
- AC3_SPLIT_ERROR = 35,
- /// Error parsing an AC-3 file while splitting the content. The trigger for this
- /// error is the variant URL and the cue-point separated by a semi-colon, e.g.
- /// "www.variant2.com;5000".
+ MS_EXCEL = 29,
+ /// application/ms-powerpoint
///
- AC3_PARSE_ERROR = 36,
- /// Error splitting an E-AC-3 segment. The trigger for this error is the variant URL
- /// and the cue-point separated by a semi-colon, e.g. "www.variant2.com;5000".
+ MS_POWERPOINT = 30,
+ /// application/msword
///
- EAC3_SPLIT_ERROR = 37,
- /// Error caused by an invalid encryption key. The trigger for this error is a media
- /// playlist URL within the publisher's HLS playlist that has the invalid encryption
- /// key.
+ MS_WORD = 31,
+ /// application/octet-stream
///
- INVALID_ENCRYPTION_KEY = 38,
- /// Error parsing an E-AC-3 file while splitting the content. The trigger for this
- /// error is the variant URL and the cue-point separated by a semi-colon, e.g.
- /// "www.variant2.com;5000".
+ OCTET_STREAM = 32,
+ /// application/pdf
///
- EAC3_PARSE_ERROR = 39,
+ PDF = 33,
+ /// application/postscript
+ ///
+ POSTSCRIPT = 34,
+ /// application/vnd.rn-realmedia
+ ///
+ RN_REAL_MEDIA = 35,
+ /// message/rfc822
+ ///
+ RFC_822 = 36,
+ /// application/rtf
+ ///
+ RTF = 37,
+ /// text/calendar
+ ///
+ TEXT_CALENDAR = 38,
+ /// text/css
+ ///
+ TEXT_CSS = 39,
+ /// text/csv
+ ///
+ TEXT_CSV = 40,
+ /// text/html
+ ///
+ TEXT_HTML = 41,
+ /// text/java
+ ///
+ TEXT_JAVA = 42,
+ /// text/plain
+ ///
+ TEXT_PLAIN = 43,
+ /// video/3gpp
+ ///
+ VIDEO_3GPP = 44,
+ /// video/3gpp2
+ ///
+ VIDEO_3GPP2 = 45,
+ /// video/avi
+ ///
+ VIDEO_AVI = 46,
+ /// video/x-flv
+ ///
+ VIDEO_FLV = 47,
+ /// video/mp4
+ ///
+ VIDEO_MP4 = 48,
+ /// video/mp4v-es
+ ///
+ VIDEO_MP4V_ES = 49,
+ /// video/mpeg
+ ///
+ VIDEO_MPEG = 50,
+ /// video/x-ms-asf
+ ///
+ VIDEO_MS_ASF = 51,
+ /// video/x-ms-wm
+ ///
+ VIDEO_MS_WM = 52,
+ /// video/x-ms-wmv
+ ///
+ VIDEO_MS_WMV = 53,
+ /// video/x-ms-wvx
+ ///
+ VIDEO_MS_WVX = 54,
+ /// video/ogg
+ ///
+ VIDEO_OGG = 55,
+ /// video/x-quicktime
+ ///
+ VIDEO_QUICKTIME = 56,
+ /// video/webm
+ ///
+ VIDEO_WEBM = 57,
+ /// application/xaml+xml
+ ///
+ XAML = 58,
+ /// application/xhtml+xml
+ ///
+ XHTML = 59,
+ /// application/xml
+ ///
+ XML = 60,
+ /// application/zip
+ ///
+ ZIP = 61,
+ }
+
+
+ /// The video delivery type.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum VideoDeliveryType {
/// The value returned if the actual value is not exposed by the requested API
/// version.
///
- UNKNOWN = 34,
+ UNKNOWN = 0,
+ /// Video will be served through a progressive download.
+ ///
+ PROGRESSIVE = 1,
+ /// Video will be served via a streaming protocol like RTMP.
+ ///
+ STREAMING = 2,
}
- /// A Content represents video metadata from a publisher's Content
- /// Management System (CMS) that has been synced to Ad Manager.
Video line items
- /// can be targeted to Content to indicate what ads should match when
- /// the Content is being played.
+ /// Base asset properties.
///
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(RedirectAsset))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(VideoRedirectAsset))]
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class Content {
- private long idField;
-
- private bool idFieldSpecified;
-
- private string nameField;
-
- private ContentStatus statusField;
-
- private bool statusFieldSpecified;
-
- private ContentStatusDefinedBy statusDefinedByField;
-
- private bool statusDefinedByFieldSpecified;
-
- private DaiIngestStatus hlsIngestStatusField;
-
- private bool hlsIngestStatusFieldSpecified;
-
- private DaiIngestError[] hlsIngestErrorsField;
-
- private DateTime lastHlsIngestDateTimeField;
-
- private DaiIngestStatus dashIngestStatusField;
-
- private bool dashIngestStatusFieldSpecified;
-
- private DaiIngestError[] dashIngestErrorsField;
-
- private DateTime lastDashIngestDateTimeField;
-
- private DateTime importDateTimeField;
-
- private DateTime lastModifiedDateTimeField;
-
- private long[] userDefinedCustomTargetingValueIdsField;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public abstract partial class Asset {
+ }
- private long[] mappingRuleDefinedCustomTargetingValueIdsField;
- private CmsContent[] cmsSourcesField;
+ /// An externally hosted asset.
+ ///
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(VideoRedirectAsset))]
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public abstract partial class RedirectAsset : Asset {
+ private string redirectUrlField;
- /// Uniquely identifies the Content. This attribute is read-only and is
- /// assigned by Google when the content is created.
+ /// The URL where the asset is hosted.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public long id {
+ public string redirectUrl {
get {
- return this.idField;
+ return this.redirectUrlField;
}
set {
- this.idField = value;
- this.idSpecified = true;
+ this.redirectUrlField = value;
}
}
+ }
- /// true, if a value is specified for ,
- /// false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool idSpecified {
- get {
- return this.idFieldSpecified;
- }
- set {
- this.idFieldSpecified = value;
- }
- }
- /// The name of the Content. This attribute is read-only.
+ /// An externally-hosted video asset.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class VideoRedirectAsset : RedirectAsset {
+ private VideoMetadata metadataField;
+
+ /// Metadata related to the asset. This attribute is required.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
- public string name {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
+ public VideoMetadata metadata {
get {
- return this.nameField;
+ return this.metadataField;
}
set {
- this.nameField = value;
+ this.metadataField = value;
}
}
+ }
- /// The status of this Content. This attribute is read-only.
- ///
- [System.Xml.Serialization.XmlElementAttribute(Order = 2)]
- public ContentStatus status {
+
+ /// This represents an entry in a map with a key of type ConversionEvent and value
+ /// of type TrackingUrls.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class ConversionEvent_TrackingUrlsMapEntry {
+ private ConversionEvent keyField;
+
+ private bool keyFieldSpecified;
+
+ private string[] valueField;
+
+ [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
+ public ConversionEvent key {
get {
- return this.statusField;
+ return this.keyField;
}
set {
- this.statusField = value;
- this.statusSpecified = true;
+ this.keyField = value;
+ this.keySpecified = true;
}
}
- /// true, if a value is specified for ,
+ /// true, if a value is specified for ,
/// false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool statusSpecified {
+ public bool keySpecified {
get {
- return this.statusFieldSpecified;
+ return this.keyFieldSpecified;
}
set {
- this.statusFieldSpecified = value;
+ this.keyFieldSpecified = value;
}
}
- /// Whether the content status was defined by the user, or by the source CMS from
- /// which the content was ingested. This attribute is read-only.
- ///
- [System.Xml.Serialization.XmlElementAttribute(Order = 3)]
- public ContentStatusDefinedBy statusDefinedBy {
+ [System.Xml.Serialization.XmlArrayAttribute(Order = 1)]
+ [System.Xml.Serialization.XmlArrayItemAttribute("urls", IsNullable = false)]
+ public string[] value {
get {
- return this.statusDefinedByField;
+ return this.valueField;
}
set {
- this.statusDefinedByField = value;
- this.statusDefinedBySpecified = true;
+ this.valueField = value;
}
}
+ }
- /// true, if a value is specified for , false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool statusDefinedBySpecified {
- get {
- return this.statusDefinedByFieldSpecified;
- }
- set {
- this.statusDefinedByFieldSpecified = value;
- }
- }
- /// The current DAI ingest status of the HLS media for the . This
- /// attribute is read-only and is null if the content is not eligible for dynamic ad
- /// insertion or if the content does not have HLS media.
+ /// All possible tracking event types. Not all events are supported by every kind of
+ /// creative.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum ConversionEvent {
+ /// The value returned if the actual value is not exposed by the requested API
+ /// version.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 4)]
- public DaiIngestStatus hlsIngestStatus {
- get {
- return this.hlsIngestStatusField;
- }
- set {
- this.hlsIngestStatusField = value;
- this.hlsIngestStatusSpecified = true;
- }
- }
+ UNKNOWN = 0,
+ /// Corresponds to the creativeView tracking event.
+ ///
+ CREATIVE_VIEW = 1,
+ /// Corresponds to the start tracking event.
+ ///
+ START = 2,
+ /// An event that is fired when a video skip button is shown, usually after 5
+ /// seconds of viewing the video. This event does not correspond to any VAST element
+ /// and is implemented using an extension.
+ ///
+ SKIP_SHOWN = 3,
+ /// Corresponds to the firstQuartile tracking event.
+ ///
+ FIRST_QUARTILE = 4,
+ /// Corresponds to the midpoint tracking event.
+ ///
+ MIDPOINT = 5,
+ /// Corresponds to the thirdQuartile tracking event.
+ ///
+ THIRD_QUARTILE = 6,
+ /// An event that is fired after 30 seconds of viewing the video or when the video
+ /// finished (if the video duration is less than 30 seconds). This event does not
+ /// correspond to any VAST element and is implemented using an extension.
+ ///
+ ENGAGED_VIEW = 7,
+ /// Corresponds to the complete tracking event.
+ ///
+ COMPLETE = 8,
+ /// Corresponds to the mute tracking event.
+ ///
+ MUTE = 9,
+ /// Corresponds to the unmute tracking event.
+ ///
+ UNMUTE = 10,
+ /// Corresponds to the pause tracking event.
+ ///
+ PAUSE = 11,
+ /// Corresponds to the rewind tracking event.
+ ///
+ REWIND = 12,
+ /// Corresponds to the resume tracking event.
+ ///
+ RESUME = 13,
+ /// An event that is fired when a video was skipped. This event does not correspond
+ /// to any VAST element and is implemented using an extension.
+ ///
+ SKIPPED = 14,
+ /// Corresponds to the fullscreen tracking event.
+ ///
+ FULLSCREEN = 15,
+ /// Corresponds to the expand tracking event.
+ ///
+ EXPAND = 16,
+ /// Corresponds to the collapse tracking event.
+ ///
+ COLLAPSE = 17,
+ /// Corresponds to the acceptInvitation tracking event.
+ ///
+ ACCEPT_INVITATION = 18,
+ /// Corresponds to the close tracking event.
+ ///
+ CLOSE = 19,
+ /// Corresponds to the Linear.VideoClicks.ClickTracking node.
+ ///
+ CLICK_TRACKING = 20,
+ /// Corresponds to the InLine.Survey node.
+ ///
+ SURVEY = 21,
+ /// Corresponds to the Linear.VideoClicks.CustomClick node.
+ ///
+ CUSTOM_CLICK = 22,
+ /// Corresponds to the measurableImpression tracking event.
+ ///
+ MEASURABLE_IMPRESSION = 23,
+ /// Corresponds to the viewableImpression tracking event.
+ ///
+ VIEWABLE_IMPRESSION = 24,
+ /// Corresponds to the abandon tracking event.
+ ///
+ VIDEO_ABANDON = 25,
+ /// Corresponds to the tracking event.
+ ///
+ FULLY_VIEWABLE_AUDIBLE_HALF_DURATION_IMPRESSION = 26,
+ }
- /// true, if a value is specified for , false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool hlsIngestStatusSpecified {
- get {
- return this.hlsIngestStatusFieldSpecified;
- }
- set {
- this.hlsIngestStatusFieldSpecified = value;
- }
- }
- /// The list of any errors that occurred during the most recent DAI ingestion
- /// process of the HLS media. This attribute is read-only and will be null if the #hlsIngestStatus is DaiIngestStatus#STATUS_SUCCESS or if the content is not eligible for
- /// dynamic ad insertion or if the content does not have HLS media.
- ///
- [System.Xml.Serialization.XmlElementAttribute("hlsIngestErrors", Order = 5)]
- public DaiIngestError[] hlsIngestErrors {
- get {
- return this.hlsIngestErrorsField;
- }
- set {
- this.hlsIngestErrorsField = value;
- }
- }
+ /// Represents a child asset in RichMediaStudioCreative.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class RichMediaStudioChildAssetProperty {
+ private string nameField;
- /// The date and time at which this content's HLS media was last ingested for DAI.
- /// This attribute is read-only and will be null if the content is not eligible for
- /// dynamic ad insertion or if the content does not have HLS media.
+ private RichMediaStudioChildAssetPropertyType typeField;
+
+ private bool typeFieldSpecified;
+
+ private long totalFileSizeField;
+
+ private bool totalFileSizeFieldSpecified;
+
+ private int widthField;
+
+ private bool widthFieldSpecified;
+
+ private int heightField;
+
+ private bool heightFieldSpecified;
+
+ private string urlField;
+
+ /// The name of the asset as known by Rich Media Studio. This attribute is readonly.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 6)]
- public DateTime lastHlsIngestDateTime {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
+ public string name {
get {
- return this.lastHlsIngestDateTimeField;
+ return this.nameField;
}
set {
- this.lastHlsIngestDateTimeField = value;
+ this.nameField = value;
}
}
- /// The current DAI ingest status of the DASH media for the . This
- /// attribute is read-only and is null if the content is not eligible for dynamic ad
- /// insertion or if the content does not have DASH media.
+ /// Required file type of the asset. This attribute is readonly.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 7)]
- public DaiIngestStatus dashIngestStatus {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
+ public RichMediaStudioChildAssetPropertyType type {
get {
- return this.dashIngestStatusField;
+ return this.typeField;
}
set {
- this.dashIngestStatusField = value;
- this.dashIngestStatusSpecified = true;
+ this.typeField = value;
+ this.typeSpecified = true;
}
}
- /// true, if a value is specified for , false otherwise.
+ /// true, if a value is specified for ,
+ /// false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool dashIngestStatusSpecified {
+ public bool typeSpecified {
get {
- return this.dashIngestStatusFieldSpecified;
+ return this.typeFieldSpecified;
}
set {
- this.dashIngestStatusFieldSpecified = value;
+ this.typeFieldSpecified = value;
}
}
- /// The list of any errors that occurred during the most recent DAI ingestion
- /// process of the DASH media. This attribute is read-only and will be null if the
- /// #hlsIngestStatus is DaiIngestStatus#STATUS_SUCCESS or if the content is not eligible for
- /// dynamic ad insertion or if the content does not have DASH media.
+ /// The total size of the asset in bytes. This attribute is readonly.
///
- [System.Xml.Serialization.XmlElementAttribute("dashIngestErrors", Order = 8)]
- public DaiIngestError[] dashIngestErrors {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 2)]
+ public long totalFileSize {
get {
- return this.dashIngestErrorsField;
+ return this.totalFileSizeField;
}
set {
- this.dashIngestErrorsField = value;
+ this.totalFileSizeField = value;
+ this.totalFileSizeSpecified = true;
}
}
- /// The date and time at which this content's DASH media was last ingested for DAI.
- /// This attribute is read-only and will be null if the content is not eligible for
- /// dynamic ad insertion or if the content does not have DASH media.
- ///
- [System.Xml.Serialization.XmlElementAttribute(Order = 9)]
- public DateTime lastDashIngestDateTime {
+ /// true, if a value is specified for , false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool totalFileSizeSpecified {
get {
- return this.lastDashIngestDateTimeField;
+ return this.totalFileSizeFieldSpecified;
}
set {
- this.lastDashIngestDateTimeField = value;
+ this.totalFileSizeFieldSpecified = value;
}
}
- /// The date and time at which this content was published. This attribute is
- /// read-only.
+ /// Width of the widget in pixels. This attribute is readonly.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 10)]
- public DateTime importDateTime {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 3)]
+ public int width {
get {
- return this.importDateTimeField;
+ return this.widthField;
}
set {
- this.importDateTimeField = value;
+ this.widthField = value;
+ this.widthSpecified = true;
}
}
- /// The date and time at which this content was last modified. This attribute is
- /// read-only.
- ///
- [System.Xml.Serialization.XmlElementAttribute(Order = 11)]
- public DateTime lastModifiedDateTime {
+ /// true, if a value is specified for ,
+ /// false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool widthSpecified {
get {
- return this.lastModifiedDateTimeField;
+ return this.widthFieldSpecified;
}
set {
- this.lastModifiedDateTimeField = value;
+ this.widthFieldSpecified = value;
}
}
- /// A collection of custom targeting value IDs manually assigned to this content by
- /// the user. This attribute is optional.
+ /// Height of the widget in pixels. This attribute is readonly.
///
- [System.Xml.Serialization.XmlElementAttribute("userDefinedCustomTargetingValueIds", Order = 12)]
- public long[] userDefinedCustomTargetingValueIds {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 4)]
+ public int height {
get {
- return this.userDefinedCustomTargetingValueIdsField;
+ return this.heightField;
}
set {
- this.userDefinedCustomTargetingValueIdsField = value;
+ this.heightField = value;
+ this.heightSpecified = true;
}
}
- /// A collection of custom targeting value IDs automatically targeted to this
- /// content via metadata mapping rules. This attribute is read-only.
- ///
- [System.Xml.Serialization.XmlElementAttribute("mappingRuleDefinedCustomTargetingValueIds", Order = 13)]
- public long[] mappingRuleDefinedCustomTargetingValueIds {
+ /// true, if a value is specified for ,
+ /// false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool heightSpecified {
get {
- return this.mappingRuleDefinedCustomTargetingValueIdsField;
+ return this.heightFieldSpecified;
}
set {
- this.mappingRuleDefinedCustomTargetingValueIdsField = value;
+ this.heightFieldSpecified = value;
}
}
- /// Information about the content from the CMS it was ingested from. This attribute
- /// is read-only.
+ /// The URL of the asset. This attribute is readonly.
///
- [System.Xml.Serialization.XmlElementAttribute("cmsSources", Order = 14)]
- public CmsContent[] cmsSources {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 5)]
+ public string url {
get {
- return this.cmsSourcesField;
+ return this.urlField;
}
set {
- this.cmsSourcesField = value;
+ this.urlField = value;
}
}
}
- /// Describes the status of a Content object.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum ContentStatus {
- /// Indicates the Content has been created and is eligible to
- /// have ads served against it.
- ///
- ACTIVE = 0,
- /// Indicates the Content has been deactivated and cannot have
- /// ads served against it.
- ///
- INACTIVE = 1,
- /// Indicates the Content has been archived; user-visible.
- ///
- ARCHIVED = 2,
- /// The value returned if the actual value is not exposed by the requested API
- /// version.
- ///
- UNKNOWN = 3,
- }
-
-
- /// Describes who defined the effective status of the Content.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum ContentStatusDefinedBy {
- /// Indicates that the status of the Content is defined by the CMS.
- ///
- CMS = 0,
- /// Indicates that the status of the Content is defined by the user.
- ///
- USER = 1,
- }
-
-
- /// The status of the DAI ingestion process. Only content with a status of #SUCCESS will be available for dynamic ad insertion.
+ /// Type of RichMediaStudioChildAssetProperty
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum DaiIngestStatus {
- /// The content was successfully ingested for DAI.
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "RichMediaStudioChildAssetProperty.Type", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum RichMediaStudioChildAssetPropertyType {
+ /// SWF files
///
- SUCCESS = 0,
- /// There was a non-fatal issue during the DAI ingestion proccess.
+ FLASH = 0,
+ /// FLVS and any other video file types
///
- WARNING = 1,
- /// There was a non-fatal issue during the DAI ingestion proccess and the content is
- /// not available for dynamic ad insertion.
+ VIDEO = 1,
+ /// Image files
///
- FAILURE = 2,
- /// The value returned if the actual value is not exposed by the requested API
- /// version.
+ IMAGE = 2,
+ /// The rest of the supported file types .txt, .xml, etc.
///
- UNKNOWN = 3,
+ DATA = 3,
}
- /// Captures a page of Content objects.
+ /// The value of a CustomField for a particular entity.
///
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(DropDownCustomFieldValue))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(CustomFieldValue))]
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class ContentPage {
- private int totalResultSetSizeField;
-
- private bool totalResultSetSizeFieldSpecified;
-
- private int startIndexField;
-
- private bool startIndexFieldSpecified;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public abstract partial class BaseCustomFieldValue {
+ private long customFieldIdField;
- private Content[] resultsField;
+ private bool customFieldIdFieldSpecified;
- /// The size of the total result set to which this page belongs.
+ /// Id of the CustomField to which this value belongs. This attribute
+ /// is required.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public int totalResultSetSize {
+ public long customFieldId {
get {
- return this.totalResultSetSizeField;
+ return this.customFieldIdField;
}
set {
- this.totalResultSetSizeField = value;
- this.totalResultSetSizeSpecified = true;
+ this.customFieldIdField = value;
+ this.customFieldIdSpecified = true;
}
}
/// true, if a value is specified for , false otherwise.
+ /// cref="customFieldId" />, false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool totalResultSetSizeSpecified {
+ public bool customFieldIdSpecified {
get {
- return this.totalResultSetSizeFieldSpecified;
+ return this.customFieldIdFieldSpecified;
}
set {
- this.totalResultSetSizeFieldSpecified = value;
+ this.customFieldIdFieldSpecified = value;
}
}
+ }
- /// The absolute index in the total result set on which this page begins.
+
+ /// A CustomFieldValue for a CustomField that has a CustomField#dataType of CustomFieldDataType#DROP_DOWN
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class DropDownCustomFieldValue : BaseCustomFieldValue {
+ private long customFieldOptionIdField;
+
+ private bool customFieldOptionIdFieldSpecified;
+
+ /// The ID of the CustomFieldOption for this value.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
- public int startIndex {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
+ public long customFieldOptionId {
get {
- return this.startIndexField;
+ return this.customFieldOptionIdField;
}
set {
- this.startIndexField = value;
- this.startIndexSpecified = true;
+ this.customFieldOptionIdField = value;
+ this.customFieldOptionIdSpecified = true;
}
}
- /// true, if a value is specified for , false otherwise.
+ /// true, if a value is specified for , false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool startIndexSpecified {
+ public bool customFieldOptionIdSpecified {
get {
- return this.startIndexFieldSpecified;
+ return this.customFieldOptionIdFieldSpecified;
}
set {
- this.startIndexFieldSpecified = value;
+ this.customFieldOptionIdFieldSpecified = value;
}
}
+ }
- /// The collection of content contained within this page.
+
+ /// The value of a CustomField that does not have a CustomField#dataType of CustomFieldDataType#DROP_DOWN.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class CustomFieldValue : BaseCustomFieldValue {
+ private Value valueField;
+
+ /// The value for this field. The appropriate type of Value is
+ /// determined by the CustomField#dataType of the
+ /// that this conforms to.
///
- [System.Xml.Serialization.XmlElementAttribute("results", Order = 2)]
- public Content[] results {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
+ public Value value {
get {
- return this.resultsField;
+ return this.valueField;
}
set {
- this.resultsField = value;
+ this.valueField = value;
}
}
}
- /// An error for a field which is an invalid type.
+ /// Represents a Label that can be applied to an entity. To
+ /// negate an inherited label, create an with labelId as
+ /// the inherited label's ID and isNegated set to true.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class TypeError : ApiError {
- }
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class AppliedLabel {
+ private long labelIdField;
+ private bool labelIdFieldSpecified;
- /// Lists all errors associated with URLs.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class InvalidUrlError : ApiError {
- private InvalidUrlErrorReason reasonField;
+ private bool isNegatedField;
- private bool reasonFieldSpecified;
+ private bool isNegatedFieldSpecified;
+ /// The ID of a created Label.
+ ///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public InvalidUrlErrorReason reason {
+ public long labelId {
get {
- return this.reasonField;
+ return this.labelIdField;
}
set {
- this.reasonField = value;
- this.reasonSpecified = true;
+ this.labelIdField = value;
+ this.labelIdSpecified = true;
}
}
- /// true, if a value is specified for ,
+ /// true, if a value is specified for ,
/// false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool reasonSpecified {
+ public bool labelIdSpecified {
get {
- return this.reasonFieldSpecified;
+ return this.labelIdFieldSpecified;
}
set {
- this.reasonFieldSpecified = value;
+ this.labelIdFieldSpecified = value;
+ }
+ }
+
+ /// isNegated should be set to true to negate the effects
+ /// of labelId.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
+ public bool isNegated {
+ get {
+ return this.isNegatedField;
+ }
+ set {
+ this.isNegatedField = value;
+ this.isNegatedSpecified = true;
+ }
+ }
+
+ /// true, if a value is specified for , false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool isNegatedSpecified {
+ get {
+ return this.isNegatedFieldSpecified;
+ }
+ set {
+ this.isNegatedFieldSpecified = value;
}
}
}
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "InvalidUrlError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum InvalidUrlErrorReason {
- /// The URL contains invalid characters.
- ///
- ILLEGAL_CHARACTERS = 0,
- /// The format of the URL is not allowed. This could occur for a number of reasons.
- /// For example, if an invalid scheme is specified (like "ftp://") or if a port is
- /// specified when not required, or if a query was specified when not required.
- ///
- INVALID_FORMAT = 1,
- /// URL contains insecure scheme.
- ///
- INSECURE_SCHEME = 2,
- /// The URL does not contain a scheme.
- ///
- NO_SCHEME = 3,
- /// The value returned if the actual value is not exposed by the requested API
- /// version.
- ///
- UNKNOWN = 4,
- }
-
-
- [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
- [System.ServiceModel.ServiceContractAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808", ConfigurationName = "Google.Api.Ads.AdManager.v201808.ContentServiceInterface")]
- public interface ContentServiceInterface
- {
- [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
- [System.ServiceModel.FaultContractAttribute(typeof(Google.Api.Ads.AdManager.v201808.ApiException), Action = "", Name = "ApiExceptionFault")]
- [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults = true)]
- [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApplicationException))]
- [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
- Google.Api.Ads.AdManager.v201808.ContentPage getContentByStatement(Google.Api.Ads.AdManager.v201808.Statement statement);
-
- [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
- [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
- System.Threading.Tasks.Task getContentByStatementAsync(Google.Api.Ads.AdManager.v201808.Statement statement);
-
- [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
- [System.ServiceModel.FaultContractAttribute(typeof(Google.Api.Ads.AdManager.v201808.ApiException), Action = "", Name = "ApiExceptionFault")]
- [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults = true)]
- [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApplicationException))]
- [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
- Google.Api.Ads.AdManager.v201808.ContentPage getContentByStatementAndCustomTargetingValue(Google.Api.Ads.AdManager.v201808.Statement filterStatement, long customTargetingValueId);
-
- [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
- [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
- System.Threading.Tasks.Task getContentByStatementAndCustomTargetingValueAsync(Google.Api.Ads.AdManager.v201808.Statement filterStatement, long customTargetingValueId);
- }
-
-
- [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
- public interface ContentServiceInterfaceChannel : Google.Api.Ads.AdManager.v201808.ContentServiceInterface, System.ServiceModel.IClientChannel
- {
- }
-
-
- /// Service for retrieving Content.
Content
- /// entities can be targeted in video LineItems.
You
- /// can query for content that belongs to a particular category or has assigned
- /// metadata. Categories and metadata for are stored in DFP as CustomCriteria.
For example, to find all
- /// Content that is "genre=comedy", you would:
- /// a Publisher Query Language statement used to filter a
- /// set of content
- /// the content that matches the given filter
- public virtual Google.Api.Ads.AdManager.v201808.ContentPage getContentByStatement(Google.Api.Ads.AdManager.v201808.Statement statement) {
- return base.Channel.getContentByStatement(statement);
- }
-
- public virtual System.Threading.Tasks.Task getContentByStatementAsync(Google.Api.Ads.AdManager.v201808.Statement statement) {
- return base.Channel.getContentByStatementAsync(statement);
- }
-
- /// Gets a ContentPage of Content
- /// objects that satisfy the given Statement#query.
- /// Additionally, filters on the given value ID and key ID that the value belongs
- /// to. The following fields are supported for filtering:
- /// a Publisher Query Language statement used to
- /// filter a set of content
- /// the id of the value to match
- /// the content that matches the given filter
- public virtual Google.Api.Ads.AdManager.v201808.ContentPage getContentByStatementAndCustomTargetingValue(Google.Api.Ads.AdManager.v201808.Statement filterStatement, long customTargetingValueId) {
- return base.Channel.getContentByStatementAndCustomTargetingValue(filterStatement, customTargetingValueId);
- }
-
- public virtual System.Threading.Tasks.Task getContentByStatementAndCustomTargetingValueAsync(Google.Api.Ads.AdManager.v201808.Statement filterStatement, long customTargetingValueId) {
- return base.Channel.getContentByStatementAndCustomTargetingValueAsync(filterStatement, customTargetingValueId);
- }
- }
- namespace Wrappers.CreativeService
- {
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
- [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
- [System.ServiceModel.MessageContractAttribute(WrapperName = "createCreatives", WrapperNamespace = "https://www.google.com/apis/ads/publisher/v201808", IsWrapped = true)]
- public partial class createCreativesRequest {
- [System.ServiceModel.MessageBodyMemberAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808", Order = 0)]
- [System.Xml.Serialization.XmlElementAttribute("creatives")]
- public Google.Api.Ads.AdManager.v201808.Creative[] creatives;
-
- /// Creates a new instance of the
- /// class.
- public createCreativesRequest() {
- }
-
- /// Creates a new instance of the
- /// class.
- public createCreativesRequest(Google.Api.Ads.AdManager.v201808.Creative[] creatives) {
- this.creatives = creatives;
- }
- }
-
-
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
- [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
- [System.ServiceModel.MessageContractAttribute(WrapperName = "createCreativesResponse", WrapperNamespace = "https://www.google.com/apis/ads/publisher/v201808", IsWrapped = true)]
- public partial class createCreativesResponse {
- [System.ServiceModel.MessageBodyMemberAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808", Order = 0)]
- [System.Xml.Serialization.XmlElementAttribute("rval")]
- public Google.Api.Ads.AdManager.v201808.Creative[] rval;
-
- /// Creates a new instance of the
- /// class.
- public createCreativesResponse() {
- }
-
- /// Creates a new instance of the
- /// class.
- public createCreativesResponse(Google.Api.Ads.AdManager.v201808.Creative[] rval) {
- this.rval = rval;
- }
- }
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public abstract partial class Creative {
+ private long advertiserIdField;
+ private bool advertiserIdFieldSpecified;
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
- [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
- [System.ServiceModel.MessageContractAttribute(WrapperName = "updateCreatives", WrapperNamespace = "https://www.google.com/apis/ads/publisher/v201808", IsWrapped = true)]
- public partial class updateCreativesRequest {
- [System.ServiceModel.MessageBodyMemberAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808", Order = 0)]
- [System.Xml.Serialization.XmlElementAttribute("creatives")]
- public Google.Api.Ads.AdManager.v201808.Creative[] creatives;
+ private long idField;
- /// Creates a new instance of the
- /// class.
- public updateCreativesRequest() {
- }
+ private bool idFieldSpecified;
- /// Creates a new instance of the
- /// class.
- public updateCreativesRequest(Google.Api.Ads.AdManager.v201808.Creative[] creatives) {
- this.creatives = creatives;
- }
- }
+ private string nameField;
+ private Size sizeField;
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
- [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
- [System.ServiceModel.MessageContractAttribute(WrapperName = "updateCreativesResponse", WrapperNamespace = "https://www.google.com/apis/ads/publisher/v201808", IsWrapped = true)]
- public partial class updateCreativesResponse {
- [System.ServiceModel.MessageBodyMemberAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808", Order = 0)]
- [System.Xml.Serialization.XmlElementAttribute("rval")]
- public Google.Api.Ads.AdManager.v201808.Creative[] rval;
+ private string previewUrlField;
- /// Creates a new instance of the
- /// class.
- public updateCreativesResponse() {
- }
+ private CreativePolicyViolation[] policyViolationsField;
- /// Creates a new instance of the
- /// class.
- public updateCreativesResponse(Google.Api.Ads.AdManager.v201808.Creative[] rval) {
- this.rval = rval;
- }
- }
- }
- /// A base class for storing values of the CreativeTemplateVariable.
- ///
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(UrlCreativeTemplateVariableValue))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(StringCreativeTemplateVariableValue))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(LongCreativeTemplateVariableValue))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(AssetCreativeTemplateVariableValue))]
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public abstract partial class BaseCreativeTemplateVariableValue {
- private string uniqueNameField;
+ private CreativePolicyViolation[] policyLabelsField;
- /// A uniqueName of the CreativeTemplateVariable.
- ///
- [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public string uniqueName {
- get {
- return this.uniqueNameField;
- }
- set {
- this.uniqueNameField = value;
- }
- }
- }
+ private AppliedLabel[] appliedLabelsField;
+ private DateTime lastModifiedDateTimeField;
- /// Stores values of CreativeTemplateVariable
- /// of VariableType#URL.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class UrlCreativeTemplateVariableValue : BaseCreativeTemplateVariableValue {
- private string valueField;
+ private BaseCustomFieldValue[] customFieldValuesField;
- /// The url value of CreativeTemplateVariable
+ /// The ID of the advertiser that owns the creative. This attribute is required.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public string value {
+ public long advertiserId {
get {
- return this.valueField;
+ return this.advertiserIdField;
}
set {
- this.valueField = value;
+ this.advertiserIdField = value;
+ this.advertiserIdSpecified = true;
}
}
- }
-
-
- /// Stores values of CreativeTemplateVariable
- /// of VariableType#STRING and VariableType#LIST.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class StringCreativeTemplateVariableValue : BaseCreativeTemplateVariableValue {
- private string valueField;
- /// The string value of CreativeTemplateVariable
- ///
- [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public string value {
+ /// true, if a value is specified for , false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool advertiserIdSpecified {
get {
- return this.valueField;
+ return this.advertiserIdFieldSpecified;
}
set {
- this.valueField = value;
+ this.advertiserIdFieldSpecified = value;
}
}
- }
-
-
- /// Stores values of CreativeTemplateVariable
- /// of VariableType#LONG.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class LongCreativeTemplateVariableValue : BaseCreativeTemplateVariableValue {
- private long valueField;
-
- private bool valueFieldSpecified;
- /// The long value of CreativeTemplateVariable
+ /// Uniquely identifies the Creative. This value is read-only and is
+ /// assigned by Google when the creative is created. This attribute is required for
+ /// updates.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public long value {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
+ public long id {
get {
- return this.valueField;
+ return this.idField;
}
set {
- this.valueField = value;
- this.valueSpecified = true;
+ this.idField = value;
+ this.idSpecified = true;
}
}
- /// true, if a value is specified for ,
+ /// true, if a value is specified for ,
/// false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool valueSpecified {
+ public bool idSpecified {
get {
- return this.valueFieldSpecified;
+ return this.idFieldSpecified;
}
set {
- this.valueFieldSpecified = value;
+ this.idFieldSpecified = value;
}
}
- }
-
-
- /// Stores values of CreativeTemplateVariable
- /// of VariableType#ASSET.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class AssetCreativeTemplateVariableValue : BaseCreativeTemplateVariableValue {
- private CreativeAsset assetField;
- /// The associated asset. This attribute is required when creating a new
- /// TemplateCreative. To view the asset, use CreativeAsset#assetUrl.
+ /// The name of the creative. This attribute is required and has a maximum length of
+ /// 255 characters.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public CreativeAsset asset {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 2)]
+ public string name {
get {
- return this.assetField;
+ return this.nameField;
}
set {
- this.assetField = value;
+ this.nameField = value;
}
}
- }
-
-
- /// A CreativeAsset is an asset that can be used in creatives.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class CreativeAsset {
- private long assetIdField;
-
- private bool assetIdFieldSpecified;
-
- private byte[] assetByteArrayField;
-
- private string fileNameField;
-
- private long fileSizeField;
-
- private bool fileSizeFieldSpecified;
-
- private string assetUrlField;
-
- private Size sizeField;
-
- private ClickTag[] clickTagsField;
-
- private ImageDensity imageDensityField;
-
- private bool imageDensityFieldSpecified;
- /// The ID of the asset. This attribute is generated by Google upon creation.
+ /// The Size of the creative. This attribute is required for
+ /// creation and then is read-only.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public long assetId {
- get {
- return this.assetIdField;
- }
- set {
- this.assetIdField = value;
- this.assetIdSpecified = true;
- }
- }
-
- /// true, if a value is specified for ,
- /// false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool assetIdSpecified {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 3)]
+ public Size size {
get {
- return this.assetIdFieldSpecified;
+ return this.sizeField;
}
set {
- this.assetIdFieldSpecified = value;
+ this.sizeField = value;
}
}
- /// The content of the asset as a byte array. This attribute is required when
- /// creating the creative that contains this asset if an assetId is not
- /// provided. When updating the content, pass a new byte array, and set
- /// to null. Otherwise, this field can be null. The
- /// assetByteArray will be null when the creative is
- /// retrieved.
+ /// The URL of the creative for previewing the media. This attribute is read-only
+ /// and is assigned by Google when a creative is created.
///
- [System.Xml.Serialization.XmlElementAttribute(DataType = "base64Binary", Order = 1)]
- public byte[] assetByteArray {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 4)]
+ public string previewUrl {
get {
- return this.assetByteArrayField;
+ return this.previewUrlField;
}
set {
- this.assetByteArrayField = value;
+ this.previewUrlField = value;
}
}
- /// The file name of the asset. This attribute is required when creating a new asset
- /// (e.g. when #assetByteArray is not null).
+ /// Set of policy violations detected for this creative. This attribute is
+ /// read-only.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 2)]
- public string fileName {
+ [System.Xml.Serialization.XmlElementAttribute("policyViolations", Order = 5)]
+ public CreativePolicyViolation[] policyViolations {
get {
- return this.fileNameField;
+ return this.policyViolationsField;
}
set {
- this.fileNameField = value;
+ this.policyViolationsField = value;
}
}
- /// The file size of the asset in bytes. This attribute is read-only.
+ /// Set of policy labels detected for this creative. This attribute is read-only.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 3)]
- public long fileSize {
+ [System.Xml.Serialization.XmlElementAttribute("policyLabels", Order = 6)]
+ public CreativePolicyViolation[] policyLabels {
get {
- return this.fileSizeField;
+ return this.policyLabelsField;
}
set {
- this.fileSizeField = value;
- this.fileSizeSpecified = true;
+ this.policyLabelsField = value;
}
}
- /// true, if a value is specified for , false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool fileSizeSpecified {
+ /// The set of labels applied to this creative.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute("appliedLabels", Order = 7)]
+ public AppliedLabel[] appliedLabels {
get {
- return this.fileSizeFieldSpecified;
+ return this.appliedLabelsField;
}
set {
- this.fileSizeFieldSpecified = value;
+ this.appliedLabelsField = value;
}
}
- /// A URL where the asset can be previewed at. This field is read-only and set by
- /// Google.
+ /// The date and time this creative was last modified.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 4)]
- public string assetUrl {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 8)]
+ public DateTime lastModifiedDateTime {
get {
- return this.assetUrlField;
+ return this.lastModifiedDateTimeField;
}
set {
- this.assetUrlField = value;
+ this.lastModifiedDateTimeField = value;
}
}
- /// The size of the asset. Note that this may not always reflect the actual physical
- /// size of the asset, but may reflect the expected size. This attribute is
- /// read-only and is populated by Google.
+ /// The values of the custom fields associated with this creative.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 5)]
- public Size size {
+ [System.Xml.Serialization.XmlElementAttribute("customFieldValues", Order = 9)]
+ public BaseCustomFieldValue[] customFieldValues {
get {
- return this.sizeField;
+ return this.customFieldValuesField;
}
set {
- this.sizeField = value;
+ this.customFieldValuesField = value;
}
}
+ }
- /// The click tags of the asset. This field is read-only.
- ///
- [System.Xml.Serialization.XmlElementAttribute("clickTags", Order = 6)]
- public ClickTag[] clickTags {
+
+ /// Represents the different types of policy violations that may be detected on a
+ /// given creative.
For more information about the various types of policy
+ /// violations, see here.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum CreativePolicyViolation {
+ /// Malware was found in the creative.
+ ///
+ MISREPRESENTATION_OF_PRODUCT = 3,
+ /// The creative has been determined to be self clicking.
+ ///
+ SELF_CLICKING_CREATIVE = 4,
+ /// The creative has been determined as attempting to game the Google network.
+ ///
+ ///
+ DYNAMIC_DNS = 6,
+ /// The creative has been determined as attempting to circumvent Google advertising
+ /// systems.
+ ///
+ CIRCUMVENTING_SYSTEMS = 13,
+ /// Phishing found in creative or landing page.
+ ///
+ UNAUTHORIZED_COOKIE_DETECTED = 10,
+ /// The creative has been temporarily paused while we investigate.
+ ///
+ TEMPORARY_PAUSE_FOR_VENDOR_INVESTIGATION = 11,
+ /// The landing page contains an abusive experience.
+ ///
+ ABUSIVE_EXPERIENCE = 12,
+ /// The value returned if the actual value is not exposed by the requested API
+ /// version.
+ ///
+ UNKNOWN = 8,
+ }
+
+
+ /// A Creative that points to an externally hosted VAST ad and is
+ /// served via VAST XML as a VAST Wrapper.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class VastRedirectCreative : Creative {
+ private string vastXmlUrlField;
+
+ private VastRedirectType vastRedirectTypeField;
+
+ private bool vastRedirectTypeFieldSpecified;
+
+ private int durationField;
+
+ private bool durationFieldSpecified;
+
+ private long[] companionCreativeIdsField;
+
+ private ConversionEvent_TrackingUrlsMapEntry[] trackingUrlsField;
+
+ private string vastPreviewUrlField;
+
+ private SslScanResult sslScanResultField;
+
+ private bool sslScanResultFieldSpecified;
+
+ private SslManualOverride sslManualOverrideField;
+
+ private bool sslManualOverrideFieldSpecified;
+
+ /// The URL where the 3rd party VAST XML is hosted. This attribute is required.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
+ public string vastXmlUrl {
get {
- return this.clickTagsField;
+ return this.vastXmlUrlField;
}
set {
- this.clickTagsField = value;
+ this.vastXmlUrlField = value;
}
}
- /// The display density of the image. This is the ratio between a dimension in
- /// pixels of the image and the dimension in pixels that it should occupy in
- /// device-independent pixels when displayed. This attribute is optional and
- /// defaults to ONE_TO_ONE.
+ /// The type of VAST ad that this redirects to. This attribute is required.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 7)]
- public ImageDensity imageDensity {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
+ public VastRedirectType vastRedirectType {
get {
- return this.imageDensityField;
+ return this.vastRedirectTypeField;
}
set {
- this.imageDensityField = value;
- this.imageDensitySpecified = true;
+ this.vastRedirectTypeField = value;
+ this.vastRedirectTypeSpecified = true;
}
}
/// true, if a value is specified for , false otherwise.
+ /// cref="vastRedirectType" />, false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool imageDensitySpecified {
+ public bool vastRedirectTypeSpecified {
get {
- return this.imageDensityFieldSpecified;
+ return this.vastRedirectTypeFieldSpecified;
}
set {
- this.imageDensityFieldSpecified = value;
+ this.vastRedirectTypeFieldSpecified = value;
}
}
- }
-
-
- /// Represents the dimensions of an AdUnit, LineItem or Creative.
For
- /// interstitial size (out-of-page), native, ignored and fluid size,
- /// Size must be 1x1.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class Size {
- private int widthField;
-
- private bool widthFieldSpecified;
-
- private int heightField;
-
- private bool heightFieldSpecified;
-
- private bool isAspectRatioField;
-
- private bool isAspectRatioFieldSpecified;
- /// The width of the AdUnit, LineItem or
- /// Creative.
+ /// The duration of the VAST ad in milliseconds. This attribute is required.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public int width {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 2)]
+ public int duration {
get {
- return this.widthField;
+ return this.durationField;
}
set {
- this.widthField = value;
- this.widthSpecified = true;
+ this.durationField = value;
+ this.durationSpecified = true;
}
}
- /// true, if a value is specified for ,
- /// false otherwise.
+ /// true, if a value is specified for , false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool widthSpecified {
+ public bool durationSpecified {
get {
- return this.widthFieldSpecified;
+ return this.durationFieldSpecified;
}
set {
- this.widthFieldSpecified = value;
+ this.durationFieldSpecified = value;
}
}
- /// The height of the AdUnit, LineItem
- /// or Creative.
+ /// The IDs of the companion creatives that are associated with this creative. This
+ /// attribute is optional.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
- public int height {
+ [System.Xml.Serialization.XmlElementAttribute("companionCreativeIds", Order = 3)]
+ public long[] companionCreativeIds {
get {
- return this.heightField;
+ return this.companionCreativeIdsField;
}
set {
- this.heightField = value;
- this.heightSpecified = true;
+ this.companionCreativeIdsField = value;
}
}
- /// true, if a value is specified for ,
- /// false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool heightSpecified {
+ /// A map from ConversionEvent to a list of URLs that will be pinged
+ /// when the event happens. This attribute is optional.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute("trackingUrls", Order = 4)]
+ public ConversionEvent_TrackingUrlsMapEntry[] trackingUrls {
get {
- return this.heightFieldSpecified;
+ return this.trackingUrlsField;
}
set {
- this.heightFieldSpecified = value;
+ this.trackingUrlsField = value;
}
}
- /// True if this size represents an aspect ratio, false otherwise.
+ /// An ad tag URL that will return a preview of the VAST XML response specific to
+ /// this creative. This attribute is read-only.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 2)]
- public bool isAspectRatio {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 5)]
+ public string vastPreviewUrl {
get {
- return this.isAspectRatioField;
+ return this.vastPreviewUrlField;
}
set {
- this.isAspectRatioField = value;
- this.isAspectRatioSpecified = true;
+ this.vastPreviewUrlField = value;
+ }
+ }
+
+ /// The SSL compatibility scan result for this creative.
This attribute is
+ /// read-only and determined by Google.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 6)]
+ public SslScanResult sslScanResult {
+ get {
+ return this.sslScanResultField;
+ }
+ set {
+ this.sslScanResultField = value;
+ this.sslScanResultSpecified = true;
}
}
/// true, if a value is specified for , false otherwise.
+ /// cref="sslScanResult" />, false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool isAspectRatioSpecified {
+ public bool sslScanResultSpecified {
get {
- return this.isAspectRatioFieldSpecified;
+ return this.sslScanResultFieldSpecified;
}
set {
- this.isAspectRatioFieldSpecified = value;
+ this.sslScanResultFieldSpecified = value;
}
}
- }
-
-
- /// Click tags define click-through URLs for each exit on an HTML5 creative. An exit
- /// is any area that can be clicked that directs the browser to a landing page. Each
- /// click tag defines the click-through URL for a different exit. In Ad Manager,
- /// tracking pixels are attached to the click tags if URLs are valid.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class ClickTag {
- private string nameField;
-
- private string urlField;
- /// Name of the click tag, follows the regex "clickTag\\d*"
+ /// The manual override for the SSL compatibility of this creative.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public string name {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 7)]
+ public SslManualOverride sslManualOverride {
get {
- return this.nameField;
+ return this.sslManualOverrideField;
}
set {
- this.nameField = value;
+ this.sslManualOverrideField = value;
+ this.sslManualOverrideSpecified = true;
}
}
- /// URL of the click tag.
- ///
- [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
- public string url {
+ /// true, if a value is specified for , false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool sslManualOverrideSpecified {
get {
- return this.urlField;
+ return this.sslManualOverrideFieldSpecified;
}
set {
- this.urlField = value;
+ this.sslManualOverrideFieldSpecified = value;
}
}
}
- /// Image densities.
+ /// The types of VAST ads that a VastRedirectCreative can point to.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum ImageDensity {
- /// Indicates that there is a 1:1 ratio between the dimensions of the raw image and
- /// the dimensions that it should be displayed at in device-independent pixels.
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum VastRedirectType {
+ /// The VAST XML contains only linear ads.
///
- ONE_TO_ONE = 0,
- /// Indicates that there is a 3:2 ratio between the dimensions of the raw image and
- /// the dimensions that it should be displayed at in device-independent pixels.
+ LINEAR = 0,
+ /// The VAST XML contains only nonlinear ads.
///
- THREE_TO_TWO = 1,
- /// Indicates that there is a 2:1 ratio between the dimensions of the raw image and
- /// the dimensions that it should be displayed at in device-independent pixels.
+ NON_LINEAR = 1,
+ /// The VAST XML contains both linear and nonlinear ads.
///
- TWO_TO_ONE = 2,
+ LINEAR_AND_NON_LINEAR = 2,
+ }
+
+
+ /// Enum to store the creative SSL compatibility scan result.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum SslScanResult {
/// The value returned if the actual value is not exposed by the requested API
/// version.
///
- UNKNOWN = 3,
+ UNKNOWN = 0,
+ UNSCANNED = 1,
+ SCANNED_SSL = 2,
+ SCANNED_NON_SSL = 3,
}
- /// A CustomCreativeAsset is an association between a CustomCreative and an asset. Any assets that are
- /// associated with a creative can be inserted into its HTML snippet.
+ /// Enum to store the creative SSL compatibility manual override. Its three states
+ /// are similar to that of SslScanResult.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum SslManualOverride {
+ /// The value returned if the actual value is not exposed by the requested API
+ /// version.
+ ///
+ UNKNOWN = 0,
+ NO_OVERRIDE = 1,
+ SSL_COMPATIBLE = 2,
+ NOT_SSL_COMPATIBLE = 3,
+ }
+
+
+ /// A Creative that isn't supported by this version of the API. This
+ /// object is readonly and when encountered should be reported on the Ad Manager API
+ /// forum.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class CustomCreativeAsset {
- private string macroNameField;
-
- private CreativeAsset assetField;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class UnsupportedCreative : Creative {
+ private string unsupportedCreativeTypeField;
- /// The name by which the associated asset will be referenced. For example, if the
- /// value is "foo", then the asset can be inserted into an HTML snippet using the
- /// macro: "%%FILE:foo%%".
+ /// The creative type that is unsupported by this API version.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public string macroName {
- get {
- return this.macroNameField;
- }
- set {
- this.macroNameField = value;
- }
- }
-
- /// The asset. This attribute is required. To view the asset, use CreativeAsset#assetUrl.
- ///
- [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
- public CreativeAsset asset {
+ public string unsupportedCreativeType {
get {
- return this.assetField;
+ return this.unsupportedCreativeTypeField;
}
set {
- this.assetField = value;
+ this.unsupportedCreativeTypeField = value;
}
}
}
- /// Metadata for a video asset.
+ /// A Creative that is served by a 3rd-party vendor.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class VideoMetadata {
- private ScalableType scalableTypeField;
-
- private bool scalableTypeFieldSpecified;
-
- private int durationField;
-
- private bool durationFieldSpecified;
-
- private int bitRateField;
-
- private bool bitRateFieldSpecified;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class ThirdPartyCreative : Creative {
+ private string snippetField;
- private int minimumBitRateField;
+ private string expandedSnippetField;
- private bool minimumBitRateFieldSpecified;
+ private SslScanResult sslScanResultField;
- private int maximumBitRateField;
+ private bool sslScanResultFieldSpecified;
- private bool maximumBitRateFieldSpecified;
+ private SslManualOverride sslManualOverrideField;
- private Size sizeField;
+ private bool sslManualOverrideFieldSpecified;
- private MimeType mimeTypeField;
+ private LockedOrientation lockedOrientationField;
- private bool mimeTypeFieldSpecified;
+ private bool lockedOrientationFieldSpecified;
- private VideoDeliveryType deliveryTypeField;
+ private bool isSafeFrameCompatibleField;
- private bool deliveryTypeFieldSpecified;
+ private bool isSafeFrameCompatibleFieldSpecified;
- private string[] codecsField;
+ private string[] thirdPartyImpressionTrackingUrlsField;
- /// The scalable type of the asset. This attribute is required.
+ /// The HTML snippet that this creative delivers. This attribute is required.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public ScalableType scalableType {
+ public string snippet {
get {
- return this.scalableTypeField;
+ return this.snippetField;
}
set {
- this.scalableTypeField = value;
- this.scalableTypeSpecified = true;
+ this.snippetField = value;
}
}
- /// true, if a value is specified for , false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool scalableTypeSpecified {
+ /// The HTML snippet that this creative delivers with macros expanded. This
+ /// attribute is read-only and is set by Google.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
+ public string expandedSnippet {
get {
- return this.scalableTypeFieldSpecified;
+ return this.expandedSnippetField;
}
set {
- this.scalableTypeFieldSpecified = value;
+ this.expandedSnippetField = value;
}
}
- /// The duration of the asset in milliseconds. This attribute is required.
+ /// The SSL compatibility scan result for this creative.
This attribute is
+ /// read-only and determined by Google.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
- public int duration {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 2)]
+ public SslScanResult sslScanResult {
get {
- return this.durationField;
+ return this.sslScanResultField;
}
set {
- this.durationField = value;
- this.durationSpecified = true;
+ this.sslScanResultField = value;
+ this.sslScanResultSpecified = true;
}
}
- /// true, if a value is specified for , false otherwise.
+ /// true, if a value is specified for , false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool durationSpecified {
+ public bool sslScanResultSpecified {
get {
- return this.durationFieldSpecified;
+ return this.sslScanResultFieldSpecified;
}
set {
- this.durationFieldSpecified = value;
+ this.sslScanResultFieldSpecified = value;
}
}
- /// The bit rate of the asset in kbps. If the asset can play at a range of bit rates
- /// (such as an Http Live Streaming video), then set the bit rate to zero and
- /// populate the minimum and maximum bit rate instead.
+ /// The manual override for the SSL compatibility of this creative.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 2)]
- public int bitRate {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 3)]
+ public SslManualOverride sslManualOverride {
get {
- return this.bitRateField;
+ return this.sslManualOverrideField;
}
set {
- this.bitRateField = value;
- this.bitRateSpecified = true;
+ this.sslManualOverrideField = value;
+ this.sslManualOverrideSpecified = true;
}
}
- /// true, if a value is specified for ,
- /// false otherwise.
+ /// true, if a value is specified for , false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool bitRateSpecified {
+ public bool sslManualOverrideSpecified {
get {
- return this.bitRateFieldSpecified;
+ return this.sslManualOverrideFieldSpecified;
}
set {
- this.bitRateFieldSpecified = value;
+ this.sslManualOverrideFieldSpecified = value;
}
}
- /// The minimum bitrate of the video in kbps. Only set this if the asset can play at
- /// a range of bit rates.
+ /// A locked orientation for this creative to be displayed in.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 3)]
- public int minimumBitRate {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 4)]
+ public LockedOrientation lockedOrientation {
get {
- return this.minimumBitRateField;
+ return this.lockedOrientationField;
}
set {
- this.minimumBitRateField = value;
- this.minimumBitRateSpecified = true;
+ this.lockedOrientationField = value;
+ this.lockedOrientationSpecified = true;
}
}
/// true, if a value is specified for , false otherwise.
+ /// cref="lockedOrientation" />, false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool minimumBitRateSpecified {
+ public bool lockedOrientationSpecified {
get {
- return this.minimumBitRateFieldSpecified;
+ return this.lockedOrientationFieldSpecified;
}
set {
- this.minimumBitRateFieldSpecified = value;
+ this.lockedOrientationFieldSpecified = value;
}
}
- /// The maximum bitrate of the video in kbps. Only set this if the asset can play at
- /// a range of bit rates.
+ /// Whether the Creative is compatible for SafeFrame
+ /// rendering.
This attribute is optional and defaults to true.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 4)]
- public int maximumBitRate {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 5)]
+ public bool isSafeFrameCompatible {
get {
- return this.maximumBitRateField;
+ return this.isSafeFrameCompatibleField;
}
set {
- this.maximumBitRateField = value;
- this.maximumBitRateSpecified = true;
+ this.isSafeFrameCompatibleField = value;
+ this.isSafeFrameCompatibleSpecified = true;
}
}
/// true, if a value is specified for , false otherwise.
+ /// cref="isSafeFrameCompatible" />, false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool maximumBitRateSpecified {
+ public bool isSafeFrameCompatibleSpecified {
get {
- return this.maximumBitRateFieldSpecified;
+ return this.isSafeFrameCompatibleFieldSpecified;
}
set {
- this.maximumBitRateFieldSpecified = value;
+ this.isSafeFrameCompatibleFieldSpecified = value;
}
}
- /// The size (width and height) of the asset. This attribute is required.
+ /// A list of impression tracking URLs to ping when this creative is displayed. This
+ /// field is optional.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 5)]
- public Size size {
+ [System.Xml.Serialization.XmlElementAttribute("thirdPartyImpressionTrackingUrls", Order = 6)]
+ public string[] thirdPartyImpressionTrackingUrls {
get {
- return this.sizeField;
+ return this.thirdPartyImpressionTrackingUrlsField;
}
set {
- this.sizeField = value;
+ this.thirdPartyImpressionTrackingUrlsField = value;
}
}
+ }
- /// The mime type of the asset. This attribute is required.
+
+ /// Describes the orientation that a creative should be served with.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum LockedOrientation {
+ /// The value returned if the actual value is not exposed by the requested API
+ /// version.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 6)]
- public MimeType mimeType {
+ UNKNOWN = 0,
+ FREE_ORIENTATION = 1,
+ PORTRAIT_ONLY = 2,
+ LANDSCAPE_ONLY = 3,
+ }
+
+
+ /// A Creative that is created by the specified creative template.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class TemplateCreative : Creative {
+ private long creativeTemplateIdField;
+
+ private bool creativeTemplateIdFieldSpecified;
+
+ private bool isInterstitialField;
+
+ private bool isInterstitialFieldSpecified;
+
+ private bool isNativeEligibleField;
+
+ private bool isNativeEligibleFieldSpecified;
+
+ private bool isSafeFrameCompatibleField;
+
+ private bool isSafeFrameCompatibleFieldSpecified;
+
+ private string destinationUrlField;
+
+ private BaseCreativeTemplateVariableValue[] creativeTemplateVariableValuesField;
+
+ private SslScanResult sslScanResultField;
+
+ private bool sslScanResultFieldSpecified;
+
+ private SslManualOverride sslManualOverrideField;
+
+ private bool sslManualOverrideFieldSpecified;
+
+ private LockedOrientation lockedOrientationField;
+
+ private bool lockedOrientationFieldSpecified;
+
+ /// Creative template ID that this creative is created from.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
+ public long creativeTemplateId {
get {
- return this.mimeTypeField;
+ return this.creativeTemplateIdField;
}
set {
- this.mimeTypeField = value;
- this.mimeTypeSpecified = true;
+ this.creativeTemplateIdField = value;
+ this.creativeTemplateIdSpecified = true;
}
}
- /// true, if a value is specified for , false otherwise.
+ /// true, if a value is specified for , false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool mimeTypeSpecified {
+ public bool creativeTemplateIdSpecified {
get {
- return this.mimeTypeFieldSpecified;
+ return this.creativeTemplateIdFieldSpecified;
}
set {
- this.mimeTypeFieldSpecified = value;
+ this.creativeTemplateIdFieldSpecified = value;
}
}
- /// The delivery type of the asset. This attribute is required.
+ /// true if this template instantiated creative is interstitial. This
+ /// attribute is read-only and is assigned by Google based on the creative template.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 7)]
- public VideoDeliveryType deliveryType {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
+ public bool isInterstitial {
get {
- return this.deliveryTypeField;
+ return this.isInterstitialField;
}
set {
- this.deliveryTypeField = value;
- this.deliveryTypeSpecified = true;
+ this.isInterstitialField = value;
+ this.isInterstitialSpecified = true;
}
}
/// true, if a value is specified for , false otherwise.
+ /// cref="isInterstitial" />, false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool deliveryTypeSpecified {
+ public bool isInterstitialSpecified {
get {
- return this.deliveryTypeFieldSpecified;
+ return this.isInterstitialFieldSpecified;
}
set {
- this.deliveryTypeFieldSpecified = value;
+ this.isInterstitialFieldSpecified = value;
}
}
- /// The codecs of the asset. This attribute is optional and defaults to an empty
- /// list.
+ /// true if this template instantiated creative is eligible for native
+ /// adserving. This attribute is read-only and is assigned by Google based on the
+ /// creative template.
///
- [System.Xml.Serialization.XmlElementAttribute("codecs", Order = 8)]
- public string[] codecs {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 2)]
+ public bool isNativeEligible {
get {
- return this.codecsField;
+ return this.isNativeEligibleField;
}
set {
- this.codecsField = value;
+ this.isNativeEligibleField = value;
+ this.isNativeEligibleSpecified = true;
}
}
- }
-
-
- /// The different ways a video/flash can scale.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum ScalableType {
- /// The value returned if the actual value is not exposed by the requested API
- /// version.
- ///
- UNKNOWN = 0,
- /// The creative should not be scaled.
- ///
- NOT_SCALABLE = 1,
- /// The creative can be scaled and its aspect-ratio must be maintained.
- ///
- RATIO_SCALABLE = 2,
- /// The creative can be scaled and its aspect-ratio can be distorted.
- ///
- STRETCH_SCALABLE = 3,
- }
-
-
- /// Enum of supported mime types
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum MimeType {
- /// The value returned if the actual value is not exposed by the requested API
- /// version.
- ///
- UNKNOWN = 0,
- /// application/x-asp
- ///
- ASP = 1,
- /// audio/aiff
- ///
- AUDIO_AIFF = 2,
- /// audio/basic
- ///
- AUDIO_BASIC = 3,
- /// audio/flac
- ///
- AUDIO_FLAC = 4,
- /// audio/mid
- ///
- AUDIO_MID = 5,
- /// audio/mpeg
- ///
- AUDIO_MP3 = 6,
- /// audio/mp4
- ///
- AUDIO_MP4 = 7,
- /// audio/x-mpegurl
- ///
- AUDIO_MPEG_URL = 8,
- /// audio/x-ms-wma
- ///
- AUDIO_MS_WMA = 9,
- /// audio/ogg
- ///
- AUDIO_OGG = 10,
- /// audio/x-pn-realaudio-plugin
- ///
- AUDIO_REAL_AUDIO_PLUGIN = 11,
- /// audio/x-wav
- ///
- AUDIO_WAV = 12,
- /// application/binary
- ///
- BINARY = 13,
- /// application/dash+xml
- ///
- DASH = 62,
- /// application/x-director
- ///
- DIRECTOR = 14,
- /// application/x-shockwave-flash
- ///
- FLASH = 15,
- /// application/graphicconverter
- ///
- GRAPHIC_CONVERTER = 16,
- /// application/x-javascript
- ///
- JAVASCRIPT = 17,
- /// application/json
- ///
- JSON = 18,
- /// image/x-win-bitmap
- ///
- IMAGE_BITMAP = 19,
- /// image/bmp
- ///
- IMAGE_BMP = 20,
- /// image/gif
- ///
- IMAGE_GIF = 21,
- /// image/jpeg
- ///
- IMAGE_JPEG = 22,
- /// image/photoshop
- ///
- IMAGE_PHOTOSHOP = 23,
- /// image/png
- ///
- IMAGE_PNG = 24,
- /// image/tiff
- ///
- IMAGE_TIFF = 25,
- /// image/vnd.wap.wbmp
- ///
- IMAGE_WBMP = 26,
- /// application/x-mpegURL
- ///
- M3U8 = 27,
- /// application/mac-binhex40
- ///
- MAC_BIN_HEX_40 = 28,
- /// application/vnd.ms-excel
- ///
- MS_EXCEL = 29,
- /// application/ms-powerpoint
- ///
- MS_POWERPOINT = 30,
- /// application/msword
- ///
- MS_WORD = 31,
- /// application/octet-stream
- ///
- OCTET_STREAM = 32,
- /// application/pdf
- ///
- PDF = 33,
- /// application/postscript
- ///
- POSTSCRIPT = 34,
- /// application/vnd.rn-realmedia
- ///
- RN_REAL_MEDIA = 35,
- /// message/rfc822
- ///
- RFC_822 = 36,
- /// application/rtf
- ///
- RTF = 37,
- /// text/calendar
- ///
- TEXT_CALENDAR = 38,
- /// text/css
- ///
- TEXT_CSS = 39,
- /// text/csv
- ///
- TEXT_CSV = 40,
- /// text/html
- ///
- TEXT_HTML = 41,
- /// text/java
- ///
- TEXT_JAVA = 42,
- /// text/plain
- ///
- TEXT_PLAIN = 43,
- /// video/3gpp
- ///
- VIDEO_3GPP = 44,
- /// video/3gpp2
- ///
- VIDEO_3GPP2 = 45,
- /// video/avi
- ///
- VIDEO_AVI = 46,
- /// video/x-flv
- ///
- VIDEO_FLV = 47,
- /// video/mp4
- ///
- VIDEO_MP4 = 48,
- /// video/mp4v-es
- ///
- VIDEO_MP4V_ES = 49,
- /// video/mpeg
- ///
- VIDEO_MPEG = 50,
- /// video/x-ms-asf
- ///
- VIDEO_MS_ASF = 51,
- /// video/x-ms-wm
- ///
- VIDEO_MS_WM = 52,
- /// video/x-ms-wmv
- ///
- VIDEO_MS_WMV = 53,
- /// video/x-ms-wvx
- ///
- VIDEO_MS_WVX = 54,
- /// video/ogg
- ///
- VIDEO_OGG = 55,
- /// video/x-quicktime
- ///
- VIDEO_QUICKTIME = 56,
- /// video/webm
- ///
- VIDEO_WEBM = 57,
- /// application/xaml+xml
- ///
- XAML = 58,
- /// application/xhtml+xml
- ///
- XHTML = 59,
- /// application/xml
- ///
- XML = 60,
- /// application/zip
- ///
- ZIP = 61,
- }
+ /// true, if a value is specified for , false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool isNativeEligibleSpecified {
+ get {
+ return this.isNativeEligibleFieldSpecified;
+ }
+ set {
+ this.isNativeEligibleFieldSpecified = value;
+ }
+ }
- /// The video delivery type.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum VideoDeliveryType {
- /// The value returned if the actual value is not exposed by the requested API
- /// version.
- ///
- UNKNOWN = 0,
- /// Video will be served through a progressive download.
- ///
- PROGRESSIVE = 1,
- /// Video will be served via a streaming protocol like RTMP.
+ /// Whether the Creative is compatible for SafeFrame
+ /// rendering.
This attribute is read-only and is assigned by Google based on the
+ /// CreativeTemplate.
///
- STREAMING = 2,
- }
-
-
- /// Base asset properties.
- ///
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(RedirectAsset))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(VideoRedirectAsset))]
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public abstract partial class Asset {
- }
-
+ [System.Xml.Serialization.XmlElementAttribute(Order = 3)]
+ public bool isSafeFrameCompatible {
+ get {
+ return this.isSafeFrameCompatibleField;
+ }
+ set {
+ this.isSafeFrameCompatibleField = value;
+ this.isSafeFrameCompatibleSpecified = true;
+ }
+ }
- /// An externally hosted asset.
- ///
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(VideoRedirectAsset))]
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public abstract partial class RedirectAsset : Asset {
- private string redirectUrlField;
+ /// true, if a value is specified for , false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool isSafeFrameCompatibleSpecified {
+ get {
+ return this.isSafeFrameCompatibleFieldSpecified;
+ }
+ set {
+ this.isSafeFrameCompatibleFieldSpecified = value;
+ }
+ }
- /// The URL where the asset is hosted.
+ /// The URL the user is directed to if they click on the creative. This attribute is
+ /// only required if the template snippet contains the %u or
+ /// %%DEST_URL%% macro. It has a maximum length of 1024 characters.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public string redirectUrl {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 4)]
+ public string destinationUrl {
get {
- return this.redirectUrlField;
+ return this.destinationUrlField;
}
set {
- this.redirectUrlField = value;
+ this.destinationUrlField = value;
}
}
- }
-
-
- /// An externally-hosted video asset.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class VideoRedirectAsset : RedirectAsset {
- private VideoMetadata metadataField;
- /// Metadata related to the asset. This attribute is required.
+ /// Stores values of CreativeTemplateVariable
+ /// in the CreativeTemplate.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public VideoMetadata metadata {
+ [System.Xml.Serialization.XmlElementAttribute("creativeTemplateVariableValues", Order = 5)]
+ public BaseCreativeTemplateVariableValue[] creativeTemplateVariableValues {
get {
- return this.metadataField;
+ return this.creativeTemplateVariableValuesField;
}
set {
- this.metadataField = value;
+ this.creativeTemplateVariableValuesField = value;
}
}
- }
-
-
- /// This represents an entry in a map with a key of type ConversionEvent and value
- /// of type TrackingUrls.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class ConversionEvent_TrackingUrlsMapEntry {
- private ConversionEvent keyField;
-
- private bool keyFieldSpecified;
- private string[] valueField;
-
- [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public ConversionEvent key {
+ /// The SSL compatibility scan result for this creative.
This attribute is
+ /// read-only and determined by Google.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 6)]
+ public SslScanResult sslScanResult {
get {
- return this.keyField;
+ return this.sslScanResultField;
}
set {
- this.keyField = value;
- this.keySpecified = true;
+ this.sslScanResultField = value;
+ this.sslScanResultSpecified = true;
}
}
- /// true, if a value is specified for ,
- /// false otherwise.
+ /// true, if a value is specified for , false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool keySpecified {
+ public bool sslScanResultSpecified {
get {
- return this.keyFieldSpecified;
+ return this.sslScanResultFieldSpecified;
}
set {
- this.keyFieldSpecified = value;
+ this.sslScanResultFieldSpecified = value;
}
}
- [System.Xml.Serialization.XmlArrayAttribute(Order = 1)]
- [System.Xml.Serialization.XmlArrayItemAttribute("urls", IsNullable = false)]
- public string[] value {
+ /// The manual override for the SSL compatibility of this creative.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 7)]
+ public SslManualOverride sslManualOverride {
get {
- return this.valueField;
+ return this.sslManualOverrideField;
}
set {
- this.valueField = value;
+ this.sslManualOverrideField = value;
+ this.sslManualOverrideSpecified = true;
}
}
- }
-
- /// All possible tracking event types. Not all events are supported by every kind of
- /// creative.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum ConversionEvent {
- /// The value returned if the actual value is not exposed by the requested API
- /// version.
- ///
- UNKNOWN = 0,
- /// Corresponds to the creativeView tracking event.
- ///
- CREATIVE_VIEW = 1,
- /// Corresponds to the start tracking event.
- ///
- START = 2,
- /// An event that is fired when a video skip button is shown, usually after 5
- /// seconds of viewing the video. This event does not correspond to any VAST element
- /// and is implemented using an extension.
- ///
- SKIP_SHOWN = 3,
- /// Corresponds to the firstQuartile tracking event.
- ///
- FIRST_QUARTILE = 4,
- /// Corresponds to the midpoint tracking event.
- ///
- MIDPOINT = 5,
- /// Corresponds to the thirdQuartile tracking event.
- ///
- THIRD_QUARTILE = 6,
- /// An event that is fired after 30 seconds of viewing the video or when the video
- /// finished (if the video duration is less than 30 seconds). This event does not
- /// correspond to any VAST element and is implemented using an extension.
- ///
- ENGAGED_VIEW = 7,
- /// Corresponds to the complete tracking event.
- ///
- COMPLETE = 8,
- /// Corresponds to the mute tracking event.
- ///
- MUTE = 9,
- /// Corresponds to the unmute tracking event.
- ///
- UNMUTE = 10,
- /// Corresponds to the pause tracking event.
- ///
- PAUSE = 11,
- /// Corresponds to the rewind tracking event.
- ///
- REWIND = 12,
- /// Corresponds to the resume tracking event.
- ///
- RESUME = 13,
- /// An event that is fired when a video was skipped. This event does not correspond
- /// to any VAST element and is implemented using an extension.
- ///
- SKIPPED = 14,
- /// Corresponds to the fullscreen tracking event.
- ///
- FULLSCREEN = 15,
- /// Corresponds to the expand tracking event.
- ///
- EXPAND = 16,
- /// Corresponds to the collapse tracking event.
- ///
- COLLAPSE = 17,
- /// Corresponds to the acceptInvitation tracking event.
- ///
- ACCEPT_INVITATION = 18,
- /// Corresponds to the close tracking event.
- ///
- CLOSE = 19,
- /// Corresponds to the Linear.VideoClicks.ClickTracking node.
- ///
- CLICK_TRACKING = 20,
- /// Corresponds to the InLine.Survey node.
- ///
- SURVEY = 21,
- /// Corresponds to the Linear.VideoClicks.CustomClick node.
- ///
- CUSTOM_CLICK = 22,
- /// Corresponds to the measurableImpression tracking event.
- ///
- MEASURABLE_IMPRESSION = 23,
- /// Corresponds to the viewableImpression tracking event.
- ///
- VIEWABLE_IMPRESSION = 24,
- /// Corresponds to the abandon tracking event.
- ///
- VIDEO_ABANDON = 25,
- /// Corresponds to the tracking event.
- ///
- FULLY_VIEWABLE_AUDIBLE_HALF_DURATION_IMPRESSION = 26,
- }
-
-
- /// A fallback swiffy asset used for flash creatives.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class SwiffyFallbackAsset {
- private CreativeAsset assetField;
-
- private Html5Feature[] html5FeaturesField;
-
- private string[] localizedInfoMessagesField;
-
- /// The Swiffy asset.
- ///
- [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public CreativeAsset asset {
+ /// true, if a value is specified for , false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool sslManualOverrideSpecified {
get {
- return this.assetField;
+ return this.sslManualOverrideFieldSpecified;
}
set {
- this.assetField = value;
+ this.sslManualOverrideFieldSpecified = value;
}
}
- /// A list of HTML5 features required to play this Swiffy
- /// fallback asset correctly.
+ /// A locked orientation for this creative to be displayed in.
///
- [System.Xml.Serialization.XmlElementAttribute("html5Features", Order = 1)]
- public Html5Feature[] html5Features {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 8)]
+ public LockedOrientation lockedOrientation {
get {
- return this.html5FeaturesField;
+ return this.lockedOrientationField;
}
set {
- this.html5FeaturesField = value;
+ this.lockedOrientationField = value;
+ this.lockedOrientationSpecified = true;
}
}
- /// A list of localized messages that give detailed information about the Swiffy
- /// conversion. Does not contain error or warning messages.
- ///
- [System.Xml.Serialization.XmlElementAttribute("localizedInfoMessages", Order = 2)]
- public string[] localizedInfoMessages {
+ /// true, if a value is specified for , false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool lockedOrientationSpecified {
get {
- return this.localizedInfoMessagesField;
+ return this.lockedOrientationFieldSpecified;
}
set {
- this.localizedInfoMessagesField = value;
+ this.lockedOrientationFieldSpecified = value;
}
}
}
- /// An HTML5 features required by HTML5 assets.
+ /// A Creative used for programmatic trafficking. This creative will be
+ /// auto-created with the right approval from the buyer. This creative cannot be
+ /// created through the API. This creative can be updated.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum Html5Feature {
- /// Requires a basic SVG animation.
- ///
- BASIC_SVG = 0,
- /// Requires support for SVG filter based animation.
- ///
- SVG_FILTERS = 1,
- /// The feature is not known or defined in newer versions.
- ///
- UNKNOWN = 2,
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class ProgrammaticCreative : Creative {
}
- /// Represents a child asset in RichMediaStudioCreative.
+ /// A Creative that isn't supported by Google DFP, but was migrated
+ /// from DART. Creatives of this type cannot be created or modified.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class RichMediaStudioChildAssetProperty {
- private string nameField;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class LegacyDfpCreative : Creative {
+ }
- private RichMediaStudioChildAssetPropertyType typeField;
- private bool typeFieldSpecified;
+ /// A Creative hosted by Campaign Manager.
Similar to third-party
+ /// creatives, a Campaign Manager tag is used to retrieve a creative asset. However,
+ /// Campaign Manager tags are not sent to the user's browser. Instead, they are
+ /// processed internally within the Google Marketing Platform system..
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class InternalRedirectCreative : Creative {
+ private LockedOrientation lockedOrientationField;
- private long totalFileSizeField;
+ private bool lockedOrientationFieldSpecified;
- private bool totalFileSizeFieldSpecified;
+ private Size assetSizeField;
- private int widthField;
+ private string internalRedirectUrlField;
- private bool widthFieldSpecified;
+ private bool overrideSizeField;
- private int heightField;
+ private bool overrideSizeFieldSpecified;
- private bool heightFieldSpecified;
+ private bool isInterstitialField;
- private string urlField;
+ private bool isInterstitialFieldSpecified;
- /// The name of the asset as known by Rich Media Studio. This attribute is readonly.
- ///
- [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public string name {
- get {
- return this.nameField;
- }
- set {
- this.nameField = value;
- }
- }
+ private SslScanResult sslScanResultField;
- /// Required file type of the asset. This attribute is readonly.
+ private bool sslScanResultFieldSpecified;
+
+ private SslManualOverride sslManualOverrideField;
+
+ private bool sslManualOverrideFieldSpecified;
+
+ private string[] thirdPartyImpressionTrackingUrlsField;
+
+ /// A locked orientation for this creative to be displayed in.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
- public RichMediaStudioChildAssetPropertyType type {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
+ public LockedOrientation lockedOrientation {
get {
- return this.typeField;
+ return this.lockedOrientationField;
}
set {
- this.typeField = value;
- this.typeSpecified = true;
+ this.lockedOrientationField = value;
+ this.lockedOrientationSpecified = true;
}
}
- /// true, if a value is specified for ,
- /// false otherwise.
+ /// true, if a value is specified for , false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool typeSpecified {
+ public bool lockedOrientationSpecified {
get {
- return this.typeFieldSpecified;
+ return this.lockedOrientationFieldSpecified;
}
set {
- this.typeFieldSpecified = value;
+ this.lockedOrientationFieldSpecified = value;
}
}
- /// The total size of the asset in bytes. This attribute is readonly.
+ /// The asset size of an internal redirect creative. Note that this may differ from
+ /// size if users set overrideSize to true. This attribute
+ /// is read-only and is populated by Google.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 2)]
- public long totalFileSize {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
+ public Size assetSize {
get {
- return this.totalFileSizeField;
+ return this.assetSizeField;
}
set {
- this.totalFileSizeField = value;
- this.totalFileSizeSpecified = true;
+ this.assetSizeField = value;
}
}
- /// true, if a value is specified for , false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool totalFileSizeSpecified {
+ /// The internal redirect URL of the DFA or DART for Publishers hosted creative.
+ /// This attribute is required and has a maximum length of 1024 characters.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 2)]
+ public string internalRedirectUrl {
get {
- return this.totalFileSizeFieldSpecified;
+ return this.internalRedirectUrlField;
}
set {
- this.totalFileSizeFieldSpecified = value;
+ this.internalRedirectUrlField = value;
}
}
- /// Width of the widget in pixels. This attribute is readonly.
+ /// Allows the creative size to differ from the actual size specified in the
+ /// internal redirect's url. This attribute is optional.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 3)]
- public int width {
+ public bool overrideSize {
get {
- return this.widthField;
+ return this.overrideSizeField;
}
set {
- this.widthField = value;
- this.widthSpecified = true;
+ this.overrideSizeField = value;
+ this.overrideSizeSpecified = true;
}
}
- /// true, if a value is specified for ,
- /// false otherwise.
+ /// true, if a value is specified for , false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool widthSpecified {
+ public bool overrideSizeSpecified {
get {
- return this.widthFieldSpecified;
+ return this.overrideSizeFieldSpecified;
}
set {
- this.widthFieldSpecified = value;
+ this.overrideSizeFieldSpecified = value;
}
}
- /// Height of the widget in pixels. This attribute is readonly.
+ /// true if this internal redirect creative is interstitial.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 4)]
- public int height {
+ public bool isInterstitial {
get {
- return this.heightField;
+ return this.isInterstitialField;
}
set {
- this.heightField = value;
- this.heightSpecified = true;
+ this.isInterstitialField = value;
+ this.isInterstitialSpecified = true;
}
}
- /// true, if a value is specified for ,
- /// false otherwise.
+ /// true, if a value is specified for , false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool heightSpecified {
+ public bool isInterstitialSpecified {
get {
- return this.heightFieldSpecified;
+ return this.isInterstitialFieldSpecified;
}
set {
- this.heightFieldSpecified = value;
+ this.isInterstitialFieldSpecified = value;
}
}
- /// The URL of the asset. This attribute is readonly.
+ /// The SSL compatibility scan result for this creative.
This attribute is
+ /// read-only and determined by Google.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 5)]
- public string url {
- get {
- return this.urlField;
- }
- set {
- this.urlField = value;
- }
- }
- }
-
-
- /// Type of RichMediaStudioChildAssetProperty
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "RichMediaStudioChildAssetProperty.Type", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum RichMediaStudioChildAssetPropertyType {
- /// SWF files
- ///
- FLASH = 0,
- /// FLVS and any other video file types
- ///
- VIDEO = 1,
- /// Image files
- ///
- IMAGE = 2,
- /// The rest of the supported file types .txt, .xml, etc.
- ///
- DATA = 3,
- }
-
-
- /// The value of a CustomField for a particular entity.
- ///
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(DropDownCustomFieldValue))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(CustomFieldValue))]
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public abstract partial class BaseCustomFieldValue {
- private long customFieldIdField;
-
- private bool customFieldIdFieldSpecified;
-
- /// Id of the CustomField to which this value belongs. This attribute
- /// is required.
- ///
- [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public long customFieldId {
+ public SslScanResult sslScanResult {
get {
- return this.customFieldIdField;
+ return this.sslScanResultField;
}
set {
- this.customFieldIdField = value;
- this.customFieldIdSpecified = true;
+ this.sslScanResultField = value;
+ this.sslScanResultSpecified = true;
}
}
/// true, if a value is specified for , false otherwise.
+ /// cref="sslScanResult" />, false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool customFieldIdSpecified {
+ public bool sslScanResultSpecified {
get {
- return this.customFieldIdFieldSpecified;
+ return this.sslScanResultFieldSpecified;
}
set {
- this.customFieldIdFieldSpecified = value;
+ this.sslScanResultFieldSpecified = value;
}
}
- }
-
-
- /// A CustomFieldValue for a CustomField that has a CustomField#dataType of CustomFieldDataType#DROP_DOWN
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class DropDownCustomFieldValue : BaseCustomFieldValue {
- private long customFieldOptionIdField;
-
- private bool customFieldOptionIdFieldSpecified;
- /// The ID of the CustomFieldOption for this value.
+ /// The manual override for the SSL compatibility of this creative.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public long customFieldOptionId {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 6)]
+ public SslManualOverride sslManualOverride {
get {
- return this.customFieldOptionIdField;
+ return this.sslManualOverrideField;
}
set {
- this.customFieldOptionIdField = value;
- this.customFieldOptionIdSpecified = true;
+ this.sslManualOverrideField = value;
+ this.sslManualOverrideSpecified = true;
}
}
/// true, if a value is specified for , false otherwise.
+ /// cref="sslManualOverride" />, false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool customFieldOptionIdSpecified {
+ public bool sslManualOverrideSpecified {
get {
- return this.customFieldOptionIdFieldSpecified;
+ return this.sslManualOverrideFieldSpecified;
}
set {
- this.customFieldOptionIdFieldSpecified = value;
+ this.sslManualOverrideFieldSpecified = value;
}
}
- }
-
-
- /// The value of a CustomField that does not have a CustomField#dataType of CustomFieldDataType#DROP_DOWN.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class CustomFieldValue : BaseCustomFieldValue {
- private Value valueField;
- /// The value for this field. The appropriate type of Value is
- /// determined by the CustomField#dataType of the
- /// that this conforms to.
+ /// A list of impression tracking URLs to ping when this creative is displayed. This
+ /// field is optional.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public Value value {
+ [System.Xml.Serialization.XmlElementAttribute("thirdPartyImpressionTrackingUrls", Order = 7)]
+ public string[] thirdPartyImpressionTrackingUrls {
get {
- return this.valueField;
+ return this.thirdPartyImpressionTrackingUrlsField;
}
set {
- this.valueField = value;
+ this.thirdPartyImpressionTrackingUrlsField = value;
}
}
}
- /// Represents a Label that can be applied to an entity. To
- /// negate an inherited label, create an with labelId as
- /// the inherited label's ID and isNegated set to true.
+ /// A Creative that contains a zipped HTML5 bundle asset, a list of
+ /// third party impression trackers, and a third party click tracker.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class AppliedLabel {
- private long labelIdField;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class Html5Creative : Creative {
+ private bool overrideSizeField;
- private bool labelIdFieldSpecified;
+ private bool overrideSizeFieldSpecified;
- private bool isNegatedField;
+ private string[] thirdPartyImpressionTrackingUrlsField;
- private bool isNegatedFieldSpecified;
+ private string thirdPartyClickTrackingUrlField;
- /// The ID of a created Label.
+ private LockedOrientation lockedOrientationField;
+
+ private bool lockedOrientationFieldSpecified;
+
+ private SslScanResult sslScanResultField;
+
+ private bool sslScanResultFieldSpecified;
+
+ private SslManualOverride sslManualOverrideField;
+
+ private bool sslManualOverrideFieldSpecified;
+
+ private bool isSafeFrameCompatibleField;
+
+ private bool isSafeFrameCompatibleFieldSpecified;
+
+ private CreativeAsset html5AssetField;
+
+ /// Allows the creative size to differ from the actual HTML5 asset size. This
+ /// attribute is optional.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public long labelId {
+ public bool overrideSize {
get {
- return this.labelIdField;
+ return this.overrideSizeField;
}
set {
- this.labelIdField = value;
- this.labelIdSpecified = true;
+ this.overrideSizeField = value;
+ this.overrideSizeSpecified = true;
}
}
- /// true, if a value is specified for ,
- /// false otherwise.
+ /// true, if a value is specified for , false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool labelIdSpecified {
+ public bool overrideSizeSpecified {
get {
- return this.labelIdFieldSpecified;
+ return this.overrideSizeFieldSpecified;
}
set {
- this.labelIdFieldSpecified = value;
+ this.overrideSizeFieldSpecified = value;
}
}
- /// isNegated should be set to true to negate the effects
- /// of labelId.
+ /// Impression tracking URLs to ping when this creative is displayed. This field is
+ /// optional.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
- public bool isNegated {
+ [System.Xml.Serialization.XmlElementAttribute("thirdPartyImpressionTrackingUrls", Order = 1)]
+ public string[] thirdPartyImpressionTrackingUrls {
get {
- return this.isNegatedField;
+ return this.thirdPartyImpressionTrackingUrlsField;
}
set {
- this.isNegatedField = value;
- this.isNegatedSpecified = true;
+ this.thirdPartyImpressionTrackingUrlsField = value;
}
}
- /// true, if a value is specified for , false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool isNegatedSpecified {
+ /// A click tracking URL to ping when this creative is clicked. This field is
+ /// optional.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 2)]
+ public string thirdPartyClickTrackingUrl {
get {
- return this.isNegatedFieldSpecified;
+ return this.thirdPartyClickTrackingUrlField;
}
set {
- this.isNegatedFieldSpecified = value;
+ this.thirdPartyClickTrackingUrlField = value;
}
}
- }
-
- /// A Creative represents the media for the ad being served.
- ///
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(VastRedirectCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(UnsupportedCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(ThirdPartyCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(TemplateCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(ProgrammaticCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(LegacyDfpCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(InternalRedirectCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(Html5Creative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(HasDestinationUrlCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(CustomCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(BaseVideoCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(VideoRedirectCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(VideoCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(SetTopBoxCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(BaseImageRedirectCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(ImageRedirectOverlayCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(ImageRedirectCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(BaseImageCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(ImageOverlayCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(ImageCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(BaseFlashRedirectCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(FlashRedirectOverlayCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(FlashRedirectCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(BaseFlashCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(FlashOverlayCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(FlashCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(AspectRatioImageCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(ClickTrackingCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(BaseRichMediaStudioCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(RichMediaStudioCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(BaseDynamicAllocationCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(HasHtmlSnippetDynamicAllocationCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(AdSenseCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(AdExchangeCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(AdMobBackfillCreative))]
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public abstract partial class Creative {
- private long advertiserIdField;
-
- private bool advertiserIdFieldSpecified;
-
- private long idField;
-
- private bool idFieldSpecified;
-
- private string nameField;
-
- private Size sizeField;
-
- private string previewUrlField;
-
- private CreativePolicyViolation[] policyViolationsField;
-
- private AppliedLabel[] appliedLabelsField;
-
- private DateTime lastModifiedDateTimeField;
-
- private BaseCustomFieldValue[] customFieldValuesField;
-
- /// The ID of the advertiser that owns the creative. This attribute is required.
+ /// A locked orientation for this creative to be displayed in.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public long advertiserId {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 3)]
+ public LockedOrientation lockedOrientation {
get {
- return this.advertiserIdField;
+ return this.lockedOrientationField;
}
set {
- this.advertiserIdField = value;
- this.advertiserIdSpecified = true;
+ this.lockedOrientationField = value;
+ this.lockedOrientationSpecified = true;
}
}
/// true, if a value is specified for , false otherwise.
+ /// cref="lockedOrientation" />, false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool advertiserIdSpecified {
+ public bool lockedOrientationSpecified {
get {
- return this.advertiserIdFieldSpecified;
+ return this.lockedOrientationFieldSpecified;
}
set {
- this.advertiserIdFieldSpecified = value;
+ this.lockedOrientationFieldSpecified = value;
}
}
- /// Uniquely identifies the Creative. This value is read-only and is
- /// assigned by Google when the creative is created. This attribute is required for
- /// updates.
+ /// The SSL compatibility scan result of this creative.
This attribute is
+ /// read-only and determined by Google.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
- public long id {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 4)]
+ public SslScanResult sslScanResult {
get {
- return this.idField;
+ return this.sslScanResultField;
}
set {
- this.idField = value;
- this.idSpecified = true;
+ this.sslScanResultField = value;
+ this.sslScanResultSpecified = true;
}
}
- /// true, if a value is specified for ,
- /// false otherwise.
+ /// true, if a value is specified for , false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool idSpecified {
+ public bool sslScanResultSpecified {
get {
- return this.idFieldSpecified;
+ return this.sslScanResultFieldSpecified;
}
set {
- this.idFieldSpecified = value;
+ this.sslScanResultFieldSpecified = value;
}
}
- /// The name of the creative. This attribute is required and has a maximum length of
- /// 255 characters.
+ /// The manual override for the SSL compatibility of this creative.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 2)]
- public string name {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 5)]
+ public SslManualOverride sslManualOverride {
get {
- return this.nameField;
+ return this.sslManualOverrideField;
}
set {
- this.nameField = value;
+ this.sslManualOverrideField = value;
+ this.sslManualOverrideSpecified = true;
}
}
- /// The Size of the creative. This attribute is required for
- /// creation and then is read-only.
- ///
- [System.Xml.Serialization.XmlElementAttribute(Order = 3)]
- public Size size {
+ /// true, if a value is specified for , false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool sslManualOverrideSpecified {
get {
- return this.sizeField;
+ return this.sslManualOverrideFieldSpecified;
}
set {
- this.sizeField = value;
+ this.sslManualOverrideFieldSpecified = value;
}
}
- /// The URL of the creative for previewing the media. This attribute is read-only
- /// and is assigned by Google when a creative is created.
+ /// Whether the Creative is compatible for SafeFrame
+ /// rendering.
This attribute is optional and defaults to true.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 4)]
- public string previewUrl {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 6)]
+ public bool isSafeFrameCompatible {
get {
- return this.previewUrlField;
+ return this.isSafeFrameCompatibleField;
}
set {
- this.previewUrlField = value;
+ this.isSafeFrameCompatibleField = value;
+ this.isSafeFrameCompatibleSpecified = true;
}
}
- /// Set of policy violations detected for this creative. This attribute is
- /// read-only.
- ///
- [System.Xml.Serialization.XmlElementAttribute("policyViolations", Order = 5)]
- public CreativePolicyViolation[] policyViolations {
+ /// true, if a value is specified for , false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool isSafeFrameCompatibleSpecified {
get {
- return this.policyViolationsField;
+ return this.isSafeFrameCompatibleFieldSpecified;
}
set {
- this.policyViolationsField = value;
+ this.isSafeFrameCompatibleFieldSpecified = value;
}
}
- /// The set of labels applied to this creative.
+ /// The HTML5 asset. To preview the HTML5 asset, use the CreativeAsset#assetUrl. In this field, the CreativeAsset#assetByteArray must be a
+ /// zip bundle and the CreativeAsset#fileName
+ /// must have a zip extension. This attribute is required.
///
- [System.Xml.Serialization.XmlElementAttribute("appliedLabels", Order = 6)]
- public AppliedLabel[] appliedLabels {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 7)]
+ public CreativeAsset html5Asset {
get {
- return this.appliedLabelsField;
+ return this.html5AssetField;
}
set {
- this.appliedLabelsField = value;
+ this.html5AssetField = value;
}
}
+ }
- /// The date and time this creative was last modified.
+
+ /// A Creative that has a destination url
+ ///
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(CustomCreative))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(BaseVideoCreative))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(VideoRedirectCreative))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(VideoCreative))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(SetTopBoxCreative))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(BaseImageRedirectCreative))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(ImageRedirectOverlayCreative))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(ImageRedirectCreative))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(BaseImageCreative))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(ImageOverlayCreative))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(ImageCreative))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(AspectRatioImageCreative))]
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public abstract partial class HasDestinationUrlCreative : Creative {
+ private string destinationUrlField;
+
+ private DestinationUrlType destinationUrlTypeField;
+
+ private bool destinationUrlTypeFieldSpecified;
+
+ /// The URL that the user is directed to if they click on the creative. This
+ /// attribute is required unless the destinationUrlType is DestinationUrlType#NONE, and has a maximum
+ /// length of 1024 characters.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 7)]
- public DateTime lastModifiedDateTime {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
+ public string destinationUrl {
get {
- return this.lastModifiedDateTimeField;
+ return this.destinationUrlField;
}
set {
- this.lastModifiedDateTimeField = value;
+ this.destinationUrlField = value;
}
}
- /// The values of the custom fields associated with this creative.
+ /// The action that should be performed if the user clicks on the creative. This
+ /// attribute is optional and defaults to DestinationUrlType#CLICK_TO_WEB.
///
- [System.Xml.Serialization.XmlElementAttribute("customFieldValues", Order = 8)]
- public BaseCustomFieldValue[] customFieldValues {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
+ public DestinationUrlType destinationUrlType {
get {
- return this.customFieldValuesField;
+ return this.destinationUrlTypeField;
}
set {
- this.customFieldValuesField = value;
+ this.destinationUrlTypeField = value;
+ this.destinationUrlTypeSpecified = true;
+ }
+ }
+
+ /// true, if a value is specified for , false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool destinationUrlTypeSpecified {
+ get {
+ return this.destinationUrlTypeFieldSpecified;
+ }
+ set {
+ this.destinationUrlTypeFieldSpecified = value;
}
}
}
- /// Represents the different types of policy violations that may be detected on a
- /// given creative.
For more information about the various types of policy
- /// violations, see here.
+ /// The valid actions that a destination URL may perform if the user clicks on the
+ /// ad.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum CreativePolicyViolation {
- /// Malware was found in the creative.
- ///
- MISREPRESENTATION_OF_PRODUCT = 3,
- /// The creative has been determined to be self clicking.
- ///
- SELF_CLICKING_CREATIVE = 4,
- /// The creative has been determined as attempting to game the Google network.
- ///
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum DestinationUrlType {
+ /// The value returned if the actual value is not exposed by the requested API
+ /// version.
///
- PHISHING = 7,
- /// The creative prompts the user to download a file.
+ UNKNOWN = 0,
+ /// Navigate to a web page. (a.k.a. "Click-through URL").
///
- DOWNLOAD_PROMPT_IN_CREATIVE = 9,
- /// The creative sets an unauthorized cookie on a Google domain.
+ CLICK_TO_WEB = 1,
+ /// Start an application.
///
- UNAUTHORIZED_COOKIE_DETECTED = 10,
- /// The creative has been temporarily paused while we investigate.
+ CLICK_TO_APP = 2,
+ /// Make a phone call.
///
- TEMPORARY_PAUSE_FOR_VENDOR_INVESTIGATION = 11,
- /// The value returned if the actual value is not exposed by the requested API
- /// version.
+ CLICK_TO_CALL = 3,
+ /// Destination URL not present. Useful for video creatives where a landing page or
+ /// a product isn't necessarily applicable.
///
- UNKNOWN = 8,
+ NONE = 4,
}
- /// A Creative that points to an externally hosted VAST ad and is
- /// served via VAST XML as a VAST Wrapper.
+ /// A Creative that contains an arbitrary HTML snippet and file assets.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class VastRedirectCreative : Creative {
- private string vastXmlUrlField;
-
- private VastRedirectType vastRedirectTypeField;
-
- private bool vastRedirectTypeFieldSpecified;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class CustomCreative : HasDestinationUrlCreative {
+ private string htmlSnippetField;
- private int durationField;
+ private CustomCreativeAsset[] customCreativeAssetsField;
- private bool durationFieldSpecified;
+ private bool isInterstitialField;
- private long[] companionCreativeIdsField;
+ private bool isInterstitialFieldSpecified;
- private ConversionEvent_TrackingUrlsMapEntry[] trackingUrlsField;
+ private LockedOrientation lockedOrientationField;
- private string vastPreviewUrlField;
+ private bool lockedOrientationFieldSpecified;
private SslScanResult sslScanResultField;
@@ -7127,113 +6913,95 @@ public partial class VastRedirectCreative : Creative {
private bool sslManualOverrideFieldSpecified;
- /// The URL where the 3rd party VAST XML is hosted. This attribute is required.
+ private bool isSafeFrameCompatibleField;
+
+ private bool isSafeFrameCompatibleFieldSpecified;
+
+ private string[] thirdPartyImpressionTrackingUrlsField;
+
+ /// The HTML snippet that this creative delivers. This attribute is required.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public string vastXmlUrl {
+ public string htmlSnippet {
get {
- return this.vastXmlUrlField;
+ return this.htmlSnippetField;
}
set {
- this.vastXmlUrlField = value;
+ this.htmlSnippetField = value;
}
}
- /// The type of VAST ad that this redirects to. This attribute is required.
+ /// A list of file assets that are associated with this creative, and can be
+ /// referenced in the snippet.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
- public VastRedirectType vastRedirectType {
- get {
- return this.vastRedirectTypeField;
- }
- set {
- this.vastRedirectTypeField = value;
- this.vastRedirectTypeSpecified = true;
- }
- }
-
- /// true, if a value is specified for , false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool vastRedirectTypeSpecified {
+ [System.Xml.Serialization.XmlElementAttribute("customCreativeAssets", Order = 1)]
+ public CustomCreativeAsset[] customCreativeAssets {
get {
- return this.vastRedirectTypeFieldSpecified;
+ return this.customCreativeAssetsField;
}
set {
- this.vastRedirectTypeFieldSpecified = value;
+ this.customCreativeAssetsField = value;
}
}
- /// The duration of the VAST ad in milliseconds. This attribute is required.
+ /// true if this custom creative is interstitial. An interstitial
+ /// creative will not consider an impression served until it is fully rendered in
+ /// the browser.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 2)]
- public int duration {
+ public bool isInterstitial {
get {
- return this.durationField;
+ return this.isInterstitialField;
}
set {
- this.durationField = value;
- this.durationSpecified = true;
+ this.isInterstitialField = value;
+ this.isInterstitialSpecified = true;
}
}
- /// true, if a value is specified for , false otherwise.
+ /// true, if a value is specified for , false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool durationSpecified {
- get {
- return this.durationFieldSpecified;
- }
- set {
- this.durationFieldSpecified = value;
- }
- }
-
- /// The IDs of the companion creatives that are associated with this creative. This
- /// attribute is optional.
- ///
- [System.Xml.Serialization.XmlElementAttribute("companionCreativeIds", Order = 3)]
- public long[] companionCreativeIds {
+ public bool isInterstitialSpecified {
get {
- return this.companionCreativeIdsField;
+ return this.isInterstitialFieldSpecified;
}
set {
- this.companionCreativeIdsField = value;
+ this.isInterstitialFieldSpecified = value;
}
}
- /// A map from ConversionEvent to a list of URLs that will be pinged
- /// when the event happens. This attribute is optional.
+ /// A locked orientation for this creative to be displayed in.
///
- [System.Xml.Serialization.XmlElementAttribute("trackingUrls", Order = 4)]
- public ConversionEvent_TrackingUrlsMapEntry[] trackingUrls {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 3)]
+ public LockedOrientation lockedOrientation {
get {
- return this.trackingUrlsField;
+ return this.lockedOrientationField;
}
set {
- this.trackingUrlsField = value;
+ this.lockedOrientationField = value;
+ this.lockedOrientationSpecified = true;
}
}
- /// An ad tag URL that will return a preview of the VAST XML response specific to
- /// this creative. This attribute is read-only.
- ///
- [System.Xml.Serialization.XmlElementAttribute(Order = 5)]
- public string vastPreviewUrl {
+ /// true, if a value is specified for , false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool lockedOrientationSpecified {
get {
- return this.vastPreviewUrlField;
+ return this.lockedOrientationFieldSpecified;
}
set {
- this.vastPreviewUrlField = value;
+ this.lockedOrientationFieldSpecified = value;
}
}
- /// The SSL compatibility scan result for this creative.
This attribute is
+ /// The SSL compatibility scan result of this creative.
This attribute is
/// read-only and determined by Google.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 6)]
+ [System.Xml.Serialization.XmlElementAttribute(Order = 4)]
public SslScanResult sslScanResult {
get {
return this.sslScanResultField;
@@ -7261,7 +7029,7 @@ public bool sslScanResultSpecified {
/// attribute is optional and defaults to SslManualOverride#NO_OVERRIDE.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 7)]
+ [System.Xml.Serialization.XmlElementAttribute(Order = 5)]
public SslManualOverride sslManualOverride {
get {
return this.sslManualOverrideField;
@@ -7284,635 +7052,734 @@ public bool sslManualOverrideSpecified {
this.sslManualOverrideFieldSpecified = value;
}
}
- }
-
-
- /// The types of VAST ads that a VastRedirectCreative can point to.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum VastRedirectType {
- /// The VAST XML contains only linear ads.
- ///
- LINEAR = 0,
- /// The VAST XML contains only nonlinear ads.
- ///
- NON_LINEAR = 1,
- /// The VAST XML contains both linear and nonlinear ads.
- ///
- LINEAR_AND_NON_LINEAR = 2,
- }
-
- /// Enum to store the creative SSL compatibility scan result.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum SslScanResult {
- /// The value returned if the actual value is not exposed by the requested API
- /// version.
+ /// Whether the Creative is compatible for SafeFrame
+ /// rendering.
This attribute is optional and defaults to true.
///
- UNKNOWN = 0,
- UNSCANNED = 1,
- SCANNED_SSL = 2,
- SCANNED_NON_SSL = 3,
- }
+ [System.Xml.Serialization.XmlElementAttribute(Order = 6)]
+ public bool isSafeFrameCompatible {
+ get {
+ return this.isSafeFrameCompatibleField;
+ }
+ set {
+ this.isSafeFrameCompatibleField = value;
+ this.isSafeFrameCompatibleSpecified = true;
+ }
+ }
+ /// true, if a value is specified for , false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool isSafeFrameCompatibleSpecified {
+ get {
+ return this.isSafeFrameCompatibleFieldSpecified;
+ }
+ set {
+ this.isSafeFrameCompatibleFieldSpecified = value;
+ }
+ }
- /// Enum to store the creative SSL compatibility manual override. Its three states
- /// are similar to that of SslScanResult.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum SslManualOverride {
- /// The value returned if the actual value is not exposed by the requested API
- /// version.
+ /// A list of impression tracking URLs to ping when this creative is displayed. This
+ /// field is optional.
///
- UNKNOWN = 0,
- NO_OVERRIDE = 1,
- SSL_COMPATIBLE = 2,
- NOT_SSL_COMPATIBLE = 3,
+ [System.Xml.Serialization.XmlElementAttribute("thirdPartyImpressionTrackingUrls", Order = 7)]
+ public string[] thirdPartyImpressionTrackingUrls {
+ get {
+ return this.thirdPartyImpressionTrackingUrlsField;
+ }
+ set {
+ this.thirdPartyImpressionTrackingUrlsField = value;
+ }
+ }
}
- /// A Creative that isn't supported by this version of the API. This
- /// object is readonly and when encountered should be reported on the Ad Manager API
- /// forum.
+ /// A base type for video creatives.
///
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(VideoRedirectCreative))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(VideoCreative))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(SetTopBoxCreative))]
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class UnsupportedCreative : Creative {
- private string unsupportedCreativeTypeField;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public abstract partial class BaseVideoCreative : HasDestinationUrlCreative {
+ private int durationField;
- /// The creative type that is unsupported by this API version.
- ///
- [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public string unsupportedCreativeType {
- get {
- return this.unsupportedCreativeTypeField;
- }
- set {
- this.unsupportedCreativeTypeField = value;
- }
- }
- }
+ private bool durationFieldSpecified;
+ private bool allowDurationOverrideField;
- /// A Creative that is served by a 3rd-party vendor.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class ThirdPartyCreative : Creative {
- private string snippetField;
+ private bool allowDurationOverrideFieldSpecified;
- private string expandedSnippetField;
+ private ConversionEvent_TrackingUrlsMapEntry[] trackingUrlsField;
- private SslScanResult sslScanResultField;
+ private long[] companionCreativeIdsField;
- private bool sslScanResultFieldSpecified;
+ private string customParametersField;
- private SslManualOverride sslManualOverrideField;
+ private SkippableAdType skippableAdTypeField;
- private bool sslManualOverrideFieldSpecified;
+ private bool skippableAdTypeFieldSpecified;
- private LockedOrientation lockedOrientationField;
+ private string vastPreviewUrlField;
- private bool lockedOrientationFieldSpecified;
+ private SslScanResult sslScanResultField;
- private bool isSafeFrameCompatibleField;
+ private bool sslScanResultFieldSpecified;
- private bool isSafeFrameCompatibleFieldSpecified;
+ private SslManualOverride sslManualOverrideField;
- private string[] thirdPartyImpressionTrackingUrlsField;
+ private bool sslManualOverrideFieldSpecified;
- /// The HTML snippet that this creative delivers. This attribute is required.
+ /// The expected duration of this creative in milliseconds.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public string snippet {
+ public int duration {
get {
- return this.snippetField;
+ return this.durationField;
}
set {
- this.snippetField = value;
+ this.durationField = value;
+ this.durationSpecified = true;
}
}
- /// The HTML snippet that this creative delivers with macros expanded. This
- /// attribute is read-only and is set by Google.
- ///
- [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
- public string expandedSnippet {
+ /// true, if a value is specified for , false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool durationSpecified {
get {
- return this.expandedSnippetField;
+ return this.durationFieldSpecified;
}
set {
- this.expandedSnippetField = value;
+ this.durationFieldSpecified = value;
}
}
- /// The SSL compatibility scan result for this creative.
This attribute is
- /// read-only and determined by Google.
+ /// Allows the creative duration to differ from the actual asset durations. This
+ /// attribute is optional.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 2)]
- public SslScanResult sslScanResult {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
+ public bool allowDurationOverride {
get {
- return this.sslScanResultField;
+ return this.allowDurationOverrideField;
}
set {
- this.sslScanResultField = value;
- this.sslScanResultSpecified = true;
+ this.allowDurationOverrideField = value;
+ this.allowDurationOverrideSpecified = true;
}
}
/// true, if a value is specified for , false otherwise.
+ /// cref="allowDurationOverride" />, false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool sslScanResultSpecified {
+ public bool allowDurationOverrideSpecified {
get {
- return this.sslScanResultFieldSpecified;
+ return this.allowDurationOverrideFieldSpecified;
}
set {
- this.sslScanResultFieldSpecified = value;
+ this.allowDurationOverrideFieldSpecified = value;
}
}
- /// The manual override for the SSL compatibility of this creative.
+ /// A map from ConversionEvent to a list of URLs that will be pinged
+ /// when the event happens. This attribute is optional.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 3)]
- public SslManualOverride sslManualOverride {
+ [System.Xml.Serialization.XmlElementAttribute("trackingUrls", Order = 2)]
+ public ConversionEvent_TrackingUrlsMapEntry[] trackingUrls {
get {
- return this.sslManualOverrideField;
+ return this.trackingUrlsField;
}
set {
- this.sslManualOverrideField = value;
- this.sslManualOverrideSpecified = true;
+ this.trackingUrlsField = value;
}
}
- /// true, if a value is specified for , false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool sslManualOverrideSpecified {
+ /// The IDs of the companion creatives that are associated with this creative. This
+ /// attribute is optional.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute("companionCreativeIds", Order = 3)]
+ public long[] companionCreativeIds {
get {
- return this.sslManualOverrideFieldSpecified;
+ return this.companionCreativeIdsField;
}
set {
- this.sslManualOverrideFieldSpecified = value;
+ this.companionCreativeIdsField = value;
}
}
- /// A locked orientation for this creative to be displayed in.
+ /// A comma separated key=value list of parameters that will be supplied to the
+ /// creative, written into the VAST node. This attribute is optional.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 4)]
- public LockedOrientation lockedOrientation {
+ public string customParameters {
get {
- return this.lockedOrientationField;
+ return this.customParametersField;
}
set {
- this.lockedOrientationField = value;
- this.lockedOrientationSpecified = true;
+ this.customParametersField = value;
+ }
+ }
+
+ /// The type of skippable ad.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 5)]
+ public SkippableAdType skippableAdType {
+ get {
+ return this.skippableAdTypeField;
+ }
+ set {
+ this.skippableAdTypeField = value;
+ this.skippableAdTypeSpecified = true;
}
}
/// true, if a value is specified for , false otherwise.
+ /// cref="skippableAdType" />, false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool lockedOrientationSpecified {
+ public bool skippableAdTypeSpecified {
get {
- return this.lockedOrientationFieldSpecified;
+ return this.skippableAdTypeFieldSpecified;
}
set {
- this.lockedOrientationFieldSpecified = value;
+ this.skippableAdTypeFieldSpecified = value;
}
}
- /// Whether the Creative is compatible for SafeFrame
- /// rendering.
This attribute is optional and defaults to true.
+ /// An ad tag URL that will return a preview of the VAST XML response specific to
+ /// this creative. This attribute is read-only.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 5)]
- public bool isSafeFrameCompatible {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 6)]
+ public string vastPreviewUrl {
get {
- return this.isSafeFrameCompatibleField;
+ return this.vastPreviewUrlField;
}
set {
- this.isSafeFrameCompatibleField = value;
- this.isSafeFrameCompatibleSpecified = true;
+ this.vastPreviewUrlField = value;
+ }
+ }
+
+ /// The SSL compatibility scan result of this creative.
This attribute is
+ /// read-only and determined by Google.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 7)]
+ public SslScanResult sslScanResult {
+ get {
+ return this.sslScanResultField;
+ }
+ set {
+ this.sslScanResultField = value;
+ this.sslScanResultSpecified = true;
}
}
/// true, if a value is specified for , false otherwise.
+ /// cref="sslScanResult" />, false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool isSafeFrameCompatibleSpecified {
+ public bool sslScanResultSpecified {
get {
- return this.isSafeFrameCompatibleFieldSpecified;
+ return this.sslScanResultFieldSpecified;
}
set {
- this.isSafeFrameCompatibleFieldSpecified = value;
+ this.sslScanResultFieldSpecified = value;
}
}
- /// A list of impression tracking URLs to ping when this creative is displayed. This
- /// field is optional.
+ /// The manual override for the SSL compatibility of this creative.
///
- [System.Xml.Serialization.XmlElementAttribute("thirdPartyImpressionTrackingUrls", Order = 6)]
- public string[] thirdPartyImpressionTrackingUrls {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 8)]
+ public SslManualOverride sslManualOverride {
get {
- return this.thirdPartyImpressionTrackingUrlsField;
+ return this.sslManualOverrideField;
}
set {
- this.thirdPartyImpressionTrackingUrlsField = value;
+ this.sslManualOverrideField = value;
+ this.sslManualOverrideSpecified = true;
+ }
+ }
+
+ /// true, if a value is specified for , false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool sslManualOverrideSpecified {
+ get {
+ return this.sslManualOverrideFieldSpecified;
+ }
+ set {
+ this.sslManualOverrideFieldSpecified = value;
}
}
}
- /// Describes the orientation that a creative should be served with.
+ /// The different types of skippable ads.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum LockedOrientation {
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum SkippableAdType {
/// The value returned if the actual value is not exposed by the requested API
/// version.
///
UNKNOWN = 0,
- FREE_ORIENTATION = 1,
- PORTRAIT_ONLY = 2,
- LANDSCAPE_ONLY = 3,
+ /// Skippable ad type is disabled.
+ ///
+ DISABLED = 1,
+ /// Skippable ad type is enabled.
+ ///
+ ENABLED = 2,
+ /// Skippable in-stream ad type.
+ ///
+ INSTREAM_SELECT = 3,
}
- /// A Creative that is created by the specified creative template.
+ /// A Creative that contains externally hosted video ads and is served
+ /// via VAST XML.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class TemplateCreative : Creative {
- private long creativeTemplateIdField;
-
- private bool creativeTemplateIdFieldSpecified;
-
- private bool isInterstitialField;
-
- private bool isInterstitialFieldSpecified;
-
- private bool isNativeEligibleField;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class VideoRedirectCreative : BaseVideoCreative {
+ private VideoRedirectAsset[] videoAssetsField;
- private bool isNativeEligibleFieldSpecified;
+ private VideoRedirectAsset mezzanineFileField;
- private bool isSafeFrameCompatibleField;
+ /// The video creative assets.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute("videoAssets", Order = 0)]
+ public VideoRedirectAsset[] videoAssets {
+ get {
+ return this.videoAssetsField;
+ }
+ set {
+ this.videoAssetsField = value;
+ }
+ }
- private bool isSafeFrameCompatibleFieldSpecified;
+ /// The high quality mezzanine video asset.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
+ public VideoRedirectAsset mezzanineFile {
+ get {
+ return this.mezzanineFileField;
+ }
+ set {
+ this.mezzanineFileField = value;
+ }
+ }
+ }
- private string destinationUrlField;
- private BaseCreativeTemplateVariableValue[] creativeTemplateVariableValuesField;
+ /// A Creative that contains Ad Manager hosted video ads and is served
+ /// via VAST XML. This creative is read-only.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class VideoCreative : BaseVideoCreative {
+ }
- private SslScanResult sslScanResultField;
- private bool sslScanResultFieldSpecified;
+ /// A Creative that will be served into cable set-top boxes. There are
+ /// no assets for this creative type, as they are hosted by external cable systems.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class SetTopBoxCreative : BaseVideoCreative {
+ private string externalAssetIdField;
- private SslManualOverride sslManualOverrideField;
+ private string providerIdField;
- private bool sslManualOverrideFieldSpecified;
+ private string[] availabilityRegionIdsField;
- private LockedOrientation lockedOrientationField;
+ private DateTime licenseWindowStartDateTimeField;
- private bool lockedOrientationFieldSpecified;
+ private DateTime licenseWindowEndDateTimeField;
- /// Creative template ID that this creative is created from.
+ /// An external asset identifier that is used in the cable system. This attribute is
+ /// read-only after creation.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public long creativeTemplateId {
+ public string externalAssetId {
get {
- return this.creativeTemplateIdField;
+ return this.externalAssetIdField;
}
set {
- this.creativeTemplateIdField = value;
- this.creativeTemplateIdSpecified = true;
+ this.externalAssetIdField = value;
}
}
- /// true, if a value is specified for , false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool creativeTemplateIdSpecified {
+ /// An identifier for the provider in the cable system. This attribute is read-only
+ /// after creation.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
+ public string providerId {
get {
- return this.creativeTemplateIdFieldSpecified;
+ return this.providerIdField;
}
set {
- this.creativeTemplateIdFieldSpecified = value;
+ this.providerIdField = value;
}
}
- /// true if this template instantiated creative is interstitial. This
- /// attribute is read-only and is assigned by Google based on the creative template.
+ /// IDs of regions where the creative is available to serve from a local cable
+ /// video-on-demand server. This attribute is optional.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
- public bool isInterstitial {
+ [System.Xml.Serialization.XmlElementAttribute("availabilityRegionIds", Order = 2)]
+ public string[] availabilityRegionIds {
get {
- return this.isInterstitialField;
+ return this.availabilityRegionIdsField;
}
set {
- this.isInterstitialField = value;
- this.isInterstitialSpecified = true;
+ this.availabilityRegionIdsField = value;
}
}
- /// true, if a value is specified for , false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool isInterstitialSpecified {
+ /// The date and time that this creative can begin serving from a local cable
+ /// video-on-demand server. This attribute is optional.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 3)]
+ public DateTime licenseWindowStartDateTime {
get {
- return this.isInterstitialFieldSpecified;
+ return this.licenseWindowStartDateTimeField;
}
set {
- this.isInterstitialFieldSpecified = value;
+ this.licenseWindowStartDateTimeField = value;
}
}
- /// true if this template instantiated creative is eligible for native
- /// adserving. This attribute is read-only and is assigned by Google based on the
- /// creative template.
+ /// The date and time that this creative can no longer be served from a local cable
+ /// video-on-demand server. This attribute is optional.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 2)]
- public bool isNativeEligible {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 4)]
+ public DateTime licenseWindowEndDateTime {
get {
- return this.isNativeEligibleField;
+ return this.licenseWindowEndDateTimeField;
}
set {
- this.isNativeEligibleField = value;
- this.isNativeEligibleSpecified = true;
+ this.licenseWindowEndDateTimeField = value;
}
}
+ }
- /// true, if a value is specified for , false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool isNativeEligibleSpecified {
+
+ /// The base type for creatives that load an image asset from a specified URL.
+ ///
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(ImageRedirectOverlayCreative))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(ImageRedirectCreative))]
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public abstract partial class BaseImageRedirectCreative : HasDestinationUrlCreative {
+ private string imageUrlField;
+
+ /// The URL where the actual asset resides. This attribute is required and has a
+ /// maximum length of 1024 characters.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
+ public string imageUrl {
get {
- return this.isNativeEligibleFieldSpecified;
+ return this.imageUrlField;
}
set {
- this.isNativeEligibleFieldSpecified = value;
+ this.imageUrlField = value;
}
}
+ }
- /// Whether the Creative is compatible for SafeFrame
- /// rendering.
This attribute is read-only and is assigned by Google based on the
- /// CreativeTemplate.
+
+ /// An overlay Creative that loads an image asset from a specified URL
+ /// and is served via VAST XML. Overlays cover part of the video content they are
+ /// displayed on top of. This creative is read only.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class ImageRedirectOverlayCreative : BaseImageRedirectCreative {
+ private Size assetSizeField;
+
+ private int durationField;
+
+ private bool durationFieldSpecified;
+
+ private long[] companionCreativeIdsField;
+
+ private ConversionEvent_TrackingUrlsMapEntry[] trackingUrlsField;
+
+ private string customParametersField;
+
+ private string vastPreviewUrlField;
+
+ /// The size of the image asset. Note that this may differ from #size if the asset is not expected to fill the entire video
+ /// player. This attribute is optional.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 3)]
- public bool isSafeFrameCompatible {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
+ public Size assetSize {
get {
- return this.isSafeFrameCompatibleField;
+ return this.assetSizeField;
}
set {
- this.isSafeFrameCompatibleField = value;
- this.isSafeFrameCompatibleSpecified = true;
+ this.assetSizeField = value;
}
}
- /// true, if a value is specified for , false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool isSafeFrameCompatibleSpecified {
+ /// Minimum suggested duration in milliseconds. This attribute is optional.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
+ public int duration {
get {
- return this.isSafeFrameCompatibleFieldSpecified;
+ return this.durationField;
}
set {
- this.isSafeFrameCompatibleFieldSpecified = value;
+ this.durationField = value;
+ this.durationSpecified = true;
}
}
- /// The URL the user is directed to if they click on the creative. This attribute is
- /// only required if the template snippet contains the %u or
- /// %%DEST_URL%% macro. It has a maximum length of 1024 characters.
- ///
- [System.Xml.Serialization.XmlElementAttribute(Order = 4)]
- public string destinationUrl {
+ /// true, if a value is specified for , false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool durationSpecified {
get {
- return this.destinationUrlField;
+ return this.durationFieldSpecified;
}
set {
- this.destinationUrlField = value;
+ this.durationFieldSpecified = value;
}
}
- /// Stores values of CreativeTemplateVariable
- /// in the CreativeTemplate.
+ /// The IDs of the companion creatives that are associated with this creative. This
+ /// attribute is optional.
///
- [System.Xml.Serialization.XmlElementAttribute("creativeTemplateVariableValues", Order = 5)]
- public BaseCreativeTemplateVariableValue[] creativeTemplateVariableValues {
+ [System.Xml.Serialization.XmlElementAttribute("companionCreativeIds", Order = 2)]
+ public long[] companionCreativeIds {
get {
- return this.creativeTemplateVariableValuesField;
+ return this.companionCreativeIdsField;
}
set {
- this.creativeTemplateVariableValuesField = value;
+ this.companionCreativeIdsField = value;
}
}
- /// The SSL compatibility scan result for this creative.
This attribute is
- /// read-only and determined by Google.
+ /// A map from ConversionEvent to a list of URLs that will be pinged
+ /// when the event happens. This attribute is optional.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 6)]
- public SslScanResult sslScanResult {
+ [System.Xml.Serialization.XmlElementAttribute("trackingUrls", Order = 3)]
+ public ConversionEvent_TrackingUrlsMapEntry[] trackingUrls {
get {
- return this.sslScanResultField;
+ return this.trackingUrlsField;
}
set {
- this.sslScanResultField = value;
- this.sslScanResultSpecified = true;
+ this.trackingUrlsField = value;
}
}
- /// true, if a value is specified for , false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool sslScanResultSpecified {
+ /// A comma separated key=value list of parameters that will be supplied to the
+ /// creative, written into the VAST node. This attribute is optional.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 4)]
+ public string customParameters {
get {
- return this.sslScanResultFieldSpecified;
+ return this.customParametersField;
}
set {
- this.sslScanResultFieldSpecified = value;
+ this.customParametersField = value;
}
}
- /// The manual override for the SSL compatibility of this creative.
+ /// An ad tag URL that will return a preview of the VAST XML response specific to
+ /// this creative. This attribute is read-only.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 7)]
- public SslManualOverride sslManualOverride {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 5)]
+ public string vastPreviewUrl {
get {
- return this.sslManualOverrideField;
+ return this.vastPreviewUrlField;
}
set {
- this.sslManualOverrideField = value;
- this.sslManualOverrideSpecified = true;
+ this.vastPreviewUrlField = value;
}
}
+ }
- /// true, if a value is specified for , false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool sslManualOverrideSpecified {
- get {
- return this.sslManualOverrideFieldSpecified;
- }
- set {
- this.sslManualOverrideFieldSpecified = value;
- }
- }
- /// A locked orientation for this creative to be displayed in.
+ /// A Creative that loads an image asset from a specified URL.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class ImageRedirectCreative : BaseImageRedirectCreative {
+ private string altTextField;
+
+ private string thirdPartyImpressionUrlField;
+
+ /// Alternative text to be rendered along with the creative used mainly for
+ /// accessibility. This field is optional and has a maximum length of 500
+ /// characters.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 8)]
- public LockedOrientation lockedOrientation {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
+ public string altText {
get {
- return this.lockedOrientationField;
+ return this.altTextField;
}
set {
- this.lockedOrientationField = value;
- this.lockedOrientationSpecified = true;
+ this.altTextField = value;
}
}
- /// true, if a value is specified for , false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool lockedOrientationSpecified {
+ /// An impression tracking URL to ping when this creative is displayed. This field
+ /// is optional has a maximum length of 1024 characters.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
+ public string thirdPartyImpressionUrl {
get {
- return this.lockedOrientationFieldSpecified;
+ return this.thirdPartyImpressionUrlField;
}
set {
- this.lockedOrientationFieldSpecified = value;
+ this.thirdPartyImpressionUrlField = value;
}
}
}
- /// A Creative used for programmatic trafficking. This creative will be
- /// auto-created with the right approval from the buyer. This creative cannot be
- /// created through the API. This creative can be updated.
+ /// The base type for creatives that display an image.
///
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(ImageOverlayCreative))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(ImageCreative))]
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class ProgrammaticCreative : Creative {
- private bool isSafeFrameCompatibleField;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public abstract partial class BaseImageCreative : HasDestinationUrlCreative {
+ private bool overrideSizeField;
- private bool isSafeFrameCompatibleFieldSpecified;
+ private bool overrideSizeFieldSpecified;
+
+ private CreativeAsset primaryImageAssetField;
- /// true if this Creative is served in a
- /// SafeFrame. This field is deprecated and will be removed in a future API version.
+ /// Allows the creative size to differ from the actual image asset size. This
+ /// attribute is optional.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public bool isSafeFrameCompatible {
+ public bool overrideSize {
get {
- return this.isSafeFrameCompatibleField;
+ return this.overrideSizeField;
}
set {
- this.isSafeFrameCompatibleField = value;
- this.isSafeFrameCompatibleSpecified = true;
+ this.overrideSizeField = value;
+ this.overrideSizeSpecified = true;
}
}
/// true, if a value is specified for , false otherwise.
+ /// cref="overrideSize" />, false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool isSafeFrameCompatibleSpecified {
+ public bool overrideSizeSpecified {
get {
- return this.isSafeFrameCompatibleFieldSpecified;
+ return this.overrideSizeFieldSpecified;
}
set {
- this.isSafeFrameCompatibleFieldSpecified = value;
+ this.overrideSizeFieldSpecified = value;
+ }
+ }
+
+ /// The primary image asset associated with this creative. This attribute is
+ /// required.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
+ public CreativeAsset primaryImageAsset {
+ get {
+ return this.primaryImageAssetField;
+ }
+ set {
+ this.primaryImageAssetField = value;
}
}
}
- /// A Creative that isn't supported by Google DFP, but was migrated
- /// from DART. Creatives of this type cannot be created or modified.
+ /// An overlay Creative that displays an image and is served via VAST
+ /// 2.0 XML. Overlays cover part of the video content they are displayed on top of.
+ /// This creative is read only prior to v201705.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class LegacyDfpCreative : Creative {
- }
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class ImageOverlayCreative : BaseImageCreative {
+ private long[] companionCreativeIdsField;
+ private ConversionEvent_TrackingUrlsMapEntry[] trackingUrlsField;
- /// A Creative hosted by Campaign Manager.
Similar to third-party
- /// creatives, a Campaign Manager tag is used to retrieve a creative asset. However,
- /// Campaign Manager tags are not sent to the user's browser. Instead, they are
- /// processed internally within the Google Marketing Platform system..
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class InternalRedirectCreative : Creative {
private LockedOrientation lockedOrientationField;
private bool lockedOrientationFieldSpecified;
- private Size assetSizeField;
-
- private string internalRedirectUrlField;
-
- private bool overrideSizeField;
-
- private bool overrideSizeFieldSpecified;
-
- private bool isInterstitialField;
-
- private bool isInterstitialFieldSpecified;
+ private string customParametersField;
- private SslScanResult sslScanResultField;
+ private int durationField;
- private bool sslScanResultFieldSpecified;
+ private bool durationFieldSpecified;
- private SslManualOverride sslManualOverrideField;
+ private string vastPreviewUrlField;
- private bool sslManualOverrideFieldSpecified;
+ /// The IDs of the companion creatives that are associated with this creative. This
+ /// attribute is optional. This attribute is read-only.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute("companionCreativeIds", Order = 0)]
+ public long[] companionCreativeIds {
+ get {
+ return this.companionCreativeIdsField;
+ }
+ set {
+ this.companionCreativeIdsField = value;
+ }
+ }
- private string[] thirdPartyImpressionTrackingUrlsField;
+ /// A map from ConversionEvent to a list of URLs that will be pinged
+ /// when the event happens. This attribute is optional.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute("trackingUrls", Order = 1)]
+ public ConversionEvent_TrackingUrlsMapEntry[] trackingUrls {
+ get {
+ return this.trackingUrlsField;
+ }
+ set {
+ this.trackingUrlsField = value;
+ }
+ }
/// A locked orientation for this creative to be displayed in.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
+ [System.Xml.Serialization.XmlElementAttribute(Order = 2)]
public LockedOrientation lockedOrientation {
get {
return this.lockedOrientationField;
@@ -7936,176 +7803,287 @@ public bool lockedOrientationSpecified {
}
}
- /// The asset size of an internal redirect creative. Note that this may differ from
- /// size if users set overrideSize to true. This attribute
- /// is read-only and is populated by Google.
+ /// A comma separated key=value list of parameters that will be supplied to the
+ /// creative, written into the VAST node. This attribute is optional.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
- public Size assetSize {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 3)]
+ public string customParameters {
get {
- return this.assetSizeField;
+ return this.customParametersField;
}
set {
- this.assetSizeField = value;
+ this.customParametersField = value;
}
}
- /// The internal redirect URL of the DFA or DART for Publishers hosted creative.
- /// This attribute is required and has a maximum length of 1024 characters.
+ /// Minimum suggested duration in milliseconds. This attribute is optional.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 2)]
- public string internalRedirectUrl {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 4)]
+ public int duration {
get {
- return this.internalRedirectUrlField;
+ return this.durationField;
}
set {
- this.internalRedirectUrlField = value;
+ this.durationField = value;
+ this.durationSpecified = true;
}
}
- /// Allows the creative size to differ from the actual size specified in the
- /// internal redirect's url. This attribute is optional.
+ /// true, if a value is specified for , false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool durationSpecified {
+ get {
+ return this.durationFieldSpecified;
+ }
+ set {
+ this.durationFieldSpecified = value;
+ }
+ }
+
+ /// An ad tag URL that will return a preview of the VAST XML response specific to
+ /// this creative. This attribute is read-only.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 3)]
- public bool overrideSize {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 5)]
+ public string vastPreviewUrl {
get {
- return this.overrideSizeField;
+ return this.vastPreviewUrlField;
}
set {
- this.overrideSizeField = value;
- this.overrideSizeSpecified = true;
+ this.vastPreviewUrlField = value;
}
}
+ }
- /// true, if a value is specified for , false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool overrideSizeSpecified {
+
+ /// A Creative that displays an image.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class ImageCreative : BaseImageCreative {
+ private string altTextField;
+
+ private string thirdPartyImpressionUrlField;
+
+ private CreativeAsset[] secondaryImageAssetsField;
+
+ /// Alternative text to be rendered along with the creative used mainly for
+ /// accessibility. This field is optional and has a maximum length of 500
+ /// characters.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
+ public string altText {
get {
- return this.overrideSizeFieldSpecified;
+ return this.altTextField;
}
set {
- this.overrideSizeFieldSpecified = value;
+ this.altTextField = value;
}
}
- /// true if this internal redirect creative is interstitial.
+ /// An impression tracking URL to ping when this creative is displayed. This field
+ /// is optional has a maximum length of 1024 characters.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 4)]
- public bool isInterstitial {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
+ public string thirdPartyImpressionUrl {
get {
- return this.isInterstitialField;
+ return this.thirdPartyImpressionUrlField;
}
set {
- this.isInterstitialField = value;
- this.isInterstitialSpecified = true;
+ this.thirdPartyImpressionUrlField = value;
}
}
- /// true, if a value is specified for , false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool isInterstitialSpecified {
+ /// The list of secondary image assets associated with this creative. This attribute
+ /// is optional.
Secondary image assets can be used to store different resolution
+ /// versions of the primary asset for use on non-standard density screens.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute("secondaryImageAssets", Order = 2)]
+ public CreativeAsset[] secondaryImageAssets {
get {
- return this.isInterstitialFieldSpecified;
+ return this.secondaryImageAssetsField;
}
set {
- this.isInterstitialFieldSpecified = value;
+ this.secondaryImageAssetsField = value;
}
}
+ }
- /// The SSL compatibility scan result for this creative.
This attribute is
- /// read-only and determined by Google.
+
+ /// A Creative intended for mobile platforms that displays an image,
+ /// whose size is defined as an aspect ratio, i.e. Size#isAspectRatio. It can have multiple images
+ /// whose dimensions conform to that aspect ratio.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class AspectRatioImageCreative : HasDestinationUrlCreative {
+ private CreativeAsset[] imageAssetsField;
+
+ private string altTextField;
+
+ private string thirdPartyImpressionUrlField;
+
+ private bool overrideSizeField;
+
+ private bool overrideSizeFieldSpecified;
+
+ /// The images associated with this creative. The ad server will choose one based on
+ /// the capabilities of the device. Each asset should have a size which is of the
+ /// same aspect ratio as the Creative#size. This
+ /// attribute is required and must have at least one asset.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 5)]
- public SslScanResult sslScanResult {
+ [System.Xml.Serialization.XmlElementAttribute("imageAssets", Order = 0)]
+ public CreativeAsset[] imageAssets {
get {
- return this.sslScanResultField;
+ return this.imageAssetsField;
}
set {
- this.sslScanResultField = value;
- this.sslScanResultSpecified = true;
+ this.imageAssetsField = value;
}
}
- /// true, if a value is specified for , false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool sslScanResultSpecified {
+ /// The text that is served along with the image creative, primarily for
+ /// accessibility. If no suitable image size is available for the device, this text
+ /// replaces the image completely. This field is optional and has a maximum length
+ /// of 500 characters.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
+ public string altText {
get {
- return this.sslScanResultFieldSpecified;
+ return this.altTextField;
}
set {
- this.sslScanResultFieldSpecified = value;
+ this.altTextField = value;
}
}
- /// The manual override for the SSL compatibility of this creative.
+ /// An impression tracking URL to ping when this creative is displayed. This field
+ /// is optional has a maximum length of 1024 characters.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 6)]
- public SslManualOverride sslManualOverride {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 2)]
+ public string thirdPartyImpressionUrl {
get {
- return this.sslManualOverrideField;
+ return this.thirdPartyImpressionUrlField;
}
set {
- this.sslManualOverrideField = value;
- this.sslManualOverrideSpecified = true;
+ this.thirdPartyImpressionUrlField = value;
+ }
+ }
+
+ /// Allows the actual image asset sizes to differ from the creative size. This
+ /// attribute is optional.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 3)]
+ public bool overrideSize {
+ get {
+ return this.overrideSizeField;
+ }
+ set {
+ this.overrideSizeField = value;
+ this.overrideSizeSpecified = true;
}
}
/// true, if a value is specified for , false otherwise.
+ /// cref="overrideSize" />, false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool sslManualOverrideSpecified {
+ public bool overrideSizeSpecified {
get {
- return this.sslManualOverrideFieldSpecified;
+ return this.overrideSizeFieldSpecified;
}
set {
- this.sslManualOverrideFieldSpecified = value;
+ this.overrideSizeFieldSpecified = value;
}
}
+ }
- /// A list of impression tracking URLs to ping when this creative is displayed. This
- /// field is optional.
+
+ /// A creative that is used for tracking clicks on ads that are served directly from
+ /// the customers' web servers or media servers. NOTE: The size attribute is not
+ /// used for click tracking creative and it will not be persisted upon save.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class ClickTrackingCreative : Creative {
+ private string clickTrackingUrlField;
+
+ /// The click tracking URL. This attribute is required.
///
- [System.Xml.Serialization.XmlElementAttribute("thirdPartyImpressionTrackingUrls", Order = 7)]
- public string[] thirdPartyImpressionTrackingUrls {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
+ public string clickTrackingUrl {
get {
- return this.thirdPartyImpressionTrackingUrlsField;
+ return this.clickTrackingUrlField;
}
set {
- this.thirdPartyImpressionTrackingUrlsField = value;
+ this.clickTrackingUrlField = value;
}
}
}
- /// A Creative that contains a zipped HTML5 bundle asset, a list of
- /// third party impression trackers, and a third party click tracker.
+ /// A Creative that is created by a Rich Media Studio.
///
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(RichMediaStudioCreative))]
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class Html5Creative : Creative {
- private bool overrideSizeField;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public abstract partial class BaseRichMediaStudioCreative : Creative {
+ private long studioCreativeIdField;
- private bool overrideSizeFieldSpecified;
+ private bool studioCreativeIdFieldSpecified;
- private string[] thirdPartyImpressionTrackingUrlsField;
+ private RichMediaStudioCreativeFormat creativeFormatField;
- private string thirdPartyClickTrackingUrlField;
+ private bool creativeFormatFieldSpecified;
- private LockedOrientation lockedOrientationField;
+ private RichMediaStudioCreativeArtworkType artworkTypeField;
- private bool lockedOrientationFieldSpecified;
+ private bool artworkTypeFieldSpecified;
+
+ private long totalFileSizeField;
+
+ private bool totalFileSizeFieldSpecified;
+
+ private string[] adTagKeysField;
+
+ private string[] customKeyValuesField;
+
+ private string surveyUrlField;
+
+ private string allImpressionsUrlField;
+
+ private string richMediaImpressionsUrlField;
+
+ private string backupImageImpressionsUrlField;
+
+ private string overrideCssField;
+
+ private string requiredFlashPluginVersionField;
+
+ private int durationField;
+
+ private bool durationFieldSpecified;
+
+ private RichMediaStudioCreativeBillingAttribute billingAttributeField;
+
+ private bool billingAttributeFieldSpecified;
+
+ private RichMediaStudioChildAssetProperty[] richMediaStudioChildAssetPropertiesField;
private SslScanResult sslScanResultField;
@@ -8115,413 +8093,289 @@ public partial class Html5Creative : Creative {
private bool sslManualOverrideFieldSpecified;
- private bool isSafeFrameCompatibleField;
-
- private bool isSafeFrameCompatibleFieldSpecified;
-
- private CreativeAsset html5AssetField;
-
- /// Allows the creative size to differ from the actual HTML5 asset size. This
- /// attribute is optional.
+ /// The creative ID as known by Rich Media Studio creative. This attribute is
+ /// readonly.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public bool overrideSize {
+ public long studioCreativeId {
get {
- return this.overrideSizeField;
+ return this.studioCreativeIdField;
}
set {
- this.overrideSizeField = value;
- this.overrideSizeSpecified = true;
+ this.studioCreativeIdField = value;
+ this.studioCreativeIdSpecified = true;
}
}
/// true, if a value is specified for , false otherwise.
+ /// cref="studioCreativeId" />, false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool overrideSizeSpecified {
+ public bool studioCreativeIdSpecified {
get {
- return this.overrideSizeFieldSpecified;
+ return this.studioCreativeIdFieldSpecified;
}
set {
- this.overrideSizeFieldSpecified = value;
+ this.studioCreativeIdFieldSpecified = value;
}
}
- /// Impression tracking URLs to ping when this creative is displayed. This field is
- /// optional.
+ /// The creative format of the Rich Media Studio creative. This attribute is
+ /// readonly.
///
- [System.Xml.Serialization.XmlElementAttribute("thirdPartyImpressionTrackingUrls", Order = 1)]
- public string[] thirdPartyImpressionTrackingUrls {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
+ public RichMediaStudioCreativeFormat creativeFormat {
get {
- return this.thirdPartyImpressionTrackingUrlsField;
+ return this.creativeFormatField;
}
set {
- this.thirdPartyImpressionTrackingUrlsField = value;
+ this.creativeFormatField = value;
+ this.creativeFormatSpecified = true;
}
}
- /// A click tracking URL to ping when this creative is clicked. This field is
- /// optional.
- ///
- [System.Xml.Serialization.XmlElementAttribute(Order = 2)]
- public string thirdPartyClickTrackingUrl {
+ /// true, if a value is specified for , false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool creativeFormatSpecified {
get {
- return this.thirdPartyClickTrackingUrlField;
+ return this.creativeFormatFieldSpecified;
}
set {
- this.thirdPartyClickTrackingUrlField = value;
+ this.creativeFormatFieldSpecified = value;
}
}
- /// A locked orientation for this creative to be displayed in.
+ /// The type of artwork used in this creative. This attribute is readonly.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 3)]
- public LockedOrientation lockedOrientation {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 2)]
+ public RichMediaStudioCreativeArtworkType artworkType {
get {
- return this.lockedOrientationField;
+ return this.artworkTypeField;
}
set {
- this.lockedOrientationField = value;
- this.lockedOrientationSpecified = true;
+ this.artworkTypeField = value;
+ this.artworkTypeSpecified = true;
}
}
- /// true, if a value is specified for , false otherwise.
+ /// true, if a value is specified for , false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool lockedOrientationSpecified {
+ public bool artworkTypeSpecified {
get {
- return this.lockedOrientationFieldSpecified;
+ return this.artworkTypeFieldSpecified;
}
set {
- this.lockedOrientationFieldSpecified = value;
+ this.artworkTypeFieldSpecified = value;
}
}
- /// The SSL compatibility scan result of this creative.
This attribute is
- /// read-only and determined by Google.
+ /// The total size of all assets in bytes. This attribute is readonly.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 4)]
- public SslScanResult sslScanResult {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 3)]
+ public long totalFileSize {
get {
- return this.sslScanResultField;
+ return this.totalFileSizeField;
}
set {
- this.sslScanResultField = value;
- this.sslScanResultSpecified = true;
+ this.totalFileSizeField = value;
+ this.totalFileSizeSpecified = true;
}
}
/// true, if a value is specified for , false otherwise.
+ /// cref="totalFileSize" />, false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool sslScanResultSpecified {
+ public bool totalFileSizeSpecified {
get {
- return this.sslScanResultFieldSpecified;
+ return this.totalFileSizeFieldSpecified;
}
set {
- this.sslScanResultFieldSpecified = value;
+ this.totalFileSizeFieldSpecified = value;
}
}
- /// The manual override for the SSL compatibility of this creative.
+ /// Ad tag keys. This attribute is optional and updatable.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 5)]
- public SslManualOverride sslManualOverride {
+ [System.Xml.Serialization.XmlElementAttribute("adTagKeys", Order = 4)]
+ public string[] adTagKeys {
get {
- return this.sslManualOverrideField;
+ return this.adTagKeysField;
}
set {
- this.sslManualOverrideField = value;
- this.sslManualOverrideSpecified = true;
+ this.adTagKeysField = value;
}
}
- /// true, if a value is specified for , false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool sslManualOverrideSpecified {
+ /// Custom key values. This attribute is optional and updatable.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute("customKeyValues", Order = 5)]
+ public string[] customKeyValues {
get {
- return this.sslManualOverrideFieldSpecified;
+ return this.customKeyValuesField;
}
set {
- this.sslManualOverrideFieldSpecified = value;
+ this.customKeyValuesField = value;
}
}
- /// Whether the Creative is compatible for SafeFrame
- /// rendering.
This attribute is optional and defaults to true.
+ /// The survey URL for this creative. This attribute is optional and updatable.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 6)]
- public bool isSafeFrameCompatible {
+ public string surveyUrl {
get {
- return this.isSafeFrameCompatibleField;
+ return this.surveyUrlField;
}
set {
- this.isSafeFrameCompatibleField = value;
- this.isSafeFrameCompatibleSpecified = true;
+ this.surveyUrlField = value;
}
}
- /// true, if a value is specified for , false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool isSafeFrameCompatibleSpecified {
+ /// The tracking URL to be triggered when an ad starts to play, whether Rich Media
+ /// or backup content is displayed. Behaves like the URL that DART
+ /// used to track impressions. This URL can't exceed 1024 characters and must start
+ /// with http:// or https://. This attribute is optional and updatable.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 7)]
+ public string allImpressionsUrl {
get {
- return this.isSafeFrameCompatibleFieldSpecified;
+ return this.allImpressionsUrlField;
}
set {
- this.isSafeFrameCompatibleFieldSpecified = value;
+ this.allImpressionsUrlField = value;
}
}
- /// The HTML5 asset. To preview the HTML5 asset, use the CreativeAsset#assetUrl. In this field, the CreativeAsset#assetByteArray must be a
- /// zip bundle and the CreativeAsset#fileName
- /// must have a zip extension. This attribute is required.
+ /// The tracking URL to be triggered when any rich media artwork is displayed in an
+ /// ad. Behaves like the /imp URL that DART used to track impressions.
+ /// This URL can't exceed 1024 characters and must start with http:// or https://.
+ /// This attribute is optional and updatable.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 7)]
- public CreativeAsset html5Asset {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 8)]
+ public string richMediaImpressionsUrl {
get {
- return this.html5AssetField;
+ return this.richMediaImpressionsUrlField;
}
set {
- this.html5AssetField = value;
+ this.richMediaImpressionsUrlField = value;
}
}
- }
-
-
- /// A Creative that has a destination url
- ///
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(CustomCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(BaseVideoCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(VideoRedirectCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(VideoCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(SetTopBoxCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(BaseImageRedirectCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(ImageRedirectOverlayCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(ImageRedirectCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(BaseImageCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(ImageOverlayCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(ImageCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(BaseFlashRedirectCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(FlashRedirectOverlayCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(FlashRedirectCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(BaseFlashCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(FlashOverlayCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(FlashCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(AspectRatioImageCreative))]
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public abstract partial class HasDestinationUrlCreative : Creative {
- private string destinationUrlField;
-
- private DestinationUrlType destinationUrlTypeField;
- private bool destinationUrlTypeFieldSpecified;
-
- /// The URL that the user is directed to if they click on the creative. This
- /// attribute is required unless the destinationUrlType is DestinationUrlType#NONE, and has a maximum
- /// length of 1024 characters.
+ /// The tracking URL to be triggered when the Rich Media backup image is served.
+ /// This attribute is optional and updatable.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public string destinationUrl {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 9)]
+ public string backupImageImpressionsUrl {
get {
- return this.destinationUrlField;
+ return this.backupImageImpressionsUrlField;
}
set {
- this.destinationUrlField = value;
+ this.backupImageImpressionsUrlField = value;
}
}
- /// The action that should be performed if the user clicks on the creative. This
- /// attribute is optional and defaults to DestinationUrlType#CLICK_TO_WEB.
+ /// The override CSS. You can put custom CSS code here to repair creative styling;
+ /// e.g. tr td { background-color:#FBB; }. This attribute is optional
+ /// and updatable.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
- public DestinationUrlType destinationUrlType {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 10)]
+ public string overrideCss {
get {
- return this.destinationUrlTypeField;
+ return this.overrideCssField;
}
set {
- this.destinationUrlTypeField = value;
- this.destinationUrlTypeSpecified = true;
+ this.overrideCssField = value;
}
}
- /// true, if a value is specified for , false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool destinationUrlTypeSpecified {
+ /// The Flash plugin version required to view this creative; e.g. Flash
+ /// 10.2/AS 3. This attribute is read only.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 11)]
+ public string requiredFlashPluginVersion {
get {
- return this.destinationUrlTypeFieldSpecified;
+ return this.requiredFlashPluginVersionField;
}
set {
- this.destinationUrlTypeFieldSpecified = value;
+ this.requiredFlashPluginVersionField = value;
}
}
- }
-
-
- /// The valid actions that a destination URL may perform if the user clicks on the
- /// ad.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum DestinationUrlType {
- /// The value returned if the actual value is not exposed by the requested API
- /// version.
- ///
- UNKNOWN = 0,
- /// Navigate to a web page. (a.k.a. "Click-through URL").
- ///
- CLICK_TO_WEB = 1,
- /// Start an application.
- ///
- CLICK_TO_APP = 2,
- /// Make a phone call.
- ///
- CLICK_TO_CALL = 3,
- /// Destination URL not present. Useful for video creatives where a landing page or
- /// a product isn't necessarily applicable.
- ///
- NONE = 4,
- }
-
-
- /// A Creative that contains an arbitrary HTML snippet and file assets.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class CustomCreative : HasDestinationUrlCreative {
- private string htmlSnippetField;
-
- private CustomCreativeAsset[] customCreativeAssetsField;
-
- private bool isInterstitialField;
-
- private bool isInterstitialFieldSpecified;
-
- private LockedOrientation lockedOrientationField;
-
- private bool lockedOrientationFieldSpecified;
-
- private SslScanResult sslScanResultField;
-
- private bool sslScanResultFieldSpecified;
-
- private SslManualOverride sslManualOverrideField;
-
- private bool sslManualOverrideFieldSpecified;
-
- private bool isSafeFrameCompatibleField;
-
- private bool isSafeFrameCompatibleFieldSpecified;
-
- private string[] thirdPartyImpressionTrackingUrlsField;
- /// The HTML snippet that this creative delivers. This attribute is required.
+ /// The duration of the creative in milliseconds. This attribute is optional and
+ /// updatable.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public string htmlSnippet {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 12)]
+ public int duration {
get {
- return this.htmlSnippetField;
+ return this.durationField;
}
set {
- this.htmlSnippetField = value;
+ this.durationField = value;
+ this.durationSpecified = true;
}
}
- /// A list of file assets that are associated with this creative, and can be
- /// referenced in the snippet.
- ///
- [System.Xml.Serialization.XmlElementAttribute("customCreativeAssets", Order = 1)]
- public CustomCreativeAsset[] customCreativeAssets {
+ /// true, if a value is specified for , false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool durationSpecified {
get {
- return this.customCreativeAssetsField;
+ return this.durationFieldSpecified;
}
set {
- this.customCreativeAssetsField = value;
+ this.durationFieldSpecified = value;
}
}
- /// true if this custom creative is interstitial. An interstitial
- /// creative will not consider an impression served until it is fully rendered in
- /// the browser.
+ /// The billing attribute associated with this creative. This attribute is read
+ /// only.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 2)]
- public bool isInterstitial {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 13)]
+ public RichMediaStudioCreativeBillingAttribute billingAttribute {
get {
- return this.isInterstitialField;
+ return this.billingAttributeField;
}
set {
- this.isInterstitialField = value;
- this.isInterstitialSpecified = true;
+ this.billingAttributeField = value;
+ this.billingAttributeSpecified = true;
}
}
/// true, if a value is specified for , false otherwise.
+ /// cref="billingAttribute" />, false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool isInterstitialSpecified {
+ public bool billingAttributeSpecified {
get {
- return this.isInterstitialFieldSpecified;
+ return this.billingAttributeFieldSpecified;
}
set {
- this.isInterstitialFieldSpecified = value;
+ this.billingAttributeFieldSpecified = value;
}
}
- /// A locked orientation for this creative to be displayed in.
+ /// The list of child assets associated with this creative. This attribute is read
+ /// only.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 3)]
- public LockedOrientation lockedOrientation {
- get {
- return this.lockedOrientationField;
- }
- set {
- this.lockedOrientationField = value;
- this.lockedOrientationSpecified = true;
- }
- }
-
- /// true, if a value is specified for , false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool lockedOrientationSpecified {
+ [System.Xml.Serialization.XmlElementAttribute("richMediaStudioChildAssetProperties", Order = 14)]
+ public RichMediaStudioChildAssetProperty[] richMediaStudioChildAssetProperties {
get {
- return this.lockedOrientationFieldSpecified;
+ return this.richMediaStudioChildAssetPropertiesField;
}
set {
- this.lockedOrientationFieldSpecified = value;
+ this.richMediaStudioChildAssetPropertiesField = value;
}
}
/// The SSL compatibility scan result of this creative.
This attribute is
/// read-only and determined by Google.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 4)]
+ [System.Xml.Serialization.XmlElementAttribute(Order = 15)]
public SslScanResult sslScanResult {
get {
return this.sslScanResultField;
@@ -8549,7 +8403,7 @@ public bool sslScanResultSpecified {
/// attribute is optional and defaults to SslManualOverride#NO_OVERRIDE.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 5)]
+ [System.Xml.Serialization.XmlElementAttribute(Order = 16)]
public SslManualOverride sslManualOverride {
get {
return this.sslManualOverrideField;
@@ -8572,3125 +8426,3662 @@ public bool sslManualOverrideSpecified {
this.sslManualOverrideFieldSpecified = value;
}
}
+ }
- /// Whether the Creative is compatible for SafeFrame
- /// rendering.
This attribute is optional and defaults to true.
- ///
- [System.Xml.Serialization.XmlElementAttribute(Order = 6)]
- public bool isSafeFrameCompatible {
- get {
- return this.isSafeFrameCompatibleField;
- }
- set {
- this.isSafeFrameCompatibleField = value;
- this.isSafeFrameCompatibleSpecified = true;
- }
- }
-
- /// true, if a value is specified for , false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool isSafeFrameCompatibleSpecified {
- get {
- return this.isSafeFrameCompatibleFieldSpecified;
- }
- set {
- this.isSafeFrameCompatibleFieldSpecified = value;
- }
- }
- /// A list of impression tracking URLs to ping when this creative is displayed. This
- /// field is optional.
+ /// Different creative format supported by Rich Media Studio creative.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum RichMediaStudioCreativeFormat {
+ /// In-page creatives are served into an ad slot on publishers page. In-page implies
+ /// that they maintain a static size, e.g, 468x60 and do not break out of these
+ /// dimensions.
///
- [System.Xml.Serialization.XmlElementAttribute("thirdPartyImpressionTrackingUrls", Order = 7)]
- public string[] thirdPartyImpressionTrackingUrls {
- get {
- return this.thirdPartyImpressionTrackingUrlsField;
- }
- set {
- this.thirdPartyImpressionTrackingUrlsField = value;
- }
- }
+ IN_PAGE = 0,
+ /// Expanding creatives expand/collapse on user interaction such as mouse over. It
+ /// consists of an initial, or collapsed and an expanded creative area.
+ ///
+ EXPANDING = 1,
+ /// Creatives that are served in an instant messenger application such as AOL
+ /// Instant Messanger or Yahoo! Messenger. This can also be used in desktop
+ /// applications such as weatherbug.
+ ///
+ IM_EXPANDING = 2,
+ /// Floating creatives float on top of publishers page and can be closed with a
+ /// close button.
+ ///
+ FLOATING = 3,
+ /// Peel-down creatives show a glimpse of your ad in the corner of a web page. When
+ /// the user interacts, the rest of the ad peels down to reveal the full message.
+ ///
+ PEEL_DOWN = 4,
+ /// An In-Page with Floating creative is a dual-asset creative consisting of an
+ /// in-page asset and a floating asset. This creative type lets you deliver a static
+ /// primary ad to a webpage, while inviting a user to find out more through a
+ /// floating asset delivered when the user interacts with the creative.
+ ///
+ IN_PAGE_WITH_FLOATING = 5,
+ /// A Flash ad that renders in a Flash environment. The adserver will serve this
+ /// using VAST, but it is not a proper VAST XML ad. It's an amalgamation of the
+ /// proprietary InStream protocol, rendered inside VAST so that we can capture some
+ /// standard behavior such as companions.
+ ///
+ FLASH_IN_FLASH = 6,
+ /// An expanding flash ad that renders in a Flash environment. The adserver will
+ /// serve this using VAST, but it is not a proper VAST XML ad. It's an amalgamation
+ /// of the proprietary InStream protocol, rendered inside VAST so that we can
+ /// capture some standard behavior such as companions.
+ ///
+ FLASH_IN_FLASH_EXPANDING = 7,
+ /// In-app creatives are served into an ad slot within a publisher's app. In-app
+ /// implies that they maintain a static size, e.g, 468x60 and do not break out of
+ /// these dimensions.
+ ///
+ IN_APP = 8,
+ /// The creative format is unknown or not supported in the API version in use.
+ ///
+ UNKNOWN = 9,
}
- /// A base type for video creatives.
+ /// Rich Media Studio creative artwork types.
///
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(VideoRedirectCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(VideoCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(SetTopBoxCreative))]
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public abstract partial class BaseVideoCreative : HasDestinationUrlCreative {
- private int durationField;
-
- private bool durationFieldSpecified;
-
- private bool allowDurationOverrideField;
-
- private bool allowDurationOverrideFieldSpecified;
-
- private ConversionEvent_TrackingUrlsMapEntry[] trackingUrlsField;
-
- private long[] companionCreativeIdsField;
-
- private string customParametersField;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum RichMediaStudioCreativeArtworkType {
+ /// The creative is a Flash creative.
+ ///
+ FLASH = 0,
+ /// The creative is HTML5.
+ ///
+ HTML5 = 1,
+ /// The creative is Flash if available, and HTML5 otherwise.
+ ///
+ MIXED = 2,
+ }
- private SkippableAdType skippableAdTypeField;
- private bool skippableAdTypeFieldSpecified;
+ /// Rich Media Studio creative supported billing attributes.
This is determined
+ /// by Rich Media Studio based on the content of the creative and is not
+ /// updateable.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum RichMediaStudioCreativeBillingAttribute {
+ /// Applies to any RichMediaStudioCreativeFormat#IN_PAGE,
+ /// without Video.
+ ///
+ IN_PAGE = 0,
+ /// Applies to any of these following RichMediaStudioCreativeFormat, without
+ /// Video: RichMediaStudioCreativeFormat#EXPANDING,
+ /// RichMediaStudioCreativeFormat#IM_EXPANDING,
+ /// RichMediaStudioCreativeFormat#FLOATING,
+ /// RichMediaStudioCreativeFormat#PEEL_DOWN,
+ /// RichMediaStudioCreativeFormat#IN_PAGE_WITH_FLOATING
+ ///
+ FLOATING_EXPANDING = 1,
+ /// Applies to any creatives that includes a video.
+ ///
+ VIDEO = 2,
+ /// Applies to any RichMediaStudioCreativeFormat#FLASH_IN_FLASH,
+ /// without Video.
+ ///
+ FLASH_IN_FLASH = 3,
+ }
- private string vastPreviewUrlField;
- private SslScanResult sslScanResultField;
+ /// A Creative that is created by a Rich Media Studio. You cannot
+ /// create this creative, but you can update some fields of this creative.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class RichMediaStudioCreative : BaseRichMediaStudioCreative {
+ private LockedOrientation lockedOrientationField;
- private bool sslScanResultFieldSpecified;
+ private bool lockedOrientationFieldSpecified;
- private SslManualOverride sslManualOverrideField;
+ private bool isInterstitialField;
- private bool sslManualOverrideFieldSpecified;
+ private bool isInterstitialFieldSpecified;
- /// The expected duration of this creative in milliseconds.
+ /// A locked orientation for this creative to be displayed in.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public int duration {
+ public LockedOrientation lockedOrientation {
get {
- return this.durationField;
+ return this.lockedOrientationField;
}
set {
- this.durationField = value;
- this.durationSpecified = true;
+ this.lockedOrientationField = value;
+ this.lockedOrientationSpecified = true;
}
}
- /// true, if a value is specified for , false otherwise.
+ /// true, if a value is specified for , false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool durationSpecified {
+ public bool lockedOrientationSpecified {
get {
- return this.durationFieldSpecified;
+ return this.lockedOrientationFieldSpecified;
}
set {
- this.durationFieldSpecified = value;
+ this.lockedOrientationFieldSpecified = value;
}
}
- /// Allows the creative duration to differ from the actual asset durations. This
- /// attribute is optional.
+ /// true if this is interstitial. An interstitial creative will not
+ /// consider an impression served until it is fully rendered in the browser. This
+ /// attribute is readonly.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 1)]
- public bool allowDurationOverride {
+ public bool isInterstitial {
get {
- return this.allowDurationOverrideField;
+ return this.isInterstitialField;
}
set {
- this.allowDurationOverrideField = value;
- this.allowDurationOverrideSpecified = true;
+ this.isInterstitialField = value;
+ this.isInterstitialSpecified = true;
}
}
/// true, if a value is specified for , false otherwise.
+ /// cref="isInterstitial" />, false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool allowDurationOverrideSpecified {
+ public bool isInterstitialSpecified {
get {
- return this.allowDurationOverrideFieldSpecified;
+ return this.isInterstitialFieldSpecified;
}
set {
- this.allowDurationOverrideFieldSpecified = value;
+ this.isInterstitialFieldSpecified = value;
}
}
+ }
- /// A map from ConversionEvent to a list of URLs that will be pinged
- /// when the event happens. This attribute is optional.
+
+ /// A base class for dynamic allocation creatives.
+ ///
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(HasHtmlSnippetDynamicAllocationCreative))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(AdSenseCreative))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(AdExchangeCreative))]
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public abstract partial class BaseDynamicAllocationCreative : Creative {
+ }
+
+
+ /// Dynamic allocation creative with a backfill code snippet.
+ ///
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(AdSenseCreative))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(AdExchangeCreative))]
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public abstract partial class HasHtmlSnippetDynamicAllocationCreative : BaseDynamicAllocationCreative {
+ private string codeSnippetField;
+
+ /// The code snippet (ad tag) from Ad Exchange or AdSense to traffic the dynamic
+ /// allocation creative. Only valid Ad Exchange or AdSense parameters will be
+ /// considered. Any extraneous HTML or JavaScript will be ignored.
///
- [System.Xml.Serialization.XmlElementAttribute("trackingUrls", Order = 2)]
- public ConversionEvent_TrackingUrlsMapEntry[] trackingUrls {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
+ public string codeSnippet {
get {
- return this.trackingUrlsField;
+ return this.codeSnippetField;
}
set {
- this.trackingUrlsField = value;
+ this.codeSnippetField = value;
}
}
+ }
- /// The IDs of the companion creatives that are associated with this creative. This
- /// attribute is optional.
+
+ /// An AdSense dynamic allocation creative.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class AdSenseCreative : HasHtmlSnippetDynamicAllocationCreative {
+ }
+
+
+ /// An Ad Exchange dynamic allocation creative.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class AdExchangeCreative : HasHtmlSnippetDynamicAllocationCreative {
+ private bool isNativeEligibleField;
+
+ private bool isNativeEligibleFieldSpecified;
+
+ private bool isInterstitialField;
+
+ private bool isInterstitialFieldSpecified;
+
+ /// Whether this creative is eligible for native ad-serving. This value is optional
+ /// and defaults to false.
///
- [System.Xml.Serialization.XmlElementAttribute("companionCreativeIds", Order = 3)]
- public long[] companionCreativeIds {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
+ public bool isNativeEligible {
get {
- return this.companionCreativeIdsField;
+ return this.isNativeEligibleField;
}
set {
- this.companionCreativeIdsField = value;
+ this.isNativeEligibleField = value;
+ this.isNativeEligibleSpecified = true;
}
}
- /// A comma separated key=value list of parameters that will be supplied to the
- /// creative, written into the VAST node. This attribute is optional.
- ///
- [System.Xml.Serialization.XmlElementAttribute(Order = 4)]
- public string customParameters {
+ /// true, if a value is specified for , false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool isNativeEligibleSpecified {
get {
- return this.customParametersField;
+ return this.isNativeEligibleFieldSpecified;
}
set {
- this.customParametersField = value;
+ this.isNativeEligibleFieldSpecified = value;
}
}
- /// The type of skippable ad.
+ /// true if this creative is interstitial. An interstitial creative
+ /// will not consider an impression served until it is fully rendered in the
+ /// browser.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 5)]
- public SkippableAdType skippableAdType {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
+ public bool isInterstitial {
get {
- return this.skippableAdTypeField;
+ return this.isInterstitialField;
}
set {
- this.skippableAdTypeField = value;
- this.skippableAdTypeSpecified = true;
+ this.isInterstitialField = value;
+ this.isInterstitialSpecified = true;
}
}
/// true, if a value is specified for , false otherwise.
+ /// cref="isInterstitial" />, false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool skippableAdTypeSpecified {
+ public bool isInterstitialSpecified {
get {
- return this.skippableAdTypeFieldSpecified;
+ return this.isInterstitialFieldSpecified;
}
set {
- this.skippableAdTypeFieldSpecified = value;
+ this.isInterstitialFieldSpecified = value;
}
}
+ }
- /// An ad tag URL that will return a preview of the VAST XML response specific to
- /// this creative. This attribute is read-only.
- ///
- [System.Xml.Serialization.XmlElementAttribute(Order = 6)]
- public string vastPreviewUrl {
- get {
- return this.vastPreviewUrlField;
- }
- set {
- this.vastPreviewUrlField = value;
- }
- }
- /// The SSL compatibility scan result of this creative.
This attribute is
- /// read-only and determined by Google.
+ /// Lists all errors associated with template instantiated creatives.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class TemplateInstantiatedCreativeError : ApiError {
+ private TemplateInstantiatedCreativeErrorReason reasonField;
+
+ private bool reasonFieldSpecified;
+
+ /// The error reason represented by an enum.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 7)]
- public SslScanResult sslScanResult {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
+ public TemplateInstantiatedCreativeErrorReason reason {
get {
- return this.sslScanResultField;
+ return this.reasonField;
}
set {
- this.sslScanResultField = value;
- this.sslScanResultSpecified = true;
+ this.reasonField = value;
+ this.reasonSpecified = true;
}
}
- /// true, if a value is specified for , false otherwise.
+ /// true, if a value is specified for ,
+ /// false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool sslScanResultSpecified {
+ public bool reasonSpecified {
get {
- return this.sslScanResultFieldSpecified;
+ return this.reasonFieldSpecified;
}
set {
- this.sslScanResultFieldSpecified = value;
+ this.reasonFieldSpecified = value;
}
}
+ }
- /// The manual override for the SSL compatibility of this creative.
+
+ /// The reason for the error
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "TemplateInstantiatedCreativeError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum TemplateInstantiatedCreativeErrorReason {
+ /// A new creative cannot be created from an inactive creative template.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 8)]
- public SslManualOverride sslManualOverride {
+ INACTIVE_CREATIVE_TEMPLATE = 0,
+ /// An uploaded file type is not allowed
+ ///
+ FILE_TYPE_NOT_ALLOWED = 1,
+ /// The value returned if the actual value is not exposed by the requested API
+ /// version.
+ ///
+ UNKNOWN = 2,
+ }
+
+
+ /// Error for converting flash to swiffy asset.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class SwiffyConversionError : ApiError {
+ private SwiffyConversionErrorReason reasonField;
+
+ private bool reasonFieldSpecified;
+
+ [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
+ public SwiffyConversionErrorReason reason {
get {
- return this.sslManualOverrideField;
+ return this.reasonField;
}
set {
- this.sslManualOverrideField = value;
- this.sslManualOverrideSpecified = true;
+ this.reasonField = value;
+ this.reasonSpecified = true;
}
}
- /// true, if a value is specified for , false otherwise.
+ /// true, if a value is specified for ,
+ /// false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool sslManualOverrideSpecified {
+ public bool reasonSpecified {
get {
- return this.sslManualOverrideFieldSpecified;
+ return this.reasonFieldSpecified;
}
set {
- this.sslManualOverrideFieldSpecified = value;
+ this.reasonFieldSpecified = value;
}
}
}
- /// The different types of skippable ads.
+ /// Error reason for SwiffyConversionError.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum SkippableAdType {
- /// The value returned if the actual value is not exposed by the requested API
- /// version.
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "SwiffyConversionError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum SwiffyConversionErrorReason {
+ /// Indicates the Swiffy service has an internal error that prevents the flash asset
+ /// being converted.
///
- UNKNOWN = 0,
- /// Skippable ad type is disabled.
+ SERVER_ERROR = 0,
+ /// Indicates the uploaded flash asset is not a valid flash file.
///
- DISABLED = 1,
- /// Skippable ad type is enabled.
+ INVALID_FLASH_FILE = 1,
+ /// Indicates the Swiffy service currently does not support converting this flash
+ /// asset.
///
- ENABLED = 2,
- /// Skippable in-stream ad type.
+ UNSUPPORTED_FLASH = 2,
+ /// The value returned if the actual value is not exposed by the requested API
+ /// version.
///
- INSTREAM_SELECT = 3,
+ UNKNOWN = 3,
}
- /// A Creative that contains externally hosted video ads and is served
- /// via VAST XML.
+ /// Errors associated with set-top box creatives.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class VideoRedirectCreative : BaseVideoCreative {
- private VideoRedirectAsset[] videoAssetsField;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class SetTopBoxCreativeError : ApiError {
+ private SetTopBoxCreativeErrorReason reasonField;
- private VideoRedirectAsset mezzanineFileField;
+ private bool reasonFieldSpecified;
- /// The video creative assets.
+ /// The error reason represented by an enum.
///
- [System.Xml.Serialization.XmlElementAttribute("videoAssets", Order = 0)]
- public VideoRedirectAsset[] videoAssets {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
+ public SetTopBoxCreativeErrorReason reason {
get {
- return this.videoAssetsField;
+ return this.reasonField;
}
set {
- this.videoAssetsField = value;
+ this.reasonField = value;
+ this.reasonSpecified = true;
}
}
- /// The high quality mezzanine video asset.
- ///
- [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
- public VideoRedirectAsset mezzanineFile {
+ /// true, if a value is specified for ,
+ /// false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool reasonSpecified {
get {
- return this.mezzanineFileField;
+ return this.reasonFieldSpecified;
}
set {
- this.mezzanineFileField = value;
+ this.reasonFieldSpecified = value;
}
}
}
- /// A Creative that contains Ad Manager hosted video ads and is served
- /// via VAST XML. This creative is read-only.
+ /// Error reasons for set-top box creatives.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class VideoCreative : BaseVideoCreative {
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "SetTopBoxCreativeError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum SetTopBoxCreativeErrorReason {
+ /// Set-top box creative external asset IDs are immutable after creation.
+ ///
+ EXTERNAL_ASSET_ID_IMMUTABLE = 1,
+ /// Set-top box creatives require an external asset ID.
+ ///
+ EXTERNAL_ASSET_ID_REQUIRED = 2,
+ /// Set-top box creative provider IDs are immutable after creation.
+ ///
+ PROVIDER_ID_IMMUTABLE = 3,
+ /// The value returned if the actual value is not exposed by the requested API
+ /// version.
+ ///
+ UNKNOWN = 4,
}
- /// A Creative that will be served into cable set-top boxes. There are
- /// no assets for this creative type, as they are hosted by external cable systems.
+ /// Lists all errors associated with Studio creatives.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class SetTopBoxCreative : BaseVideoCreative {
- private string externalAssetIdField;
-
- private string providerIdField;
-
- private string[] availabilityRegionIdsField;
-
- private DateTime licenseWindowStartDateTimeField;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class RichMediaStudioCreativeError : ApiError {
+ private RichMediaStudioCreativeErrorReason reasonField;
- private DateTime licenseWindowEndDateTimeField;
+ private bool reasonFieldSpecified;
- /// An external asset identifier that is used in the cable system. This attribute is
- /// read-only after creation.
+ /// The error reason represented by an enum.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public string externalAssetId {
+ public RichMediaStudioCreativeErrorReason reason {
get {
- return this.externalAssetIdField;
+ return this.reasonField;
}
set {
- this.externalAssetIdField = value;
+ this.reasonField = value;
+ this.reasonSpecified = true;
}
}
- /// An identifier for the provider in the cable system. This attribute is read-only
- /// after creation.
- ///
- [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
- public string providerId {
+ /// true, if a value is specified for ,
+ /// false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool reasonSpecified {
get {
- return this.providerIdField;
+ return this.reasonFieldSpecified;
}
set {
- this.providerIdField = value;
+ this.reasonFieldSpecified = value;
}
}
+ }
- /// IDs of regions where the creative is available to serve from a local cable
- /// video-on-demand server. This attribute is optional.
+
+ /// The reasons for the target error.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "RichMediaStudioCreativeError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum RichMediaStudioCreativeErrorReason {
+ /// Only Studio can create a RichMediaStudioCreative.
///
- [System.Xml.Serialization.XmlElementAttribute("availabilityRegionIds", Order = 2)]
- public string[] availabilityRegionIds {
+ CREATION_NOT_ALLOWED = 0,
+ /// Unknown error
+ ///
+ UKNOWN_ERROR = 1,
+ /// Invalid request indicating missing/invalid request parameters.
+ ///
+ INVALID_CODE_GENERATION_REQUEST = 2,
+ /// Invalid creative object.
+ ///
+ INVALID_CREATIVE_OBJECT = 3,
+ /// Unable to connect to Rich Media Studio to save the creative. Please try again
+ /// later.
+ ///
+ STUDIO_CONNECTION_ERROR = 4,
+ /// The push down duration is not allowed
+ ///
+ PUSHDOWN_DURATION_NOT_ALLOWED = 5,
+ /// The position is invalid
+ ///
+ INVALID_POSITION = 6,
+ /// The Z-index is invalid
+ ///
+ INVALID_Z_INDEX = 7,
+ /// The push-down duration is invalid
+ ///
+ INVALID_PUSHDOWN_DURATION = 8,
+ /// The value returned if the actual value is not exposed by the requested API
+ /// version.
+ ///
+ UNKNOWN = 9,
+ }
+
+
+ /// A list of all errors to be used for validating Size.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class RequiredSizeError : ApiError {
+ private RequiredSizeErrorReason reasonField;
+
+ private bool reasonFieldSpecified;
+
+ [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
+ public RequiredSizeErrorReason reason {
get {
- return this.availabilityRegionIdsField;
+ return this.reasonField;
}
set {
- this.availabilityRegionIdsField = value;
+ this.reasonField = value;
+ this.reasonSpecified = true;
}
}
- /// The date and time that this creative can begin serving from a local cable
- /// video-on-demand server. This attribute is optional.
- ///
- [System.Xml.Serialization.XmlElementAttribute(Order = 3)]
- public DateTime licenseWindowStartDateTime {
+ /// true, if a value is specified for ,
+ /// false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool reasonSpecified {
get {
- return this.licenseWindowStartDateTimeField;
+ return this.reasonFieldSpecified;
}
set {
- this.licenseWindowStartDateTimeField = value;
+ this.reasonFieldSpecified = value;
}
}
+ }
- /// The date and time that this creative can no longer be served from a local cable
- /// video-on-demand server. This attribute is optional.
+
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "RequiredSizeError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum RequiredSizeErrorReason {
+ /// Creative#size or LineItem#creativeSizes is missing.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 4)]
- public DateTime licenseWindowEndDateTime {
- get {
- return this.licenseWindowEndDateTimeField;
- }
- set {
- this.licenseWindowEndDateTimeField = value;
- }
- }
+ REQUIRED = 0,
+ /// LineItemCreativeAssociation#sizes
+ /// must be a subset of LineItem#creativeSizes.
+ ///
+ NOT_ALLOWED = 1,
+ /// The value returned if the actual value is not exposed by the requested API
+ /// version.
+ ///
+ UNKNOWN = 2,
}
- /// The base type for creatives that load an image asset from a specified URL.
+ /// Caused by supplying a non-null value for an attribute that should be null.
///
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(ImageRedirectOverlayCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(ImageRedirectCreative))]
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public abstract partial class BaseImageRedirectCreative : HasDestinationUrlCreative {
- private string imageUrlField;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class NullError : ApiError {
+ private NullErrorReason reasonField;
- /// The URL where the actual asset resides. This attribute is required and has a
- /// maximum length of 1024 characters.
+ private bool reasonFieldSpecified;
+
+ /// The error reason represented by an enum.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public string imageUrl {
+ public NullErrorReason reason {
get {
- return this.imageUrlField;
+ return this.reasonField;
}
set {
- this.imageUrlField = value;
+ this.reasonField = value;
+ this.reasonSpecified = true;
+ }
+ }
+
+ /// true, if a value is specified for ,
+ /// false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool reasonSpecified {
+ get {
+ return this.reasonFieldSpecified;
+ }
+ set {
+ this.reasonFieldSpecified = value;
}
}
}
- /// An overlay Creative that loads an image asset from a specified URL
- /// and is served via VAST XML. Overlays cover part of the video content they are
- /// displayed on top of. This creative is read only.
+ /// The reasons for the target error.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class ImageRedirectOverlayCreative : BaseImageRedirectCreative {
- private Size assetSizeField;
-
- private int durationField;
-
- private bool durationFieldSpecified;
-
- private long[] companionCreativeIdsField;
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "NullError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum NullErrorReason {
+ /// Specified list/container must not contain any null elements
+ ///
+ NULL_CONTENT = 0,
+ }
- private ConversionEvent_TrackingUrlsMapEntry[] trackingUrlsField;
- private string customParametersField;
+ /// Lists all errors associated with line item-to-creative association dates.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class LineItemCreativeAssociationError : ApiError {
+ private LineItemCreativeAssociationErrorReason reasonField;
- private string vastPreviewUrlField;
+ private bool reasonFieldSpecified;
- /// The size of the image asset. Note that this may differ from #size if the asset is not expected to fill the entire video
- /// player. This attribute is optional.
+ /// The error reason represented by an enum.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public Size assetSize {
+ public LineItemCreativeAssociationErrorReason reason {
get {
- return this.assetSizeField;
+ return this.reasonField;
}
set {
- this.assetSizeField = value;
+ this.reasonField = value;
+ this.reasonSpecified = true;
}
}
- /// Minimum suggested duration in milliseconds. This attribute is optional.
- ///
- [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
- public int duration {
- get {
- return this.durationField;
- }
- set {
- this.durationField = value;
- this.durationSpecified = true;
- }
- }
-
- /// true, if a value is specified for , false otherwise.
+ /// true, if a value is specified for ,
+ /// false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool durationSpecified {
+ public bool reasonSpecified {
get {
- return this.durationFieldSpecified;
+ return this.reasonFieldSpecified;
}
set {
- this.durationFieldSpecified = value;
+ this.reasonFieldSpecified = value;
}
}
+ }
- /// The IDs of the companion creatives that are associated with this creative. This
- /// attribute is optional.
- ///
- [System.Xml.Serialization.XmlElementAttribute("companionCreativeIds", Order = 2)]
- public long[] companionCreativeIds {
- get {
- return this.companionCreativeIdsField;
- }
- set {
- this.companionCreativeIdsField = value;
- }
- }
- /// A map from ConversionEvent to a list of URLs that will be pinged
- /// when the event happens. This attribute is optional.
+ /// The reasons for the target error.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "LineItemCreativeAssociationError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum LineItemCreativeAssociationErrorReason {
+ /// Cannot associate a creative to the wrong advertiser
///
- [System.Xml.Serialization.XmlElementAttribute("trackingUrls", Order = 3)]
- public ConversionEvent_TrackingUrlsMapEntry[] trackingUrls {
- get {
- return this.trackingUrlsField;
- }
- set {
- this.trackingUrlsField = value;
- }
- }
-
- /// A comma separated key=value list of parameters that will be supplied to the
- /// creative, written into the VAST node. This attribute is optional.
+ CREATIVE_IN_WRONG_ADVERTISERS_LIBRARY = 0,
+ /// The creative type being associated is a invalid for the line item type.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 4)]
- public string customParameters {
- get {
- return this.customParametersField;
- }
- set {
- this.customParametersField = value;
- }
- }
-
- /// An ad tag URL that will return a preview of the VAST XML response specific to
- /// this creative. This attribute is read-only.
+ INVALID_LINEITEM_CREATIVE_PAIRING = 1,
+ /// Association start date cannot be before line item start date
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 5)]
- public string vastPreviewUrl {
- get {
- return this.vastPreviewUrlField;
- }
- set {
- this.vastPreviewUrlField = value;
- }
- }
+ STARTDATE_BEFORE_LINEITEM_STARTDATE = 2,
+ /// Association start date cannot be same as or after line item end date
+ ///
+ STARTDATE_NOT_BEFORE_LINEITEM_ENDDATE = 3,
+ /// Association end date cannot be after line item end date
+ ///
+ ENDDATE_AFTER_LINEITEM_ENDDATE = 4,
+ /// Association end date cannot be same as or before line item start date
+ ///
+ ENDDATE_NOT_AFTER_LINEITEM_STARTDATE = 5,
+ /// Association end date cannot be same as or before its start date
+ ///
+ ENDDATE_NOT_AFTER_STARTDATE = 6,
+ /// Association end date cannot be in the past.
+ ///
+ ENDDATE_IN_THE_PAST = 7,
+ /// Cannot copy an association to the same line item without creating new creative
+ ///
+ CANNOT_COPY_WITHIN_SAME_LINE_ITEM = 8,
+ /// Programmatic only supports the "Video" redirect type.
+ ///
+ UNSUPPORTED_CREATIVE_VAST_REDIRECT_TYPE = 21,
+ /// Programmatic does not support YouTube hosted creatives.
+ ///
+ UNSUPPORTED_YOUTUBE_HOSTED_CREATIVE = 18,
+ /// Programmatic creatives can only be assigned to one line item.
+ ///
+ PROGRAMMATIC_CREATIVES_CAN_ONLY_BE_ASSIGNED_TO_ONE_LINE_ITEM = 9,
+ /// Cannot create programmatic creatives.
+ ///
+ CANNOT_CREATE_PROGRAMMATIC_CREATIVES = 10,
+ /// Cannot update programmatic creatives.
+ ///
+ CANNOT_UPDATE_PROGRAMMATIC_CREATIVES = 11,
+ /// Cannot associate a creative with a line item if only one of them is set-top box
+ /// enabled.
+ ///
+ CREATIVE_AND_LINE_ITEM_MUST_BOTH_BE_SET_TOP_BOX_ENABLED = 12,
+ /// Cannot delete associations between set-top box enabled line items and set-top
+ /// box enabled creatives.
+ ///
+ CANNOT_DELETE_SET_TOP_BOX_ENABLED_ASSOCIATIONS = 13,
+ /// Creative rotation weights must be integers.
+ ///
+ SET_TOP_BOX_CREATIVE_ROTATION_WEIGHT_MUST_BE_INTEGER = 14,
+ /// Creative rotation weights are only valid when creative rotation type is set to
+ /// CreativeRotationType#MANUAL.
+ ///
+ INVALID_CREATIVE_ROTATION_TYPE_FOR_MANUAL_WEIGHT = 15,
+ /// The code snippet of a creative must contain a click macro (%%CLICK_URL_ESC%% or
+ /// %%CLICK_URL_UNESC%%).
+ ///
+ CLICK_MACROS_REQUIRED = 19,
+ /// The code snippet of a creative must not contain a view macro (%%VIEW_URL_ESC%%
+ /// or %%VIEW_URL_UNESC%%).
+ ///
+ VIEW_MACROS_NOT_ALLOWED = 20,
+ /// The value returned if the actual value is not exposed by the requested API
+ /// version.
+ ///
+ UNKNOWN = 16,
}
- /// A Creative that loads an image asset from a specified URL.
+ /// Errors specific to creating label entity associations.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class ImageRedirectCreative : BaseImageRedirectCreative {
- private string altTextField;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class LabelEntityAssociationError : ApiError {
+ private LabelEntityAssociationErrorReason reasonField;
- private string thirdPartyImpressionUrlField;
+ private bool reasonFieldSpecified;
- /// Alternative text to be rendered along with the creative used mainly for
- /// accessibility. This field is optional and has a maximum length of 500
- /// characters.
+ /// The error reason represented by an enum.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public string altText {
+ public LabelEntityAssociationErrorReason reason {
get {
- return this.altTextField;
+ return this.reasonField;
}
set {
- this.altTextField = value;
+ this.reasonField = value;
+ this.reasonSpecified = true;
}
}
- /// An impression tracking URL to ping when this creative is displayed. This field
- /// is optional has a maximum length of 1024 characters.
- ///
- [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
- public string thirdPartyImpressionUrl {
+ /// true, if a value is specified for ,
+ /// false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool reasonSpecified {
get {
- return this.thirdPartyImpressionUrlField;
+ return this.reasonFieldSpecified;
}
set {
- this.thirdPartyImpressionUrlField = value;
+ this.reasonFieldSpecified = value;
}
}
}
- /// The base type for creatives that display an image.
+ /// The reasons for the target error.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "LabelEntityAssociationError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum LabelEntityAssociationErrorReason {
+ /// The label has already been attached to the entity.
+ ///
+ DUPLICATE_ASSOCIATION = 1,
+ /// A label is being applied to an entity that does not support that entity type.
+ ///
+ INVALID_ASSOCIATION = 2,
+ /// Label negation cannot be applied to the entity type.
+ ///
+ NEGATION_NOT_ALLOWED = 5,
+ /// The same label is being applied and negated to the same entity.
+ ///
+ DUPLICATE_ASSOCIATION_WITH_NEGATION = 3,
+ /// The value returned if the actual value is not exposed by the requested API
+ /// version.
+ ///
+ UNKNOWN = 4,
+ }
+
+
+ /// Lists all errors associated with phone numbers.
///
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(ImageOverlayCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(ImageCreative))]
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public abstract partial class BaseImageCreative : HasDestinationUrlCreative {
- private bool overrideSizeField;
-
- private bool overrideSizeFieldSpecified;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class InvalidPhoneNumberError : ApiError {
+ private InvalidPhoneNumberErrorReason reasonField;
- private CreativeAsset primaryImageAssetField;
+ private bool reasonFieldSpecified;
- /// Allows the creative size to differ from the actual image asset size. This
- /// attribute is optional.
- ///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public bool overrideSize {
+ public InvalidPhoneNumberErrorReason reason {
get {
- return this.overrideSizeField;
+ return this.reasonField;
}
set {
- this.overrideSizeField = value;
- this.overrideSizeSpecified = true;
+ this.reasonField = value;
+ this.reasonSpecified = true;
}
}
- /// true, if a value is specified for , false otherwise.
+ /// true, if a value is specified for ,
+ /// false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool overrideSizeSpecified {
+ public bool reasonSpecified {
get {
- return this.overrideSizeFieldSpecified;
+ return this.reasonFieldSpecified;
}
set {
- this.overrideSizeFieldSpecified = value;
+ this.reasonFieldSpecified = value;
}
}
+ }
- /// The primary image asset associated with this creative. This attribute is
- /// required.
+
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "InvalidPhoneNumberError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum InvalidPhoneNumberErrorReason {
+ /// The phone number is invalid.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
- public CreativeAsset primaryImageAsset {
- get {
- return this.primaryImageAssetField;
- }
- set {
- this.primaryImageAssetField = value;
- }
- }
+ INVALID_FORMAT = 0,
+ /// The phone number is too short.
+ ///
+ TOO_SHORT = 1,
+ /// The value returned if the actual value is not exposed by the requested API
+ /// version.
+ ///
+ UNKNOWN = 2,
}
- /// An overlay Creative that displays an image and is served via VAST
- /// 2.0 XML. Overlays cover part of the video content they are displayed on top of.
- /// This creative is read only prior to v201705.
+ /// Lists all errors associated with images.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class ImageOverlayCreative : BaseImageCreative {
- private long[] companionCreativeIdsField;
-
- private ConversionEvent_TrackingUrlsMapEntry[] trackingUrlsField;
-
- private LockedOrientation lockedOrientationField;
-
- private bool lockedOrientationFieldSpecified;
-
- private string customParametersField;
-
- private int durationField;
-
- private bool durationFieldSpecified;
-
- private string vastPreviewUrlField;
-
- /// The IDs of the companion creatives that are associated with this creative. This
- /// attribute is optional. This attribute is read-only.
- ///
- [System.Xml.Serialization.XmlElementAttribute("companionCreativeIds", Order = 0)]
- public long[] companionCreativeIds {
- get {
- return this.companionCreativeIdsField;
- }
- set {
- this.companionCreativeIdsField = value;
- }
- }
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class ImageError : ApiError {
+ private ImageErrorReason reasonField;
- /// A map from ConversionEvent to a list of URLs that will be pinged
- /// when the event happens. This attribute is optional.
- ///
- [System.Xml.Serialization.XmlElementAttribute("trackingUrls", Order = 1)]
- public ConversionEvent_TrackingUrlsMapEntry[] trackingUrls {
- get {
- return this.trackingUrlsField;
- }
- set {
- this.trackingUrlsField = value;
- }
- }
+ private bool reasonFieldSpecified;
- /// A locked orientation for this creative to be displayed in.
+ /// The error reason represented by an enum.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 2)]
- public LockedOrientation lockedOrientation {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
+ public ImageErrorReason reason {
get {
- return this.lockedOrientationField;
+ return this.reasonField;
}
set {
- this.lockedOrientationField = value;
- this.lockedOrientationSpecified = true;
+ this.reasonField = value;
+ this.reasonSpecified = true;
}
}
- /// true, if a value is specified for , false otherwise.
+ /// true, if a value is specified for ,
+ /// false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool lockedOrientationSpecified {
+ public bool reasonSpecified {
get {
- return this.lockedOrientationFieldSpecified;
+ return this.reasonFieldSpecified;
}
set {
- this.lockedOrientationFieldSpecified = value;
+ this.reasonFieldSpecified = value;
}
}
+ }
- /// A comma separated key=value list of parameters that will be supplied to the
- /// creative, written into the VAST node. This attribute is optional.
- ///
- [System.Xml.Serialization.XmlElementAttribute(Order = 3)]
- public string customParameters {
- get {
- return this.customParametersField;
- }
- set {
- this.customParametersField = value;
- }
- }
- /// Minimum suggested duration in milliseconds. This attribute is optional.
+ /// The reasons for the target error.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "ImageError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum ImageErrorReason {
+ /// The file's format is invalid.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 4)]
- public int duration {
- get {
- return this.durationField;
- }
- set {
- this.durationField = value;
- this.durationSpecified = true;
- }
- }
-
- /// true, if a value is specified for , false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool durationSpecified {
- get {
- return this.durationFieldSpecified;
- }
- set {
- this.durationFieldSpecified = value;
- }
- }
-
- /// An ad tag URL that will return a preview of the VAST XML response specific to
- /// this creative. This attribute is read-only.
+ INVALID_IMAGE = 0,
+ /// Size#width and Size#height
+ /// cannot be negative.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 5)]
- public string vastPreviewUrl {
- get {
- return this.vastPreviewUrlField;
- }
- set {
- this.vastPreviewUrlField = value;
- }
- }
+ INVALID_SIZE = 1,
+ /// The actual image size does not match the expected image size.
+ ///
+ UNEXPECTED_SIZE = 2,
+ /// The size of the asset is larger than that of the overlay creative.
+ ///
+ OVERLAY_SIZE_TOO_LARGE = 3,
+ /// Animated images are not allowed.
+ ///
+ ANIMATED_NOT_ALLOWED = 4,
+ /// Animation length exceeded the allowed policy limit.
+ ///
+ ANIMATION_TOO_LONG = 5,
+ /// Images in CMYK color formats are not allowed.
+ ///
+ CMYK_JPEG_NOT_ALLOWED = 6,
+ /// Flash files are not allowed.
+ ///
+ FLASH_NOT_ALLOWED = 7,
+ /// If FlashCreative#clickTagRequired
+ /// is true, then the flash file is required to have a click tag
+ /// embedded in it.
+ ///
+ FLASH_WITHOUT_CLICKTAG = 8,
+ /// Animated visual effect is not allowed.
+ ///
+ ANIMATED_VISUAL_EFFECT = 9,
+ /// An error was encountered in the flash file.
+ ///
+ FLASH_ERROR = 10,
+ /// Incorrect image layout.
+ ///
+ LAYOUT_PROBLEM = 11,
+ /// Flash files with network objects are not allowed.
+ ///
+ FLASH_HAS_NETWORK_OBJECTS = 12,
+ /// Flash files with network methods are not allowed.
+ ///
+ FLASH_HAS_NETWORK_METHODS = 13,
+ /// Flash files with hard-coded click thru URLs are not allowed.
+ ///
+ FLASH_HAS_URL = 14,
+ /// Flash files with mouse tracking are not allowed.
+ ///
+ FLASH_HAS_MOUSE_TRACKING = 15,
+ /// Flash files that generate or use random numbers are not allowed.
+ ///
+ FLASH_HAS_RANDOM_NUM = 16,
+ /// Flash files with self targets are not allowed.
+ ///
+ FLASH_SELF_TARGETS = 17,
+ /// Flash file contains a bad geturl target.
+ ///
+ FLASH_BAD_GETURL_TARGET = 18,
+ /// Flash or ActionScript version in the submitted file is not supported.
+ ///
+ FLASH_VERSION_NOT_SUPPORTED = 19,
+ /// The uploaded file is too large.
+ ///
+ FILE_TOO_LARGE = 20,
+ /// A system error occurred, please try again.
+ ///
+ SYSTEM_ERROR = 21,
+ /// The image density for a primary asset was not one of the expected image
+ /// densities.
+ ///
+ UNEXPECTED_PRIMARY_ASSET_DENSITY = 22,
+ /// Two or more assets have the same image density.
+ ///
+ DUPLICATE_ASSET_DENSITY = 23,
+ /// The creative does not contain a primary asset. (For high-density creatives, the
+ /// primary asset must be a standard image file with 1x density.)
+ ///
+ MISSING_DEFAULT_ASSET = 24,
+ /// The value returned if the actual value is not exposed by the requested API
+ /// version.
+ ///
+ UNKNOWN = 25,
}
- /// A Creative that displays an image.
+ /// Lists all errors associated with html5 file processing.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class ImageCreative : BaseImageCreative {
- private string altTextField;
-
- private string thirdPartyImpressionUrlField;
-
- private CreativeAsset[] secondaryImageAssetsField;
-
- private LockedOrientation lockedOrientationField;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class HtmlBundleProcessorError : ApiError {
+ private HtmlBundleProcessorErrorReason reasonField;
- private bool lockedOrientationFieldSpecified;
+ private bool reasonFieldSpecified;
- /// Alternative text to be rendered along with the creative used mainly for
- /// accessibility. This field is optional and has a maximum length of 500
- /// characters.
+ /// The error reason represented by an enum.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public string altText {
+ public HtmlBundleProcessorErrorReason reason {
get {
- return this.altTextField;
+ return this.reasonField;
}
set {
- this.altTextField = value;
+ this.reasonField = value;
+ this.reasonSpecified = true;
}
}
- /// An impression tracking URL to ping when this creative is displayed. This field
- /// is optional has a maximum length of 1024 characters.
- ///
- [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
- public string thirdPartyImpressionUrl {
+ /// true, if a value is specified for ,
+ /// false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool reasonSpecified {
get {
- return this.thirdPartyImpressionUrlField;
+ return this.reasonFieldSpecified;
}
set {
- this.thirdPartyImpressionUrlField = value;
+ this.reasonFieldSpecified = value;
}
}
+ }
- /// The list of secondary image assets associated with this creative. This attribute
- /// is optional.
Secondary image assets can be used to store different resolution
- /// versions of the primary asset for use on non-standard density screens.
+
+ /// Error reasons that may arise during HTML5 bundle processing.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "HtmlBundleProcessorError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum HtmlBundleProcessorErrorReason {
+ /// Cannot extract files from HTML5 bundle.
///
- [System.Xml.Serialization.XmlElementAttribute("secondaryImageAssets", Order = 2)]
- public CreativeAsset[] secondaryImageAssets {
- get {
- return this.secondaryImageAssetsField;
- }
- set {
- this.secondaryImageAssetsField = value;
- }
- }
-
- /// A locked orientation for this creative to be displayed in.
+ CANNOT_EXTRACT_FILES_FROM_BUNDLE = 0,
+ /// Bundle cannot have hard-coded click tag url(s).
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 3)]
- public LockedOrientation lockedOrientation {
- get {
- return this.lockedOrientationField;
- }
- set {
- this.lockedOrientationField = value;
- this.lockedOrientationSpecified = true;
- }
- }
-
- /// true, if a value is specified for , false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool lockedOrientationSpecified {
- get {
- return this.lockedOrientationFieldSpecified;
- }
- set {
- this.lockedOrientationFieldSpecified = value;
- }
- }
+ CLICK_TAG_HARD_CODED = 1,
+ /// Bundles created using GWD (Google Web Designer) cannot have click tags.
+ /// GWD-published bundles should use exit events instead of defining var
+ /// clickTAG.
+ ///
+ CLICK_TAG_IN_GWD_UNUPPORTED = 2,
+ /// Click tag detected outside of primary HTML file.
+ ///
+ CLICK_TAG_NOT_IN_PRIMARY_HTML = 3,
+ /// Click tag or exit function has invalid name or url.
+ ///
+ CLICK_TAG_INVALID = 4,
+ /// HTML5 bundle or total size of extracted files cannot be more than 1000 KB.
+ ///
+ FILE_SIZE_TOO_LARGE = 5,
+ /// HTML5 bundle cannot have more than 50 files.
+ ///
+ FILES_TOO_MANY = 6,
+ /// Flash files in HTML5 bundles are not supported. Any file with a .swf or .flv
+ /// extension causes this error.
+ ///
+ FLASH_UNSUPPORTED = 7,
+ /// The HTML5 bundle contains unsupported GWD component(s).
+ ///
+ GWD_COMPONENTS_UNSUPPORTED = 8,
+ /// The HTML5 bundle contains Unsupported GWD Enabler method(s).
+ ///
+ GWD_ENABLER_METHODS_UNSUPPORTED = 9,
+ /// GWD properties are invalid.
+ ///
+ GWD_PROPERTIES_INVALID = 10,
+ /// The HTML5 bundle contains broken relative file reference(s).
+ ///
+ LINKED_FILES_NOT_FOUND = 11,
+ /// No primary HTML file detected.
+ ///
+ PRIMARY_HTML_MISSING = 12,
+ /// Multiple HTML files are detected. One of them should be named as
+ /// index.html
+ ///
+ PRIMARY_HTML_UNDETERMINED = 13,
+ /// An SVG block could not be parsed.
+ ///
+ SVG_BLOCK_INVALID = 14,
+ /// The value returned if the actual value is not exposed by the requested API
+ /// version.
+ ///
+ UNKNOWN = 15,
}
- /// The base type for creatives that load a Flash asset from a specified URL. If the
- /// remote flash asset cannot be served, a fallback image is used at an alternate
- /// URL.
+ /// A list of all errors to be used for problems related to files.
///
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(FlashRedirectOverlayCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(FlashRedirectCreative))]
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public abstract partial class BaseFlashRedirectCreative : HasDestinationUrlCreative {
- private string flashUrlField;
-
- private string fallbackUrlField;
-
- private string fallbackPreviewUrlField;
-
- private SslScanResult sslScanResultField;
-
- private bool sslScanResultFieldSpecified;
-
- private SslManualOverride sslManualOverrideField;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class FileError : ApiError {
+ private FileErrorReason reasonField;
- private bool sslManualOverrideFieldSpecified;
+ private bool reasonFieldSpecified;
- /// The URL where the Flash asset resides. This attribute is required and has a
- /// maximum length of 1024 characters.
- ///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public string flashUrl {
+ public FileErrorReason reason {
get {
- return this.flashUrlField;
+ return this.reasonField;
}
set {
- this.flashUrlField = value;
+ this.reasonField = value;
+ this.reasonSpecified = true;
}
}
- /// The fallback URL to use if the Flash URL cannot be used. This attribute is
- /// required and has a maximum length of 1024 characters.
- ///
- [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
- public string fallbackUrl {
+ /// true, if a value is specified for ,
+ /// false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool reasonSpecified {
get {
- return this.fallbackUrlField;
+ return this.reasonFieldSpecified;
}
set {
- this.fallbackUrlField = value;
+ this.reasonFieldSpecified = value;
}
}
+ }
- /// The URL of the fallback image for preview. This attribute is read-only and is
- /// populated by Google.
- ///
- [System.Xml.Serialization.XmlElementAttribute(Order = 2)]
- public string fallbackPreviewUrl {
- get {
- return this.fallbackPreviewUrlField;
- }
- set {
- this.fallbackPreviewUrlField = value;
- }
- }
- /// The SSL compatibility scan result of this creative.
This attribute is
- /// read-only and determined by Google.
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "FileError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum FileErrorReason {
+ /// The provided byte array is empty.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 3)]
- public SslScanResult sslScanResult {
- get {
- return this.sslScanResultField;
- }
- set {
- this.sslScanResultField = value;
- this.sslScanResultSpecified = true;
- }
- }
+ MISSING_CONTENTS = 0,
+ /// The provided file is larger than the maximum size defined for the network.
+ ///
+ SIZE_TOO_LARGE = 1,
+ /// The value returned if the actual value is not exposed by the requested API
+ /// version.
+ ///
+ UNKNOWN = 2,
+ }
- /// true, if a value is specified for , false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool sslScanResultSpecified {
- get {
- return this.sslScanResultFieldSpecified;
- }
- set {
- this.sslScanResultFieldSpecified = value;
- }
- }
- /// The manual override for the SSL compatibility of this creative.
- ///
- [System.Xml.Serialization.XmlElementAttribute(Order = 4)]
- public SslManualOverride sslManualOverride {
+ /// An error that occurs when creating an entity if the limit on the number of
+ /// allowed entities for a network has already been reached.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class EntityLimitReachedError : ApiError {
+ private EntityLimitReachedErrorReason reasonField;
+
+ private bool reasonFieldSpecified;
+
+ [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
+ public EntityLimitReachedErrorReason reason {
get {
- return this.sslManualOverrideField;
+ return this.reasonField;
}
set {
- this.sslManualOverrideField = value;
- this.sslManualOverrideSpecified = true;
+ this.reasonField = value;
+ this.reasonSpecified = true;
}
}
- /// true, if a value is specified for , false otherwise.
+ /// true, if a value is specified for ,
+ /// false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool sslManualOverrideSpecified {
+ public bool reasonSpecified {
get {
- return this.sslManualOverrideFieldSpecified;
+ return this.reasonFieldSpecified;
}
set {
- this.sslManualOverrideFieldSpecified = value;
+ this.reasonFieldSpecified = value;
}
}
}
- /// An overlay Creative that loads a Flash asset from a specified URL
- /// and is served via VAST XML. Overlays cover part of the video content they are
- /// displayed on top of.
+ /// The reasons for the entity limit reached error.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class FlashRedirectOverlayCreative : BaseFlashRedirectCreative {
- private long[] companionCreativeIdsField;
-
- private ConversionEvent_TrackingUrlsMapEntry[] trackingUrlsField;
-
- private string customParametersField;
-
- private ApiFramework apiFrameworkField;
-
- private bool apiFrameworkFieldSpecified;
-
- private int durationField;
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "EntityLimitReachedError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum EntityLimitReachedErrorReason {
+ /// The number of custom targeting values exceeds the max number allowed in the
+ /// network.
+ ///
+ CUSTOM_TARGETING_VALUES_LIMIT_REACHED = 0,
+ /// The number of ad exclusion rules exceeds the max number allowed in the network.
+ ///
+ AD_EXCLUSION_RULES_LIMIT_REACHED = 1,
+ /// The number of first party audience segments exceeds the max number allowed in
+ /// the network.
+ ///
+ FIRST_PARTY_AUDIENCE_SEGMENTS_LIMIT_REACHED = 2,
+ /// The number of active placements exceeds the max number allowed in the network.
+ ///
+ PLACEMENTS_LIMIT_REACHED = 3,
+ /// The number of line items excceeds the max number allowed in the network.
+ ///
+ LINE_ITEMS_LIMIT_REACHED = 4,
+ /// The number of active line items exceeds the max number allowed in the network.
+ ///
+ ACTIVE_LINE_ITEMS_LIMIT_REACHED = 6,
+ /// The value returned if the actual value is not exposed by the requested API
+ /// version.
+ ///
+ UNKNOWN = 5,
+ }
- private bool durationFieldSpecified;
- private Size flashAssetSizeField;
+ /// Errors specific to editing custom field values
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class CustomFieldValueError : ApiError {
+ private CustomFieldValueErrorReason reasonField;
- private string vastPreviewUrlField;
+ private bool reasonFieldSpecified;
- /// The IDs of the companion creatives that are associated with this creative. This
- /// attribute is optional.
+ /// The error reason represented by an enum.
///
- [System.Xml.Serialization.XmlElementAttribute("companionCreativeIds", Order = 0)]
- public long[] companionCreativeIds {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
+ public CustomFieldValueErrorReason reason {
get {
- return this.companionCreativeIdsField;
+ return this.reasonField;
}
set {
- this.companionCreativeIdsField = value;
+ this.reasonField = value;
+ this.reasonSpecified = true;
}
}
- /// A map from ConversionEvent to a list of URLs that will be pinged
- /// when the event happens. This attribute is optional.
- ///
- [System.Xml.Serialization.XmlElementAttribute("trackingUrls", Order = 1)]
- public ConversionEvent_TrackingUrlsMapEntry[] trackingUrls {
+ /// true, if a value is specified for ,
+ /// false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool reasonSpecified {
get {
- return this.trackingUrlsField;
+ return this.reasonFieldSpecified;
}
set {
- this.trackingUrlsField = value;
+ this.reasonFieldSpecified = value;
}
}
+ }
- /// A comma separated key=value list of parameters that will be supplied to the
- /// creative, written into the VAST node. If the #apiFramework is ApiFramework#VPAID, the value does not need to be
- /// a comma separated key-value list (and can instead be any arbitrary string). This
- /// attribute is optional.
- ///
- [System.Xml.Serialization.XmlElementAttribute(Order = 2)]
- public string customParameters {
- get {
- return this.customParametersField;
- }
- set {
- this.customParametersField = value;
- }
- }
- /// The API framework of the asset. This attribute is optional.
+ /// The reasons for the target error.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "CustomFieldValueError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum CustomFieldValueErrorReason {
+ /// An attempt was made to modify or create a CustomFieldValue for a CustomField that does not exist.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 3)]
- public ApiFramework apiFramework {
- get {
- return this.apiFrameworkField;
- }
- set {
- this.apiFrameworkField = value;
- this.apiFrameworkSpecified = true;
- }
- }
+ CUSTOM_FIELD_NOT_FOUND = 0,
+ /// An attempt was made to create a new value for a custom field that is inactive.
+ ///
+ CUSTOM_FIELD_INACTIVE = 1,
+ /// An attempt was made to modify or create a CustomFieldValue corresponding to a CustomFieldOption that could not be found.
+ ///
+ CUSTOM_FIELD_OPTION_NOT_FOUND = 2,
+ /// The value returned if the actual value is not exposed by the requested API
+ /// version.
+ ///
+ UNKNOWN = 3,
+ }
- /// true, if a value is specified for , false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool apiFrameworkSpecified {
- get {
- return this.apiFrameworkFieldSpecified;
- }
- set {
- this.apiFrameworkFieldSpecified = value;
- }
- }
- /// Minimum suggested duration in milliseconds. This attribute is optional.
- ///
- [System.Xml.Serialization.XmlElementAttribute(Order = 4)]
- public int duration {
- get {
- return this.durationField;
- }
- set {
- this.durationField = value;
- this.durationSpecified = true;
- }
- }
+ /// Lists all errors associated with custom creatives.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class CustomCreativeError : ApiError {
+ private CustomCreativeErrorReason reasonField;
- /// true, if a value is specified for , false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool durationSpecified {
- get {
- return this.durationFieldSpecified;
- }
- set {
- this.durationFieldSpecified = value;
- }
- }
+ private bool reasonFieldSpecified;
- /// The size of the flash asset. Note that this may differ from #size if the asset is not expected to fill the entire video
- /// player. This attribute is optional.
+ /// The error reason represented by an enum.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 5)]
- public Size flashAssetSize {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
+ public CustomCreativeErrorReason reason {
get {
- return this.flashAssetSizeField;
+ return this.reasonField;
}
set {
- this.flashAssetSizeField = value;
+ this.reasonField = value;
+ this.reasonSpecified = true;
}
}
- /// An ad tag URL that will return a preview of the VAST XML response specific to
- /// this creative. This attribute is read-only.
- ///
- [System.Xml.Serialization.XmlElementAttribute(Order = 6)]
- public string vastPreviewUrl {
+ /// true, if a value is specified for ,
+ /// false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool reasonSpecified {
get {
- return this.vastPreviewUrlField;
+ return this.reasonFieldSpecified;
}
set {
- this.vastPreviewUrlField = value;
+ this.reasonFieldSpecified = value;
}
}
}
- /// The various ApiFramework types.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum ApiFramework {
- NONE = 0,
- CLICKTAG = 1,
- VPAID = 2,
- }
-
-
- /// A Creative that loads a Flash asset from a specified URL. If the
- /// remote flash asset cannot be served, a fallback image is used at an alternate
- /// URL.
+ /// The reasons for the target error.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class FlashRedirectCreative : BaseFlashRedirectCreative {
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "CustomCreativeError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum CustomCreativeErrorReason {
+ /// Macros associated with a single custom creative must have unique names.
+ ///
+ DUPLICATE_MACRO_NAME_FOR_CREATIVE = 0,
+ /// The file macro referenced in the snippet does not exist.
+ ///
+ SNIPPET_REFERENCES_MISSING_MACRO = 1,
+ /// The macro referenced in the snippet is not valid.
+ ///
+ UNRECOGNIZED_MACRO = 2,
+ /// Custom creatives are not allowed in this context.
+ ///
+ CUSTOM_CREATIVE_NOT_ALLOWED = 3,
+ /// The custom creative is an interstitial, but the snippet is missing an
+ /// interstitial macro.
+ ///
+ MISSING_INTERSTITIAL_MACRO = 4,
+ /// Macros associated with the same custom creative cannot share the same asset.
+ ///
+ DUPLICATE_ASSET_IN_MACROS = 5,
+ /// The value returned if the actual value is not exposed by the requested API
+ /// version.
+ ///
+ UNKNOWN = 6,
}
- /// A base type for creatives that display a Flash-based ad. If the Flash ad cannot
- /// load, a fallback image is displayed instead.
+ /// An error that can occur while performing an operation on a creative template.
///
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(FlashOverlayCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(FlashCreative))]
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public abstract partial class BaseFlashCreative : HasDestinationUrlCreative {
- private bool overrideSizeField;
-
- private bool overrideSizeFieldSpecified;
-
- private bool clickTagRequiredField;
-
- private bool clickTagRequiredFieldSpecified;
-
- private SslScanResult sslScanResultField;
-
- private bool sslScanResultFieldSpecified;
-
- private SslManualOverride sslManualOverrideField;
-
- private bool sslManualOverrideFieldSpecified;
-
- private CreativeAsset flashAssetField;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class CreativeTemplateOperationError : ApiError {
+ private CreativeTemplateOperationErrorReason reasonField;
- private CreativeAsset fallbackImageAssetField;
+ private bool reasonFieldSpecified;
- /// Allows the creative size to differ from the actual Flash asset size. This
- /// attribute is optional.
+ /// The error reason represented by an enum.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public bool overrideSize {
+ public CreativeTemplateOperationErrorReason reason {
get {
- return this.overrideSizeField;
+ return this.reasonField;
}
set {
- this.overrideSizeField = value;
- this.overrideSizeSpecified = true;
+ this.reasonField = value;
+ this.reasonSpecified = true;
}
}
- /// true, if a value is specified for , false otherwise.
+ /// true, if a value is specified for ,
+ /// false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool overrideSizeSpecified {
+ public bool reasonSpecified {
get {
- return this.overrideSizeFieldSpecified;
+ return this.reasonFieldSpecified;
}
set {
- this.overrideSizeFieldSpecified = value;
+ this.reasonFieldSpecified = value;
}
}
+ }
- /// Specifies whether the Flash asset is required to have a click tag embedded in it
- /// or not. This attribute is optional.
+
+ /// The reasons for the target error.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "CreativeTemplateOperationError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum CreativeTemplateOperationErrorReason {
+ /// The current user is not allowed to modify this creative template.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
- public bool clickTagRequired {
- get {
- return this.clickTagRequiredField;
- }
- set {
- this.clickTagRequiredField = value;
- this.clickTagRequiredSpecified = true;
- }
- }
+ NOT_ALLOWED = 0,
+ /// The operation is not applicable to the current state. (e.g. Trying to activate
+ /// an active creative template)
+ ///
+ NOT_APPLICABLE = 1,
+ /// The value returned if the actual value is not exposed by the requested API
+ /// version.
+ ///
+ UNKNOWN = 2,
+ }
- /// true, if a value is specified for , false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool clickTagRequiredSpecified {
- get {
- return this.clickTagRequiredFieldSpecified;
- }
- set {
- this.clickTagRequiredFieldSpecified = value;
- }
- }
- /// The SSL compatibility scan result of this creative.
This attribute is
- /// read-only and determined by Google.
+ /// A catch-all error that lists all generic errors associated with
+ /// CreativeTemplate.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class CreativeTemplateError : ApiError {
+ private CreativeTemplateErrorReason reasonField;
+
+ private bool reasonFieldSpecified;
+
+ /// The error reason represented by an enum.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 2)]
- public SslScanResult sslScanResult {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
+ public CreativeTemplateErrorReason reason {
get {
- return this.sslScanResultField;
+ return this.reasonField;
}
set {
- this.sslScanResultField = value;
- this.sslScanResultSpecified = true;
+ this.reasonField = value;
+ this.reasonSpecified = true;
}
}
- /// true, if a value is specified for , false otherwise.
+ /// true, if a value is specified for ,
+ /// false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool sslScanResultSpecified {
+ public bool reasonSpecified {
get {
- return this.sslScanResultFieldSpecified;
+ return this.reasonFieldSpecified;
}
set {
- this.sslScanResultFieldSpecified = value;
+ this.reasonFieldSpecified = value;
}
}
+ }
- /// The manual override for the SSL compatibility of this creative.
+
+ /// The reasons for the target error.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "CreativeTemplateError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum CreativeTemplateErrorReason {
+ /// The XML of the creative template definition is malformed and cannot be parsed.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 3)]
- public SslManualOverride sslManualOverride {
+ CANNOT_PARSE_CREATIVE_TEMPLATE = 0,
+ /// A creative template has multiple variables with the same uniqueName.
+ ///
+ VARIABLE_DUPLICATE_UNIQUE_NAME = 1,
+ /// The creative template contains a variable with invalid characters. Valid
+ /// characters are letters, numbers, spaces, forward slashes, dashes, and
+ /// underscores.
+ ///
+ VARIABLE_INVALID_UNIQUE_NAME = 2,
+ /// Multiple choices for a CreativeTemplateListStringVariable have the same value.
+ ///
+ LIST_CHOICE_DUPLICATE_VALUE = 3,
+ /// The choices for a CreativeTemplateListStringVariable do not contain the default
+ /// value.
+ ///
+ LIST_CHOICE_NEEDS_DEFAULT = 4,
+ /// There are no choices specified for the list variable.
+ ///
+ LIST_CHOICES_EMPTY = 5,
+ /// No target platform is assigned to a creative template.
+ ///
+ NO_TARGET_PLATFORMS = 6,
+ /// More than one target platform is assigned to a single creative template.
+ ///
+ MULTIPLE_TARGET_PLATFORMS = 7,
+ /// The formatter contains a placeholder which is not defined as a variable.
+ ///
+ UNRECOGNIZED_PLACEHOLDER = 8,
+ /// There are variables defined which are not being used in the formatter.
+ ///
+ PLACEHOLDERS_NOT_IN_FORMATTER = 9,
+ /// The creative template is interstitial, but the formatter doesn't contain an
+ /// interstitial macro.
+ ///
+ MISSING_INTERSTITIAL_MACRO = 10,
+ /// The value returned if the actual value is not exposed by the requested API
+ /// version.
+ ///
+ UNKNOWN = 11,
+ }
+
+
+ /// Errors relating to creative sets & subclasses.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class CreativeSetError : ApiError {
+ private CreativeSetErrorReason reasonField;
+
+ private bool reasonFieldSpecified;
+
+ /// The error reason represented by an enum.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
+ public CreativeSetErrorReason reason {
get {
- return this.sslManualOverrideField;
+ return this.reasonField;
}
set {
- this.sslManualOverrideField = value;
- this.sslManualOverrideSpecified = true;
+ this.reasonField = value;
+ this.reasonSpecified = true;
}
}
- /// true, if a value is specified for , false otherwise.
+ /// true, if a value is specified for ,
+ /// false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool sslManualOverrideSpecified {
+ public bool reasonSpecified {
get {
- return this.sslManualOverrideFieldSpecified;
+ return this.reasonFieldSpecified;
}
set {
- this.sslManualOverrideFieldSpecified = value;
+ this.reasonFieldSpecified = value;
}
}
+ }
- /// The flash asset. This attribute is required. To view the Flash image, use the CreativeAsset#assetUrl.
- ///
- [System.Xml.Serialization.XmlElementAttribute(Order = 4)]
- public CreativeAsset flashAsset {
- get {
- return this.flashAssetField;
- }
- set {
- this.flashAssetField = value;
- }
- }
- /// The image asset to fall back on if the flash creative cannot be loaded. To view
- /// the fallback image, use the CreativeAsset#assetUrl.
+ /// The reasons for the target error.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "CreativeSetError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum CreativeSetErrorReason {
+ /// The 'video' feature is required but not enabled.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 5)]
- public CreativeAsset fallbackImageAsset {
- get {
- return this.fallbackImageAssetField;
- }
- set {
- this.fallbackImageAssetField = value;
- }
- }
+ VIDEO_FEATURE_REQUIRED = 0,
+ /// Video creatives (including overlays, VAST redirects, etc..) cannot be created or
+ /// updated through the API.
+ ///
+ CANNOT_CREATE_OR_UPDATE_VIDEO_CREATIVES = 1,
+ /// The 'roadblock' feature is required but not enabled.
+ ///
+ ROADBLOCK_FEATURE_REQUIRED = 2,
+ /// A master creative cannot be a companion creative in the same creative set.
+ ///
+ MASTER_CREATIVE_CANNOT_BE_COMPANION = 3,
+ /// Creatives in a creative set must be for the same advertiser.
+ ///
+ INVALID_ADVERTISER = 4,
+ /// Updating a master creative in a creative set is not allowed.
+ ///
+ UPDATE_MASTER_CREATIVE_NOT_ALLOWED = 5,
+ /// A master creative must belong to only one video creative set.
+ ///
+ MASTER_CREATIVE_CANNOT_BELONG_TO_MULTIPLE_VIDEO_CREATIVE_SETS = 7,
+ /// The value returned if the actual value is not exposed by the requested API
+ /// version.
+ ///
+ UNKNOWN = 6,
}
- /// An overlay Creative that displays a Flash-based ad and is served
- /// via VAST XML. Overlays cover part of the video content they are displayed on top
- /// of. This creative is read-only.
+ /// Lists all errors associated with creatives.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class FlashOverlayCreative : BaseFlashCreative {
- private long[] companionCreativeIdsField;
-
- private ConversionEvent_TrackingUrlsMapEntry[] trackingUrlsField;
-
- private string customParametersField;
-
- private ApiFramework apiFrameworkField;
-
- private bool apiFrameworkFieldSpecified;
-
- private int durationField;
-
- private bool durationFieldSpecified;
-
- private string vastPreviewUrlField;
-
- private LockedOrientation lockedOrientationField;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class CreativeError : ApiError {
+ private CreativeErrorReason reasonField;
- private bool lockedOrientationFieldSpecified;
+ private bool reasonFieldSpecified;
- /// The IDs of the companion creatives that are associated with this creative. This
- /// attribute is optional.
+ /// The error reason represented by an enum.
///
- [System.Xml.Serialization.XmlElementAttribute("companionCreativeIds", Order = 0)]
- public long[] companionCreativeIds {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
+ public CreativeErrorReason reason {
get {
- return this.companionCreativeIdsField;
+ return this.reasonField;
}
set {
- this.companionCreativeIdsField = value;
+ this.reasonField = value;
+ this.reasonSpecified = true;
}
}
- /// A map from ConversionEvent to a list of URLs that will be pinged
- /// when the event happens. This attribute is optional.
- ///
- [System.Xml.Serialization.XmlElementAttribute("trackingUrls", Order = 1)]
- public ConversionEvent_TrackingUrlsMapEntry[] trackingUrls {
+ /// true, if a value is specified for ,
+ /// false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool reasonSpecified {
get {
- return this.trackingUrlsField;
+ return this.reasonFieldSpecified;
}
set {
- this.trackingUrlsField = value;
+ this.reasonFieldSpecified = value;
}
}
+ }
- /// A comma separated key=value list of parameters that will be supplied to the
- /// creative, written into the VAST node. If the #apiFramework is ApiFramework#VPAID, the value does not need to be
- /// a comma separated key-value list (and can instead be any arbitrary string). This
- /// attribute is optional.
- ///
- [System.Xml.Serialization.XmlElementAttribute(Order = 2)]
- public string customParameters {
- get {
- return this.customParametersField;
- }
- set {
- this.customParametersField = value;
- }
- }
- /// The API framework of the asset. This attribute is optional.
+ /// The reasons for the target error.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "CreativeError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum CreativeErrorReason {
+ /// FlashRedirectCreative#flashUrl and
+ /// FlashRedirectCreative#fallbackUrl
+ /// are the same. The fallback URL is used when the flash URL does not work and must
+ /// be different from it.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 3)]
- public ApiFramework apiFramework {
- get {
- return this.apiFrameworkField;
- }
- set {
- this.apiFrameworkField = value;
- this.apiFrameworkSpecified = true;
- }
- }
+ FLASH_AND_FALLBACK_URL_ARE_SAME = 0,
+ /// The internal redirect URL was invalid. The URL must have the following syntax
+ /// http://ad.doubleclick.net/ad/sitename/;sz=size.
+ ///
+ INVALID_INTERNAL_REDIRECT_URL = 1,
+ /// HasDestinationUrlCreative#destinationUrl
+ /// is required.
+ ///
+ DESTINATION_URL_REQUIRED = 2,
+ /// HasDestinationUrlCreative#destinationUrl
+ /// must be empty when its type is DestinationUrlType#NONE.
+ ///
+ DESTINATION_URL_NOT_EMPTY = 14,
+ /// The provided DestinationUrlType is not
+ /// supported for the creative type it is being used on.
+ ///
+ DESTINATION_URL_TYPE_NOT_SUPPORTED = 15,
+ /// Cannot create or update legacy DART For Publishers creative.
+ ///
+ CANNOT_CREATE_OR_UPDATE_LEGACY_DFP_CREATIVE = 3,
+ /// Cannot create or update legacy mobile creative.
+ ///
+ CANNOT_CREATE_OR_UPDATE_LEGACY_DFP_MOBILE_CREATIVE = 4,
+ /// The user is missing a necessary feature.
+ ///
+ MISSING_FEATURE = 5,
+ /// Company type should be one of Advertisers, House Advertisers and Ad Networks.
+ ///
+ INVALID_COMPANY_TYPE = 6,
+ /// Invalid size for AdSense dynamic allocation creative. Only valid AFC sizes are
+ /// allowed.
+ ///
+ INVALID_ADSENSE_CREATIVE_SIZE = 7,
+ /// Invalid size for Ad Exchange dynamic allocation creative. Only valid Ad Exchange
+ /// sizes are allowed.
+ ///
+ INVALID_AD_EXCHANGE_CREATIVE_SIZE = 8,
+ /// Assets associated with the same creative must be unique.
+ ///
+ DUPLICATE_ASSET_IN_CREATIVE = 9,
+ /// A creative asset cannot contain an asset ID and a byte array.
+ ///
+ CREATIVE_ASSET_CANNOT_HAVE_ID_AND_BYTE_ARRAY = 10,
+ /// Cannot create or update unsupported creative.
+ ///
+ CANNOT_CREATE_OR_UPDATE_UNSUPPORTED_CREATIVE = 11,
+ /// Cannot create programmatic creatives.
+ ///
+ CANNOT_CREATE_PROGRAMMATIC_CREATIVES = 12,
+ /// A creative must have valid size to use the third-party impression tracker.
+ ///
+ INVALID_SIZE_FOR_THIRD_PARTY_IMPRESSION_TRACKER = 16,
+ /// The value returned if the actual value is not exposed by the requested API
+ /// version.
+ ///
+ UNKNOWN = 13,
+ }
- /// true, if a value is specified for , false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool apiFrameworkSpecified {
- get {
- return this.apiFrameworkFieldSpecified;
- }
- set {
- this.apiFrameworkFieldSpecified = value;
- }
- }
- /// Minimum suggested duration in milliseconds. This attribute is optional.
+ /// Lists all errors associated with creative asset macros.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class CreativeAssetMacroError : ApiError {
+ private CreativeAssetMacroErrorReason reasonField;
+
+ private bool reasonFieldSpecified;
+
+ /// The error reason represented by an enum.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 4)]
- public int duration {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
+ public CreativeAssetMacroErrorReason reason {
get {
- return this.durationField;
+ return this.reasonField;
}
set {
- this.durationField = value;
- this.durationSpecified = true;
+ this.reasonField = value;
+ this.reasonSpecified = true;
}
}
- /// true, if a value is specified for , false otherwise.
+ /// true, if a value is specified for ,
+ /// false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool durationSpecified {
+ public bool reasonSpecified {
get {
- return this.durationFieldSpecified;
+ return this.reasonFieldSpecified;
}
set {
- this.durationFieldSpecified = value;
+ this.reasonFieldSpecified = value;
}
}
+ }
- /// An ad tag URL that will return a preview of the VAST XML response specific to
- /// this creative. This attribute is read-only.
+
+ /// The reasons for the target error.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "CreativeAssetMacroError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum CreativeAssetMacroErrorReason {
+ /// Invalid macro name specified. Macro names must start with an alpha character and
+ /// consist only of alpha-numeric characters and underscores and be between 1 and 64
+ /// characters.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 5)]
- public string vastPreviewUrl {
- get {
- return this.vastPreviewUrlField;
- }
- set {
- this.vastPreviewUrlField = value;
- }
- }
+ INVALID_MACRO_NAME = 0,
+ /// The value returned if the actual value is not exposed by the requested API
+ /// version.
+ ///
+ UNKNOWN = 1,
+ }
- /// A locked orientation for this creative to be displayed in.
+
+ /// Lists all errors associated with assets.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class AssetError : ApiError {
+ private AssetErrorReason reasonField;
+
+ private bool reasonFieldSpecified;
+
+ /// The error reason represented by an enum.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 6)]
- public LockedOrientation lockedOrientation {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
+ public AssetErrorReason reason {
get {
- return this.lockedOrientationField;
+ return this.reasonField;
}
set {
- this.lockedOrientationField = value;
- this.lockedOrientationSpecified = true;
+ this.reasonField = value;
+ this.reasonSpecified = true;
}
}
- /// true, if a value is specified for , false otherwise.
+ /// true, if a value is specified for ,
+ /// false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool lockedOrientationSpecified {
+ public bool reasonSpecified {
get {
- return this.lockedOrientationFieldSpecified;
+ return this.reasonFieldSpecified;
}
set {
- this.lockedOrientationFieldSpecified = value;
+ this.reasonFieldSpecified = value;
}
}
}
- /// A Creative that displays a Flash-based ad. If the Flash ad cannot
- /// load, a fallback image is displayed instead.
+ /// The reasons for the target error.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class FlashCreative : BaseFlashCreative {
- private SwiffyFallbackAsset swiffyAssetField;
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "AssetError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum AssetErrorReason {
+ /// An asset name must be unique across advertiser.
+ ///
+ NON_UNIQUE_NAME = 0,
+ /// The file name is too long.
+ ///
+ FILE_NAME_TOO_LONG = 1,
+ /// The file size is too large.
+ ///
+ FILE_SIZE_TOO_LARGE = 2,
+ /// Required client code is not present in the code snippet.
+ ///
+ MISSING_REQUIRED_DYNAMIC_ALLOCATION_CLIENT = 3,
+ /// Required height is not present in the code snippet.
+ ///
+ MISSING_REQUIRED_DYNAMIC_ALLOCATION_HEIGHT = 4,
+ /// Required width is not present in the code snippet.
+ ///
+ MISSING_REQUIRED_DYNAMIC_ALLOCATION_WIDTH = 5,
+ /// Required format is not present in the mobile code snippet.
+ ///
+ MISSING_REQUIRED_DYNAMIC_ALLOCATION_FORMAT = 6,
+ /// The parameter value in the code snippet is invalid.
+ ///
+ INVALID_CODE_SNIPPET_PARAMETER_VALUE = 7,
+ /// Invalid asset Id.
+ ///
+ INVALID_ASSET_ID = 8,
+ /// The value returned if the actual value is not exposed by the requested API
+ /// version.
+ ///
+ UNKNOWN = 9,
+ }
- private bool createSwiffyAssetField;
- private bool createSwiffyAssetFieldSpecified;
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
+ [System.ServiceModel.ServiceContractAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908", ConfigurationName = "Google.Api.Ads.AdManager.v201908.CreativeServiceInterface")]
+ public interface CreativeServiceInterface
+ {
+ // CODEGEN: Parameter 'rval' requires additional schema information that cannot be captured using the parameter mode. The specific attribute is 'System.Xml.Serialization.XmlElementAttribute'.
+ [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
+ [System.ServiceModel.FaultContractAttribute(typeof(Google.Api.Ads.AdManager.v201908.ApiException), Action = "", Name = "ApiExceptionFault")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults = true)]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApplicationException))]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Asset))]
+ [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
+ Wrappers.CreativeService.createCreativesResponse createCreatives(Wrappers.CreativeService.createCreativesRequest request);
- private LockedOrientation lockedOrientationField;
+ [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
+ System.Threading.Tasks.Task createCreativesAsync(Wrappers.CreativeService.createCreativesRequest request);
- private bool lockedOrientationFieldSpecified;
+ [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
+ [System.ServiceModel.FaultContractAttribute(typeof(Google.Api.Ads.AdManager.v201908.ApiException), Action = "", Name = "ApiExceptionFault")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults = true)]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApplicationException))]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Asset))]
+ [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
+ Google.Api.Ads.AdManager.v201908.CreativePage getCreativesByStatement(Google.Api.Ads.AdManager.v201908.Statement filterStatement);
- private bool clickTagOverlayEnabledField;
+ [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
+ [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
+ System.Threading.Tasks.Task getCreativesByStatementAsync(Google.Api.Ads.AdManager.v201908.Statement filterStatement);
- private bool clickTagOverlayEnabledFieldSpecified;
+ // CODEGEN: Parameter 'rval' requires additional schema information that cannot be captured using the parameter mode. The specific attribute is 'System.Xml.Serialization.XmlElementAttribute'.
+ [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
+ [System.ServiceModel.FaultContractAttribute(typeof(Google.Api.Ads.AdManager.v201908.ApiException), Action = "", Name = "ApiExceptionFault")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults = true)]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApplicationException))]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Asset))]
+ [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
+ Wrappers.CreativeService.updateCreativesResponse updateCreatives(Wrappers.CreativeService.updateCreativesRequest request);
- /// A Swiffy asset that can be used as a fallback for this flash creative. This
- /// attribute is readonly.
- ///
- [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public SwiffyFallbackAsset swiffyAsset {
- get {
- return this.swiffyAssetField;
- }
- set {
- this.swiffyAssetField = value;
- }
- }
+ [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
+ System.Threading.Tasks.Task updateCreativesAsync(Wrappers.CreativeService.updateCreativesRequest request);
+ }
+
+
+ /// Captures a page of Creative objects.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class CreativePage {
+ private int totalResultSetSizeField;
+
+ private bool totalResultSetSizeFieldSpecified;
+
+ private int startIndexField;
- /// Enables Swiffy fallback asset creation and serving.
If true
- /// during creation or update, the flash asset will be converted to a Swiffy asset. If successful, the Swiffy asset will be
- /// used for ad serving, which may lead to additional latency.
To remove the
- /// swiffy asset, set this attribute to false and update the flash asset.
This attribute is optional and
- /// defaults to false.
+ private bool startIndexFieldSpecified;
+
+ private Creative[] resultsField;
+
+ /// The size of the total result set to which this page belongs.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
- public bool createSwiffyAsset {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
+ public int totalResultSetSize {
get {
- return this.createSwiffyAssetField;
+ return this.totalResultSetSizeField;
}
set {
- this.createSwiffyAssetField = value;
- this.createSwiffyAssetSpecified = true;
+ this.totalResultSetSizeField = value;
+ this.totalResultSetSizeSpecified = true;
}
}
/// true, if a value is specified for , false otherwise.
+ /// cref="totalResultSetSize" />, false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool createSwiffyAssetSpecified {
+ public bool totalResultSetSizeSpecified {
get {
- return this.createSwiffyAssetFieldSpecified;
+ return this.totalResultSetSizeFieldSpecified;
}
set {
- this.createSwiffyAssetFieldSpecified = value;
+ this.totalResultSetSizeFieldSpecified = value;
}
}
- /// A locked orientation for this creative to be displayed in.
+ /// The absolute index in the total result set on which this page begins.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 2)]
- public LockedOrientation lockedOrientation {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
+ public int startIndex {
get {
- return this.lockedOrientationField;
+ return this.startIndexField;
}
set {
- this.lockedOrientationField = value;
- this.lockedOrientationSpecified = true;
+ this.startIndexField = value;
+ this.startIndexSpecified = true;
}
}
- /// true, if a value is specified for , false otherwise.
+ /// true, if a value is specified for , false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool lockedOrientationSpecified {
+ public bool startIndexSpecified {
get {
- return this.lockedOrientationFieldSpecified;
+ return this.startIndexFieldSpecified;
}
set {
- this.lockedOrientationFieldSpecified = value;
+ this.startIndexFieldSpecified = value;
}
}
- /// Enables the creative to be served with click tag overlay.
This attribute is
- /// optional and defaults to false.
+ /// The collection of creatives contained within this page.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 3)]
- public bool clickTagOverlayEnabled {
+ [System.Xml.Serialization.XmlElementAttribute("results", Order = 2)]
+ public Creative[] results {
get {
- return this.clickTagOverlayEnabledField;
+ return this.resultsField;
}
set {
- this.clickTagOverlayEnabledField = value;
- this.clickTagOverlayEnabledSpecified = true;
+ this.resultsField = value;
}
}
+ }
- /// true, if a value is specified for , false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool clickTagOverlayEnabledSpecified {
- get {
- return this.clickTagOverlayEnabledFieldSpecified;
- }
- set {
- this.clickTagOverlayEnabledFieldSpecified = value;
- }
- }
+
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
+ public interface CreativeServiceInterfaceChannel : Google.Api.Ads.AdManager.v201908.CreativeServiceInterface, System.ServiceModel.IClientChannel
+ {
}
- /// A Creative intended for mobile platforms that displays an image,
- /// whose size is defined as an aspect ratio, i.e. Size#isAspectRatio. It can have multiple images
- /// whose dimensions conform to that aspect ratio.
+ /// Provides methods for adding, updating and retrieving Creative objects.
///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class AspectRatioImageCreative : HasDestinationUrlCreative {
- private CreativeAsset[] imageAssetsField;
-
- private string altTextField;
-
- private string thirdPartyImpressionUrlField;
-
- private bool overrideSizeField;
-
- private bool overrideSizeFieldSpecified;
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
+ public partial class CreativeService : AdManagerSoapClient, ICreativeService {
+ /// Creates a new instance of the class.
+ ///
+ public CreativeService() {
+ }
- /// The images associated with this creative. The ad server will choose one based on
- /// the capabilities of the device. Each asset should have a size which is of the
- /// same aspect ratio as the Creative#size. This
- /// attribute is required and must have at least one asset.
+ /// Creates a new instance of the class.
///
- [System.Xml.Serialization.XmlElementAttribute("imageAssets", Order = 0)]
- public CreativeAsset[] imageAssets {
- get {
- return this.imageAssetsField;
- }
- set {
- this.imageAssetsField = value;
- }
+ public CreativeService(string endpointConfigurationName)
+ : base(endpointConfigurationName) {
}
- /// The text that is served along with the image creative, primarily for
- /// accessibility. If no suitable image size is available for the device, this text
- /// replaces the image completely. This field is optional and has a maximum length
- /// of 500 characters.
+ /// Creates a new instance of the class.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
- public string altText {
- get {
- return this.altTextField;
- }
- set {
- this.altTextField = value;
- }
+ public CreativeService(string endpointConfigurationName, string remoteAddress)
+ : base(endpointConfigurationName, remoteAddress) {
}
- /// An impression tracking URL to ping when this creative is displayed. This field
- /// is optional has a maximum length of 1024 characters.
+ /// Creates a new instance of the class.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 2)]
- public string thirdPartyImpressionUrl {
- get {
- return this.thirdPartyImpressionUrlField;
- }
- set {
- this.thirdPartyImpressionUrlField = value;
- }
+ public CreativeService(string endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress)
+ : base(endpointConfigurationName, remoteAddress) {
}
- /// Allows the actual image asset sizes to differ from the creative size. This
- /// attribute is optional.
+ /// Creates a new instance of the class.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 3)]
- public bool overrideSize {
- get {
- return this.overrideSizeField;
- }
- set {
- this.overrideSizeField = value;
- this.overrideSizeSpecified = true;
- }
+ public CreativeService(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress)
+ : base(binding, remoteAddress) {
}
- /// true, if a value is specified for , false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool overrideSizeSpecified {
- get {
- return this.overrideSizeFieldSpecified;
- }
- set {
- this.overrideSizeFieldSpecified = value;
- }
+ [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
+ Wrappers.CreativeService.createCreativesResponse Google.Api.Ads.AdManager.v201908.CreativeServiceInterface.createCreatives(Wrappers.CreativeService.createCreativesRequest request) {
+ return base.Channel.createCreatives(request);
}
- }
+ /// Creates new Creative objects.
+ /// the creatives to create
+ /// the created creatives with their IDs filled in
+ public virtual Google.Api.Ads.AdManager.v201908.Creative[] createCreatives(Google.Api.Ads.AdManager.v201908.Creative[] creatives) {
+ Wrappers.CreativeService.createCreativesRequest inValue = new Wrappers.CreativeService.createCreativesRequest();
+ inValue.creatives = creatives;
+ Wrappers.CreativeService.createCreativesResponse retVal = ((Google.Api.Ads.AdManager.v201908.CreativeServiceInterface)(this)).createCreatives(inValue);
+ return retVal.rval;
+ }
- /// A creative that is used for tracking clicks on ads that are served directly from
- /// the customers' web servers or media servers. NOTE: The size attribute is not
- /// used for click tracking creative and it will not be persisted upon save.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class ClickTrackingCreative : Creative {
- private string clickTrackingUrlField;
+ [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
+ System.Threading.Tasks.Task Google.Api.Ads.AdManager.v201908.CreativeServiceInterface.createCreativesAsync(Wrappers.CreativeService.createCreativesRequest request) {
+ return base.Channel.createCreativesAsync(request);
+ }
- /// The click tracking URL. This attribute is required.
- ///
- [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public string clickTrackingUrl {
- get {
- return this.clickTrackingUrlField;
- }
- set {
- this.clickTrackingUrlField = value;
- }
+ public virtual System.Threading.Tasks.Task createCreativesAsync(Google.Api.Ads.AdManager.v201908.Creative[] creatives) {
+ Wrappers.CreativeService.createCreativesRequest inValue = new Wrappers.CreativeService.createCreativesRequest();
+ inValue.creatives = creatives;
+ return System.Threading.Tasks.Task.Factory.StartNew(() => (((Google.Api.Ads.AdManager.v201908.CreativeServiceInterface)(this)).createCreativesAsync(inValue)).Result.rval);
+ }
+
+ /// Gets a CreativePage of Creative objects that satisfy the given Statement#query. The following fields are supported
+ /// for filtering:
+ /// a Publisher Query Language statement used to
+ /// filter a set of creatives
+ /// the creatives that match the given filter
+ public virtual Google.Api.Ads.AdManager.v201908.CreativePage getCreativesByStatement(Google.Api.Ads.AdManager.v201908.Statement filterStatement) {
+ return base.Channel.getCreativesByStatement(filterStatement);
}
- }
+ public virtual System.Threading.Tasks.Task getCreativesByStatementAsync(Google.Api.Ads.AdManager.v201908.Statement filterStatement) {
+ return base.Channel.getCreativesByStatementAsync(filterStatement);
+ }
- /// A Creative that is created by a Rich Media Studio.
+ [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
+ Wrappers.CreativeService.updateCreativesResponse Google.Api.Ads.AdManager.v201908.CreativeServiceInterface.updateCreatives(Wrappers.CreativeService.updateCreativesRequest request) {
+ return base.Channel.updateCreatives(request);
+ }
+
+ /// Updates the specified Creative objects.
+ /// the creatives to update
+ /// the updated creatives
+ public virtual Google.Api.Ads.AdManager.v201908.Creative[] updateCreatives(Google.Api.Ads.AdManager.v201908.Creative[] creatives) {
+ Wrappers.CreativeService.updateCreativesRequest inValue = new Wrappers.CreativeService.updateCreativesRequest();
+ inValue.creatives = creatives;
+ Wrappers.CreativeService.updateCreativesResponse retVal = ((Google.Api.Ads.AdManager.v201908.CreativeServiceInterface)(this)).updateCreatives(inValue);
+ return retVal.rval;
+ }
+
+ [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
+ System.Threading.Tasks.Task Google.Api.Ads.AdManager.v201908.CreativeServiceInterface.updateCreativesAsync(Wrappers.CreativeService.updateCreativesRequest request) {
+ return base.Channel.updateCreativesAsync(request);
+ }
+
+ public virtual System.Threading.Tasks.Task updateCreativesAsync(Google.Api.Ads.AdManager.v201908.Creative[] creatives) {
+ Wrappers.CreativeService.updateCreativesRequest inValue = new Wrappers.CreativeService.updateCreativesRequest();
+ inValue.creatives = creatives;
+ return System.Threading.Tasks.Task.Factory.StartNew(() => (((Google.Api.Ads.AdManager.v201908.CreativeServiceInterface)(this)).updateCreativesAsync(inValue)).Result.rval);
+ }
+ }
+ namespace Wrappers.CreativeSetService
+ {
+ }
+ /// A creative set is comprised of a master creative and its companion creatives.
///
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(RichMediaStudioCreative))]
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public abstract partial class BaseRichMediaStudioCreative : Creative {
- private long studioCreativeIdField;
-
- private bool studioCreativeIdFieldSpecified;
-
- private RichMediaStudioCreativeFormat creativeFormatField;
-
- private bool creativeFormatFieldSpecified;
-
- private RichMediaStudioCreativeArtworkType artworkTypeField;
-
- private bool artworkTypeFieldSpecified;
-
- private long totalFileSizeField;
-
- private bool totalFileSizeFieldSpecified;
-
- private string[] adTagKeysField;
-
- private string[] customKeyValuesField;
-
- private string surveyUrlField;
-
- private string allImpressionsUrlField;
-
- private string richMediaImpressionsUrlField;
-
- private string backupImageImpressionsUrlField;
-
- private string overrideCssField;
-
- private string requiredFlashPluginVersionField;
-
- private int durationField;
-
- private bool durationFieldSpecified;
-
- private RichMediaStudioCreativeBillingAttribute billingAttributeField;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class CreativeSet {
+ private long idField;
- private bool billingAttributeFieldSpecified;
+ private bool idFieldSpecified;
- private RichMediaStudioChildAssetProperty[] richMediaStudioChildAssetPropertiesField;
+ private string nameField;
- private SslScanResult sslScanResultField;
+ private long masterCreativeIdField;
- private bool sslScanResultFieldSpecified;
+ private bool masterCreativeIdFieldSpecified;
- private SslManualOverride sslManualOverrideField;
+ private long[] companionCreativeIdsField;
- private bool sslManualOverrideFieldSpecified;
+ private DateTime lastModifiedDateTimeField;
- /// The creative ID as known by Rich Media Studio creative. This attribute is
- /// readonly.
+ /// Uniquely identifies the CreativeSet. This attribute is read-only
+ /// and is assigned by Google when a creative set is created.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public long studioCreativeId {
+ public long id {
get {
- return this.studioCreativeIdField;
+ return this.idField;
}
set {
- this.studioCreativeIdField = value;
- this.studioCreativeIdSpecified = true;
+ this.idField = value;
+ this.idSpecified = true;
}
}
- /// true, if a value is specified for , false otherwise.
+ /// true, if a value is specified for ,
+ /// false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool studioCreativeIdSpecified {
+ public bool idSpecified {
get {
- return this.studioCreativeIdFieldSpecified;
+ return this.idFieldSpecified;
}
set {
- this.studioCreativeIdFieldSpecified = value;
+ this.idFieldSpecified = value;
}
}
- /// The creative format of the Rich Media Studio creative. This attribute is
- /// readonly.
+ /// The name of the creative set. This attribute is required and has a maximum
+ /// length of 255 characters.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 1)]
- public RichMediaStudioCreativeFormat creativeFormat {
- get {
- return this.creativeFormatField;
- }
- set {
- this.creativeFormatField = value;
- this.creativeFormatSpecified = true;
- }
- }
-
- /// true, if a value is specified for , false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool creativeFormatSpecified {
+ public string name {
get {
- return this.creativeFormatFieldSpecified;
+ return this.nameField;
}
set {
- this.creativeFormatFieldSpecified = value;
+ this.nameField = value;
}
}
- /// The type of artwork used in this creative. This attribute is readonly.
+ /// The ID of the master creative associated with this creative set. This attribute
+ /// is required.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 2)]
- public RichMediaStudioCreativeArtworkType artworkType {
+ public long masterCreativeId {
get {
- return this.artworkTypeField;
+ return this.masterCreativeIdField;
}
set {
- this.artworkTypeField = value;
- this.artworkTypeSpecified = true;
+ this.masterCreativeIdField = value;
+ this.masterCreativeIdSpecified = true;
}
}
- /// true, if a value is specified for , false otherwise.
+ /// true, if a value is specified for , false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool artworkTypeSpecified {
+ public bool masterCreativeIdSpecified {
get {
- return this.artworkTypeFieldSpecified;
+ return this.masterCreativeIdFieldSpecified;
}
set {
- this.artworkTypeFieldSpecified = value;
+ this.masterCreativeIdFieldSpecified = value;
}
}
- /// The total size of all assets in bytes. This attribute is readonly.
+ /// The IDs of the companion creatives associated with this creative set. This
+ /// attribute is required.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 3)]
- public long totalFileSize {
+ [System.Xml.Serialization.XmlElementAttribute("companionCreativeIds", Order = 3)]
+ public long[] companionCreativeIds {
get {
- return this.totalFileSizeField;
+ return this.companionCreativeIdsField;
}
set {
- this.totalFileSizeField = value;
- this.totalFileSizeSpecified = true;
+ this.companionCreativeIdsField = value;
}
}
- /// true, if a value is specified for , false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool totalFileSizeSpecified {
+ /// The date and time this creative set was last modified.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 4)]
+ public DateTime lastModifiedDateTime {
get {
- return this.totalFileSizeFieldSpecified;
+ return this.lastModifiedDateTimeField;
}
set {
- this.totalFileSizeFieldSpecified = value;
+ this.lastModifiedDateTimeField = value;
}
}
+ }
- /// Ad tag keys. This attribute is optional and updatable.
+
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
+ [System.ServiceModel.ServiceContractAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908", ConfigurationName = "Google.Api.Ads.AdManager.v201908.CreativeSetServiceInterface")]
+ public interface CreativeSetServiceInterface
+ {
+ [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
+ [System.ServiceModel.FaultContractAttribute(typeof(Google.Api.Ads.AdManager.v201908.ApiException), Action = "", Name = "ApiExceptionFault")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults = true)]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApplicationException))]
+ [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
+ Google.Api.Ads.AdManager.v201908.CreativeSet createCreativeSet(Google.Api.Ads.AdManager.v201908.CreativeSet creativeSet);
+
+ [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
+ [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
+ System.Threading.Tasks.Task createCreativeSetAsync(Google.Api.Ads.AdManager.v201908.CreativeSet creativeSet);
+
+ [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
+ [System.ServiceModel.FaultContractAttribute(typeof(Google.Api.Ads.AdManager.v201908.ApiException), Action = "", Name = "ApiExceptionFault")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults = true)]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApplicationException))]
+ [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
+ Google.Api.Ads.AdManager.v201908.CreativeSetPage getCreativeSetsByStatement(Google.Api.Ads.AdManager.v201908.Statement statement);
+
+ [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
+ [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
+ System.Threading.Tasks.Task getCreativeSetsByStatementAsync(Google.Api.Ads.AdManager.v201908.Statement statement);
+
+ [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
+ [System.ServiceModel.FaultContractAttribute(typeof(Google.Api.Ads.AdManager.v201908.ApiException), Action = "", Name = "ApiExceptionFault")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults = true)]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApplicationException))]
+ [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
+ Google.Api.Ads.AdManager.v201908.CreativeSet updateCreativeSet(Google.Api.Ads.AdManager.v201908.CreativeSet creativeSet);
+
+ [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
+ [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
+ System.Threading.Tasks.Task updateCreativeSetAsync(Google.Api.Ads.AdManager.v201908.CreativeSet creativeSet);
+ }
+
+
+ /// Captures a page of CreativeSet objects.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class CreativeSetPage {
+ private int totalResultSetSizeField;
+
+ private bool totalResultSetSizeFieldSpecified;
+
+ private int startIndexField;
+
+ private bool startIndexFieldSpecified;
+
+ private CreativeSet[] resultsField;
+
+ /// The size of the total result set to which this page belongs.
///
- [System.Xml.Serialization.XmlElementAttribute("adTagKeys", Order = 4)]
- public string[] adTagKeys {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
+ public int totalResultSetSize {
get {
- return this.adTagKeysField;
+ return this.totalResultSetSizeField;
}
set {
- this.adTagKeysField = value;
+ this.totalResultSetSizeField = value;
+ this.totalResultSetSizeSpecified = true;
}
}
- /// Custom key values. This attribute is optional and updatable.
- ///
- [System.Xml.Serialization.XmlElementAttribute("customKeyValues", Order = 5)]
- public string[] customKeyValues {
+ /// true, if a value is specified for , false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool totalResultSetSizeSpecified {
get {
- return this.customKeyValuesField;
+ return this.totalResultSetSizeFieldSpecified;
}
set {
- this.customKeyValuesField = value;
+ this.totalResultSetSizeFieldSpecified = value;
}
}
- /// The survey URL for this creative. This attribute is optional and updatable.
+ /// The absolute index in the total result set on which this page begins.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 6)]
- public string surveyUrl {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
+ public int startIndex {
get {
- return this.surveyUrlField;
+ return this.startIndexField;
}
set {
- this.surveyUrlField = value;
+ this.startIndexField = value;
+ this.startIndexSpecified = true;
}
}
- /// The tracking URL to be triggered when an ad starts to play, whether Rich Media
- /// or backup content is displayed. Behaves like the URL that DART
- /// used to track impressions. This URL can't exceed 1024 characters and must start
- /// with http:// or https://. This attribute is optional and updatable.
- ///
- [System.Xml.Serialization.XmlElementAttribute(Order = 7)]
- public string allImpressionsUrl {
+ /// true, if a value is specified for , false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool startIndexSpecified {
get {
- return this.allImpressionsUrlField;
+ return this.startIndexFieldSpecified;
}
set {
- this.allImpressionsUrlField = value;
+ this.startIndexFieldSpecified = value;
}
}
- /// The tracking URL to be triggered when any rich media artwork is displayed in an
- /// ad. Behaves like the /imp URL that DART used to track impressions.
- /// This URL can't exceed 1024 characters and must start with http:// or https://.
- /// This attribute is optional and updatable.
+ /// The collection of creative sets contained within this page.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 8)]
- public string richMediaImpressionsUrl {
+ [System.Xml.Serialization.XmlElementAttribute("results", Order = 2)]
+ public CreativeSet[] results {
get {
- return this.richMediaImpressionsUrlField;
+ return this.resultsField;
}
set {
- this.richMediaImpressionsUrlField = value;
+ this.resultsField = value;
}
}
+ }
- /// The tracking URL to be triggered when the Rich Media backup image is served.
- /// This attribute is optional and updatable.
+
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
+ public interface CreativeSetServiceInterfaceChannel : Google.Api.Ads.AdManager.v201908.CreativeSetServiceInterface, System.ServiceModel.IClientChannel
+ {
+ }
+
+
+ /// Provides methods for adding, updating and retrieving CreativeSet objects.
+ ///
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
+ public partial class CreativeSetService : AdManagerSoapClient, ICreativeSetService {
+ /// Creates a new instance of the class.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 9)]
- public string backupImageImpressionsUrl {
- get {
- return this.backupImageImpressionsUrlField;
- }
- set {
- this.backupImageImpressionsUrlField = value;
- }
+ public CreativeSetService() {
}
- /// The override CSS. You can put custom CSS code here to repair creative styling;
- /// e.g. tr td { background-color:#FBB; }. This attribute is optional
- /// and updatable.
+ /// Creates a new instance of the class.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 10)]
- public string overrideCss {
- get {
- return this.overrideCssField;
- }
- set {
- this.overrideCssField = value;
- }
+ public CreativeSetService(string endpointConfigurationName)
+ : base(endpointConfigurationName) {
}
- /// The Flash plugin version required to view this creative; e.g. Flash
- /// 10.2/AS 3. This attribute is read only.
+ /// Creates a new instance of the class.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 11)]
- public string requiredFlashPluginVersion {
- get {
- return this.requiredFlashPluginVersionField;
- }
- set {
- this.requiredFlashPluginVersionField = value;
- }
+ public CreativeSetService(string endpointConfigurationName, string remoteAddress)
+ : base(endpointConfigurationName, remoteAddress) {
}
- /// The duration of the creative in milliseconds. This attribute is optional and
- /// updatable.
+ /// Creates a new instance of the class.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 12)]
- public int duration {
- get {
- return this.durationField;
- }
- set {
- this.durationField = value;
- this.durationSpecified = true;
- }
+ public CreativeSetService(string endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress)
+ : base(endpointConfigurationName, remoteAddress) {
}
- /// true, if a value is specified for , false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool durationSpecified {
- get {
- return this.durationFieldSpecified;
- }
- set {
- this.durationFieldSpecified = value;
- }
+ /// Creates a new instance of the class.
+ ///
+ public CreativeSetService(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress)
+ : base(binding, remoteAddress) {
}
- /// The billing attribute associated with this creative. This attribute is read
- /// only.
+ /// Creates a new CreativeSet.
+ /// the creative set to create
+ /// the creative set with its ID filled in
+ public virtual Google.Api.Ads.AdManager.v201908.CreativeSet createCreativeSet(Google.Api.Ads.AdManager.v201908.CreativeSet creativeSet) {
+ return base.Channel.createCreativeSet(creativeSet);
+ }
+
+ public virtual System.Threading.Tasks.Task createCreativeSetAsync(Google.Api.Ads.AdManager.v201908.CreativeSet creativeSet) {
+ return base.Channel.createCreativeSetAsync(creativeSet);
+ }
+
+ /// Gets a CreativeSetPage of CreativeSet objects that satisfy the given Statement#query. The following fields are supported
+ /// for filtering:
+ /// a Publisher Query Language statement used to filter a
+ /// set of creative sets
+ /// the creative sets that match the given filter
+ public virtual Google.Api.Ads.AdManager.v201908.CreativeSetPage getCreativeSetsByStatement(Google.Api.Ads.AdManager.v201908.Statement statement) {
+ return base.Channel.getCreativeSetsByStatement(statement);
+ }
+
+ public virtual System.Threading.Tasks.Task getCreativeSetsByStatementAsync(Google.Api.Ads.AdManager.v201908.Statement statement) {
+ return base.Channel.getCreativeSetsByStatementAsync(statement);
+ }
+
+ /// Updates the specified CreativeSet.
+ /// the creative set to update
+ /// the updated creative set
+ public virtual Google.Api.Ads.AdManager.v201908.CreativeSet updateCreativeSet(Google.Api.Ads.AdManager.v201908.CreativeSet creativeSet) {
+ return base.Channel.updateCreativeSet(creativeSet);
+ }
+
+ public virtual System.Threading.Tasks.Task updateCreativeSetAsync(Google.Api.Ads.AdManager.v201908.CreativeSet creativeSet) {
+ return base.Channel.updateCreativeSetAsync(creativeSet);
+ }
+ }
+ namespace Wrappers.CreativeTemplateService
+ {
+ }
+ /// Stores variable choices that users can select from
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "ListStringCreativeTemplateVariable.VariableChoice", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class ListStringCreativeTemplateVariableVariableChoice {
+ private string labelField;
+
+ private string valueField;
+
+ /// Label that users can select from. This is displayed to users when creating a TemplateCreative. This attribute is intended to be
+ /// more descriptive than #value. This attribute is required
+ /// and has a maximum length of 255 characters.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 13)]
- public RichMediaStudioCreativeBillingAttribute billingAttribute {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
+ public string label {
get {
- return this.billingAttributeField;
+ return this.labelField;
}
set {
- this.billingAttributeField = value;
- this.billingAttributeSpecified = true;
+ this.labelField = value;
}
}
- /// true, if a value is specified for , false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool billingAttributeSpecified {
+ /// Value that users can select from. When creating a TemplateCreative, the value in StringCreativeTemplateVariableValue
+ /// should match this value, if you intend to select this value. This attribute is
+ /// required and has a maximum length of 255 characters.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
+ public string value {
get {
- return this.billingAttributeFieldSpecified;
+ return this.valueField;
}
set {
- this.billingAttributeFieldSpecified = value;
+ this.valueField = value;
}
}
+ }
- /// The list of child assets associated with this creative. This attribute is read
- /// only.
+
+ /// Represents a variable defined in a creative template.
+ ///
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(UrlCreativeTemplateVariable))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(StringCreativeTemplateVariable))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(ListStringCreativeTemplateVariable))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(LongCreativeTemplateVariable))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(AssetCreativeTemplateVariable))]
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public abstract partial class CreativeTemplateVariable {
+ private string labelField;
+
+ private string uniqueNameField;
+
+ private string descriptionField;
+
+ private bool isRequiredField;
+
+ private bool isRequiredFieldSpecified;
+
+ /// Label that is displayed to users when creating TemplateCreative from the CreativeTemplate. This attribute is required and has
+ /// a maximum length of 127 characters.
///
- [System.Xml.Serialization.XmlElementAttribute("richMediaStudioChildAssetProperties", Order = 14)]
- public RichMediaStudioChildAssetProperty[] richMediaStudioChildAssetProperties {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
+ public string label {
get {
- return this.richMediaStudioChildAssetPropertiesField;
+ return this.labelField;
}
set {
- this.richMediaStudioChildAssetPropertiesField = value;
+ this.labelField = value;
}
}
- /// The SSL compatibility scan result of this creative.
This attribute is
- /// read-only and determined by Google.
+ /// Unique name used to identify the variable. This attribute is read-only and is
+ /// assigned by Google, by deriving from label, when a creative template variable is
+ /// created.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 15)]
- public SslScanResult sslScanResult {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
+ public string uniqueName {
get {
- return this.sslScanResultField;
+ return this.uniqueNameField;
}
set {
- this.sslScanResultField = value;
- this.sslScanResultSpecified = true;
+ this.uniqueNameField = value;
}
}
- /// true, if a value is specified for , false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool sslScanResultSpecified {
+ /// A descriptive help text that is displayed to users along with the label. This
+ /// attribute is required and has a maximum length of 255 characters.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 2)]
+ public string description {
get {
- return this.sslScanResultFieldSpecified;
+ return this.descriptionField;
}
set {
- this.sslScanResultFieldSpecified = value;
+ this.descriptionField = value;
}
}
- /// The manual override for the SSL compatibility of this creative.
+ /// true if this variable is required to be filled in by users when
+ /// creating TemplateCreative from the CreativeTemplate.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 16)]
- public SslManualOverride sslManualOverride {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 3)]
+ public bool isRequired {
get {
- return this.sslManualOverrideField;
+ return this.isRequiredField;
}
set {
- this.sslManualOverrideField = value;
- this.sslManualOverrideSpecified = true;
+ this.isRequiredField = value;
+ this.isRequiredSpecified = true;
}
}
- /// true, if a value is specified for , false otherwise.
+ /// true, if a value is specified for , false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool sslManualOverrideSpecified {
+ public bool isRequiredSpecified {
get {
- return this.sslManualOverrideFieldSpecified;
+ return this.isRequiredFieldSpecified;
}
set {
- this.sslManualOverrideFieldSpecified = value;
+ this.isRequiredFieldSpecified = value;
}
}
}
- /// Different creative format supported by Rich Media Studio creative.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum RichMediaStudioCreativeFormat {
- /// In-page creatives are served into an ad slot on publishers page. In-page implies
- /// that they maintain a static size, e.g, 468x60 and do not break out of these
- /// dimensions.
- ///
- IN_PAGE = 0,
- /// Expanding creatives expand/collapse on user interaction such as mouse over. It
- /// consists of an initial, or collapsed and an expanded creative area.
- ///
- EXPANDING = 1,
- /// Creatives that are served in an instant messenger application such as AOL
- /// Instant Messanger or Yahoo! Messenger. This can also be used in desktop
- /// applications such as weatherbug.
- ///
- IM_EXPANDING = 2,
- /// Floating creatives float on top of publishers page and can be closed with a
- /// close button.
- ///
- FLOATING = 3,
- /// Peel-down creatives show a glimpse of your ad in the corner of a web page. When
- /// the user interacts, the rest of the ad peels down to reveal the full message.
- ///
- PEEL_DOWN = 4,
- /// An In-Page with Floating creative is a dual-asset creative consisting of an
- /// in-page asset and a floating asset. This creative type lets you deliver a static
- /// primary ad to a webpage, while inviting a user to find out more through a
- /// floating asset delivered when the user interacts with the creative.
- ///
- IN_PAGE_WITH_FLOATING = 5,
- /// A Flash ad that renders in a Flash environment. The adserver will serve this
- /// using VAST, but it is not a proper VAST XML ad. It's an amalgamation of the
- /// proprietary InStream protocol, rendered inside VAST so that we can capture some
- /// standard behavior such as companions.
- ///
- FLASH_IN_FLASH = 6,
- /// An expanding flash ad that renders in a Flash environment. The adserver will
- /// serve this using VAST, but it is not a proper VAST XML ad. It's an amalgamation
- /// of the proprietary InStream protocol, rendered inside VAST so that we can
- /// capture some standard behavior such as companions.
- ///
- FLASH_IN_FLASH_EXPANDING = 7,
- /// In-app creatives are served into an ad slot within a publisher's app. In-app
- /// implies that they maintain a static size, e.g, 468x60 and do not break out of
- /// these dimensions.
- ///
- IN_APP = 8,
- /// The creative format is unknown or not supported in the API version in use.
- ///
- UNKNOWN = 9,
- }
-
-
- /// Rich Media Studio creative artwork types.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum RichMediaStudioCreativeArtworkType {
- /// The creative is a Flash creative.
- ///
- FLASH = 0,
- /// The creative is HTML5.
- ///
- HTML5 = 1,
- /// The creative is Flash if available, and HTML5 otherwise.
- ///
- MIXED = 2,
- }
-
-
- /// Rich Media Studio creative supported billing attributes.
This is determined
- /// by Rich Media Studio based on the content of the creative and is not
- /// updateable.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class RichMediaStudioCreative : BaseRichMediaStudioCreative {
- private LockedOrientation lockedOrientationField;
-
- private bool lockedOrientationFieldSpecified;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class UrlCreativeTemplateVariable : CreativeTemplateVariable {
+ private string defaultValueField;
- private bool isInterstitialField;
+ private bool isTrackingUrlField;
- private bool isInterstitialFieldSpecified;
+ private bool isTrackingUrlFieldSpecified;
- /// A locked orientation for this creative to be displayed in.
+ /// Default value to be filled in when creating creatives from the creative
+ /// template.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public LockedOrientation lockedOrientation {
- get {
- return this.lockedOrientationField;
- }
- set {
- this.lockedOrientationField = value;
- this.lockedOrientationSpecified = true;
- }
- }
-
- /// true, if a value is specified for , false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool lockedOrientationSpecified {
+ public string defaultValue {
get {
- return this.lockedOrientationFieldSpecified;
+ return this.defaultValueField;
}
set {
- this.lockedOrientationFieldSpecified = value;
+ this.defaultValueField = value;
}
}
- /// true if this is interstitial. An interstitial creative will not
- /// consider an impression served until it is fully rendered in the browser. This
- /// attribute is readonly.
+ /// When true, if the URL is identified as from a known vendor, cache-busting macros
+ /// will automatically be inserted upon save.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 1)]
- public bool isInterstitial {
+ public bool isTrackingUrl {
get {
- return this.isInterstitialField;
+ return this.isTrackingUrlField;
}
set {
- this.isInterstitialField = value;
- this.isInterstitialSpecified = true;
+ this.isTrackingUrlField = value;
+ this.isTrackingUrlSpecified = true;
}
}
/// true, if a value is specified for , false otherwise.
+ /// cref="isTrackingUrl" />, false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool isInterstitialSpecified {
+ public bool isTrackingUrlSpecified {
get {
- return this.isInterstitialFieldSpecified;
+ return this.isTrackingUrlFieldSpecified;
}
set {
- this.isInterstitialFieldSpecified = value;
+ this.isTrackingUrlFieldSpecified = value;
}
}
}
- /// A base class for dynamic allocation creatives.
- ///
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(HasHtmlSnippetDynamicAllocationCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(AdSenseCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(AdExchangeCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(AdMobBackfillCreative))]
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public abstract partial class BaseDynamicAllocationCreative : Creative {
- }
-
-
- /// Dynamic allocation creative with a backfill code snippet.
+ /// Represents a string variable defined in a creative template.
///
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(AdSenseCreative))]
- [System.Xml.Serialization.XmlIncludeAttribute(typeof(AdExchangeCreative))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(ListStringCreativeTemplateVariable))]
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public abstract partial class HasHtmlSnippetDynamicAllocationCreative : BaseDynamicAllocationCreative {
- private string codeSnippetField;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class StringCreativeTemplateVariable : CreativeTemplateVariable {
+ private string defaultValueField;
- /// The code snippet (ad tag) from Ad Exchange or AdSense to traffic the dynamic
- /// allocation creative. Only valid Ad Exchange or AdSense parameters will be
- /// considered. Any extraneous HTML or JavaScript will be ignored.
+ /// Default value to be filled in when creating creatives from the creative
+ /// template.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public string codeSnippet {
+ public string defaultValue {
get {
- return this.codeSnippetField;
+ return this.defaultValueField;
}
set {
- this.codeSnippetField = value;
+ this.defaultValueField = value;
}
}
}
- /// An AdSense dynamic allocation creative.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class AdSenseCreative : HasHtmlSnippetDynamicAllocationCreative {
- }
-
-
- /// An Ad Exchange dynamic allocation creative.
+ /// Represents a list variable defined in a creative template. This is similar to StringCreativeTemplateVariable, except
+ /// that there are possible choices to choose from.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class AdExchangeCreative : HasHtmlSnippetDynamicAllocationCreative {
- private bool isNativeEligibleField;
-
- private bool isNativeEligibleFieldSpecified;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class ListStringCreativeTemplateVariable : StringCreativeTemplateVariable {
+ private ListStringCreativeTemplateVariableVariableChoice[] choicesField;
- private bool isInterstitialField;
+ private bool allowOtherChoiceField;
- private bool isInterstitialFieldSpecified;
+ private bool allowOtherChoiceFieldSpecified;
- /// Whether this creative is eligible for native ad-serving. This value is optional
- /// and defaults to false.
+ /// The values within the list users need to select from.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public bool isNativeEligible {
- get {
- return this.isNativeEligibleField;
- }
- set {
- this.isNativeEligibleField = value;
- this.isNativeEligibleSpecified = true;
- }
- }
-
- /// true, if a value is specified for , false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool isNativeEligibleSpecified {
+ [System.Xml.Serialization.XmlElementAttribute("choices", Order = 0)]
+ public ListStringCreativeTemplateVariableVariableChoice[] choices {
get {
- return this.isNativeEligibleFieldSpecified;
+ return this.choicesField;
}
set {
- this.isNativeEligibleFieldSpecified = value;
+ this.choicesField = value;
}
}
- /// true if this creative is interstitial. An interstitial creative
- /// will not consider an impression served until it is fully rendered in the
- /// browser.
+ /// true if a user can specifiy an 'other' value. For example, if a
+ /// variable called backgroundColor is defined as a list with values: red, green,
+ /// blue, this boolean can be set to allow a user to enter a value not on the list
+ /// such as purple.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 1)]
- public bool isInterstitial {
+ public bool allowOtherChoice {
get {
- return this.isInterstitialField;
+ return this.allowOtherChoiceField;
}
set {
- this.isInterstitialField = value;
- this.isInterstitialSpecified = true;
+ this.allowOtherChoiceField = value;
+ this.allowOtherChoiceSpecified = true;
}
}
/// true, if a value is specified for , false otherwise.
+ /// cref="allowOtherChoice" />, false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool isInterstitialSpecified {
+ public bool allowOtherChoiceSpecified {
get {
- return this.isInterstitialFieldSpecified;
+ return this.allowOtherChoiceFieldSpecified;
}
set {
- this.isInterstitialFieldSpecified = value;
+ this.allowOtherChoiceFieldSpecified = value;
}
}
}
- /// An AdMob backfill creative.
+ /// Represents a long variable defined in a creative template.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class AdMobBackfillCreative : BaseDynamicAllocationCreative {
- private string additionalParametersField;
-
- private string publisherIdField;
-
- private LockedOrientation lockedOrientationField;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class LongCreativeTemplateVariable : CreativeTemplateVariable {
+ private long defaultValueField;
- private bool lockedOrientationFieldSpecified;
+ private bool defaultValueFieldSpecified;
- /// Optional parameters that you can append to the request to AdMob, for example,
- /// test=true&bgcolor=000000.
+ /// Default value to be filled in when creating creatives from the creative
+ /// template.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public string additionalParameters {
+ public long defaultValue {
get {
- return this.additionalParametersField;
+ return this.defaultValueField;
}
set {
- this.additionalParametersField = value;
+ this.defaultValueField = value;
+ this.defaultValueSpecified = true;
}
}
- /// The AdMob publisher ID. See the Ad Manager
- /// Help Center for more information. This attribute is required.
- ///
- [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
- public string publisherId {
+ /// true, if a value is specified for , false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool defaultValueSpecified {
get {
- return this.publisherIdField;
+ return this.defaultValueFieldSpecified;
}
set {
- this.publisherIdField = value;
+ this.defaultValueFieldSpecified = value;
}
}
+ }
- /// A locked orientation for this creative to be displayed in.
- ///
- [System.Xml.Serialization.XmlElementAttribute(Order = 2)]
- public LockedOrientation lockedOrientation {
- get {
- return this.lockedOrientationField;
- }
- set {
- this.lockedOrientationField = value;
- this.lockedOrientationSpecified = true;
- }
- }
- /// true, if a value is specified for , false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool lockedOrientationSpecified {
- get {
- return this.lockedOrientationFieldSpecified;
- }
- set {
- this.lockedOrientationFieldSpecified = value;
- }
- }
- }
-
-
- /// Lists all errors associated with template instantiated creatives.
+ /// Represents a file asset variable defined in a creative template.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class TemplateInstantiatedCreativeError : ApiError {
- private TemplateInstantiatedCreativeErrorReason reasonField;
-
- private bool reasonFieldSpecified;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class AssetCreativeTemplateVariable : CreativeTemplateVariable {
+ private AssetCreativeTemplateVariableMimeType[] mimeTypesField;
- /// The error reason represented by an enum.
+ /// A set of supported mime types. This set can be empty or null if there's no
+ /// constraint, meaning files of any mime types are allowed.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public TemplateInstantiatedCreativeErrorReason reason {
- get {
- return this.reasonField;
- }
- set {
- this.reasonField = value;
- this.reasonSpecified = true;
- }
- }
-
- /// true, if a value is specified for ,
- /// false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool reasonSpecified {
+ [System.Xml.Serialization.XmlElementAttribute("mimeTypes", Order = 0)]
+ public AssetCreativeTemplateVariableMimeType[] mimeTypes {
get {
- return this.reasonFieldSpecified;
+ return this.mimeTypesField;
}
set {
- this.reasonFieldSpecified = value;
+ this.mimeTypesField = value;
}
}
}
- /// The reason for the error
+ /// Different mime type that the asset variable supports.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "TemplateInstantiatedCreativeError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum TemplateInstantiatedCreativeErrorReason {
- /// A new creative cannot be created from an inactive creative template.
- ///
- INACTIVE_CREATIVE_TEMPLATE = 0,
- /// An uploaded file type is not allowed
- ///
- FILE_TYPE_NOT_ALLOWED = 1,
- /// The value returned if the actual value is not exposed by the requested API
- /// version.
- ///
- UNKNOWN = 2,
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "AssetCreativeTemplateVariable.MimeType", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum AssetCreativeTemplateVariableMimeType {
+ JPG = 0,
+ PNG = 1,
+ GIF = 2,
+ SWF = 3,
}
- /// Error for converting flash to swiffy asset.
+ /// A template upon which a creative can be created.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class SwiffyConversionError : ApiError {
- private SwiffyConversionErrorReason reasonField;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class CreativeTemplate {
+ private long idField;
- private bool reasonFieldSpecified;
+ private bool idFieldSpecified;
+
+ private string nameField;
+
+ private string descriptionField;
+
+ private CreativeTemplateVariable[] variablesField;
+
+ private string snippetField;
+
+ private CreativeTemplateStatus statusField;
+
+ private bool statusFieldSpecified;
+
+ private CreativeTemplateType typeField;
+
+ private bool typeFieldSpecified;
+
+ private bool isInterstitialField;
+
+ private bool isInterstitialFieldSpecified;
+
+ private bool isNativeEligibleField;
+
+ private bool isNativeEligibleFieldSpecified;
+ private bool isSafeFrameCompatibleField;
+
+ private bool isSafeFrameCompatibleFieldSpecified;
+
+ /// Uniquely identifies the CreativeTemplate. This attribute is
+ /// read-only and is assigned by Google when a creative template is created.
+ ///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public SwiffyConversionErrorReason reason {
+ public long id {
get {
- return this.reasonField;
+ return this.idField;
}
set {
- this.reasonField = value;
- this.reasonSpecified = true;
+ this.idField = value;
+ this.idSpecified = true;
}
}
- /// true, if a value is specified for ,
+ /// true, if a value is specified for ,
/// false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool reasonSpecified {
+ public bool idSpecified {
get {
- return this.reasonFieldSpecified;
+ return this.idFieldSpecified;
}
set {
- this.reasonFieldSpecified = value;
+ this.idFieldSpecified = value;
}
}
- }
-
- /// Error reason for SwiffyConversionError.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "SwiffyConversionError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum SwiffyConversionErrorReason {
- /// Indicates the Swiffy service has an internal error that prevents the flash asset
- /// being converted.
- ///
- SERVER_ERROR = 0,
- /// Indicates the uploaded flash asset is not a valid flash file.
- ///
- INVALID_FLASH_FILE = 1,
- /// Indicates the Swiffy service currently does not support converting this flash
- /// asset.
- ///
- UNSUPPORTED_FLASH = 2,
- /// The value returned if the actual value is not exposed by the requested API
- /// version.
+ /// The name of the creative template. This attribute is required and has a maximum
+ /// length of 255 characters.
///
- UNKNOWN = 3,
- }
+ [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
+ public string name {
+ get {
+ return this.nameField;
+ }
+ set {
+ this.nameField = value;
+ }
+ }
+ /// The description of the creative template. This attribute is optional.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 2)]
+ public string description {
+ get {
+ return this.descriptionField;
+ }
+ set {
+ this.descriptionField = value;
+ }
+ }
- /// Errors associated with set-top box creatives.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class SetTopBoxCreativeError : ApiError {
- private SetTopBoxCreativeErrorReason reasonField;
+ /// The list of creative template variables. This attribute is required.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute("variables", Order = 3)]
+ public CreativeTemplateVariable[] variables {
+ get {
+ return this.variablesField;
+ }
+ set {
+ this.variablesField = value;
+ }
+ }
- private bool reasonFieldSpecified;
+ /// The snippet of the creative template, with placeholders for the associated
+ /// variables. This attribute is required.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 4)]
+ public string snippet {
+ get {
+ return this.snippetField;
+ }
+ set {
+ this.snippetField = value;
+ }
+ }
- /// The error reason represented by an enum.
+ /// The status of the CreativeTemplate. This attribute is read-only and
+ /// is assigned by Google.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public SetTopBoxCreativeErrorReason reason {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 5)]
+ public CreativeTemplateStatus status {
get {
- return this.reasonField;
+ return this.statusField;
}
set {
- this.reasonField = value;
- this.reasonSpecified = true;
+ this.statusField = value;
+ this.statusSpecified = true;
}
}
- /// true, if a value is specified for ,
+ /// true, if a value is specified for ,
/// false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool reasonSpecified {
+ public bool statusSpecified {
get {
- return this.reasonFieldSpecified;
+ return this.statusFieldSpecified;
}
set {
- this.reasonFieldSpecified = value;
+ this.statusFieldSpecified = value;
}
}
- }
-
-
- /// Error reasons for set-top box creatives.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "SetTopBoxCreativeError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum SetTopBoxCreativeErrorReason {
- /// Set-top box creative external asset IDs are immutable after creation.
- ///
- EXTERNAL_ASSET_ID_IMMUTABLE = 1,
- /// Set-top box creatives require an external asset ID.
- ///
- EXTERNAL_ASSET_ID_REQUIRED = 2,
- /// Set-top box creative provider IDs are immutable after creation.
- ///
- PROVIDER_ID_IMMUTABLE = 3,
- /// An invalid tracking URL event type was set on the set-top box creative.
- ///
- INVALID_THIRD_PARTY_TRACKING_URL_EVENT_TYPE = 5,
- /// The value returned if the actual value is not exposed by the requested API
- /// version.
- ///
- UNKNOWN = 4,
- }
-
- /// Lists all errors associated with Studio creatives.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class RichMediaStudioCreativeError : ApiError {
- private RichMediaStudioCreativeErrorReason reasonField;
-
- private bool reasonFieldSpecified;
-
- /// The error reason represented by an enum.
+ /// The type of the CreativeTemplate. Publisher can only create
+ /// user-defined template
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public RichMediaStudioCreativeErrorReason reason {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 6)]
+ public CreativeTemplateType type {
get {
- return this.reasonField;
+ return this.typeField;
}
set {
- this.reasonField = value;
- this.reasonSpecified = true;
+ this.typeField = value;
+ this.typeSpecified = true;
}
}
- /// true, if a value is specified for ,
+ /// true, if a value is specified for ,
/// false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool reasonSpecified {
+ public bool typeSpecified {
get {
- return this.reasonFieldSpecified;
+ return this.typeFieldSpecified;
}
set {
- this.reasonFieldSpecified = value;
+ this.typeFieldSpecified = value;
}
}
- }
-
- /// The reasons for the target error.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "RichMediaStudioCreativeError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum RichMediaStudioCreativeErrorReason {
- /// Only Studio can create a RichMediaStudioCreative.
- ///
- CREATION_NOT_ALLOWED = 0,
- /// Unknown error
- ///
- UKNOWN_ERROR = 1,
- /// Invalid request indicating missing/invalid request parameters.
- ///
- INVALID_CODE_GENERATION_REQUEST = 2,
- /// Invalid creative object.
- ///
- INVALID_CREATIVE_OBJECT = 3,
- /// Unable to connect to Rich Media Studio to save the creative. Please try again
- /// later.
- ///
- STUDIO_CONNECTION_ERROR = 4,
- /// The push down duration is not allowed
- ///
- PUSHDOWN_DURATION_NOT_ALLOWED = 5,
- /// The position is invalid
- ///
- INVALID_POSITION = 6,
- /// The Z-index is invalid
- ///
- INVALID_Z_INDEX = 7,
- /// The push-down duration is invalid
- ///
- INVALID_PUSHDOWN_DURATION = 8,
- /// The value returned if the actual value is not exposed by the requested API
- /// version.
+ /// true if this creative template produces interstitial creatives.
///
- UNKNOWN = 9,
- }
+ [System.Xml.Serialization.XmlElementAttribute(Order = 7)]
+ public bool isInterstitial {
+ get {
+ return this.isInterstitialField;
+ }
+ set {
+ this.isInterstitialField = value;
+ this.isInterstitialSpecified = true;
+ }
+ }
+ /// true, if a value is specified for , false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool isInterstitialSpecified {
+ get {
+ return this.isInterstitialFieldSpecified;
+ }
+ set {
+ this.isInterstitialFieldSpecified = value;
+ }
+ }
- /// A list of all errors to be used for validating Size.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class RequiredSizeError : ApiError {
- private RequiredSizeErrorReason reasonField;
+ /// true if this creative template produces native-eligible creatives.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 8)]
+ public bool isNativeEligible {
+ get {
+ return this.isNativeEligibleField;
+ }
+ set {
+ this.isNativeEligibleField = value;
+ this.isNativeEligibleSpecified = true;
+ }
+ }
- private bool reasonFieldSpecified;
+ /// true, if a value is specified for , false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool isNativeEligibleSpecified {
+ get {
+ return this.isNativeEligibleFieldSpecified;
+ }
+ set {
+ this.isNativeEligibleFieldSpecified = value;
+ }
+ }
- [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public RequiredSizeErrorReason reason {
+ /// Whether the Creative produced is compatible for SafeFrame
+ /// rendering.
This attribute is optional and defaults to true.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 9)]
+ public bool isSafeFrameCompatible {
get {
- return this.reasonField;
+ return this.isSafeFrameCompatibleField;
}
set {
- this.reasonField = value;
- this.reasonSpecified = true;
+ this.isSafeFrameCompatibleField = value;
+ this.isSafeFrameCompatibleSpecified = true;
}
}
- /// true, if a value is specified for ,
- /// false otherwise.
+ /// true, if a value is specified for , false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool reasonSpecified {
+ public bool isSafeFrameCompatibleSpecified {
get {
- return this.reasonFieldSpecified;
+ return this.isSafeFrameCompatibleFieldSpecified;
}
set {
- this.reasonFieldSpecified = value;
+ this.isSafeFrameCompatibleFieldSpecified = value;
}
}
}
+ /// Describes status of the creative template
+ ///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "RequiredSizeError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum RequiredSizeErrorReason {
- /// Creative#size or LineItem#creativeSizes is missing.
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum CreativeTemplateStatus {
+ /// The CreativeTemplate is active
///
- REQUIRED = 0,
- /// LineItemCreativeAssociation#sizes
- /// must be a subset of LineItem#creativeSizes.
+ ACTIVE = 0,
+ /// The CreativeTemplate is inactive. Users cannot
+ /// create new creatives from this template, but existing ones can be edited and
+ /// continue to serve
///
- NOT_ALLOWED = 1,
- /// The value returned if the actual value is not exposed by the requested API
- /// version.
+ INACTIVE = 1,
+ /// The CreativeTemplate is deleted. Creatives
+ /// created from this CreativeTemplate can no longer
+ /// serve.
///
- UNKNOWN = 2,
+ DELETED = 2,
+ }
+
+
+ /// Describes type of the creative template.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum CreativeTemplateType {
+ /// Creative templates that Google defines for users to use.
+ ///
+ SYSTEM_DEFINED = 0,
+ /// Arbitrary creative templates that users can define as they see fit. Such
+ /// templates are bound to a specific network and can only be used with creatives
+ /// being created under the network.
+ ///
+ USER_DEFINED = 1,
}
- /// Errors associated with violation of a NOT NULL check.
+ /// Captures a page of CreativeTemplate objects.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class NullError : ApiError {
- private NullErrorReason reasonField;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class CreativeTemplatePage {
+ private int totalResultSetSizeField;
- private bool reasonFieldSpecified;
+ private bool totalResultSetSizeFieldSpecified;
- /// The error reason represented by an enum.
+ private int startIndexField;
+
+ private bool startIndexFieldSpecified;
+
+ private CreativeTemplate[] resultsField;
+
+ /// The size of the total result set to which this page belongs.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public NullErrorReason reason {
+ public int totalResultSetSize {
get {
- return this.reasonField;
+ return this.totalResultSetSizeField;
}
set {
- this.reasonField = value;
- this.reasonSpecified = true;
+ this.totalResultSetSizeField = value;
+ this.totalResultSetSizeSpecified = true;
}
}
- /// true, if a value is specified for ,
- /// false otherwise.
+ /// true, if a value is specified for , false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool reasonSpecified {
+ public bool totalResultSetSizeSpecified {
get {
- return this.reasonFieldSpecified;
+ return this.totalResultSetSizeFieldSpecified;
}
set {
- this.reasonFieldSpecified = value;
+ this.totalResultSetSizeFieldSpecified = value;
}
}
- }
-
-
- /// The reasons for the validation error.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "NullError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum NullErrorReason {
- /// Specified list/container must not contain any null elements
- ///
- NULL_CONTENT = 0,
- }
-
-
- /// Lists all errors associated with line item-to-creative association dates.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class LineItemCreativeAssociationError : ApiError {
- private LineItemCreativeAssociationErrorReason reasonField;
- private bool reasonFieldSpecified;
-
- /// The error reason represented by an enum.
+ /// The absolute index in the total result set on which this page begins.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public LineItemCreativeAssociationErrorReason reason {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
+ public int startIndex {
get {
- return this.reasonField;
+ return this.startIndexField;
}
set {
- this.reasonField = value;
- this.reasonSpecified = true;
+ this.startIndexField = value;
+ this.startIndexSpecified = true;
}
}
- /// true, if a value is specified for ,
- /// false otherwise.
+ /// true, if a value is specified for , false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool reasonSpecified {
+ public bool startIndexSpecified {
get {
- return this.reasonFieldSpecified;
+ return this.startIndexFieldSpecified;
}
set {
- this.reasonFieldSpecified = value;
+ this.startIndexFieldSpecified = value;
}
}
- }
-
- /// The reasons for the target error.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "LineItemCreativeAssociationError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum LineItemCreativeAssociationErrorReason {
- /// Cannot associate a creative to the wrong advertiser
- ///
- CREATIVE_IN_WRONG_ADVERTISERS_LIBRARY = 0,
- /// The creative type being associated is a invalid for the line item type.
- ///
- INVALID_LINEITEM_CREATIVE_PAIRING = 1,
- /// Association start date cannot be before line item start date
- ///
- STARTDATE_BEFORE_LINEITEM_STARTDATE = 2,
- /// Association start date cannot be same as or after line item end date
- ///
- STARTDATE_NOT_BEFORE_LINEITEM_ENDDATE = 3,
- /// Association end date cannot be after line item end date
- ///
- ENDDATE_AFTER_LINEITEM_ENDDATE = 4,
- /// Association end date cannot be same as or before line item start date
- ///
- ENDDATE_NOT_AFTER_LINEITEM_STARTDATE = 5,
- /// Association end date cannot be same as or before its start date
- ///
- ENDDATE_NOT_AFTER_STARTDATE = 6,
- /// Association end date cannot be in the past.
- ///
- ENDDATE_IN_THE_PAST = 7,
- /// Cannot copy an association to the same line item without creating new creative
- ///
- CANNOT_COPY_WITHIN_SAME_LINE_ITEM = 8,
- /// Programmatic only supports the "Video" redirect type.
- ///
- UNSUPPORTED_CREAIVE_VAST_REDIRECT_TYPE = 17,
- /// Programmatic does not support YouTube hosted creatives.
- ///
- UNSUPPORTED_YOUTUBE_HOSTED_CREATIVE = 18,
- /// Programmatic creatives can only be assigned to one line item.
- ///
- PROGRAMMATIC_CREATIVES_CAN_ONLY_BE_ASSIGNED_TO_ONE_LINE_ITEM = 9,
- /// Cannot create programmatic creatives.
- ///
- CANNOT_CREATE_PROGRAMMATIC_CREATIVES = 10,
- /// Cannot update programmatic creatives.
- ///
- CANNOT_UPDATE_PROGRAMMATIC_CREATIVES = 11,
- /// Cannot associate a creative with a line item if only one of them is set-top box
- /// enabled.
- ///
- CREATIVE_AND_LINE_ITEM_MUST_BOTH_BE_SET_TOP_BOX_ENABLED = 12,
- /// Cannot delete associations between set-top box enabled line items and set-top
- /// box enabled creatives.
- ///
- CANNOT_DELETE_SET_TOP_BOX_ENABLED_ASSOCIATIONS = 13,
- /// Creative rotation weights must be integers.
- ///
- SET_TOP_BOX_CREATIVE_ROTATION_WEIGHT_MUST_BE_INTEGER = 14,
- /// Creative rotation weights are only valid when creative rotation type is set to
- /// CreativeRotationType#MANUAL.
- ///
- INVALID_CREATIVE_ROTATION_TYPE_FOR_MANUAL_WEIGHT = 15,
- /// The code snippet of a creative must contain a click macro (%%CLICK_URL_ESC%% or
- /// %%CLICK_URL_UNESC%%).
- ///
- CLICK_MACROS_REQUIRED = 19,
- /// The code snippet of a creative must not contain a view macro (%%VIEW_URL_ESC%%
- /// or %%VIEW_URL_UNESC%%).
- ///
- VIEW_MACROS_NOT_ALLOWED = 20,
- /// The value returned if the actual value is not exposed by the requested API
- /// version.
+ /// The collection of creative templates contained within this page.
///
- UNKNOWN = 16,
+ [System.Xml.Serialization.XmlElementAttribute("results", Order = 2)]
+ public CreativeTemplate[] results {
+ get {
+ return this.resultsField;
+ }
+ set {
+ this.resultsField = value;
+ }
+ }
}
- /// Errors specific to creating label entity associations.
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
+ [System.ServiceModel.ServiceContractAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908", ConfigurationName = "Google.Api.Ads.AdManager.v201908.CreativeTemplateServiceInterface")]
+ public interface CreativeTemplateServiceInterface
+ {
+ [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
+ [System.ServiceModel.FaultContractAttribute(typeof(Google.Api.Ads.AdManager.v201908.ApiException), Action = "", Name = "ApiExceptionFault")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults = true)]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApplicationException))]
+ [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
+ Google.Api.Ads.AdManager.v201908.CreativeTemplatePage getCreativeTemplatesByStatement(Google.Api.Ads.AdManager.v201908.Statement filterStatement);
+
+ [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
+ [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
+ System.Threading.Tasks.Task getCreativeTemplatesByStatementAsync(Google.Api.Ads.AdManager.v201908.Statement filterStatement);
+ }
+
+
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
+ public interface CreativeTemplateServiceInterfaceChannel : Google.Api.Ads.AdManager.v201908.CreativeTemplateServiceInterface, System.ServiceModel.IClientChannel
+ {
+ }
+
+
+ /// Provides methods for retrieving CreativeTemplate
+ /// objects.
+ ///
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
+ public partial class CreativeTemplateService : AdManagerSoapClient, ICreativeTemplateService {
+ /// Creates a new instance of the
+ /// class.
+ public CreativeTemplateService() {
+ }
+
+ /// Creates a new instance of the
+ /// class.
+ public CreativeTemplateService(string endpointConfigurationName)
+ : base(endpointConfigurationName) {
+ }
+
+ /// Creates a new instance of the
+ /// class.
+ public CreativeTemplateService(string endpointConfigurationName, string remoteAddress)
+ : base(endpointConfigurationName, remoteAddress) {
+ }
+
+ /// Creates a new instance of the
+ /// class.
+ public CreativeTemplateService(string endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress)
+ : base(endpointConfigurationName, remoteAddress) {
+ }
+
+ /// Creates a new instance of the
+ /// class.
+ public CreativeTemplateService(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress)
+ : base(binding, remoteAddress) {
+ }
+
+ /// Gets a CreativeTemplatePage of CreativeTemplate objects that satisfy the given Statement#query. The following fields are supported
+ /// for filtering:
+ /// a Publisher Query Language statement used to
+ /// filter a set of creative templates.
+ /// the creative templates that match the given filter
+ public virtual Google.Api.Ads.AdManager.v201908.CreativeTemplatePage getCreativeTemplatesByStatement(Google.Api.Ads.AdManager.v201908.Statement filterStatement) {
+ return base.Channel.getCreativeTemplatesByStatement(filterStatement);
+ }
+
+ public virtual System.Threading.Tasks.Task getCreativeTemplatesByStatementAsync(Google.Api.Ads.AdManager.v201908.Statement filterStatement) {
+ return base.Channel.getCreativeTemplatesByStatementAsync(filterStatement);
+ }
+ }
+ namespace Wrappers.CreativeWrapperService
+ {
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
+ [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
+ [System.ServiceModel.MessageContractAttribute(WrapperName = "createCreativeWrappers", WrapperNamespace = "https://www.google.com/apis/ads/publisher/v201908", IsWrapped = true)]
+ public partial class createCreativeWrappersRequest {
+ [System.ServiceModel.MessageBodyMemberAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908", Order = 0)]
+ [System.Xml.Serialization.XmlElementAttribute("creativeWrappers")]
+ public Google.Api.Ads.AdManager.v201908.CreativeWrapper[] creativeWrappers;
+
+ /// Creates a new instance of the class.
+ public createCreativeWrappersRequest() {
+ }
+
+ /// Creates a new instance of the class.
+ public createCreativeWrappersRequest(Google.Api.Ads.AdManager.v201908.CreativeWrapper[] creativeWrappers) {
+ this.creativeWrappers = creativeWrappers;
+ }
+ }
+
+
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
+ [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
+ [System.ServiceModel.MessageContractAttribute(WrapperName = "createCreativeWrappersResponse", WrapperNamespace = "https://www.google.com/apis/ads/publisher/v201908", IsWrapped = true)]
+ public partial class createCreativeWrappersResponse {
+ [System.ServiceModel.MessageBodyMemberAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908", Order = 0)]
+ [System.Xml.Serialization.XmlElementAttribute("rval")]
+ public Google.Api.Ads.AdManager.v201908.CreativeWrapper[] rval;
+
+ /// Creates a new instance of the class.
+ public createCreativeWrappersResponse() {
+ }
+
+ /// Creates a new instance of the class.
+ public createCreativeWrappersResponse(Google.Api.Ads.AdManager.v201908.CreativeWrapper[] rval) {
+ this.rval = rval;
+ }
+ }
+
+
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
+ [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
+ [System.ServiceModel.MessageContractAttribute(WrapperName = "updateCreativeWrappers", WrapperNamespace = "https://www.google.com/apis/ads/publisher/v201908", IsWrapped = true)]
+ public partial class updateCreativeWrappersRequest {
+ [System.ServiceModel.MessageBodyMemberAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908", Order = 0)]
+ [System.Xml.Serialization.XmlElementAttribute("creativeWrappers")]
+ public Google.Api.Ads.AdManager.v201908.CreativeWrapper[] creativeWrappers;
+
+ /// Creates a new instance of the class.
+ public updateCreativeWrappersRequest() {
+ }
+
+ /// Creates a new instance of the class.
+ public updateCreativeWrappersRequest(Google.Api.Ads.AdManager.v201908.CreativeWrapper[] creativeWrappers) {
+ this.creativeWrappers = creativeWrappers;
+ }
+ }
+
+
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
+ [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
+ [System.ServiceModel.MessageContractAttribute(WrapperName = "updateCreativeWrappersResponse", WrapperNamespace = "https://www.google.com/apis/ads/publisher/v201908", IsWrapped = true)]
+ public partial class updateCreativeWrappersResponse {
+ [System.ServiceModel.MessageBodyMemberAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908", Order = 0)]
+ [System.Xml.Serialization.XmlElementAttribute("rval")]
+ public Google.Api.Ads.AdManager.v201908.CreativeWrapper[] rval;
+
+ /// Creates a new instance of the class.
+ public updateCreativeWrappersResponse() {
+ }
+
+ /// Creates a new instance of the class.
+ public updateCreativeWrappersResponse(Google.Api.Ads.AdManager.v201908.CreativeWrapper[] rval) {
+ this.rval = rval;
+ }
+ }
+ }
+ /// A CreativeWrapper allows the wrapping of HTML snippets to be served
+ /// along with Creative objects.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class LabelEntityAssociationError : ApiError {
- private LabelEntityAssociationErrorReason reasonField;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class CreativeWrapper {
+ private long idField;
- private bool reasonFieldSpecified;
+ private bool idFieldSpecified;
- /// The error reason represented by an enum.
+ private long labelIdField;
+
+ private bool labelIdFieldSpecified;
+
+ private string htmlHeaderField;
+
+ private string htmlFooterField;
+
+ private string ampHeadField;
+
+ private string ampBodyField;
+
+ private CreativeWrapperOrdering orderingField;
+
+ private bool orderingFieldSpecified;
+
+ private CreativeWrapperStatus statusField;
+
+ private bool statusFieldSpecified;
+
+ /// The unique ID of the CreativeWrapper. This value is readonly and is
+ /// assigned by Google.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public LabelEntityAssociationErrorReason reason {
+ public long id {
get {
- return this.reasonField;
+ return this.idField;
}
set {
- this.reasonField = value;
- this.reasonSpecified = true;
+ this.idField = value;
+ this.idSpecified = true;
}
}
- /// true, if a value is specified for ,
+ /// true, if a value is specified for ,
/// false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool reasonSpecified {
+ public bool idSpecified {
get {
- return this.reasonFieldSpecified;
+ return this.idFieldSpecified;
}
set {
- this.reasonFieldSpecified = value;
+ this.idFieldSpecified = value;
+ }
+ }
+
+ /// The ID of the Label which will be used to label ad units.
+ /// The labelId on a creative wrapper cannot be changed once it is
+ /// created.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
+ public long labelId {
+ get {
+ return this.labelIdField;
+ }
+ set {
+ this.labelIdField = value;
+ this.labelIdSpecified = true;
+ }
+ }
+
+ /// true, if a value is specified for ,
+ /// false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool labelIdSpecified {
+ get {
+ return this.labelIdFieldSpecified;
+ }
+ set {
+ this.labelIdFieldSpecified = value;
+ }
+ }
+
+ /// The header HTML snippet that this creative wrapper delivers.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 2)]
+ public string htmlHeader {
+ get {
+ return this.htmlHeaderField;
+ }
+ set {
+ this.htmlHeaderField = value;
+ }
+ }
+
+ /// The footer HTML snippet that this creative wrapper delivers.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 3)]
+ public string htmlFooter {
+ get {
+ return this.htmlFooterField;
+ }
+ set {
+ this.htmlFooterField = value;
+ }
+ }
+
+ /// The header AMP snippet that this creative wrapper delivers.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 4)]
+ public string ampHead {
+ get {
+ return this.ampHeadField;
+ }
+ set {
+ this.ampHeadField = value;
+ }
+ }
+
+ /// The footer AMP snippet that this creative wrapper delivers.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 5)]
+ public string ampBody {
+ get {
+ return this.ampBodyField;
+ }
+ set {
+ this.ampBodyField = value;
+ }
+ }
+
+ /// If there are multiple wrappers for a creative, then defines the
+ /// order in which the HTML snippets are rendered.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 6)]
+ public CreativeWrapperOrdering ordering {
+ get {
+ return this.orderingField;
+ }
+ set {
+ this.orderingField = value;
+ this.orderingSpecified = true;
+ }
+ }
+
+ /// true, if a value is specified for , false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool orderingSpecified {
+ get {
+ return this.orderingFieldSpecified;
+ }
+ set {
+ this.orderingFieldSpecified = value;
+ }
+ }
+
+ /// The status of the CreativeWrapper. This attribute is readonly.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 7)]
+ public CreativeWrapperStatus status {
+ get {
+ return this.statusField;
+ }
+ set {
+ this.statusField = value;
+ this.statusSpecified = true;
+ }
+ }
+
+ /// true, if a value is specified for ,
+ /// false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool statusSpecified {
+ get {
+ return this.statusFieldSpecified;
+ }
+ set {
+ this.statusFieldSpecified = value;
}
}
}
- /// The reasons for the target error.
+ /// Defines the order in which the header and footer HTML snippets will be wrapped
+ /// around the served creative. INNER snippets will be wrapped first,
+ /// followed by NO_PREFERENCE and finally OUTER. If the
+ /// creative needs to be wrapped with more than one snippet with the same CreativeWrapperOrdering, then the order is
+ /// unspecified.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "LabelEntityAssociationError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum LabelEntityAssociationErrorReason {
- /// The label has already been attached to the entity.
- ///
- DUPLICATE_ASSOCIATION = 1,
- /// A label is being applied to an entity that does not support that entity type.
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum CreativeWrapperOrdering {
+ /// Wrapping occurs after #INNER but before #OUTER
///
- INVALID_ASSOCIATION = 2,
- /// The same label is being applied and negated to the same entity.
+ NO_PREFERENCE = 0,
+ /// Wrapping occurs as early as possible.
///
- DUPLICATE_ASSOCIATION_WITH_NEGATION = 3,
- /// The value returned if the actual value is not exposed by the requested API
- /// version.
+ INNER = 1,
+ /// Wrapping occurs after both #NO_PREFERENCE and #INNER
///
- UNKNOWN = 4,
+ OUTER = 2,
}
- /// Lists all errors associated with phone numbers.
+ /// Indicates whether the CreativeWrapper is active. HTML snippets are
+ /// served to creatives only when the creative wrapper is active.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum CreativeWrapperStatus {
+ ACTIVE = 0,
+ INACTIVE = 1,
+ }
+
+
+ /// Errors specific to labels.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class InvalidPhoneNumberError : ApiError {
- private InvalidPhoneNumberErrorReason reasonField;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class LabelError : ApiError {
+ private LabelErrorReason reasonField;
private bool reasonFieldSpecified;
+ /// The error reason represented by an enum.
+ ///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public InvalidPhoneNumberErrorReason reason {
+ public LabelErrorReason reason {
get {
return this.reasonField;
}
@@ -11715,16 +12106,18 @@ public bool reasonSpecified {
}
+ /// The reasons for the target error.
+ ///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "InvalidPhoneNumberError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum InvalidPhoneNumberErrorReason {
- /// The phone number is invalid.
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "LabelError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum LabelErrorReason {
+ /// A user created label cannot begin with the Google internal system label prefix.
///
- INVALID_FORMAT = 0,
- /// The phone number is too short.
+ INVALID_PREFIX = 0,
+ /// Label#name contains unsupported or reserved characters.
///
- TOO_SHORT = 1,
+ NAME_INVALID_CHARS = 1,
/// The value returned if the actual value is not exposed by the requested API
/// version.
///
@@ -11732,22 +12125,22 @@ public enum InvalidPhoneNumberErrorReason {
}
- /// Lists all errors associated with images.
+ /// Errors specific to creative wrappers.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class ImageError : ApiError {
- private ImageErrorReason reasonField;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class CreativeWrapperError : ApiError {
+ private CreativeWrapperErrorReason reasonField;
private bool reasonFieldSpecified;
/// The error reason represented by an enum.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public ImageErrorReason reason {
+ public CreativeWrapperErrorReason reason {
get {
return this.reasonField;
}
@@ -11772,705 +12165,816 @@ public bool reasonSpecified {
}
- /// The reasons for the target error.
+ /// The reasons for the creative wrapper error.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "ImageError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum ImageErrorReason {
- /// The file's format is invalid.
- ///
- INVALID_IMAGE = 0,
- /// Size#width and Size#height
- /// cannot be negative.
- ///
- INVALID_SIZE = 1,
- /// The actual image size does not match the expected image size.
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "CreativeWrapperError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum CreativeWrapperErrorReason {
+ /// The label is already associated with a CreativeWrapper.
///
- UNEXPECTED_SIZE = 2,
- /// The size of the asset is larger than that of the overlay creative.
+ LABEL_ALREADY_ASSOCIATED_WITH_CREATIVE_WRAPPER = 0,
+ /// The label type of a creative wrapper must be LabelType#CREATIVE_WRAPPER.
///
- OVERLAY_SIZE_TOO_LARGE = 3,
- /// Animated images are not allowed.
+ INVALID_LABEL_TYPE = 1,
+ /// A macro used inside the snippet is not recognized.
///
- ANIMATED_NOT_ALLOWED = 4,
- /// Animation length exceeded the allowed policy limit.
+ UNRECOGNIZED_MACRO = 2,
+ /// When creating a new creative wrapper, either header or footer should exist.
///
- ANIMATION_TOO_LONG = 5,
- /// Images in CMYK color formats are not allowed.
+ NEITHER_HEADER_NOR_FOOTER_SPECIFIED = 3,
+ /// The network has not been enabled for creating labels of type LabelType#CREATIVE_WRAPPER.
///
- CMYK_JPEG_NOT_ALLOWED = 6,
- /// Flash files are not allowed.
+ CANNOT_USE_CREATIVE_WRAPPER_TYPE = 4,
+ /// Cannot update CreativeWrapper#labelId.
///
- FLASH_NOT_ALLOWED = 7,
- /// If FlashCreative#clickTagRequired
- /// is true, then the flash file is required to have a click tag
- /// embedded in it.
- ///
- FLASH_WITHOUT_CLICKTAG = 8,
- /// Animated visual effect is not allowed.
- ///
- ANIMATED_VISUAL_EFFECT = 9,
- /// An error was encountered in the flash file.
- ///
- FLASH_ERROR = 10,
- /// Incorrect image layout.
- ///
- LAYOUT_PROBLEM = 11,
- /// Flash files with network objects are not allowed.
- ///
- FLASH_HAS_NETWORK_OBJECTS = 12,
- /// Flash files with network methods are not allowed.
- ///
- FLASH_HAS_NETWORK_METHODS = 13,
- /// Flash files with hard-coded click thru URLs are not allowed.
- ///
- FLASH_HAS_URL = 14,
- /// Flash files with mouse tracking are not allowed.
- ///
- FLASH_HAS_MOUSE_TRACKING = 15,
- /// Flash files that generate or use random numbers are not allowed.
- ///
- FLASH_HAS_RANDOM_NUM = 16,
- /// Flash files with self targets are not allowed.
- ///
- FLASH_SELF_TARGETS = 17,
- /// Flash file contains a bad geturl target.
- ///
- FLASH_BAD_GETURL_TARGET = 18,
- /// Flash or ActionScript version in the submitted file is not supported.
- ///
- FLASH_VERSION_NOT_SUPPORTED = 19,
- /// The uploaded file is too large.
- ///
- FILE_TOO_LARGE = 20,
- /// A system error occurred, please try again.
- ///
- SYSTEM_ERROR = 21,
- /// The image density for a primary asset was not one of the expected image
- /// densities.
- ///
- UNEXPECTED_PRIMARY_ASSET_DENSITY = 22,
- /// Two or more assets have the same image density.
+ CANNOT_UPDATE_LABEL_ID = 5,
+ /// Cannot apply LabelType#CREATIVE_WRAPPER
+ /// labels to an ad unit if it has no descendants with AdUnit#adUnitSizes of as EnvironmentType#BROWSER.
///
- DUPLICATE_ASSET_DENSITY = 23,
- /// The creative does not contain a primary asset. (For high-density creatives, the
- /// primary asset must be a standard image file with 1x density.)
+ CANNOT_APPLY_TO_AD_UNIT_WITH_VIDEO_SIZES = 6,
+ /// Cannot apply LabelType#CREATIVE_WRAPPER
+ /// labels to an ad unit if AdUnit#targetPlatform is of type
///
- MISSING_DEFAULT_ASSET = 24,
+ CANNOT_APPLY_TO_MOBILE_AD_UNIT = 7,
/// The value returned if the actual value is not exposed by the requested API
/// version.
///
- UNKNOWN = 25,
+ UNKNOWN = 8,
}
- /// Lists all errors associated with html5 file processing.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class HtmlBundleProcessorError : ApiError {
- private HtmlBundleProcessorErrorReason reasonField;
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
+ [System.ServiceModel.ServiceContractAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908", ConfigurationName = "Google.Api.Ads.AdManager.v201908.CreativeWrapperServiceInterface")]
+ public interface CreativeWrapperServiceInterface
+ {
+ // CODEGEN: Parameter 'rval' requires additional schema information that cannot be captured using the parameter mode. The specific attribute is 'System.Xml.Serialization.XmlElementAttribute'.
+ [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
+ [System.ServiceModel.FaultContractAttribute(typeof(Google.Api.Ads.AdManager.v201908.ApiException), Action = "", Name = "ApiExceptionFault")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults = true)]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApplicationException))]
+ [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
+ Wrappers.CreativeWrapperService.createCreativeWrappersResponse createCreativeWrappers(Wrappers.CreativeWrapperService.createCreativeWrappersRequest request);
- private bool reasonFieldSpecified;
+ [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
+ System.Threading.Tasks.Task createCreativeWrappersAsync(Wrappers.CreativeWrapperService.createCreativeWrappersRequest request);
- /// The error reason represented by an enum.
- ///
- [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public HtmlBundleProcessorErrorReason reason {
- get {
- return this.reasonField;
- }
- set {
- this.reasonField = value;
- this.reasonSpecified = true;
- }
- }
+ [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
+ [System.ServiceModel.FaultContractAttribute(typeof(Google.Api.Ads.AdManager.v201908.ApiException), Action = "", Name = "ApiExceptionFault")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults = true)]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApplicationException))]
+ [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
+ Google.Api.Ads.AdManager.v201908.CreativeWrapperPage getCreativeWrappersByStatement(Google.Api.Ads.AdManager.v201908.Statement filterStatement);
- /// true, if a value is specified for ,
- /// false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool reasonSpecified {
- get {
- return this.reasonFieldSpecified;
- }
- set {
- this.reasonFieldSpecified = value;
- }
- }
- }
+ [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
+ [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
+ System.Threading.Tasks.Task getCreativeWrappersByStatementAsync(Google.Api.Ads.AdManager.v201908.Statement filterStatement);
+ [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
+ [System.ServiceModel.FaultContractAttribute(typeof(Google.Api.Ads.AdManager.v201908.ApiException), Action = "", Name = "ApiExceptionFault")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults = true)]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApplicationException))]
+ [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
+ Google.Api.Ads.AdManager.v201908.UpdateResult performCreativeWrapperAction(Google.Api.Ads.AdManager.v201908.CreativeWrapperAction creativeWrapperAction, Google.Api.Ads.AdManager.v201908.Statement filterStatement);
- /// Error reasons that may arise during HTML5 bundle processing.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "HtmlBundleProcessorError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum HtmlBundleProcessorErrorReason {
- /// Cannot extract files from HTML5 bundle.
- ///
- CANNOT_EXTRACT_FILES_FROM_BUNDLE = 0,
- /// Bundle cannot have hard-coded click tag url(s).
- ///
- CLICK_TAG_HARD_CODED = 1,
- /// Bundles created using GWD (Google Web Designer) cannot have click tags.
- /// GWD-published bundles should use exit events instead of defining var
- /// clickTAG.
- ///
- CLICK_TAG_IN_GWD_UNUPPORTED = 2,
- /// Click tag detected outside of primary HTML file.
- ///
- CLICK_TAG_NOT_IN_PRIMARY_HTML = 3,
- /// Click tag or exit function has invalid name or url.
- ///
- CLICK_TAG_INVALID = 4,
- /// HTML5 bundle or total size of extracted files cannot be more than 1000 KB.
- ///
- FILE_SIZE_TOO_LARGE = 5,
- /// HTML5 bundle cannot have more than 50 files.
- ///
- FILES_TOO_MANY = 6,
- /// Flash files in HTML5 bundles are not supported. Any file with a .swf or .flv
- /// extension causes this error.
- ///
- FLASH_UNSUPPORTED = 7,
- /// The HTML5 bundle contains unsupported GWD component(s).
- ///
- GWD_COMPONENTS_UNSUPPORTED = 8,
- /// The HTML5 bundle contains Unsupported GWD Enabler method(s).
- ///
- GWD_ENABLER_METHODS_UNSUPPORTED = 9,
- /// GWD properties are invalid.
- ///
- GWD_PROPERTIES_INVALID = 10,
- /// The HTML5 bundle contains broken relative file reference(s).
- ///
- LINKED_FILES_NOT_FOUND = 11,
- /// No primary HTML file detected.
- ///
- PRIMARY_HTML_MISSING = 12,
- /// Multiple HTML files are detected. One of them should be named as
- /// index.html
- ///
- PRIMARY_HTML_UNDETERMINED = 13,
- /// An SVG block could not be parsed.
- ///
- SVG_BLOCK_INVALID = 14,
- /// The value returned if the actual value is not exposed by the requested API
- /// version.
- ///
- UNKNOWN = 15,
+ [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
+ [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
+ System.Threading.Tasks.Task performCreativeWrapperActionAsync(Google.Api.Ads.AdManager.v201908.CreativeWrapperAction creativeWrapperAction, Google.Api.Ads.AdManager.v201908.Statement filterStatement);
+
+ // CODEGEN: Parameter 'rval' requires additional schema information that cannot be captured using the parameter mode. The specific attribute is 'System.Xml.Serialization.XmlElementAttribute'.
+ [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
+ [System.ServiceModel.FaultContractAttribute(typeof(Google.Api.Ads.AdManager.v201908.ApiException), Action = "", Name = "ApiExceptionFault")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults = true)]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApplicationException))]
+ [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
+ Wrappers.CreativeWrapperService.updateCreativeWrappersResponse updateCreativeWrappers(Wrappers.CreativeWrapperService.updateCreativeWrappersRequest request);
+
+ [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
+ System.Threading.Tasks.Task updateCreativeWrappersAsync(Wrappers.CreativeWrapperService.updateCreativeWrappersRequest request);
}
- /// A list of all errors to be used for problems related to files.
+ /// Captures a page of CreativeWrapper objects.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class FileError : ApiError {
- private FileErrorReason reasonField;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class CreativeWrapperPage {
+ private int totalResultSetSizeField;
- private bool reasonFieldSpecified;
+ private bool totalResultSetSizeFieldSpecified;
+
+ private int startIndexField;
+
+ private bool startIndexFieldSpecified;
+
+ private CreativeWrapper[] resultsField;
+ /// The size of the total result set to which this page belongs.
+ ///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public FileErrorReason reason {
+ public int totalResultSetSize {
get {
- return this.reasonField;
+ return this.totalResultSetSizeField;
}
set {
- this.reasonField = value;
- this.reasonSpecified = true;
+ this.totalResultSetSizeField = value;
+ this.totalResultSetSizeSpecified = true;
}
}
- /// true, if a value is specified for ,
- /// false otherwise.
+ /// true, if a value is specified for , false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool reasonSpecified {
+ public bool totalResultSetSizeSpecified {
get {
- return this.reasonFieldSpecified;
+ return this.totalResultSetSizeFieldSpecified;
}
set {
- this.reasonFieldSpecified = value;
+ this.totalResultSetSizeFieldSpecified = value;
}
}
- }
-
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "FileError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum FileErrorReason {
- /// The provided byte array is empty.
- ///
- MISSING_CONTENTS = 0,
- /// The provided file is larger than the maximum size defined for the network.
- ///
- SIZE_TOO_LARGE = 1,
- /// The value returned if the actual value is not exposed by the requested API
- /// version.
+ /// The absolute index in the total result set on which this page begins.
///
- UNKNOWN = 2,
- }
-
-
- /// An error that occurs when creating an entity if the limit on the number of
- /// allowed entities for a network has already been reached.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class EntityLimitReachedError : ApiError {
- private EntityLimitReachedErrorReason reasonField;
-
- private bool reasonFieldSpecified;
-
- [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public EntityLimitReachedErrorReason reason {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
+ public int startIndex {
get {
- return this.reasonField;
+ return this.startIndexField;
}
set {
- this.reasonField = value;
- this.reasonSpecified = true;
+ this.startIndexField = value;
+ this.startIndexSpecified = true;
}
}
- /// true, if a value is specified for ,
- /// false otherwise.
+ /// true, if a value is specified for , false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool reasonSpecified {
+ public bool startIndexSpecified {
get {
- return this.reasonFieldSpecified;
+ return this.startIndexFieldSpecified;
}
set {
- this.reasonFieldSpecified = value;
+ this.startIndexFieldSpecified = value;
}
}
- }
-
-
- /// The reasons for the entity limit reached error.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "EntityLimitReachedError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum EntityLimitReachedErrorReason {
- /// The number of custom targeting values exceeds the max number allowed in the
- /// network.
- ///
- CUSTOM_TARGETING_VALUES_LIMIT_REACHED = 0,
- /// The number of ad exclusion rules exceeds the max number allowed in the network.
- ///
- AD_EXCLUSION_RULES_LIMIT_REACHED = 1,
- /// The number of first party audience segments exceeds the max number allowed in
- /// the network.
- ///
- FIRST_PARTY_AUDIENCE_SEGMENTS_LIMIT_REACHED = 2,
- /// The number of active placements exceeds the max number allowed in the network.
- ///
- PLACEMENTS_LIMIT_REACHED = 3,
- /// The number of line items excceeds the max number allowed in the network.
- ///
- LINE_ITEMS_LIMIT_REACHED = 4,
- /// The value returned if the actual value is not exposed by the requested API
- /// version.
- ///
- UNKNOWN = 5,
- }
-
-
- /// Errors specific to editing custom field values
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class CustomFieldValueError : ApiError {
- private CustomFieldValueErrorReason reasonField;
-
- private bool reasonFieldSpecified;
- /// The error reason represented by an enum.
+ /// The collection of creative wrappers contained within this page.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public CustomFieldValueErrorReason reason {
- get {
- return this.reasonField;
- }
- set {
- this.reasonField = value;
- this.reasonSpecified = true;
- }
- }
-
- /// true, if a value is specified for ,
- /// false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool reasonSpecified {
+ [System.Xml.Serialization.XmlElementAttribute("results", Order = 2)]
+ public CreativeWrapper[] results {
get {
- return this.reasonFieldSpecified;
+ return this.resultsField;
}
set {
- this.reasonFieldSpecified = value;
+ this.resultsField = value;
}
}
}
- /// The reasons for the target error.
+ /// Represents the actions that can be performed on CreativeWrapper objects.
///
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(DeactivateCreativeWrappers))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(ActivateCreativeWrappers))]
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "CustomFieldValueError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum CustomFieldValueErrorReason {
- /// An attempt was made to modify or create a CustomFieldValue for a CustomField that does not exist.
- ///
- CUSTOM_FIELD_NOT_FOUND = 0,
- /// An attempt was made to create a new value for a custom field that is inactive.
- ///
- CUSTOM_FIELD_INACTIVE = 1,
- /// An attempt was made to modify or create a CustomFieldValue corresponding to a CustomFieldOption that could not be found.
- ///
- CUSTOM_FIELD_OPTION_NOT_FOUND = 2,
- /// The value returned if the actual value is not exposed by the requested API
- /// version.
- ///
- UNKNOWN = 3,
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public abstract partial class CreativeWrapperAction {
}
- /// Lists all errors associated with custom creatives.
+ /// The action used for deactivating CreativeWrapper
+ /// objects.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class CustomCreativeError : ApiError {
- private CustomCreativeErrorReason reasonField;
-
- private bool reasonFieldSpecified;
-
- /// The error reason represented by an enum.
- ///
- [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public CustomCreativeErrorReason reason {
- get {
- return this.reasonField;
- }
- set {
- this.reasonField = value;
- this.reasonSpecified = true;
- }
- }
-
- /// true, if a value is specified for ,
- /// false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool reasonSpecified {
- get {
- return this.reasonFieldSpecified;
- }
- set {
- this.reasonFieldSpecified = value;
- }
- }
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class DeactivateCreativeWrappers : CreativeWrapperAction {
}
- /// The reasons for the target error.
+ /// The action used for activating CreativeWrapper
+ /// objects.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "CustomCreativeError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum CustomCreativeErrorReason {
- /// Macros associated with a single custom creative must have unique names.
- ///
- DUPLICATE_MACRO_NAME_FOR_CREATIVE = 0,
- /// The file macro referenced in the snippet does not exist.
- ///
- SNIPPET_REFERENCES_MISSING_MACRO = 1,
- /// The macro referenced in the snippet is not valid.
- ///
- UNRECOGNIZED_MACRO = 2,
- /// Custom creatives are not allowed in this context.
- ///
- CUSTOM_CREATIVE_NOT_ALLOWED = 3,
- /// The custom creative is an interstitial, but the snippet is missing an
- /// interstitial macro.
- ///
- MISSING_INTERSTITIAL_MACRO = 4,
- /// Macros associated with the same custom creative cannot share the same asset.
- ///
- DUPLICATE_ASSET_IN_MACROS = 5,
- /// The value returned if the actual value is not exposed by the requested API
- /// version.
- ///
- UNKNOWN = 6,
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class ActivateCreativeWrappers : CreativeWrapperAction {
}
- /// An error that can occur while performing an operation on a creative template.
+ /// Represents the result of performing an action on objects.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class CreativeTemplateOperationError : ApiError {
- private CreativeTemplateOperationErrorReason reasonField;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class UpdateResult {
+ private int numChangesField;
- private bool reasonFieldSpecified;
+ private bool numChangesFieldSpecified;
- /// The error reason represented by an enum.
+ /// The number of objects that were changed as a result of performing the action.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public CreativeTemplateOperationErrorReason reason {
+ public int numChanges {
get {
- return this.reasonField;
+ return this.numChangesField;
}
set {
- this.reasonField = value;
- this.reasonSpecified = true;
+ this.numChangesField = value;
+ this.numChangesSpecified = true;
}
}
- /// true, if a value is specified for ,
- /// false otherwise.
+ /// true, if a value is specified for , false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool reasonSpecified {
+ public bool numChangesSpecified {
get {
- return this.reasonFieldSpecified;
+ return this.numChangesFieldSpecified;
}
set {
- this.reasonFieldSpecified = value;
+ this.numChangesFieldSpecified = value;
}
}
}
- /// The reasons for the target error.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "CreativeTemplateOperationError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum CreativeTemplateOperationErrorReason {
- /// The current user is not allowed to modify this creative template.
- ///
- NOT_ALLOWED = 0,
- /// The operation is not applicable to the current state. (e.g. Trying to activate
- /// an active creative template)
- ///
- NOT_APPLICABLE = 1,
- /// The value returned if the actual value is not exposed by the requested API
- /// version.
- ///
- UNKNOWN = 2,
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
+ public interface CreativeWrapperServiceInterfaceChannel : Google.Api.Ads.AdManager.v201908.CreativeWrapperServiceInterface, System.ServiceModel.IClientChannel
+ {
}
- /// A catch-all error that lists all generic errors associated with
- /// CreativeTemplate.
+ /// Provides methods for the creation and management of creative wrappers. CreativeWrappers allow HTML snippets to be served
+ /// along with creatives.
+ /// a Publisher Query Language statement used to
+ /// filter a set of creative wrappers.
+ /// the creative wrappers that match the given filter
+ public virtual Google.Api.Ads.AdManager.v201908.CreativeWrapperPage getCreativeWrappersByStatement(Google.Api.Ads.AdManager.v201908.Statement filterStatement) {
+ return base.Channel.getCreativeWrappersByStatement(filterStatement);
+ }
+
+ public virtual System.Threading.Tasks.Task getCreativeWrappersByStatementAsync(Google.Api.Ads.AdManager.v201908.Statement filterStatement) {
+ return base.Channel.getCreativeWrappersByStatementAsync(filterStatement);
+ }
+
+ /// Performs actions on CreativeWrapper objects that
+ /// match the given Statement#query.
+ /// the action to perform
+ /// a Publisher Query Language statement used to
+ /// filter a set of labels
+ /// the result of the action performed
+ public virtual Google.Api.Ads.AdManager.v201908.UpdateResult performCreativeWrapperAction(Google.Api.Ads.AdManager.v201908.CreativeWrapperAction creativeWrapperAction, Google.Api.Ads.AdManager.v201908.Statement filterStatement) {
+ return base.Channel.performCreativeWrapperAction(creativeWrapperAction, filterStatement);
+ }
+
+ public virtual System.Threading.Tasks.Task performCreativeWrapperActionAsync(Google.Api.Ads.AdManager.v201908.CreativeWrapperAction creativeWrapperAction, Google.Api.Ads.AdManager.v201908.Statement filterStatement) {
+ return base.Channel.performCreativeWrapperActionAsync(creativeWrapperAction, filterStatement);
+ }
+
+ [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
+ Wrappers.CreativeWrapperService.updateCreativeWrappersResponse Google.Api.Ads.AdManager.v201908.CreativeWrapperServiceInterface.updateCreativeWrappers(Wrappers.CreativeWrapperService.updateCreativeWrappersRequest request) {
+ return base.Channel.updateCreativeWrappers(request);
+ }
+
+ /// Updates the specified CreativeWrapper objects.
+ /// the creative wrappers to update
+ /// the updated creative wrapper objects
+ /// ApiException
+ public virtual Google.Api.Ads.AdManager.v201908.CreativeWrapper[] updateCreativeWrappers(Google.Api.Ads.AdManager.v201908.CreativeWrapper[] creativeWrappers) {
+ Wrappers.CreativeWrapperService.updateCreativeWrappersRequest inValue = new Wrappers.CreativeWrapperService.updateCreativeWrappersRequest();
+ inValue.creativeWrappers = creativeWrappers;
+ Wrappers.CreativeWrapperService.updateCreativeWrappersResponse retVal = ((Google.Api.Ads.AdManager.v201908.CreativeWrapperServiceInterface)(this)).updateCreativeWrappers(inValue);
+ return retVal.rval;
+ }
+
+ [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
+ System.Threading.Tasks.Task Google.Api.Ads.AdManager.v201908.CreativeWrapperServiceInterface.updateCreativeWrappersAsync(Wrappers.CreativeWrapperService.updateCreativeWrappersRequest request) {
+ return base.Channel.updateCreativeWrappersAsync(request);
+ }
+
+ public virtual System.Threading.Tasks.Task updateCreativeWrappersAsync(Google.Api.Ads.AdManager.v201908.CreativeWrapper[] creativeWrappers) {
+ Wrappers.CreativeWrapperService.updateCreativeWrappersRequest inValue = new Wrappers.CreativeWrapperService.updateCreativeWrappersRequest();
+ inValue.creativeWrappers = creativeWrappers;
+ return System.Threading.Tasks.Task.Factory.StartNew(() => (((Google.Api.Ads.AdManager.v201908.CreativeWrapperServiceInterface)(this)).updateCreativeWrappersAsync(inValue)).Result.rval);
+ }
+ }
+ namespace Wrappers.CustomTargetingService
+ {
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
+ [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
+ [System.ServiceModel.MessageContractAttribute(WrapperName = "createCustomTargetingKeys", WrapperNamespace = "https://www.google.com/apis/ads/publisher/v201908", IsWrapped = true)]
+ public partial class createCustomTargetingKeysRequest {
+ [System.ServiceModel.MessageBodyMemberAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908", Order = 0)]
+ [System.Xml.Serialization.XmlElementAttribute("keys")]
+ public Google.Api.Ads.AdManager.v201908.CustomTargetingKey[] keys;
+
+ /// Creates a new instance of the class.
+ public createCustomTargetingKeysRequest() {
}
- set {
- this.reasonFieldSpecified = value;
+
+ /// Creates a new instance of the class.
+ public createCustomTargetingKeysRequest(Google.Api.Ads.AdManager.v201908.CustomTargetingKey[] keys) {
+ this.keys = keys;
}
}
- }
- /// The reasons for the target error.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "CreativeTemplateError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum CreativeTemplateErrorReason {
- /// The XML of the creative template definition is malformed and cannot be parsed.
- ///
- CANNOT_PARSE_CREATIVE_TEMPLATE = 0,
- /// A creative template has multiple variables with the same uniqueName.
- ///
- VARIABLE_DUPLICATE_UNIQUE_NAME = 1,
- /// The creative template contains a variable with invalid characters. Valid
- /// characters are letters, numbers, spaces, forward slashes, dashes, and
- /// underscores.
- ///
- VARIABLE_INVALID_UNIQUE_NAME = 2,
- /// Multiple choices for a CreativeTemplateListStringVariable have the same value.
- ///
- LIST_CHOICE_DUPLICATE_VALUE = 3,
- /// The choices for a CreativeTemplateListStringVariable do not contain the default
- /// value.
- ///
- LIST_CHOICE_NEEDS_DEFAULT = 4,
- /// There are no choices specified for the list variable.
- ///
- LIST_CHOICES_EMPTY = 5,
- /// No target platform is assigned to a creative template.
- ///
- NO_TARGET_PLATFORMS = 6,
- /// More than one target platform is assigned to a single creative template.
- ///
- MULTIPLE_TARGET_PLATFORMS = 7,
- /// The formatter contains a placeholder which is not defined as a variable.
- ///
- UNRECOGNIZED_PLACEHOLDER = 8,
- /// There are variables defined which are not being used in the formatter.
- ///
- PLACEHOLDERS_NOT_IN_FORMATTER = 9,
- /// The creative template is interstitial, but the formatter doesn't contain an
- /// interstitial macro.
- ///
- MISSING_INTERSTITIAL_MACRO = 10,
- /// The value returned if the actual value is not exposed by the requested API
- /// version.
- ///
- UNKNOWN = 11,
- }
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
+ [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
+ [System.ServiceModel.MessageContractAttribute(WrapperName = "createCustomTargetingKeysResponse", WrapperNamespace = "https://www.google.com/apis/ads/publisher/v201908", IsWrapped = true)]
+ public partial class createCustomTargetingKeysResponse {
+ [System.ServiceModel.MessageBodyMemberAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908", Order = 0)]
+ [System.Xml.Serialization.XmlElementAttribute("rval")]
+ public Google.Api.Ads.AdManager.v201908.CustomTargetingKey[] rval;
+ /// Creates a new instance of the class.
+ public createCustomTargetingKeysResponse() {
+ }
- /// Errors relating to creative sets & subclasses.
+ /// Creates a new instance of the class.
+ public createCustomTargetingKeysResponse(Google.Api.Ads.AdManager.v201908.CustomTargetingKey[] rval) {
+ this.rval = rval;
+ }
+ }
+
+
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
+ [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
+ [System.ServiceModel.MessageContractAttribute(WrapperName = "createCustomTargetingValues", WrapperNamespace = "https://www.google.com/apis/ads/publisher/v201908", IsWrapped = true)]
+ public partial class createCustomTargetingValuesRequest {
+ [System.ServiceModel.MessageBodyMemberAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908", Order = 0)]
+ [System.Xml.Serialization.XmlElementAttribute("values")]
+ public Google.Api.Ads.AdManager.v201908.CustomTargetingValue[] values;
+
+ /// Creates a new instance of the class.
+ public createCustomTargetingValuesRequest() {
+ }
+
+ /// Creates a new instance of the class.
+ public createCustomTargetingValuesRequest(Google.Api.Ads.AdManager.v201908.CustomTargetingValue[] values) {
+ this.values = values;
+ }
+ }
+
+
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
+ [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
+ [System.ServiceModel.MessageContractAttribute(WrapperName = "createCustomTargetingValuesResponse", WrapperNamespace = "https://www.google.com/apis/ads/publisher/v201908", IsWrapped = true)]
+ public partial class createCustomTargetingValuesResponse {
+ [System.ServiceModel.MessageBodyMemberAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908", Order = 0)]
+ [System.Xml.Serialization.XmlElementAttribute("rval")]
+ public Google.Api.Ads.AdManager.v201908.CustomTargetingValue[] rval;
+
+ /// Creates a new instance of the class.
+ public createCustomTargetingValuesResponse() {
+ }
+
+ /// Creates a new instance of the class.
+ public createCustomTargetingValuesResponse(Google.Api.Ads.AdManager.v201908.CustomTargetingValue[] rval) {
+ this.rval = rval;
+ }
+ }
+
+
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
+ [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
+ [System.ServiceModel.MessageContractAttribute(WrapperName = "updateCustomTargetingKeys", WrapperNamespace = "https://www.google.com/apis/ads/publisher/v201908", IsWrapped = true)]
+ public partial class updateCustomTargetingKeysRequest {
+ [System.ServiceModel.MessageBodyMemberAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908", Order = 0)]
+ [System.Xml.Serialization.XmlElementAttribute("keys")]
+ public Google.Api.Ads.AdManager.v201908.CustomTargetingKey[] keys;
+
+ /// Creates a new instance of the class.
+ public updateCustomTargetingKeysRequest() {
+ }
+
+ /// Creates a new instance of the class.
+ public updateCustomTargetingKeysRequest(Google.Api.Ads.AdManager.v201908.CustomTargetingKey[] keys) {
+ this.keys = keys;
+ }
+ }
+
+
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
+ [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
+ [System.ServiceModel.MessageContractAttribute(WrapperName = "updateCustomTargetingKeysResponse", WrapperNamespace = "https://www.google.com/apis/ads/publisher/v201908", IsWrapped = true)]
+ public partial class updateCustomTargetingKeysResponse {
+ [System.ServiceModel.MessageBodyMemberAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908", Order = 0)]
+ [System.Xml.Serialization.XmlElementAttribute("rval")]
+ public Google.Api.Ads.AdManager.v201908.CustomTargetingKey[] rval;
+
+ /// Creates a new instance of the class.
+ public updateCustomTargetingKeysResponse() {
+ }
+
+ /// Creates a new instance of the class.
+ public updateCustomTargetingKeysResponse(Google.Api.Ads.AdManager.v201908.CustomTargetingKey[] rval) {
+ this.rval = rval;
+ }
+ }
+
+
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
+ [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
+ [System.ServiceModel.MessageContractAttribute(WrapperName = "updateCustomTargetingValues", WrapperNamespace = "https://www.google.com/apis/ads/publisher/v201908", IsWrapped = true)]
+ public partial class updateCustomTargetingValuesRequest {
+ [System.ServiceModel.MessageBodyMemberAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908", Order = 0)]
+ [System.Xml.Serialization.XmlElementAttribute("values")]
+ public Google.Api.Ads.AdManager.v201908.CustomTargetingValue[] values;
+
+ /// Creates a new instance of the class.
+ public updateCustomTargetingValuesRequest() {
+ }
+
+ /// Creates a new instance of the class.
+ public updateCustomTargetingValuesRequest(Google.Api.Ads.AdManager.v201908.CustomTargetingValue[] values) {
+ this.values = values;
+ }
+ }
+
+
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
+ [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
+ [System.ServiceModel.MessageContractAttribute(WrapperName = "updateCustomTargetingValuesResponse", WrapperNamespace = "https://www.google.com/apis/ads/publisher/v201908", IsWrapped = true)]
+ public partial class updateCustomTargetingValuesResponse {
+ [System.ServiceModel.MessageBodyMemberAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908", Order = 0)]
+ [System.Xml.Serialization.XmlElementAttribute("rval")]
+ public Google.Api.Ads.AdManager.v201908.CustomTargetingValue[] rval;
+
+ /// Creates a new instance of the class.
+ public updateCustomTargetingValuesResponse() {
+ }
+
+ /// Creates a new instance of the class.
+ public updateCustomTargetingValuesResponse(Google.Api.Ads.AdManager.v201908.CustomTargetingValue[] rval) {
+ this.rval = rval;
+ }
+ }
+ }
+ /// CustomTargetingKey represents a key used for custom targeting.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class CreativeSetError : ApiError {
- private CreativeSetErrorReason reasonField;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class CustomTargetingKey {
+ private long idField;
- private bool reasonFieldSpecified;
+ private bool idFieldSpecified;
- /// The error reason represented by an enum.
+ private string nameField;
+
+ private string displayNameField;
+
+ private CustomTargetingKeyType typeField;
+
+ private bool typeFieldSpecified;
+
+ private CustomTargetingKeyStatus statusField;
+
+ private bool statusFieldSpecified;
+
+ private ReportableType reportableTypeField;
+
+ private bool reportableTypeFieldSpecified;
+
+ /// The ID of the CustomTargetingKey. This value is readonly and is
+ /// populated by Google.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public CreativeSetErrorReason reason {
+ public long id {
get {
- return this.reasonField;
+ return this.idField;
}
set {
- this.reasonField = value;
- this.reasonSpecified = true;
+ this.idField = value;
+ this.idSpecified = true;
}
}
- /// true, if a value is specified for ,
+ /// true, if a value is specified for ,
/// false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool reasonSpecified {
+ public bool idSpecified {
get {
- return this.reasonFieldSpecified;
+ return this.idFieldSpecified;
}
set {
- this.reasonFieldSpecified = value;
+ this.idFieldSpecified = value;
+ }
+ }
+
+ /// Name of the key. This can be used for encoding . If you don't want users to be
+ /// able to see potentially sensitive targeting information in the ad tags of your
+ /// site, you can encode your key/values. For example, you can create key/value
+ /// g1=abc to represent gender=female. Keys can contain up to 10 characters each.
+ /// You can use alphanumeric characters and symbols other than the following: ", ',
+ /// =, !, +, #, *, ~, ;, ^, (, ), <, >, [, ], the white space character.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 1)]
+ public string name {
+ get {
+ return this.nameField;
+ }
+ set {
+ this.nameField = value;
+ }
+ }
+
+ /// Descriptive name for the key.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 2)]
+ public string displayName {
+ get {
+ return this.displayNameField;
+ }
+ set {
+ this.displayNameField = value;
+ }
+ }
+
+ /// Indicates whether users will select from predefined values or create new
+ /// targeting values, while specifying targeting criteria for a line item.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 3)]
+ public CustomTargetingKeyType type {
+ get {
+ return this.typeField;
+ }
+ set {
+ this.typeField = value;
+ this.typeSpecified = true;
+ }
+ }
+
+ /// true, if a value is specified for ,
+ /// false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool typeSpecified {
+ get {
+ return this.typeFieldSpecified;
+ }
+ set {
+ this.typeFieldSpecified = value;
+ }
+ }
+
+ /// Status of the CustomTargetingKey. This field is read-only. A key
+ /// can be activated and deactivated by calling CustomTargetingService#performCustomTargetingKeyAction.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 4)]
+ public CustomTargetingKeyStatus status {
+ get {
+ return this.statusField;
+ }
+ set {
+ this.statusField = value;
+ this.statusSpecified = true;
+ }
+ }
+
+ /// true, if a value is specified for ,
+ /// false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool statusSpecified {
+ get {
+ return this.statusFieldSpecified;
+ }
+ set {
+ this.statusFieldSpecified = value;
+ }
+ }
+
+ /// Reportable state of a {@CustomTargetingKey} as defined in ReportableType.
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order = 5)]
+ public ReportableType reportableType {
+ get {
+ return this.reportableTypeField;
+ }
+ set {
+ this.reportableTypeField = value;
+ this.reportableTypeSpecified = true;
+ }
+ }
+
+ /// true, if a value is specified for , false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool reportableTypeSpecified {
+ get {
+ return this.reportableTypeFieldSpecified;
+ }
+ set {
+ this.reportableTypeFieldSpecified = value;
}
}
}
- /// The reasons for the target error.
+ /// Specifies the types for CustomTargetingKey objects.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "CreativeSetError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum CreativeSetErrorReason {
- /// The 'video' feature is required but not enabled.
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "CustomTargetingKey.Type", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum CustomTargetingKeyType {
+ /// Target audiences by criteria values that are defined in advance.
///
- VIDEO_FEATURE_REQUIRED = 0,
- /// Video creatives (including overlays, VAST redirects, etc..) cannot be created or
- /// updated through the API.
+ PREDEFINED = 0,
+ /// Target audiences by adding criteria values when creating line items.
///
- CANNOT_CREATE_OR_UPDATE_VIDEO_CREATIVES = 1,
- /// The 'roadblock' feature is required but not enabled.
+ FREEFORM = 1,
+ }
+
+
+ /// Describes the statuses for CustomTargetingKey objects.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "CustomTargetingKey.Status", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum CustomTargetingKeyStatus {
+ /// The object is active.
///
- ROADBLOCK_FEATURE_REQUIRED = 2,
- /// A master creative cannot be a companion creative in the same creative set.
+ ACTIVE = 0,
+ /// The object is no longer active.
///
- MASTER_CREATIVE_CANNOT_BE_COMPANION = 3,
- /// Creatives in a creative set must be for the same advertiser.
+ INACTIVE = 1,
+ /// The value returned if the actual value is not exposed by the requested API
+ /// version.
///
- INVALID_ADVERTISER = 4,
- /// Updating a master creative in a creative set is not allowed.
+ UNKNOWN = 2,
+ }
+
+
+ /// Represents the reportable state of a custom key.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum ReportableType {
+ UNKNOWN = 0,
+ /// Available for reporting in the Ad Manager query tool.
///
- UPDATE_MASTER_CREATIVE_NOT_ALLOWED = 5,
- /// A master creative must belong to only one video creative set.
+ ON = 1,
+ /// Not available for reporting in the Ad Manager query tool.
///
- MASTER_CREATIVE_CANNOT_BELONG_TO_MULTIPLE_VIDEO_CREATIVE_SETS = 7,
- /// The value returned if the actual value is not exposed by the requested API
- /// version.
+ OFF = 2,
+ /// Custom dimension available for reporting in the AdManager query tool.
///
- UNKNOWN = 6,
+ CUSTOM_DIMENSION = 3,
}
- /// Lists all errors associated with creatives.
+ /// Lists errors relating to having too many children on an entity.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class CreativeError : ApiError {
- private CreativeErrorReason reasonField;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class EntityChildrenLimitReachedError : ApiError {
+ private EntityChildrenLimitReachedErrorReason reasonField;
private bool reasonFieldSpecified;
- /// The error reason represented by an enum.
- ///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public CreativeErrorReason reason {
+ public EntityChildrenLimitReachedErrorReason reason {
get {
return this.reasonField;
}
@@ -12495,96 +12999,97 @@ public bool reasonSpecified {
}
- /// The reasons for the target error.
+ /// The reasons for the entity children limit reached error.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "CreativeError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum CreativeErrorReason {
- /// FlashRedirectCreative#flashUrl and
- /// FlashRedirectCreative#fallbackUrl
- /// are the same. The fallback URL is used when the flash URL does not work and must
- /// be different from it.
- ///
- FLASH_AND_FALLBACK_URL_ARE_SAME = 0,
- /// The internal redirect URL was invalid. The URL must have the following syntax
- /// http://ad.doubleclick.net/ad/sitename/;sz=size.
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "EntityChildrenLimitReachedError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum EntityChildrenLimitReachedErrorReason {
+ /// The number of line items on the order exceeds the max number of line items
+ /// allowed per order in the network.
///
- INVALID_INTERNAL_REDIRECT_URL = 1,
- /// HasDestinationUrlCreative#destinationUrl
- /// is required.
+ LINE_ITEM_LIMIT_FOR_ORDER_REACHED = 0,
+ /// The number of creatives associated with the line item exceeds the max number of
+ /// creatives allowed to be associated with a line item in the network.
///
- DESTINATION_URL_REQUIRED = 2,
- /// HasDestinationUrlCreative#destinationUrl
- /// must be empty when its type is DestinationUrlType#NONE.
+ CREATIVE_ASSOCIATION_LIMIT_FOR_LINE_ITEM_REACHED = 1,
+ /// The number of ad units on the placement exceeds the max number of ad units
+ /// allowed per placement in the network.
///
- DESTINATION_URL_NOT_EMPTY = 14,
- /// The provided DestinationUrlType is not
- /// supported for the creative type it is being used on.
+ AD_UNIT_LIMIT_FOR_PLACEMENT_REACHED = 2,
+ /// The number of targeting expressions on the line item exceeds the max number of
+ /// targeting expressions allowed per line item in the network.
///
- DESTINATION_URL_TYPE_NOT_SUPPORTED = 15,
- /// Cannot create or update legacy DART For Publishers creative.
+ TARGETING_EXPRESSION_LIMIT_FOR_LINE_ITEM_REACHED = 3,
+ /// The number of custom targeting values for the free-form or predefined custom
+ /// targeting key exceeds the max number allowed.
///
- CANNOT_CREATE_OR_UPDATE_LEGACY_DFP_CREATIVE = 3,
- /// Cannot create or update legacy mobile creative.
+ CUSTOM_TARGETING_VALUES_FOR_KEY_LIMIT_REACHED = 13,
+ /// The total number of targeting expressions on the creatives for the line item
+ /// exceeds the max number allowed per line item in the network.
///
- CANNOT_CREATE_OR_UPDATE_LEGACY_DFP_MOBILE_CREATIVE = 4,
- /// The user is missing a necessary feature.
+ TARGETING_EXPRESSION_LIMIT_FOR_CREATIVES_ON_LINE_ITEM_REACHED = 14,
+ /// The number of attachments added to the proposal exceeds the max number allowed
+ /// per proposal in the network.
///
- MISSING_FEATURE = 5,
- /// Company type should be one of Advertisers, House Advertisers and Ad Networks.
+ ATTACHMENT_LIMIT_FOR_PROPOSAL_REACHED = 5,
+ /// The number of proposal line items on the proposal exceeds the max number allowed
+ /// per proposal in the network.
///
- INVALID_COMPANY_TYPE = 6,
- /// Invalid size for AdSense dynamic allocation creative. Only valid AFC sizes are
- /// allowed.
+ PROPOSAL_LINE_ITEM_LIMIT_FOR_PROPOSAL_REACHED = 6,
+ /// The number of product package items on the product package exceeds the max
+ /// number allowed per product package in the network.
///
- INVALID_ADSENSE_CREATIVE_SIZE = 7,
- /// Invalid size for Ad Exchange dynamic allocation creative. Only valid Ad Exchange
- /// sizes are allowed.
+ PRODUCT_LIMIT_FOR_PRODUCT_PACKAGE_REACHED = 7,
+ /// The number of product template and product base rates on the rate card
+ /// (including excluded product base rates) exceeds the max number allowed per rate
+ /// card in the network.
///
- INVALID_AD_EXCHANGE_CREATIVE_SIZE = 8,
- /// Assets associated with the same creative must be unique.
+ PRODUCT_TEMPLATE_AND_PRODUCT_BASE_RATE_LIMIT_FOR_RATE_CARD_REACHED = 8,
+ /// The number of product package item base rates on the rate card exceeds the max
+ /// number allowed per rate card in the network.
///
- DUPLICATE_ASSET_IN_CREATIVE = 9,
- /// A creative asset cannot contain an asset ID and a byte array.
+ PRODUCT_PACKAGE_ITEM_BASE_RATE_LIMIT_FOR_RATE_CARD_REACHED = 9,
+ /// The number of premiums of the rate card exceeds the max number allowed per rate
+ /// card in the network.
///
- CREATIVE_ASSET_CANNOT_HAVE_ID_AND_BYTE_ARRAY = 10,
- /// Cannot create or update unsupported creative.
+ PREMIUM_LIMIT_FOR_RATE_CARD_REACHED = 10,
+ /// The number of ad units on AdExclusionRule#inventoryTargeting
+ /// exceeds the max number of ad units allowed per ad exclusion rule inventory
+ /// targeting in the network.
///
- CANNOT_CREATE_OR_UPDATE_UNSUPPORTED_CREATIVE = 11,
- /// Cannot create programmatic creatives.
+ AD_UNIT_LIMIT_FOR_AD_EXCLUSION_RULE_TARGETING_REACHED = 11,
+ /// The number of native styles under the native creative template exceeds the max
+ /// number of native styles allowed per native creative template in the network.
///
- CANNOT_CREATE_PROGRAMMATIC_CREATIVES = 12,
- /// A creative must have valid size to use the third-party impression tracker.
+ NATIVE_STYLE_LIMIT_FOR_NATIVE_AD_FORMAT_REACHED = 15,
+ /// The number of targeting expressions on the native style exceeds the max number
+ /// of targeting expressions allowed per native style in the network.
///
- INVALID_SIZE_FOR_THIRD_PARTY_IMPRESSION_TRACKER = 16,
+ TARGETING_EXPRESSION_LIMIT_FOR_PRESENTATION_ASSIGNMENT_REACHED = 16,
/// The value returned if the actual value is not exposed by the requested API
/// version.
///
- UNKNOWN = 13,
+ UNKNOWN = 12,
}
- /// Lists all errors associated with creative asset macros.
+ /// Lists all errors related to CustomTargetingKey
+ /// and CustomTargetingValue objects.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class CreativeAssetMacroError : ApiError {
- private CreativeAssetMacroErrorReason reasonField;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class CustomTargetingError : ApiError {
+ private CustomTargetingErrorReason reasonField;
private bool reasonFieldSpecified;
- /// The error reason represented by an enum.
- ///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public CreativeAssetMacroErrorReason reason {
+ public CustomTargetingErrorReason reason {
get {
return this.reasonField;
}
@@ -12613,516 +13118,594 @@ public bool reasonSpecified {
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "CreativeAssetMacroError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum CreativeAssetMacroErrorReason {
- /// Invalid macro name specified. Macro names must start with an alpha character and
- /// consist only of alpha-numeric characters and underscores and be between 1 and 64
- /// characters.
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "CustomTargetingError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum CustomTargetingErrorReason {
+ /// Requested CustomTargetingKey is not found.
///
- INVALID_MACRO_NAME = 0,
- /// The value returned if the actual value is not exposed by the requested API
- /// version.
+ KEY_NOT_FOUND = 0,
+ /// Number of CustomTargetingKey objects created
+ /// exceeds the limit allowed for the network.
///
- UNKNOWN = 1,
- }
-
-
- /// Lists all errors associated with assets.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class AssetError : ApiError {
- private AssetErrorReason reasonField;
-
- private bool reasonFieldSpecified;
-
- /// The error reason represented by an enum.
+ KEY_COUNT_TOO_LARGE = 1,
+ /// CustomTargetingKey with the same CustomTargetingKey#name already exists.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public AssetErrorReason reason {
- get {
- return this.reasonField;
- }
- set {
- this.reasonField = value;
- this.reasonSpecified = true;
- }
- }
-
- /// true, if a value is specified for ,
- /// false otherwise.
- [System.Xml.Serialization.XmlIgnoreAttribute()]
- [EditorBrowsable(EditorBrowsableState.Never)]
- public bool reasonSpecified {
- get {
- return this.reasonFieldSpecified;
- }
- set {
- this.reasonFieldSpecified = value;
- }
- }
- }
-
-
- /// The reasons for the target error.
- ///
- [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
- [System.SerializableAttribute()]
- [System.Xml.Serialization.XmlTypeAttribute(TypeName = "AssetError.Reason", Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public enum AssetErrorReason {
- /// An asset name must be unique across advertiser.
+ KEY_NAME_DUPLICATE = 2,
+ /// CustomTargetingKey#name is empty.
///
- NON_UNIQUE_NAME = 0,
- /// The file name is too long.
+ KEY_NAME_EMPTY = 3,
+ /// CustomTargetingKey#name is too long.
///
- FILE_NAME_TOO_LONG = 1,
- /// The file size is too large.
+ KEY_NAME_INVALID_LENGTH = 4,
+ /// CustomTargetingKey#name contains
+ /// unsupported or reserved characters.
///
- FILE_SIZE_TOO_LARGE = 2,
- /// Required client code is not present in the code snippet.
+ KEY_NAME_INVALID_CHARS = 5,
+ /// CustomTargetingKey#name matches one of the
+ /// reserved custom targeting key names.
///
- MISSING_REQUIRED_DYNAMIC_ALLOCATION_CLIENT = 3,
- /// Required height is not present in the code snippet.
+ KEY_NAME_RESERVED = 6,
+ /// CustomTargetingKey#displayName is
+ /// too long.
///
- MISSING_REQUIRED_DYNAMIC_ALLOCATION_HEIGHT = 4,
- /// Required width is not present in the code snippet.
+ KEY_DISPLAY_NAME_INVALID_LENGTH = 7,
+ /// Requested CustomTargetingValue is not found.
///
- MISSING_REQUIRED_DYNAMIC_ALLOCATION_WIDTH = 5,
- /// Required format is not present in the mobile code snippet.
+ VALUE_NOT_FOUND = 8,
+ /// The WHERE clause in the Statement#query must always contain CustomTargetingValue#customTargetingKeyId
+ /// as one of its columns in a way that it is AND'ed with the rest of the query.
///
- MISSING_REQUIRED_DYNAMIC_ALLOCATION_FORMAT = 6,
- /// The parameter value in the code snippet is invalid.
+ GET_VALUES_BY_STATEMENT_MUST_CONTAIN_KEY_ID = 9,
+ /// The number of CustomTargetingValue objects
+ /// associated with a CustomTargetingKey exceeds
+ /// the network limit. This is only applicable for keys of type .
///
- INVALID_CODE_SNIPPET_PARAMETER_VALUE = 7,
- /// Invalid asset Id.
+ VALUE_COUNT_FOR_KEY_TOO_LARGE = 10,
+ /// CustomTargetingValue with the same CustomTargetingValue#name already exists.
///
- INVALID_ASSET_ID = 8,
+ VALUE_NAME_DUPLICATE = 11,
+ /// CustomTargetingValue#name is empty.
+ ///
+ VALUE_NAME_EMPTY = 12,
+ /// CustomTargetingValue#name is too long.
+ ///
+ VALUE_NAME_INVALID_LENGTH = 13,
+ /// CustomTargetingValue#name contains
+ /// unsupported or reserved characters.
+ ///
+ VALUE_NAME_INVALID_CHARS = 14,
+ /// CustomTargetingValue#displayName
+ /// is too long.
+ ///
+ VALUE_DISPLAY_NAME_INVALID_LENGTH = 15,
+ /// Only Ad Manager 360 networks can have CustomTargetingValue#matchType other
+ /// than CustomTargetingValue.MatchType#EXACT.
+ ///
+ VALUE_MATCH_TYPE_NOT_ALLOWED = 16,
+ /// You can only create CustomTargetingValue
+ /// objects with match type CustomTargetingValue.MatchType#EXACT
+ /// when associating with CustomTargetingKey
+ /// objects of type CustomTargetingKey.Type#PREDEFINED
+ ///
+ VALUE_MATCH_TYPE_NOT_EXACT_FOR_PREDEFINED_KEY = 17,
+ /// CustomTargetingValue object cannot have match
+ /// type of CustomTargetingValue.MatchType#SUFFIX
+ /// when adding a CustomTargetingValue to a line
+ /// item.
+ ///
+ SUFFIX_MATCH_TYPE_NOT_ALLOWED = 18,
+ /// CustomTargetingValue object cannot have match
+ /// type of CustomTargetingValue.MatchType#CONTAINS
+ /// when adding a CustomTargetingValue to
+ /// targeting expression of a line item.
+ ///
+ CONTAINS_MATCH_TYPE_NOT_ALLOWED = 19,
+ /// The CustomTargetingKey does not have any CustomTargetingValue associated with it.
+ ///
+ KEY_WITH_MISSING_VALUES = 20,
+ /// The CustomTargetingKey has a CustomTargetingValue specified for which the
+ /// value is not a valid child.
+ ///
+ INVALID_VALUE_FOR_KEY = 35,
+ /// CustomCriteriaSet.LogicalOperator#OR
+ /// operation cannot be applied to values with different keys.
+ ///
+ CANNOT_OR_DIFFERENT_KEYS = 21,
+ /// Targeting expression is invalid. This can happen if the sequence of operators is
+ /// wrong, or a node contains invalid number of children.
+ ///
+ INVALID_TARGETING_EXPRESSION = 22,
+ /// The key has been deleted. CustomCriteria cannot
+ /// have deleted keys.
+ ///
+ DELETED_KEY_CANNOT_BE_USED_FOR_TARGETING = 23,
+ /// The value has been deleted. CustomCriteria cannot
+ /// have deleted values.
+ ///
+ DELETED_VALUE_CANNOT_BE_USED_FOR_TARGETING = 24,
+ /// The key is set as the video browse-by key, which cannot be used for custom
+ /// targeting.
+ ///
+ VIDEO_BROWSE_BY_KEY_CANNOT_BE_USED_FOR_CUSTOM_TARGETING = 25,
+ /// Only active custom-criteria keys are supported in content metadata mapping.
+ ///
+ CANNOT_DELETE_CUSTOM_KEY_USED_IN_CONTENT_METADATA_MAPPING = 31,
+ /// Only active custom-criteria values are supported in content metadata mapping.
+ ///
+ CANNOT_DELETE_CUSTOM_VALUE_USED_IN_CONTENT_METADATA_MAPPING = 32,
+ /// Cannot delete a custom criteria key that is targeted by an active partner
+ /// assignment.
+ ///
+ CANNOT_DELETE_CUSTOM_KEY_USED_IN_PARTNER_ASSIGNMENT_TARGETING = 33,
+ /// Cannot delete a custom criteria value that is targeted by an active partner
+ /// assignment.
+ ///
+ CANNOT_DELETE_CUSTOM_VALUE_USED_IN_PARTNER_ASSIGNMENT_TARGETING = 34,
+ /// AudienceSegment object cannot be targeted.
+ ///
+ CANNOT_TARGET_AUDIENCE_SEGMENT = 26,
+ /// Inactive AudienceSegment object cannot be
+ /// targeted.
+ ///
+ CANNOT_TARGET_INACTIVE_AUDIENCE_SEGMENT = 27,
+ /// Targeted AudienceSegment object is not valid.
+ ///
+ INVALID_AUDIENCE_SEGMENTS = 28,
+ /// Targeted AudienceSegment objects have not been
+ /// approved.
+ ///
+ ONLY_APPROVED_AUDIENCE_SEGMENTS_CAN_BE_TARGETED = 29,
/// The value returned if the actual value is not exposed by the requested API
/// version.
///
- UNKNOWN = 9,
+ UNKNOWN = 30,
}
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
- [System.ServiceModel.ServiceContractAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808", ConfigurationName = "Google.Api.Ads.AdManager.v201808.CreativeServiceInterface")]
- public interface CreativeServiceInterface
+ [System.ServiceModel.ServiceContractAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908", ConfigurationName = "Google.Api.Ads.AdManager.v201908.CustomTargetingServiceInterface")]
+ public interface CustomTargetingServiceInterface
{
// CODEGEN: Parameter 'rval' requires additional schema information that cannot be captured using the parameter mode. The specific attribute is 'System.Xml.Serialization.XmlElementAttribute'.
[System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
- [System.ServiceModel.FaultContractAttribute(typeof(Google.Api.Ads.AdManager.v201808.ApiException), Action = "", Name = "ApiExceptionFault")]
+ [System.ServiceModel.FaultContractAttribute(typeof(Google.Api.Ads.AdManager.v201908.ApiException), Action = "", Name = "ApiExceptionFault")]
[System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults = true)]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApplicationException))]
- [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Asset))]
[return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
- Wrappers.CreativeService.createCreativesResponse createCreatives(Wrappers.CreativeService.createCreativesRequest request);
+ Wrappers.CustomTargetingService.createCustomTargetingKeysResponse createCustomTargetingKeys(Wrappers.CustomTargetingService.createCustomTargetingKeysRequest request);
[System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
- System.Threading.Tasks.Task createCreativesAsync(Wrappers.CreativeService.createCreativesRequest request);
+ System.Threading.Tasks.Task createCustomTargetingKeysAsync(Wrappers.CustomTargetingService.createCustomTargetingKeysRequest request);
+ // CODEGEN: Parameter 'rval' requires additional schema information that cannot be captured using the parameter mode. The specific attribute is 'System.Xml.Serialization.XmlElementAttribute'.
[System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
- [System.ServiceModel.FaultContractAttribute(typeof(Google.Api.Ads.AdManager.v201808.ApiException), Action = "", Name = "ApiExceptionFault")]
+ [System.ServiceModel.FaultContractAttribute(typeof(Google.Api.Ads.AdManager.v201908.ApiException), Action = "", Name = "ApiExceptionFault")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults = true)]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApplicationException))]
+ [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
+ Wrappers.CustomTargetingService.createCustomTargetingValuesResponse createCustomTargetingValues(Wrappers.CustomTargetingService.createCustomTargetingValuesRequest request);
+
+ [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
+ System.Threading.Tasks.Task createCustomTargetingValuesAsync(Wrappers.CustomTargetingService.createCustomTargetingValuesRequest request);
+
+ [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
+ [System.ServiceModel.FaultContractAttribute(typeof(Google.Api.Ads.AdManager.v201908.ApiException), Action = "", Name = "ApiExceptionFault")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults = true)]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApplicationException))]
+ [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
+ Google.Api.Ads.AdManager.v201908.CustomTargetingKeyPage getCustomTargetingKeysByStatement(Google.Api.Ads.AdManager.v201908.Statement filterStatement);
+
+ [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
+ [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
+ System.Threading.Tasks.Task getCustomTargetingKeysByStatementAsync(Google.Api.Ads.AdManager.v201908.Statement filterStatement);
+
+ [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
+ [System.ServiceModel.FaultContractAttribute(typeof(Google.Api.Ads.AdManager.v201908.ApiException), Action = "", Name = "ApiExceptionFault")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults = true)]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApplicationException))]
+ [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
+ Google.Api.Ads.AdManager.v201908.CustomTargetingValuePage getCustomTargetingValuesByStatement(Google.Api.Ads.AdManager.v201908.Statement filterStatement);
+
+ [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
+ [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
+ System.Threading.Tasks.Task getCustomTargetingValuesByStatementAsync(Google.Api.Ads.AdManager.v201908.Statement filterStatement);
+
+ [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
+ [System.ServiceModel.FaultContractAttribute(typeof(Google.Api.Ads.AdManager.v201908.ApiException), Action = "", Name = "ApiExceptionFault")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults = true)]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApplicationException))]
+ [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
+ Google.Api.Ads.AdManager.v201908.UpdateResult performCustomTargetingKeyAction(Google.Api.Ads.AdManager.v201908.CustomTargetingKeyAction customTargetingKeyAction, Google.Api.Ads.AdManager.v201908.Statement filterStatement);
+
+ [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
+ [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
+ System.Threading.Tasks.Task performCustomTargetingKeyActionAsync(Google.Api.Ads.AdManager.v201908.CustomTargetingKeyAction customTargetingKeyAction, Google.Api.Ads.AdManager.v201908.Statement filterStatement);
+
+ [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
+ [System.ServiceModel.FaultContractAttribute(typeof(Google.Api.Ads.AdManager.v201908.ApiException), Action = "", Name = "ApiExceptionFault")]
[System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults = true)]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApplicationException))]
- [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Asset))]
[return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
- Google.Api.Ads.AdManager.v201808.CreativePage getCreativesByStatement(Google.Api.Ads.AdManager.v201808.Statement filterStatement);
+ Google.Api.Ads.AdManager.v201908.UpdateResult performCustomTargetingValueAction(Google.Api.Ads.AdManager.v201908.CustomTargetingValueAction customTargetingValueAction, Google.Api.Ads.AdManager.v201908.Statement filterStatement);
[System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
[return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
- System.Threading.Tasks.Task getCreativesByStatementAsync(Google.Api.Ads.AdManager.v201808.Statement filterStatement);
+ System.Threading.Tasks.Task performCustomTargetingValueActionAsync(Google.Api.Ads.AdManager.v201908.CustomTargetingValueAction customTargetingValueAction, Google.Api.Ads.AdManager.v201908.Statement filterStatement);
// CODEGEN: Parameter 'rval' requires additional schema information that cannot be captured using the parameter mode. The specific attribute is 'System.Xml.Serialization.XmlElementAttribute'.
[System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
- [System.ServiceModel.FaultContractAttribute(typeof(Google.Api.Ads.AdManager.v201808.ApiException), Action = "", Name = "ApiExceptionFault")]
+ [System.ServiceModel.FaultContractAttribute(typeof(Google.Api.Ads.AdManager.v201908.ApiException), Action = "", Name = "ApiExceptionFault")]
[System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults = true)]
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApplicationException))]
- [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Asset))]
[return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
- Wrappers.CreativeService.updateCreativesResponse updateCreatives(Wrappers.CreativeService.updateCreativesRequest request);
+ Wrappers.CustomTargetingService.updateCustomTargetingKeysResponse updateCustomTargetingKeys(Wrappers.CustomTargetingService.updateCustomTargetingKeysRequest request);
[System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
- System.Threading.Tasks.Task updateCreativesAsync(Wrappers.CreativeService.updateCreativesRequest request);
+ System.Threading.Tasks.Task updateCustomTargetingKeysAsync(Wrappers.CustomTargetingService.updateCustomTargetingKeysRequest request);
+
+ // CODEGEN: Parameter 'rval' requires additional schema information that cannot be captured using the parameter mode. The specific attribute is 'System.Xml.Serialization.XmlElementAttribute'.
+ [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
+ [System.ServiceModel.FaultContractAttribute(typeof(Google.Api.Ads.AdManager.v201908.ApiException), Action = "", Name = "ApiExceptionFault")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults = true)]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApplicationException))]
+ [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
+ Wrappers.CustomTargetingService.updateCustomTargetingValuesResponse updateCustomTargetingValues(Wrappers.CustomTargetingService.updateCustomTargetingValuesRequest request);
+
+ [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
+ System.Threading.Tasks.Task updateCustomTargetingValuesAsync(Wrappers.CustomTargetingService.updateCustomTargetingValuesRequest request);
}
- /// Captures a page of Creative objects.
+ /// CustomTargetingValue represents a value used for custom targeting.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class CreativePage {
- private int totalResultSetSizeField;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class CustomTargetingValue {
+ private long customTargetingKeyIdField;
- private bool totalResultSetSizeFieldSpecified;
+ private bool customTargetingKeyIdFieldSpecified;
- private int startIndexField;
+ private long idField;
- private bool startIndexFieldSpecified;
+ private bool idFieldSpecified;
- private Creative[] resultsField;
+ private string nameField;
- /// The size of the total result set to which this page belongs.
+ private string displayNameField;
+
+ private CustomTargetingValueMatchType matchTypeField;
+
+ private bool matchTypeFieldSpecified;
+
+ private CustomTargetingValueStatus statusField;
+
+ private bool statusFieldSpecified;
+
+ /// The ID of the CustomTargetingKey for which this is the value.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public int totalResultSetSize {
+ public long customTargetingKeyId {
get {
- return this.totalResultSetSizeField;
+ return this.customTargetingKeyIdField;
}
set {
- this.totalResultSetSizeField = value;
- this.totalResultSetSizeSpecified = true;
+ this.customTargetingKeyIdField = value;
+ this.customTargetingKeyIdSpecified = true;
}
}
/// true, if a value is specified for , false otherwise.
+ /// cref="customTargetingKeyId" />, false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool totalResultSetSizeSpecified {
+ public bool customTargetingKeyIdSpecified {
get {
- return this.totalResultSetSizeFieldSpecified;
+ return this.customTargetingKeyIdFieldSpecified;
}
set {
- this.totalResultSetSizeFieldSpecified = value;
+ this.customTargetingKeyIdFieldSpecified = value;
}
}
- /// The absolute index in the total result set on which this page begins.
+ /// The ID of the CustomTargetingValue. This value is readonly and is
+ /// populated by Google.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 1)]
- public int startIndex {
+ public long id {
get {
- return this.startIndexField;
+ return this.idField;
}
set {
- this.startIndexField = value;
- this.startIndexSpecified = true;
+ this.idField = value;
+ this.idSpecified = true;
}
}
- /// true, if a value is specified for , false otherwise.
+ /// true, if a value is specified for ,
+ /// false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool startIndexSpecified {
+ public bool idSpecified {
get {
- return this.startIndexFieldSpecified;
+ return this.idFieldSpecified;
}
set {
- this.startIndexFieldSpecified = value;
+ this.idFieldSpecified = value;
}
}
- /// The collection of creatives contained within this page.
+ /// Name of the value. This can be used for encoding . If you don't want users to be
+ /// able to see potentially sensitive targeting information in the ad tags of your
+ /// site, you can encode your key/values. For example, you can create key/value
+ /// g1=abc to represent gender=female. Values can contain up to 40 characters each.
+ /// You can use alphanumeric characters and symbols other than the following: ", ',
+ /// =, !, +, #, *, ~, ;, ^, (, ), <, >, [, ]. Values are not data-specific;
+ /// all values are treated as string. For example, instead of using "age>=18 AND
+ /// <=34", try "18-34"
///
- [System.Xml.Serialization.XmlElementAttribute("results", Order = 2)]
- public Creative[] results {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 2)]
+ public string name {
get {
- return this.resultsField;
+ return this.nameField;
}
set {
- this.resultsField = value;
+ this.nameField = value;
}
}
- }
-
- [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
- public interface CreativeServiceInterfaceChannel : Google.Api.Ads.AdManager.v201808.CreativeServiceInterface, System.ServiceModel.IClientChannel
- {
- }
-
-
- /// Provides methods for adding, updating and retrieving Creative objects.
- ///
- [System.Diagnostics.DebuggerStepThroughAttribute()]
- [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
- public partial class CreativeService : AdManagerSoapClient, ICreativeService {
- /// Creates a new instance of the class.
+ /// Descriptive name for the value.
///
- public CreativeService() {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 3)]
+ public string displayName {
+ get {
+ return this.displayNameField;
+ }
+ set {
+ this.displayNameField = value;
+ }
}
- /// Creates a new instance of the class.
+ /// The way in which the CustomTargetingValue#name strings will be
+ /// matched.
///
- public CreativeService(string endpointConfigurationName)
- : base(endpointConfigurationName) {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 4)]
+ public CustomTargetingValueMatchType matchType {
+ get {
+ return this.matchTypeField;
+ }
+ set {
+ this.matchTypeField = value;
+ this.matchTypeSpecified = true;
+ }
}
- /// Creates a new instance of the class.
- ///
- public CreativeService(string endpointConfigurationName, string remoteAddress)
- : base(endpointConfigurationName, remoteAddress) {
+ /// true, if a value is specified for , false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool matchTypeSpecified {
+ get {
+ return this.matchTypeFieldSpecified;
+ }
+ set {
+ this.matchTypeFieldSpecified = value;
+ }
}
- /// Creates a new instance of the class.
+ /// Status of the CustomTargetingValue. This field is read-only. A
+ /// value can be activated and deactivated by calling CustomTargetingService#performCustomTargetingValueAction.
///
- public CreativeService(string endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress)
- : base(endpointConfigurationName, remoteAddress) {
+ [System.Xml.Serialization.XmlElementAttribute(Order = 5)]
+ public CustomTargetingValueStatus status {
+ get {
+ return this.statusField;
+ }
+ set {
+ this.statusField = value;
+ this.statusSpecified = true;
+ }
}
- /// Creates a new instance of the class.
- ///
- public CreativeService(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress)
- : base(binding, remoteAddress) {
- }
-
- [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
- Wrappers.CreativeService.createCreativesResponse Google.Api.Ads.AdManager.v201808.CreativeServiceInterface.createCreatives(Wrappers.CreativeService.createCreativesRequest request) {
- return base.Channel.createCreatives(request);
- }
-
- /// Creates new Creative objects.
- /// the creatives to create
- /// the created creatives with their IDs filled in
- public virtual Google.Api.Ads.AdManager.v201808.Creative[] createCreatives(Google.Api.Ads.AdManager.v201808.Creative[] creatives) {
- Wrappers.CreativeService.createCreativesRequest inValue = new Wrappers.CreativeService.createCreativesRequest();
- inValue.creatives = creatives;
- Wrappers.CreativeService.createCreativesResponse retVal = ((Google.Api.Ads.AdManager.v201808.CreativeServiceInterface)(this)).createCreatives(inValue);
- return retVal.rval;
- }
-
- [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
- System.Threading.Tasks.Task Google.Api.Ads.AdManager.v201808.CreativeServiceInterface.createCreativesAsync(Wrappers.CreativeService.createCreativesRequest request) {
- return base.Channel.createCreativesAsync(request);
- }
-
- public virtual System.Threading.Tasks.Task createCreativesAsync(Google.Api.Ads.AdManager.v201808.Creative[] creatives) {
- Wrappers.CreativeService.createCreativesRequest inValue = new Wrappers.CreativeService.createCreativesRequest();
- inValue.creatives = creatives;
- return System.Threading.Tasks.Task.Factory.StartNew(() => (((Google.Api.Ads.AdManager.v201808.CreativeServiceInterface)(this)).createCreativesAsync(inValue)).Result.rval);
+ /// true, if a value is specified for ,
+ /// false otherwise.
+ [System.Xml.Serialization.XmlIgnoreAttribute()]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool statusSpecified {
+ get {
+ return this.statusFieldSpecified;
+ }
+ set {
+ this.statusFieldSpecified = value;
+ }
}
+ }
- /// Gets a CreativePage of Creative objects that satisfy the given Statement#query. The following fields are supported
- /// for filtering:
- /// a Publisher Query Language statement used to
- /// filter a set of creatives
- /// the creatives that match the given filter
- public virtual Google.Api.Ads.AdManager.v201808.CreativePage getCreativesByStatement(Google.Api.Ads.AdManager.v201808.Statement filterStatement) {
- return base.Channel.getCreativesByStatement(filterStatement);
- }
- public virtual System.Threading.Tasks.Task getCreativesByStatementAsync(Google.Api.Ads.AdManager.v201808.Statement filterStatement) {
- return base.Channel.getCreativesByStatementAsync(filterStatement);
- }
+ /// Represents the ways in which CustomTargetingValue#name strings will be
+ /// matched with ad requests.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "CustomTargetingValue.MatchType", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum CustomTargetingValueMatchType {
+ /// Used for exact matching. For example, the targeting value will
+ /// only match to the ad request car=honda.
+ ///
+ EXACT = 0,
+ /// Used for lenient matching when at least one of the words in the ad request
+ /// matches the targeted value. The targeting value will match to ad
+ /// requests containing the word . So ad requests
+ /// car=honda or car=honda civic or car=buy
+ /// honda or car=how much does a honda cost will all have the
+ /// line item delivered.
This match type can not be used within an audience
+ /// segment rule.
+ ///
+ BROAD = 1,
+ /// Used for 'starts with' matching when the first few characters in the ad request
+ /// match all of the characters in the targeted value. The targeting value
+ /// car=honda will match to ad requests car=honda or
+ /// car=hondas for sale but not to want a honda.
+ ///
+ PREFIX = 2,
+ /// This is a combination of MatchType#BROAD and
+ /// matching. The targeting value car=honda will match to ad requests
+ /// that contain words that start with the characters in the targeted value, for
+ /// example with car=civic hondas.
This match type can not be used
+ /// within an audience segment rule.
+ ///
+ BROAD_PREFIX = 3,
+ /// Used for 'ends with' matching when the last characters in the ad request match
+ /// all of the characters in the targeted value. The targeting value
+ /// car=honda will match with ad requests car=honda or
+ /// car=I want a honda but not to for sale.
This match
+ /// type can not be used within line item targeting.
+ ///
+ SUFFIX = 4,
+ /// Used for 'within' matching when the string in the ad request contains the string
+ /// in the targeted value. The targeting value car=honda will match
+ /// with ad requests car=honda, car=I want a honda, and
+ /// also with car=hondas for sale, but not with car=misspelled
+ /// hond a.
This match type can not be used within line item
+ /// targeting.
+ ///
+ CONTAINS = 5,
+ /// The value returned if the actual value is not exposed by the requested API
+ /// version.
+ ///
+ UNKNOWN = 6,
+ }
- [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
- Wrappers.CreativeService.updateCreativesResponse Google.Api.Ads.AdManager.v201808.CreativeServiceInterface.updateCreatives(Wrappers.CreativeService.updateCreativesRequest request) {
- return base.Channel.updateCreatives(request);
- }
- /// Updates the specified Creative objects.
- /// the creatives to update
- /// the updated creatives
- public virtual Google.Api.Ads.AdManager.v201808.Creative[] updateCreatives(Google.Api.Ads.AdManager.v201808.Creative[] creatives) {
- Wrappers.CreativeService.updateCreativesRequest inValue = new Wrappers.CreativeService.updateCreativesRequest();
- inValue.creatives = creatives;
- Wrappers.CreativeService.updateCreativesResponse retVal = ((Google.Api.Ads.AdManager.v201808.CreativeServiceInterface)(this)).updateCreatives(inValue);
- return retVal.rval;
- }
+ /// Describes the statuses for CustomTargetingValue objects.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(TypeName = "CustomTargetingValue.Status", Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public enum CustomTargetingValueStatus {
+ /// The object is active.
+ ///
+ ACTIVE = 0,
+ /// The object is no longer active.
+ ///
+ INACTIVE = 1,
+ /// The value returned if the actual value is not exposed by the requested API
+ /// version.
+ ///
+ UNKNOWN = 2,
+ }
- [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
- System.Threading.Tasks.Task Google.Api.Ads.AdManager.v201808.CreativeServiceInterface.updateCreativesAsync(Wrappers.CreativeService.updateCreativesRequest request) {
- return base.Channel.updateCreativesAsync(request);
- }
- public virtual System.Threading.Tasks.Task updateCreativesAsync(Google.Api.Ads.AdManager.v201808.Creative[] creatives) {
- Wrappers.CreativeService.updateCreativesRequest inValue = new Wrappers.CreativeService.updateCreativesRequest();
- inValue.creatives = creatives;
- return System.Threading.Tasks.Task.Factory.StartNew(() => (((Google.Api.Ads.AdManager.v201808.CreativeServiceInterface)(this)).updateCreativesAsync(inValue)).Result.rval);
- }
- }
- namespace Wrappers.CreativeSetService
- {
- }
- /// A creative set is comprised of a master creative and its companion creatives.
+ /// Captures a page of CustomTargetingKey objects.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class CreativeSet {
- private long idField;
-
- private bool idFieldSpecified;
-
- private string nameField;
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class CustomTargetingKeyPage {
+ private int totalResultSetSizeField;
- private long masterCreativeIdField;
+ private bool totalResultSetSizeFieldSpecified;
- private bool masterCreativeIdFieldSpecified;
+ private int startIndexField;
- private long[] companionCreativeIdsField;
+ private bool startIndexFieldSpecified;
- private DateTime lastModifiedDateTimeField;
+ private CustomTargetingKey[] resultsField;
- /// Uniquely identifies the CreativeSet. This attribute is read-only
- /// and is assigned by Google when a creative set is created.
+ /// The size of the total result set to which this page belongs.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 0)]
- public long id {
+ public int totalResultSetSize {
get {
- return this.idField;
+ return this.totalResultSetSizeField;
}
set {
- this.idField = value;
- this.idSpecified = true;
+ this.totalResultSetSizeField = value;
+ this.totalResultSetSizeSpecified = true;
}
}
- /// true, if a value is specified for ,
- /// false otherwise.
+ /// true, if a value is specified for , false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool idSpecified {
+ public bool totalResultSetSizeSpecified {
get {
- return this.idFieldSpecified;
+ return this.totalResultSetSizeFieldSpecified;
}
set {
- this.idFieldSpecified = value;
+ this.totalResultSetSizeFieldSpecified = value;
}
}
- /// The name of the creative set. This attribute is required and has a maximum
- /// length of 255 characters.
+ /// The absolute index in the total result set on which this page begins.
///
[System.Xml.Serialization.XmlElementAttribute(Order = 1)]
- public string name {
- get {
- return this.nameField;
- }
- set {
- this.nameField = value;
- }
- }
-
- /// The ID of the master creative associated with this creative set. This attribute
- /// is required.
- ///
- [System.Xml.Serialization.XmlElementAttribute(Order = 2)]
- public long masterCreativeId {
+ public int startIndex {
get {
- return this.masterCreativeIdField;
+ return this.startIndexField;
}
set {
- this.masterCreativeIdField = value;
- this.masterCreativeIdSpecified = true;
+ this.startIndexField = value;
+ this.startIndexSpecified = true;
}
}
- /// true, if a value is specified for , false otherwise.
+ /// true, if a value is specified for , false otherwise.
[System.Xml.Serialization.XmlIgnoreAttribute()]
[EditorBrowsable(EditorBrowsableState.Never)]
- public bool masterCreativeIdSpecified {
- get {
- return this.masterCreativeIdFieldSpecified;
- }
- set {
- this.masterCreativeIdFieldSpecified = value;
- }
- }
-
- /// The IDs of the companion creatives associated with this creative set. This
- /// attribute is required.
- ///
- [System.Xml.Serialization.XmlElementAttribute("companionCreativeIds", Order = 3)]
- public long[] companionCreativeIds {
+ public bool startIndexSpecified {
get {
- return this.companionCreativeIdsField;
+ return this.startIndexFieldSpecified;
}
set {
- this.companionCreativeIdsField = value;
+ this.startIndexFieldSpecified = value;
}
}
- /// The date and time this creative set was last modified.
+ /// The collection of custom targeting keys contained within this page.
///
- [System.Xml.Serialization.XmlElementAttribute(Order = 4)]
- public DateTime lastModifiedDateTime {
+ [System.Xml.Serialization.XmlElementAttribute("results", Order = 2)]
+ public CustomTargetingKey[] results {
get {
- return this.lastModifiedDateTimeField;
+ return this.resultsField;
}
set {
- this.lastModifiedDateTimeField = value;
+ this.resultsField = value;
}
}
}
- [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
- [System.ServiceModel.ServiceContractAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808", ConfigurationName = "Google.Api.Ads.AdManager.v201808.CreativeSetServiceInterface")]
- public interface CreativeSetServiceInterface
- {
- [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
- [System.ServiceModel.FaultContractAttribute(typeof(Google.Api.Ads.AdManager.v201808.ApiException), Action = "", Name = "ApiExceptionFault")]
- [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults = true)]
- [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApplicationException))]
- [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
- Google.Api.Ads.AdManager.v201808.CreativeSet createCreativeSet(Google.Api.Ads.AdManager.v201808.CreativeSet creativeSet);
-
- [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
- [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
- System.Threading.Tasks.Task createCreativeSetAsync(Google.Api.Ads.AdManager.v201808.CreativeSet creativeSet);
-
- [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
- [System.ServiceModel.FaultContractAttribute(typeof(Google.Api.Ads.AdManager.v201808.ApiException), Action = "", Name = "ApiExceptionFault")]
- [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults = true)]
- [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApplicationException))]
- [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
- Google.Api.Ads.AdManager.v201808.CreativeSetPage getCreativeSetsByStatement(Google.Api.Ads.AdManager.v201808.Statement statement);
-
- [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
- [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
- System.Threading.Tasks.Task getCreativeSetsByStatementAsync(Google.Api.Ads.AdManager.v201808.Statement statement);
-
- [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
- [System.ServiceModel.FaultContractAttribute(typeof(Google.Api.Ads.AdManager.v201808.ApiException), Action = "", Name = "ApiExceptionFault")]
- [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults = true)]
- [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApplicationException))]
- [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
- Google.Api.Ads.AdManager.v201808.CreativeSet updateCreativeSet(Google.Api.Ads.AdManager.v201808.CreativeSet creativeSet);
-
- [System.ServiceModel.OperationContractAttribute(Action = "", ReplyAction = "*")]
- [return: System.ServiceModel.MessageParameterAttribute(Name = "rval")]
- System.Threading.Tasks.Task updateCreativeSetAsync(Google.Api.Ads.AdManager.v201808.CreativeSet creativeSet);
- }
-
-
- /// Captures a page of CreativeSet objects.
+ /// Captures a page of CustomTargetingValue
+ /// objects.
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201808")]
- public partial class CreativeSetPage {
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class CustomTargetingValuePage {
private int totalResultSetSizeField;
private bool totalResultSetSizeFieldSpecified;
@@ -13131,7 +13714,7 @@ public partial class CreativeSetPage {
private bool startIndexFieldSpecified;
- private CreativeSet[] resultsField;
+ private CustomTargetingValue[] resultsField;
/// The size of the total result set to which this page belongs.
///
@@ -13185,10 +13768,10 @@ public bool startIndexSpecified {
}
}
- /// The collection of creative sets contained within this page.
+ /// The collection of custom targeting keys contained within this page.
///
[System.Xml.Serialization.XmlElementAttribute("results", Order = 2)]
- public CreativeSet[] results {
+ public CustomTargetingValue[] results {
get {
return this.resultsField;
}
@@ -13199,514 +13782,526 @@ public CreativeSet[] results {
}
+ /// Represents the actions that can be performed on CustomTargetingKey objects.
+ ///
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(DeleteCustomTargetingKeys))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(ActivateCustomTargetingKeys))]
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public abstract partial class CustomTargetingKeyAction {
+ }
+
+
+ /// Represents the delete action that can be performed on CustomTargetingKey objects. Deleting a key will
+ /// not delete the CustomTargetingValue objects
+ /// associated with it. Also, if a custom targeting key that has been deleted is
+ /// recreated, any previous custom targeting values associated with it that were not
+ /// deleted will continue to exist.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class DeleteCustomTargetingKeys : CustomTargetingKeyAction {
+ }
+
+
+ /// The action used for activating inactive (i.e. deleted) CustomTargetingKey objects.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class ActivateCustomTargetingKeys : CustomTargetingKeyAction {
+ }
+
+
+ /// Represents the actions that can be performed on CustomTargetingValue objects.
+ ///
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(DeleteCustomTargetingValues))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(ActivateCustomTargetingValues))]
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public abstract partial class CustomTargetingValueAction {
+ }
+
+
+ /// Represents the delete action that can be performed on CustomTargetingValue objects.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class DeleteCustomTargetingValues : CustomTargetingValueAction {
+ }
+
+
+ /// The action used for activating inactive (i.e. deleted) CustomTargetingValue objects.
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("svcutil", "4.6.1055.0")]
+ [System.SerializableAttribute()]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace = "https://www.google.com/apis/ads/publisher/v201908")]
+ public partial class ActivateCustomTargetingValues : CustomTargetingValueAction {
+ }
+
+
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
- public interface CreativeSetServiceInterfaceChannel : Google.Api.Ads.AdManager.v201808.CreativeSetServiceInterface, System.ServiceModel.IClientChannel
+ public interface CustomTargetingServiceInterfaceChannel : Google.Api.Ads.AdManager.v201908.CustomTargetingServiceInterface, System.ServiceModel.IClientChannel
{
}
- /// Provides methods for adding, updating and retrieving CreativeSet objects.
+ /// Provides operations for creating, updating and retrieving CustomTargetingKey and CustomTargetingValue objects.
///
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
- public partial class CreativeSetService : AdManagerSoapClient, ICreativeSetService {
- /// Creates a new instance of the class.
- ///
- public CreativeSetService() {
+ public partial class CustomTargetingService : AdManagerSoapClient, ICustomTargetingService {
+ /// Creates a new instance of the
+ /// class.
+ public CustomTargetingService() {
}
- /// Creates a new instance of the class.
- ///
- public CreativeSetService(string endpointConfigurationName)
+ /// Creates a new instance of the
+ /// class.
+ public CustomTargetingService(string endpointConfigurationName)
: base(endpointConfigurationName) {
}
- /// Creates a new instance of the class.
- ///
- public CreativeSetService(string endpointConfigurationName, string remoteAddress)
+ /// Creates a new instance of the
+ /// class.
+ public CustomTargetingService(string endpointConfigurationName, string remoteAddress)
: base(endpointConfigurationName, remoteAddress) {
}
- /// Creates a new instance of the class.
- ///
- public CreativeSetService(string endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress)
+ /// Creates a new instance of the
+ /// class.
+ public CustomTargetingService(string endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress)
: base(endpointConfigurationName, remoteAddress) {
}
- /// Creates a new instance of the class.
- ///
- public CreativeSetService(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress)
+ /// Creates a new instance of the
+ /// class.
+ public CustomTargetingService(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress)
: base(binding, remoteAddress) {
}
- /// Creates a new CreativeSet.
- /// the creative set to create
- /// the creative set with its ID filled in
- public virtual Google.Api.Ads.AdManager.v201808.CreativeSet createCreativeSet(Google.Api.Ads.AdManager.v201808.CreativeSet creativeSet) {
- return base.Channel.createCreativeSet(creativeSet);
+ [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
+ Wrappers.CustomTargetingService.createCustomTargetingKeysResponse Google.Api.Ads.AdManager.v201908.CustomTargetingServiceInterface.createCustomTargetingKeys(Wrappers.CustomTargetingService.createCustomTargetingKeysRequest request) {
+ return base.Channel.createCustomTargetingKeys(request);
}
- public virtual System.Threading.Tasks.Task createCreativeSetAsync(Google.Api.Ads.AdManager.v201808.CreativeSet creativeSet) {
- return base.Channel.createCreativeSetAsync(creativeSet);
+ /// Creates new CustomTargetingKey objects. The
+ /// following fields are required:
+ /// the custom targeting keys to update
+ /// the updated custom targeting keys
+ public virtual Google.Api.Ads.AdManager.v201908.CustomTargetingKey[] createCustomTargetingKeys(Google.Api.Ads.AdManager.v201908.CustomTargetingKey[] keys) {
+ Wrappers.CustomTargetingService.createCustomTargetingKeysRequest inValue = new Wrappers.CustomTargetingService.createCustomTargetingKeysRequest();
+ inValue.keys = keys;
+ Wrappers.CustomTargetingService.createCustomTargetingKeysResponse retVal = ((Google.Api.Ads.AdManager.v201908.CustomTargetingServiceInterface)(this)).createCustomTargetingKeys(inValue);
+ return retVal.rval;
}
- /// Gets a CreativeSetPage of CreativeSet objects that satisfy the given Statement#query. The following fields are supported
- /// for filtering: