Beispiel #1
0
        /// <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);
            }
        }
Beispiel #2
0
        /// <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);
            }
        }
Beispiel #3
0
        /// <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);
      }
    }
Beispiel #8
0
        /// <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);
      }
    }
Beispiel #10
0
        /// <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);
            }
        }