/// <summary> /// Run the code example. /// </summary> /// <param name="user">The DFP user object running the code example.</param> public override void Run(DfpUser user) { // Get the CreativeService. CustomTargetingService customTargetingService = (CustomTargetingService)user.GetService(DfpService.v201311.CustomTargetingService); try { // Create a statement to only select predefined custom targeting keys. Statement filterStatement = new StatementBuilder("WHERE type = :type LIMIT 500").AddValue( "type", CustomTargetingKeyType.PREDEFINED.ToString()).ToStatement(); // Get custom targeting keys by statement. CustomTargetingKeyPage page = customTargetingService.getCustomTargetingKeysByStatement(filterStatement); if (page.results != null) { int i = page.startIndex; foreach (CustomTargetingKey customTargetingKey in page.results) { Console.WriteLine("{0}) Custom targeting key with ID \"{1}\", name \"{2}\", and " + "display name \"{3}\" was found.", i, customTargetingKey.id, customTargetingKey.name, customTargetingKey.displayName); i++; } } Console.WriteLine("Number of results found: {0}", page.totalResultSetSize); } catch (Exception ex) { Console.WriteLine("Failed to get predefined custom targeting keys. Exception " + "says \"{0}\"", ex.Message); } }
/// <summary> /// Run the code example. /// </summary> /// <param name="user">The DFP user object running the code example.</param> public override void Run(DfpUser user) { // Get the CreativeService. CustomTargetingService customTargetingService = (CustomTargetingService)user.GetService(DfpService.v201311.CustomTargetingService); // Create a statement to get all custom targeting keys. Statement filterStatement = new Statement(); filterStatement.query = "LIMIT 500"; try { // Get custom targeting keys by statement. CustomTargetingKeyPage page = customTargetingService.getCustomTargetingKeysByStatement(filterStatement); if (page.results != null) { CustomTargetingKey[] customTargetingKeys = page.results; // Update each local custom targeting key object by changing its display // name. foreach (CustomTargetingKey customTargetingKey in customTargetingKeys) { if (customTargetingKey.displayName == null) { customTargetingKey.displayName = customTargetingKey.name; } customTargetingKey.displayName = customTargetingKey.displayName + " (Deprecated)"; } // Update the custom targeting keys on the server. customTargetingKeys = customTargetingService.updateCustomTargetingKeys(customTargetingKeys); if (customTargetingKeys != null) { foreach (CustomTargetingKey customTargetingKey in customTargetingKeys) { Console.WriteLine("Custom targeting key with ID \"{0}\", name \"{1}\", and " + "display name \"{2}\" was updated.", customTargetingKey.id, customTargetingKey.name, customTargetingKey.displayName); } } else { Console.WriteLine("No custom targeting keys updated."); } } else { Console.WriteLine("No custom targeting keys found to update."); } } catch (Exception ex) { Console.WriteLine("Failed to update display name of custom targeting keys. Exception " + "says \"{0}\"", ex.Message); } }
/// <summary> /// Run the code example. /// </summary> public void Run(AdManagerUser user) { using (CustomTargetingService customTargetingService = user.GetService <CustomTargetingService>()) { // Set the ID of the custom targeting key to update. int customTargetingKeyId = int.Parse(_T("INSERT_CUSTOM_TARGETING_KEY_ID_HERE")); // Create a statement to get the custom targeting key. StatementBuilder statementBuilder = new StatementBuilder() .Where("id = :id") .OrderBy("id ASC") .Limit(1) .AddValue("id", customTargetingKeyId); try { // Get custom targeting keys by statement. CustomTargetingKeyPage page = customTargetingService.getCustomTargetingKeysByStatement( statementBuilder.ToStatement()); CustomTargetingKey customTargetingKey = page.results[0]; // Update each local custom targeting key object by changing its display name. if (customTargetingKey.displayName == null) { customTargetingKey.displayName = customTargetingKey.name; } customTargetingKey.displayName = customTargetingKey.displayName + " (Deprecated)"; // Update the custom targeting keys on the server. CustomTargetingKey[] customTargetingKeys = customTargetingService.updateCustomTargetingKeys(new CustomTargetingKey[] { customTargetingKey }); foreach (CustomTargetingKey updatedCustomTargetingKey in customTargetingKeys) { Console.WriteLine( "Custom targeting key with ID \"{0}\", name \"{1}\", and " + "display name \"{2}\" was updated.", updatedCustomTargetingKey.id, updatedCustomTargetingKey.name, updatedCustomTargetingKey.displayName); } } catch (Exception e) { Console.WriteLine( "Failed to update display name of custom targeting keys. Exception " + "says \"{0}\"", e.Message); } } }
private List <long> getPredefinedCustomTargetingKeyIds(DfpUser dfpUser) { List <long> customTargetingKeyIds = new List <long>(); CustomTargetingService customTargetingService = (CustomTargetingService)dfpUser.GetService(DfpService.v201608.CustomTargetingService); // Create a statement to select custom targeting keys. int pageSize = StatementBuilder.SUGGESTED_PAGE_LIMIT; StatementBuilder statementBuilder = new StatementBuilder() .Where("type = :type") .OrderBy("id ASC") .Limit(pageSize) .AddValue("type", CustomTargetingKeyType.PREDEFINED.ToString()); // Retrieve a small amount of custom targeting keys at a time, paging through until all // custom targeting keys have been retrieved. int totalResultSetSize = 0; do { CustomTargetingKeyPage page = customTargetingService.getCustomTargetingKeysByStatement( statementBuilder.ToStatement()); // Print out some information for each custom targeting key. if (page.results != null) { totalResultSetSize = page.totalResultSetSize; int i = page.startIndex; foreach (CustomTargetingKey customTargetingKey in page.results) { Console.WriteLine( "{0}) Custom targeting key with ID {1}, " + "name \"{2}\", " + "and display name \"{3}\" was found.", i++, customTargetingKey.id, customTargetingKey.name, customTargetingKey.displayName ); customTargetingKeyIds.Add(customTargetingKey.id); } } statementBuilder.IncreaseOffsetBy(pageSize); } while (statementBuilder.GetOffset() < totalResultSetSize); Console.WriteLine("Number of keys found: {0}", totalResultSetSize); return(customTargetingKeyIds); }
/// <summary> /// Run the code example. /// </summary> /// <param name="user">The DFP user object running the code example.</param> public override void Run(DfpUser user) { // Get the CustomTargetingService. CustomTargetingService customTargetingService = (CustomTargetingService)user.GetService(DfpService.v201405.CustomTargetingService); // Create a statement to only select predefined custom targeting keys. StatementBuilder statementBuilder = new StatementBuilder() .Where("type = :type") .OrderBy("id ASC") .Limit(StatementBuilder.SUGGESTED_PAGE_LIMIT) .AddValue("type", CustomTargetingKeyType.PREDEFINED.ToString()); // Set default for page. CustomTargetingKeyPage page = new CustomTargetingKeyPage(); try { do { // Get custom targeting keys by statement. page = customTargetingService.getCustomTargetingKeysByStatement( statementBuilder.ToStatement()); if (page.results != null) { int i = page.startIndex; foreach (CustomTargetingKey customTargetingKey in page.results) { Console.WriteLine("{0}) Custom targeting key with ID \"{1}\", name \"{2}\", and " + "display name \"{3}\" was found.", i, customTargetingKey.id, customTargetingKey.name, customTargetingKey.displayName); i++; } } statementBuilder.IncreaseOffsetBy(StatementBuilder.SUGGESTED_PAGE_LIMIT); } while (statementBuilder.GetOffset() < page.totalResultSetSize); Console.WriteLine("Number of results found: {0}", page.totalResultSetSize); } catch (Exception ex) { Console.WriteLine("Failed to get predefined custom targeting keys. Exception " + "says \"{0}\"", ex.Message); } }
private static List <long> getPredefinedCustomTargetingKeyIds(DfpUser user) { List <long> customTargetingKeyIds = new List <long>(); CustomTargetingService customTargetingService = (CustomTargetingService)user.GetService(DfpService.v201608.CustomTargetingService); StatementBuilder statementBuilder = new StatementBuilder() .Where("type = :type") .OrderBy("id ASC") .Limit(StatementBuilder.SUGGESTED_PAGE_LIMIT) .AddValue("type", CustomTargetingKeyType.PREDEFINED.ToString()); CustomTargetingKeyPage page = new CustomTargetingKeyPage(); do { page = customTargetingService.getCustomTargetingKeysByStatement( statementBuilder.ToStatement()); if (page.results != null) { // Print out some information for each custom targeting value. int i = page.startIndex; foreach (CustomTargetingKey customTargetingKey in page.results) { Console.WriteLine("{0}) Custom targeting value with ID \"{1}\", name \"{2}\", " + "and display name \"{3}\" was found.", i++, customTargetingKey.id, customTargetingKey.name, customTargetingKey.displayName); customTargetingKeyIds.Add(customTargetingKey.id); } } statementBuilder.IncreaseOffsetBy(StatementBuilder.SUGGESTED_PAGE_LIMIT); } while (statementBuilder.GetOffset() < page.totalResultSetSize); return(customTargetingKeyIds); }
/// <summary> /// Run the code example. /// </summary> /// <param name="user">The DFP user object running the code example.</param> public override void Run(DfpUser user) { // Get the CustomTargetingService. CustomTargetingService customTargetingService = (CustomTargetingService) user.GetService(DfpService.v201508.CustomTargetingService); // Create a statement to only select predefined custom targeting keys. StatementBuilder statementBuilder = new StatementBuilder() .Where("type = :type") .OrderBy("id ASC") .Limit(StatementBuilder.SUGGESTED_PAGE_LIMIT) .AddValue("type", CustomTargetingKeyType.PREDEFINED.ToString()); // Set default for page. CustomTargetingKeyPage page = new CustomTargetingKeyPage(); try { do { // Get custom targeting keys by statement. page = customTargetingService.getCustomTargetingKeysByStatement( statementBuilder.ToStatement()); if (page.results != null) { int i = page.startIndex; foreach (CustomTargetingKey customTargetingKey in page.results) { Console.WriteLine("{0}) Custom targeting key with ID \"{1}\", name \"{2}\", and " + "display name \"{3}\" was found.", i, customTargetingKey.id, customTargetingKey.name, customTargetingKey.displayName); i++; } } statementBuilder.IncreaseOffsetBy(StatementBuilder.SUGGESTED_PAGE_LIMIT); } while (statementBuilder.GetOffset() < page.totalResultSetSize); Console.WriteLine("Number of results found: {0}", page.totalResultSetSize); } catch (Exception e) { Console.WriteLine("Failed to get predefined custom targeting keys. Exception " + "says \"{0}\"", e.Message); } }
/// <summary> /// Run the code example. /// </summary> public void Run(DfpUser user) { // Get the CustomTargetingService. CustomTargetingService customTargetingService = (CustomTargetingService)user.GetService(DfpService.v201605.CustomTargetingService); // Create a statement to get all custom targeting keys. StatementBuilder keyStatementBuilder = new StatementBuilder() .OrderBy("id ASC") .Limit(StatementBuilder.SUGGESTED_PAGE_LIMIT); // Set default for page. CustomTargetingKeyPage keyPage = new CustomTargetingKeyPage(); try { do { // Get custom targeting keys by statement. keyPage = customTargetingService.getCustomTargetingKeysByStatement( keyStatementBuilder.ToStatement()); if (keyPage.results != null) { int i = keyPage.startIndex; foreach (CustomTargetingKey key in keyPage.results) { Console.WriteLine("{0}) Custom targeting key with ID \"{1}\", name \"{2}\", " + "display name \"{3}\", and type \"{4}\" was found.", i, key.id, key.name, key.displayName, key.type); // Create a statement to get all custom targeting values for a // custom targeting key (required) by its ID. StatementBuilder valueStatementBuilder = new StatementBuilder() .Where("customTargetingKeyId = :customTargetingKeyId") .OrderBy("id ASC") .Limit(StatementBuilder.SUGGESTED_PAGE_LIMIT) .AddValue("customTargetingKeyId", key.id); // Set default for page. CustomTargetingValuePage valuePage = new CustomTargetingValuePage(); do { // Get custom targeting values by statement. valuePage = customTargetingService.getCustomTargetingValuesByStatement( valueStatementBuilder.ToStatement()); if (valuePage.results != null) { int j = valuePage.startIndex; foreach (CustomTargetingValue value in valuePage.results) { Console.WriteLine("\t{0}) Custom targeting value with ID \"{1}\", name " + "\"{2}\", and display name \"{3}\" was found.", j, value.id, value.name, value.displayName); j++; } } valueStatementBuilder.IncreaseOffsetBy(StatementBuilder.SUGGESTED_PAGE_LIMIT); } while (valueStatementBuilder.GetOffset() < valuePage.totalResultSetSize); i++; } } keyStatementBuilder.IncreaseOffsetBy(StatementBuilder.SUGGESTED_PAGE_LIMIT); } while (keyStatementBuilder.GetOffset() < keyPage.totalResultSetSize); Console.WriteLine("Number of results found: {0}", keyPage.totalResultSetSize); } catch (Exception e) { Console.WriteLine("Failed to get custom targeting keys and the values. Exception " + "says \"{0}\"", e.Message); } }
/// <summary> /// Run the code example. /// </summary> /// <param name="user">The DFP user object running the code example.</param> public override void Run(DfpUser user) { // Get the CustomTargetingService. CustomTargetingService customTargetingService = (CustomTargetingService) user.GetService(DfpService.v201511.CustomTargetingService); // Create a statement to get all custom targeting keys. StatementBuilder keyStatementBuilder = new StatementBuilder() .OrderBy("id ASC") .Limit(StatementBuilder.SUGGESTED_PAGE_LIMIT); // Set default for page. CustomTargetingKeyPage keyPage = new CustomTargetingKeyPage(); try { do { // Get custom targeting keys by statement. keyPage = customTargetingService.getCustomTargetingKeysByStatement( keyStatementBuilder.ToStatement()); if (keyPage.results != null) { int i = keyPage.startIndex; foreach (CustomTargetingKey key in keyPage.results) { Console.WriteLine("{0}) Custom targeting key with ID \"{1}\", name \"{2}\", " + "display name \"{3}\", and type \"{4}\" was found.", i, key.id, key.name, key.displayName, key.type); // Create a statement to get all custom targeting values for a // custom targeting key (required) by its ID. StatementBuilder valueStatementBuilder = new StatementBuilder() .Where("customTargetingKeyId = :customTargetingKeyId") .OrderBy("id ASC") .Limit(StatementBuilder.SUGGESTED_PAGE_LIMIT) .AddValue("customTargetingKeyId", key.id); // Set default for page. CustomTargetingValuePage valuePage = new CustomTargetingValuePage(); do { // Get custom targeting values by statement. valuePage = customTargetingService.getCustomTargetingValuesByStatement( valueStatementBuilder.ToStatement()); if (valuePage.results != null) { int j = valuePage.startIndex; foreach (CustomTargetingValue value in valuePage.results) { Console.WriteLine("\t{0}) Custom targeting value with ID \"{1}\", name " + "\"{2}\", and display name \"{3}\" was found.", j, value.id, value.name, value.displayName); j++; } } valueStatementBuilder.IncreaseOffsetBy(StatementBuilder.SUGGESTED_PAGE_LIMIT); } while (valueStatementBuilder.GetOffset() < valuePage.totalResultSetSize); i++; } } keyStatementBuilder.IncreaseOffsetBy(StatementBuilder.SUGGESTED_PAGE_LIMIT); } while (keyStatementBuilder.GetOffset() < keyPage.totalResultSetSize); Console.WriteLine("Number of results found: {0}", keyPage.totalResultSetSize); } catch (Exception e) { Console.WriteLine("Failed to get custom targeting keys and the values. Exception " + "says \"{0}\"", e.Message); } }
/// <summary> /// Run the code example. /// </summary> /// <param name="user">The DFP user object running the code example.</param> public override void Run(DfpUser user) { // Get the CreativeService. CustomTargetingService customTargetingService = (CustomTargetingService)user.GetService(DfpService.v201311.CustomTargetingService); // Sets defaults for page and filter. CustomTargetingKeyPage keyPage = new CustomTargetingKeyPage(); Statement keyFilterStatement = new Statement(); int keyOffset = 0; try { do { // Create a statement to get all custom targeting keys. keyFilterStatement.query = "LIMIT 500 OFFSET " + keyOffset; // Get custom targeting keys by statement. keyPage = customTargetingService.getCustomTargetingKeysByStatement(keyFilterStatement); if (keyPage.results != null) { int i = keyPage.startIndex; foreach (CustomTargetingKey key in keyPage.results) { Console.WriteLine("{0}) Custom targeting key with ID \"{1}\", name \"{2}\", " + "display name \"{3}\", and type \"{4}\" was found.", i, key.id, key.name, key.displayName, key.type); // Sets defaults for page and filter. CustomTargetingValuePage valuePage = new CustomTargetingValuePage(); Statement valueFilterStatement = new Statement(); int valueOffset = 0; do { // Create a statement to get all custom targeting values for a // custom targeting key (required) by its ID. valueFilterStatement.query = string.Format("WHERE customTargetingKeyId = {0} " + "LIMIT 500 OFFSET {1}", key.id, valueOffset); // Get custom targeting values by statement. valuePage = customTargetingService.getCustomTargetingValuesByStatement( valueFilterStatement); if (valuePage.results != null) { int j = valuePage.startIndex; foreach (CustomTargetingValue value in valuePage.results) { Console.WriteLine("\t{0}) Custom targeting value with ID \"{1}\", name " + "\"{2}\", and display name \"{3}\" was found.", j, value.id, value.name, value.displayName); j++; } } valueOffset += 500; } while (valuePage.results != null && valuePage.results.Length == 500); i++; } } keyOffset += 500; } while (keyPage.results != null && keyPage.results.Length == 500); Console.WriteLine("Number of results found: {0}", keyPage.totalResultSetSize); } catch (Exception ex) { Console.WriteLine("Failed to get custom targeting keys and the values. Exception " + "says \"{0}\"", ex.Message); } }