LinkedIn API to fetch an independent user latest activity - rest

My use case is simple. Assuming the respective LinkedIn user X is authenticated, check if X made an organic post within the current day. If so True, if not False. The visualization of this functionality would be IDENTICAL to Github Contributions, but for LinkedIn posts.
I looked over the Community Management API docs, but this seems to be more oriented towards organizations and their members.
I seek a LinkedIn API call that will work on ANY authenticated LinkedIn user.

Related

Facebook Graph API return empty Page Events (7th May 2018) [duplicate]

This looks a kind of duplicate question but actually NOT.
So the problem is https://www.facebook.com/julytalk/ has events, for sure.
But when I tried on Facebook Group API toolkit, it returns empty array.
https://developers.facebook.com/tools/explorer/145634995501895?method=GET&path=204859706228731%2Fevents&version=v2.12
Why is this happening?
I could not find any Facebook API endpoint modification notice, at all.
It was working okay before.
Please help me.
https://developers.facebook.com/blog/post/2018/04/04/facebook-api-platform-product-changes
Access to the Events API is not possible at the moment:
...apps currently accessing Events and Groups APIs will lose access today
Update: After Facebook did a lot of changes, it seems to be possible to get events again. You can get events from Pages you manage easily in dev mode. If you want to get public events, you may want to read the answer in this thread: Facebook pages API: "Page Public Content Access" review screencast
The above answer was misleading for me, not because its wrong but because so many things have changed on Facebook's side and I needed further clarification.
This is the current state based on my research (25.08.2020.).
There are several types of events available based on where the event destination is:
User events
Documentation terminology: "Events on User"
API endpoint:
me/events
Page Events
Documentation terminology: "Events on Groups"
API endpoints:
me/groups
group_id/events
Group Events
Documentation terminology: "Events on Pages"
API endpoint:
me/accounts
page_id/events
App Events
Documentation terminology: "Events on an App"
API endpoint:
{application-id}/events
About app events.
The list is taken mostly from Facebooks API event endpoint.
The documentation is wrong on event limitations:
Access to Events on Users and Pages is only available to Facebook
Marketing Partners.
The current state is that "Access to Events on Users and Pages is available to":
A) App Admins (verified with testing)
B) App Developers (verified with testing)
C) App Testers (not verified)
D) Facebook Marketing Partners (not verified)
What does this mean?
This means if your query the "me/accounts" endpoint which will give you a list of page ids.
When you select a page id and then query "your_selected_page_id/events" you will receive:
An empty list if you are not A-D)
A list of events which is not the same as your users.
A lot of confusion and frustration because there is no error message thrown.
I have tested this with different API versions 4.0 - 8.0 and the results were the same.
I have also tested this with a different but similar set of permissions, resulting in the same empty array response.
SOLUTION(S):
TODO: UPDATE: Clarify who needs to become FMP.
To query for page events "someone" needs to be a Facebook Marketing Partner.
https://developers.facebook.com/support/bugs/352704275741601/
Invite your users to become testers.
Helpful links:
Read more on Facebook Marketing Partners.
Officially on Facebook Marketing Partners.
Facebook Graph Explorer.
Facebook Batch Requests.
Additional notes:
Page event fetching has the same requirements as user events fetching.
Group event fetching works for all users (ignores A-D).
Creating batch requests with no FMP will result in response sections that only have empty arrays.

How to get user data now with restrictions on instagram platform api?

There have been lots of changes to the facebook api recently, which now includes the instagram api as well. https://www.instagram.com/developer/changelog/
They have shutdown a lot of endpoints way ahead of schedule and has created a huge problem for my application which integrates instagram user data. They have the instagram graph api now, but looks like it can be used only for business accounts (looked like that prima facie). Reading through the news past couple of days, I am really confused about what is available and what is not. My application used to get user data (number of followers, recent posts, reach, likes, etc) using the instagram handle provided by users. Since this is totally restricted on the platform api now, is there a way I can have the same functionality using the new graph api? Or should I look into 3rd party APIs? I am open to asking users for authentication (I already have the facility). Can the user information be fetched after they authenticate my app to do so?
You can use the following Graph API to get all the details for any IG business account.
https://developers.facebook.com/docs/instagram-api/business-discovery

How to access Instagram feed of any user with new Graph API?

