Posts under category Google

For monitoring, we are using Application Insights.

Since we are advertising on multiple platforms, (Google, Facebook, LinkedIn, other 3rd party platforms) one of the business goals is to track which marketing dollars on which platform result in most subscriptions, and pour more money there.

To do that I need to know which platform did user originate from.

Where do I find, where the user originated from, in Azure Portal? (referer URL maybe),

If it is not supported "out of the box" I would have to guess I need to pass parameter in URL that would indicate the platform or something similar like grab a cookie, how does one track where the user originated from?

This is obviously a solved problem, but I am having a hard time finding any articles on how to do this the way Microsoft expects it.

I am using Google Ads API SDK for Python. I want to get some Ads data and put them into a Dataframe to transform a bit. I made a call with the code below:

client = GoogleAdsClient.load_from_storage("config.yaml") customer_id = '<customer_id>' ga_service = client.get_service("GoogleAdsService") query = """     SELECT         campaign.id,         campaign.name,         customer.id     FROM campaign     """ response = ga_service.search_stream(customer_id=customer_id, query=query) for batch in response:     for row in batch.results:         print(row)         df = pd.DataFrame(row)         print(df) 

Here is the response I receive:

customer {   resource_name: "customers/<customer-id>"   id: <customer-id> } campaign {   resource_name: "customers/<customer-id>/campaigns/<campaign-id>"   name: "Test_campaign_1"   id: <campaign-id> } Traceback (most recent call last):   File "c:\Users\User\main.py", line 36, in <module>     print(dict(row)) TypeError: 'GoogleAdsRow' object is not iterable 

I tried using google.protobuf.json_format to convert the result into json/dict format with the below code

from google.protobuf.json_format import MessageToJson response = ga_service.search_stream(customer_id=customer_id, query=query) for batch in response:     for row in batch.results:         print(row)         jsonobj = MessageToJson(row) 

But I got the below error message:

  File "C:\Users\User\AppData\Local\Programs\Python\Python39\lib\site-packages\proto\message.py", line 605, in __getattr__     raise AttributeError(str(ex)) AttributeError: 'DESCRIPTOR' 

Could you please help me with this? Thank you.

Although, I have successfully implemented Google Keyword Planner API to generate Keyword Ideas in PHP with the link below.

https://developers.google.com/google-ads/api/docs/keyword-planning/generate-keyword-ideas

Does anyone know the fastest way to sort the result by AvgMonthlySearches?

// Iterate over the results and print its detail. foreach ($response->iterateAllElements() as $result) {     /** @var GenerateKeywordIdeaResult $result */     // Note that the competition printed below is enum value.     // For example, a value of 2 will be returned when the competition is 'LOW'.     // A mapping of enum names to values can be found at KeywordPlanCompetitionLevel.php.     printf(         "Keyword idea text '%s' has %d average monthly searches and competition as %d.%s",         $result->getText(),         is_null($result->getKeywordIdeaMetrics()) ?             0 : $result->getKeywordIdeaMetrics()->getAvgMonthlySearches(),         is_null($result->getKeywordIdeaMetrics()) ?             0 : $result->getKeywordIdeaMetrics()->getCompetition(),         PHP_EOL     ); } 

Thanks