Connector Improvement: add user_agent field to shopify.order table
Completed https://shopify.dev/docs/
add user_agent field to shopify.order table
"client_details": {
"accept_language": "en-US,en;q=0.9",
"browser_height": 1320,
"browser_ip": "216.191.105.146",
"browser_width": 1280,
"session_hash": "9ad4d1f4e6a8977b9dd98eed1e477643",
"user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.94 Safari/537.36"
}
Information about the browser that the customer used when they placed their order:
- accept_language: The languages and locales that the browser understands.
- browser_height: The browser screen height in pixels, if available.
- browser_ip: The browser IP address.
- browser_width: The browser screen width in pixels, if available.
- session_hash: A hash of the session.
- user_agent: Details of the browsing client, including software and operating versions.
-
Official comment
Hi Kalyani and Stephen,
Thanks for raising this! It looks like Shopify provides the user agent as part of a larger "client details" json. Do you think the other client details attributes will ever be valuable to sync? I expect browser IP, but I can imagine value in some others as well. Would love your thoughts here!Second, and this does not really affect our implementation plans, but do you happen to have a source announcing the conversion API's new requirement? I could only find its reference in the Facebook developer docs.
All the best,
Ray Harris
Product Manager, Sales & Customer Success Analytics -
This is a very high priority for Omaze because user_agent is a required field for Facebook's Conversions API. Facebook only recently added it as a requirement so there are very likely other companies that are going to want user_agent now as well.
-
Ray,
I'm not sure if there was an official announcement, but you can definitely e-mail our Sales Engineer Hiten Parmar (hiten@fb.com ) to discuss when and why they made that change. It's related to Facebook's need to aggregate data due to iOS 14 changes that limit the sending of individual event data. We could send them a fake user agent so that we don't get blocked from the conversions API, but then they'd be aggregating our data on incorrect information which would mess with their optimization.
There is already a browser_ip field in the shopify.order table, so no need to add that! Unless you find that for some reason some people have a null IP in the regular field but a valid IP within the client_details json.
Browser size and language are not very important to us... I think that kind of analysis can come later after Google Analytics data comes in. But for the Conversions API we want to send off the signal sooner and GA data is very delayed.
Thanks,
Stephen
-
Hi Ray,
ORDER table already loading browser_ip, is it the same browser IP from client details?
-
Thanks for that context, that makes sense. Yes, the existing ORDER.browser_ip value is from the client_details nested object.
It looks like the only other place web session information is reported by the Shopify API is in Blog Article Comments. If Shopify expands the concept of client_details in a meaningful way, or if we hear from customers that the other client_details properties are important, we might consider syncing it as a separate table. For now it seems simplest to add it directly to the ORDER table as with browser_ip.
Thanks again for the request! We'll plan to add this soon! -
@... Any udpate on timing? Facebook announced they're going to start iOS 14.5 enforcement next week, so I expect Conversions API sends to start being rejected if they don't contain user_agent.
-
Hi Stephen,
Please check the order table for a new column client_details_user_agent !
Please sign in to leave a comment.
Comments
7 comments