We have migrated our application from Adwords to Google Ads API and we have encountered multiple challenges that we have resolved as they came by reference your documentation or following previous posts here but now we have reached at stopping point which I think I know why but would need your help with some advice. I will start describing what we have done so far. First we migrated as mentioned before to Google Ads API before when we used Adwords we where able to submit a whole audience so the first issue we encountered was hitting a rate limit that indicate us that is a maximum of 20 OfflineUserDataJobOperation per request so we refactored our code to accommodate to that using the example in your documentation and then I started getting a second error that was related with concurrency. I implemented the solution someone in your team suggested to other person add a delay of 30 second per request and add a retry logic that seems like resolved that issue. Started to see some segments audiences getting populated but suddenly they stop populating. After giving a second look to your code I saw a problem with it and is an issue I see it in our as well as we used yours as reference https://developers.google.com/google-ads/api/docs/remarketing/audience-types/customer-match. Our primary language is python. On that code I see the UserDataJobOperation been created but not set back to OfflineUserDataJobOperation I have try to return the User data object as that is what made more sense but I get error sending userData expected OfflineUserDataJobOperation. I saw back your example and the OfflineUserDataJobOperation is used to create the UserData but dont set that back to it so left it like you have it even when looks wrong and for me surprise worked somehow for a couple days but now is not longer doing it.
def _build_offline_user_data_job_operation(self, client, operation, customer_record): """Builds and returns two sample offline user data job operations. Args: client: The Google Ads client. Returns: A list containing the operations. """ offline_user_data_operation = client.get_type( "OfflineUserDataJobOperation" ) if operation == 'add': user_data_operation = offline_user_data_operation.create else: user_data_operation = offline_user_data_operation.remove # Creates a first user data based on an email address. user_identifier_with_hashed_email = client.get_type("UserIdentifier") # Hash normalized email addresses based on SHA-256 hashing algorithm. user_identifier_with_hashed_email.hashed_email = self._normalize_and_hash(customer_record['email']) user_data_operation.user_identifiers.append( user_identifier_with_hashed_email ) return offline_user_data_operation That is a snipped of our code I think what is needed is set that back that user_data_operation with the offline_user_data_operation and then should be work as expected. I have logs records of the API hitting you and said the job was created successfully in your end with status running but is not populating the audience segment anymore. Also I have an example one that got populated previously. Please advice we will appreciated -- -- =~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~ Also find us on our blog: https://googleadsdeveloper.blogspot.com/ =~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~ You received this message because you are subscribed to the Google Groups "AdWords API and Google Ads API Forum" group. To post to this group, send email to adwords-api@googlegroups.com To unsubscribe from this group, send email to adwords-api+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/adwords-api?hl=en --- You received this message because you are subscribed to the Google Groups "Google Ads API and AdWords API Forum" group. To unsubscribe from this group and stop receiving emails from it, send an email to adwords-api+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/adwords-api/c3c14722-7bab-4d10-8ccf-4a74caf6083cn%40googlegroups.com.