Search in sources :

Example 1 with BasicUserList

use of com.google.api.ads.adwords.axis.v201809.rm.BasicUserList in project googleads-java-lib by googleads.

the class AddAudience method runExample.

/**
 * Runs the example.
 *
 * @param adWordsServices the services factory.
 * @param session the session.
 * @throws ApiException if the API request failed with one or more service errors.
 * @throws RemoteException if the API request failed due to other errors.
 */
public static void runExample(AdWordsServicesInterface adWordsServices, AdWordsSession session) throws RemoteException {
    // Get the UserListService.
    AdwordsUserListServiceInterface userListService = adWordsServices.get(session, AdwordsUserListServiceInterface.class);
    // Get the ConversionTrackerService.
    ConversionTrackerServiceInterface conversionTrackerService = adWordsServices.get(session, ConversionTrackerServiceInterface.class);
    // Create conversion type (tag).
    UserListConversionType conversionType = new UserListConversionType();
    conversionType.setName("Mars cruise customers #" + System.currentTimeMillis());
    // Create remarketing user list.
    BasicUserList userList = new BasicUserList();
    userList.setName("Mars cruise customers #" + System.currentTimeMillis());
    userList.setDescription("A list of mars cruise customers in the last year");
    userList.setMembershipLifeSpan(365L);
    userList.setConversionTypes(new UserListConversionType[] { conversionType });
    // You can optionally provide these field(s).
    userList.setStatus(UserListMembershipStatus.OPEN);
    // Create operations.
    UserListOperation operation = new UserListOperation();
    operation.setOperand(userList);
    operation.setOperator(Operator.ADD);
    UserListOperation[] operations = new UserListOperation[] { operation };
    // Add user list.
    UserListReturnValue result = userListService.mutate(operations);
    // Display results.
    // Capture the ID(s) of the conversion.
    List<String> conversionIds = new ArrayList<>();
    for (UserList userListResult : result.getValue()) {
        if (userListResult instanceof BasicUserList) {
            BasicUserList remarketingUserList = (BasicUserList) userListResult;
            for (UserListConversionType userListConversionType : remarketingUserList.getConversionTypes()) {
                conversionIds.add(userListConversionType.getId().toString());
            }
        }
    }
    // Create predicate and selector.
    Selector selector = new SelectorBuilder().fields("Id", "GoogleGlobalSiteTag", "GoogleEventSnippet").in(AdwordsUserListField.Id, conversionIds.toArray(new String[0])).build();
    // Get all conversion trackers.
    Map<Long, AdWordsConversionTracker> conversionTrackers = new HashMap<Long, AdWordsConversionTracker>();
    ConversionTrackerPage page = conversionTrackerService.get(selector);
    if (page != null && page.getEntries() != null) {
        conversionTrackers = Arrays.stream(page.getEntries()).collect(Collectors.toMap(conversionTracker -> conversionTracker.getId(), conversionTracker -> (AdWordsConversionTracker) conversionTracker));
    }
    // Display user lists.
    for (UserList userListResult : result.getValue()) {
        System.out.printf("User list with name '%s' and ID %d was added.%n", userListResult.getName(), userListResult.getId());
        // Display user list associated conversion code snippets.
        if (userListResult instanceof BasicUserList) {
            BasicUserList remarketingUserList = (BasicUserList) userListResult;
            for (UserListConversionType userListConversionType : remarketingUserList.getConversionTypes()) {
                ConversionTracker conversionTracker = conversionTrackers.get(userListConversionType.getId());
                System.out.printf("Google global site tag:%n%s%n%n", conversionTracker.getGoogleGlobalSiteTag());
                System.out.printf("Google event snippet:%n%s%n%n", conversionTracker.getGoogleEventSnippet());
            }
        }
    }
}
Also used : ConversionTrackerPage(com.google.api.ads.adwords.axis.v201809.cm.ConversionTrackerPage) AdwordsUserListServiceInterface(com.google.api.ads.adwords.axis.v201809.rm.AdwordsUserListServiceInterface) AdWordsConversionTracker(com.google.api.ads.adwords.axis.v201809.cm.AdWordsConversionTracker) ConversionTracker(com.google.api.ads.adwords.axis.v201809.cm.ConversionTracker) AdWordsConversionTracker(com.google.api.ads.adwords.axis.v201809.cm.AdWordsConversionTracker) HashMap(java.util.HashMap) ArrayList(java.util.ArrayList) BasicUserList(com.google.api.ads.adwords.axis.v201809.rm.BasicUserList) UserListOperation(com.google.api.ads.adwords.axis.v201809.rm.UserListOperation) UserListReturnValue(com.google.api.ads.adwords.axis.v201809.rm.UserListReturnValue) SelectorBuilder(com.google.api.ads.adwords.axis.utils.v201809.SelectorBuilder) ConversionTrackerServiceInterface(com.google.api.ads.adwords.axis.v201809.cm.ConversionTrackerServiceInterface) UserList(com.google.api.ads.adwords.axis.v201809.rm.UserList) BasicUserList(com.google.api.ads.adwords.axis.v201809.rm.BasicUserList) UserListConversionType(com.google.api.ads.adwords.axis.v201809.rm.UserListConversionType) Selector(com.google.api.ads.adwords.axis.v201809.cm.Selector)

Aggregations

SelectorBuilder (com.google.api.ads.adwords.axis.utils.v201809.SelectorBuilder)1 AdWordsConversionTracker (com.google.api.ads.adwords.axis.v201809.cm.AdWordsConversionTracker)1 ConversionTracker (com.google.api.ads.adwords.axis.v201809.cm.ConversionTracker)1 ConversionTrackerPage (com.google.api.ads.adwords.axis.v201809.cm.ConversionTrackerPage)1 ConversionTrackerServiceInterface (com.google.api.ads.adwords.axis.v201809.cm.ConversionTrackerServiceInterface)1 Selector (com.google.api.ads.adwords.axis.v201809.cm.Selector)1 AdwordsUserListServiceInterface (com.google.api.ads.adwords.axis.v201809.rm.AdwordsUserListServiceInterface)1 BasicUserList (com.google.api.ads.adwords.axis.v201809.rm.BasicUserList)1 UserList (com.google.api.ads.adwords.axis.v201809.rm.UserList)1 UserListConversionType (com.google.api.ads.adwords.axis.v201809.rm.UserListConversionType)1 UserListOperation (com.google.api.ads.adwords.axis.v201809.rm.UserListOperation)1 UserListReturnValue (com.google.api.ads.adwords.axis.v201809.rm.UserListReturnValue)1 ArrayList (java.util.ArrayList)1 HashMap (java.util.HashMap)1