linkedin api update comment count null - linkedin

We run a daily job to pick up data from LinkedIn's api and noticed a change today in the values we receive back. They are both actually 0 but one comes back as null now and another comes in as 0 as before.
Update: Timestamp: 2017-03-28T19:31:25.281Z, UpdateKey: UPDATE-xxxxxxxx , UpdateType: CMPY
NumLikes: 1 , UpdateComments: Total: 0
Update: Timestamp: 2017-03-27T18:37:12Z, UpdateKey: UPDATE-xxxxy , UpdateType: CMPY
NumLikes: 0 , UpdateComments: null
Does LinkedIn change their data returns often? Is this something to be expected? Anyone else running into this today? I'm concerned that there may be something happening on LinkedIn's end that may cause us to receive null values when it should return something other than 0.
Thanks!

Since the beginning of 2017 there are changes in the Linked In API.
See: http://www.oodlestechnologies.com/blogs/Recent-changes-in-LinkedIn-API
and https://cloud.c2m.net/linkedin/linkedin-api
Another posibility could be a rejection due to trying to access the data from an App or a desktop application, in such case, just add
?allowUnsupportedBrowser=true
to your POST request.

Related

Google Analytics Data API - way to small values or missing data

Has anyone tried the new Google Analytics Data Api (still in beta) for a GA4-Property?
We did this, the way it is recommended in the docs here: https://developers.google.com/analytics/devguides/reporting/data/v1/quickstart-client-libraries
Connection and authorization is working fine, but the values that are responded are way to small. For example it reported activeUsers for last 7 days as 50...but Analyitcs GUI has about 20.000...same as our old UA-Property that runs parallel. And the old reporting Api has the correct numbers...
We did it exactly like the reference example...
client = BetaAnalyticsDataClient()
request = RunReportRequest(
property="properties/{0}".format(self.property),
dimensions=[Dimension(name="defaultChannelGrouping")],
metrics=[Metric(name="activeUsers")],
date_ranges=[DateRange(start_date="7daysAgo", end_date="today")],
)
response = client.run_report(request)
print("Report result:")
for row in response.rows:
print(row.dimension_values[0].value, row.metric_values[0].value)
This gives me:
Organic Search 34
Paid Search 19
Direct 6
Referral 3
Email 1
So "organic" for example should be around 20.000!
Funny thing is even the Query Explorer App (https://ga-dev-tools.web.app/query-explorer/) is showing these low numbers for the GA4-Property...
Any ideas what could be wrong? Thanks!

Set 'durationDays' to 'from the beginning' in firebase dynamic links analytics api

Below url is used for fetching analytics data related to firebase dynamic links:
https://firebasedynamiclinks.googleapis.com/v1/SHORT_DYNAMIC_LINK/linkStats?durationDays=DURATION
(Please note that the above url is an API that needs authentication/token. You can't open it in a browser. Also, SHORT_DYNAMIC_LINK and DURATION are just placeholders not actual parameter values.
The reason I have added a link is because my question is about the value of the placeholder - DURATION present in the link)
DURATION tells how many days(going backwards) worth data needs to be fetched.
My requirement is to fetch data from the start(when the dynamic link was created). So, what value should I set for durationDays to achieve that?
As a workaround I can set a big number(like 1000 days) but wanted to know a proper way.
Based on what I tried, the parameter durationDays must be present in the url, otherwise the request would return 400 INVALID ARGUMENT. Even setting DURATION values to 0 or -1 return a similar error.
Firebase Analytics API Doc: https://firebase.google.com/docs/reference/dynamic-links/analytics

Is it true that my AJAX requests aren't necessarily made to my Controller in order?

So I have a basic
$.ajax( { url : 'MyController/MyAction',
method : 'POST',
async: true,
.
. } );
that can be called very frequently as it is event-driven. Like it may be called 50 times in 1 second if the user is being obnoxious. It updates values in the database.
My friend told me that it's possible that the updates may be sent to the database in the wrong order. Is this true? This is causing me major cognitive dissonance and I can't sleep tonight.
I should mention that these values being updates in the database are associated with a user. In particular, the data is like
data : { userId : '21EC2020-3AEA-4069-A2DD-08002B30309D',
answerId : '69',
val : 'd' }
where the only values changing in rapid succession are answerId and val.
Unfortunately, my understand is "YES. The order is not guaranteed".
You send http request 50 times in 1 second and server save it to DB.
When the network is good and server is strong, it is okay to be saved to DB in order.
But if http sever is busy or network is interrupted, it does not guarantee the data will still always ordered in real happened sequence. Ex, 1 or 2 data order will be exchanged in DB.
My suggestion is : if the order is very critical and the update traffic is heavy, you should add a happen time in http data and save it to DB.
When you select data from DB, you can order by the happen time and it will make sure it has the correct order as event happens to avoid the mis-order caused by server or network busy.

Linkedin - Get companies updates queries

I'm trying to create an app to read company updates, but I have a few queries. Please help...
I'm using LinkedIn api via Oauth authentication in R
Is there anyway to fetch more updates than the restriction (only allow fetch up to 250 updates or updates in the last 20 days whichever comes first) ?
Example code
https://api.linkedin.com/v1/companies/270126/updates?event-type=status-update&count=100&start=0 &oauth2_access_token={access_token}
Once I got the updateKey, I'm trying to fetch the comments and likes but it's returning NO return
Example code
https://api.linkedin.com/v1/companies/270126/updates/key=UPDATE-c270126-5951438751136768000/update-comments?event-type=status-update&oauth2_access_token={access_token}
https://api.linkedin.com/v1/companies/270126/updates/key=UPDATE-c270126-5951438751136768000/likes?event-type=status-update&oauth2_access_token={access_token}
From the company status-update, it's returning FALSE for is-commentable and is-likable? Is that why there are no result from Query 2. If so, is there anyway to change that setting?
'is-commentable' false '/is-commentable'
'is-likable' false '/is-likable'
Any help would be greatly appreciated!!!!
Linkedin developer - Reading Company Shares link
https://developer.linkedin.com/reading-company-shares
Try using the Share and Social Stream end point instead of the Companies end point like this:
https://api.linkedin.com/v1/people/~/network/updates/key=UPDATE-c270126-5951438751136768000/update-comments?oauth2_access_token={access_token}
The documentation is here:
https://developer.linkedin.com/documents/commenting-reading-comments-and-likes-network-updates
Also you can test different Linkedin API calls here:
https://apigee.com/console/linkedin

LinkedIn Network Updates returns null

The following query returns null for me in the brwoser. However, just removing the &count=250, I start seeing some results. Though, it is still not the entire set of results, still.
Note that this happens only with few access tokens. Other users within my app are fine.
https://api.linkedin.com/v1/people/~/network/updates?oauth2_access_token=XXXXXXXX&format=json&count=250
Thanks,
Kushal.

Resources