Facebook recently introduced Instagram Graph API, which allows to fetch data from Instagram page that is connected to your Facebook company page, instagram.com/developers states:
The Instagram Graph API is Now Available to All Developers.
For Non-Business Instagram Accounts please continue to use the existing Instagram API.
So, for example, if my company has account instagram.com/my_first_company, I can only retrieve its feed and no one else.
Using old Instagram API to retrieve public_content permission (access to any feed) is no longer an option too, from old API documetation:
public_content - to read any public profile info and media on a user’s
behalf (applications no longer accepted)
What will happen to existing tools that have public_content permission? (for example, there are tons of plugins for various CMS that allow to display recent Instagram photos)
Is there any valid way to access public_content (access to any feed) right now (besides fetching HTML pages of Instagram website)?
Are there any plans to enable Graph API for non-business customers, of so when?
UPD. There seem to be ?__a=1 endpoint that allows to get access to recent photos of any public feed without any tokens. But it's not official and no one knows when/if Instagram will close it. If you do - please let me know.
UPD 2. Instagram removed ?__a=1 endpoint, not sure for how long, probably forever. Currently the only way to access instagram feed is to scrap instagram.com website, which is a horror.
Prerequisite: You first need the business Instagram account to be linked with FB Page. https://help.instagram.com/356902681064399 - That one can do from the profile page of Instagram account.
Get the Instagram business account id:
graph.facebook.com/v2.8/<fbPageId>?fields=instagram_business_account. (the fbPageId is the page id of the facebook page the account is linked)
To fetch instagram media feed: graph.facebook.com/v2.8/<igBusinessId>/media to fetch the media feed of the Instagram account. (the igBusinessId is the id returned in above linked instagram_business_account) - This is still owned media as per the page access_token. Not any other user's feed.
All other endpoints (such as comments moderation, detailed insights API) mentioned here works on the business media list returned on above call.
Please note:
This still does not allow to fetch un-authenticated user's Instagram feed. That is not possible via API now. There is no valid way via API to get to public_content scope. There can be few Instagram Marketing partners for which this is enabled. But, in general the scope is deprecated now!
Currently, for FB graph API to work we need linked business page to Instagram account. As above apis uses page tokens.
You can get information about any IG business account using your FB access_token using the business_discovery API as given here.
You must have an IG business account to read other users data like user_info or media details using the id of your IG business account as a node.
Ex:
GET graph.facebook.com/[YOUR-IG-BUSINESS-ACCOUNT-ID]?fields=business_discovery.username(USERNAME){media{caption,media_url,media_type,like_count,comments_count,id}}

Can the news feed returned by Facebook Graph api be changed to show Most Recent stories?

Using the current (v2.4) Graph api I can see a user's news feed at /{user-id}/home assuming I have the user access token and the read_stream extended permission.
As per the Facebook developer docs, "The posts returned by this API may not be identical to the posts a person would see on facebook.com or in Facebook's mobile apps."
Is there any way—probably undocumented because I can't find it in the official docs—to modify what is returned? e.g. to emulate the Show Most Recent Stories option on facebook.com?
Or to limit the posts to those published by white-listed users, for example?
(I would like to be able to access the public posts of a user's friend. I can't do it via the friend's {user-id}/feed even though the posts are public because of FB's privacy-related API restrictions, but I was hoping to be able to do it via the News Feed, which will only work if the full News Feed is available rather than the limited Top Stories feed returned by default.)
Note: I know similar questions have been asked on SO before but they either haven't been answered categorically or relate to earlier versions of the API.
Both /{user-id}/home endpoint and read_stream permission are deprecated, and will be removed for all apps (no matter what API version they are using) on October 6, 2015 – see https://developers.facebook.com/docs/apps/changelog#v2_4_deprecations
If you want to get posts by the user’s friends, then those friends have to become users of your app and grant it access to their posts first.
I don't know why they deny API access to content that is freely available on facebook.com
Presumably mainly because you are not a Facebook user here viewing content that other people have made accessible to them, but a 3rd party app developer – and in that capacity, you could do all sort of (shady) things with that data if it was freely available to you, like do extended social profiling, data mining, etc. Therefor users must now explicitly agree to share content with your app, before you can access it.
It’s also why they removed all friends_* permissions that existed previously, that allowed people to grant apps access to data belonging to their friends to a certain extend.
Basically it boils down to this: Whether or not a 3rd party app gets access to my data should be my decision, and not that of any Facebook friends of mine.

Can I create an application which monitors a user's activity on Facebook?

I wish to create an application which me and my friends would subscribe to and which in turn can monitor a count of items in the news feed using the required permissions (kind of a social network statistics).
I read the developer documentation, but I couldn't find out if it's possible. Subscribing to my application (and allowing the permissions) is a one-time process for my friends. From then on, can my application read the fields mentioned in Graph API for the subscribed users at any time (without the user's involvement)?
You might be interested in using the Real-Time Updates API from Facebook. Using this, you will no longer have to continuously "poll" the Graph API. Rather, Facebook will send the updates to your server.
Here are some sample implementations of the API, https://github.com/facebook/real-time/tree/master/samples.
No.
Facebook used to have the "offline_access" permission which would let applications have an access token that does not expire.
Not a while ago though Facebook deprecated this permission as stated in Removal of offline_access permission.
The longest (that I'm aware of) that a token is valid for is 60 days. If you want to extend that time frame you'll have to get the user to interact with your application.