List Open Graph nodes associated with a Facebook App - facebook

Assuming:
I am an admin of a Facebook app
I've associated some webpages to the app using Open Graph protocol meta tags, as described on Facebook's site
I know or can acquire basic info about the app, such as its app ID
Is there a way to get a list of all such associated pages? Whether by an API that Facebook exposes, or anything.
EDIT: (further details for clarification)
I'm talking about webpages (not Facebook pages) which are associated to a Facebook app by way of Open Graph meta tags. For example, adding this to a webpage's markup:
<meta property="fb:app_id" content="1234567"/>
You can then publish messages to Likers of individual pages, or Likers of all pages associated with the app.
All of this is described on the Facebook Open Graph page I linked to above.
So, to reiterate, I want to know if you can get from Facebook a list of all such associated pages.

Pistos
When you set up your app you set the domain and cavans url. The only website which can connect to that applications is the domain set in the settings.
To retrieve your Application Id goto https://developers.facebook.com/apps select your app in the list on left and you will see all basic info including links to edit settings.

Related

Facebook app - like and share links using social plugins inside FB app

I'm developing a facebook app for a page .. the app has products and I want to add like and share for each product inside the app using facebook social plugins .. my problem is with the like and share link since facebook apps are actually webapps loaded in iframes.
for example for product with id 1, for example assume my url is: https://www.myapp.com/products/1 (the url set in the facebook app setting, currently I'm using ngrok to provide public https link cause I'm still in development mode).. the url is accessable in the browser but not through the facebook crawler (in the share debugger it returns response code 0) .. I've put the open graph meta tags in the product page but it seems the problem the crawler can't even reach my links.
So how can I put the links in the right way so that they are discoverable by the crawler and can be accessed whether the user accesses the app from the page tab or search for it .. and also when shared/liked on a user's feed, the link should redirect the user to the product page inside the facebook app?

Is liking an activity is the same thing as liking a business on facebook?

2 Part question
1) So I am trying to figure out the difference between "liking" something on pinterest vs "liking" a business. Is it the same thing?
2) I want to implement people "liking" different pages on my website (such as pinterest) and track which page has the most likes. Do I have to save and track that in my database or facebook API will let me see which pages has most likes based on some criteria?
TLDR: Yes, they are the same thing.
A Facebook "Like" is what is an Open Graph Action. Liking something from within the Facebook web interface or via one of the Facebook plugins allows an easy implementation path. Pinterest uses a custom script that initiates a built-in like action.
Both types of like require there to be an object with open graph metadata that Facebook can scrape to get the information that will be shared on a timeline. That metadata could be served by Facebook on an internal page, or by an external page.
As for getting the number of likes, yes you can. Each canonical open graph URL gets an id within the Facebook system. This includes objects within the Facebook system.
So, the Pinterest Facebook page has an id of 253591661347566. You can find this by querying https://graph.facebook.com/pinterest?fields=id
The Pinterest home page has an id of 185629821512802 according to https://graph.facebook.com/http://pinterest.com?fields=id. (Not urlencoded for clarity). You could replace http://pinterest.com with any other url, and get that pages id.
For any object that you know the id, you can get information on the number of likes it has by adding likes to the fields querystring.
If you've marked up your pages with an app id and admin information, you can see all of this and more through Facebook's Insights.

Facebook "like" button, Open Graph meta tags - Application ID or Admin IDs?

When adding Open Graph tags to "like" button on each page of awebsite, what are the benefits of connecting the pages to Facebook by Application ID (fb:app_id meta tag) instead of/in addition to fb:admins metatag?
Edit: Is there any difference in Facebook Insights between the two?
thefb:app_id tag allows that application to manage the pages (publish posts, delete posts/comments, etc). The fb:admins tag allows the users specified to manage those pages via any page management application they install to their profile. They would also get access to a Facebook Page on Facebook that only they could access, used to manage the page (publish posts, manage comments, etc) but I'm not sure if that exists any more or not.

When should I use fb:admins and fb:appid?

I have a client who already has a Facebook page associated with their own website. I finally convinced them to integrate open graph tags into their pages, since when anyone clicked the Facebook Like button on their website, it looked awful on Facebook (since it chose whatever images and content it wanted).
I have admin access to their Facebook page, however, they are using the fb:appid tag instead of fb:admins on their website, so I can't see any of the insights on Facebook.
So I need to be made an admin of their Facebook application as well, in order to see the insights?
I've read dozens of forums and posts about this, including Facebook's own Open Graph documentation and I still don't REALLY understand the difference between fb:admins and fb:appid. As far as I can tell, fb:appid is more for developer/programming access, whereas fb:admins is for those who just want reports and insights for page activity.
In what circumstances would I want to use fb:appid over fb:admins?
EDIT : Let me clarify. I can already view insights for the company's Facebook page. What I want to do, is see the insights for users who have clicked the Like button on the website.
fb:app_id is the most flexible one to use.
It allows anyone who's listed in the app settings as an admin, developer or insights user to see their domain or app insights. This means as people join or leave a company, they update their app in one place, and access to things like insights changes too.
fb:admins is for User IDs, and once they've been associated with a URL or domain, they remain connected with that domain until their removed from the root HTML document.
fb:page_id works in the same way as fb:app_id in that access to insights is controlled by the list of people who are admins of that page.
As app_ids are becoming more and more important as you integrate with the deeper bits of the Facebook platform (use connect, comments etc) I STRONGLY suggest you use fb:app_id, claim your domain using this, and manage access to insights via your app's settings.

Reaching users of facebook app

I have a web app that is connected to facebook graph, and thus have a corresponding facebook app. I'm looking for a means of communicating with the users of my app through their facebook feed.
So far I've asked the users to like the facebook application profile page for my app, so that when I post news on that wall, the users get it. This causes some confusion since the application profile page is a bit of a peripheral component in the webapp-facebook relationship.
Ideally I would be able to post on facebook either as the app, so that I reach all the registered users, or as the app url (www.myapp.url) so that users who like that url will get the posts. Alternatively somehow link the application profile page and the url/app, so that likers of the url or users of the app get the profile page posts.
Note that I'm not looking to post to users walls (just their feeds) and I'd prefer to post manually, using facebooks interface for posting.
The only ways you can publish into a user's news feed is to use a Facebook Page or a Facebook Open Graph Object. So, you did right by asking users to like your Facebook Application Page. If you've also got a webpage that people like, you can turn that webpage into an Open Graph object by adding an fb:app_id or fb:admins meta tag to the head of the page. Doing this grants you access to publish to your fans' news feeds, and you get access to a Facebook page-like interface (for administration purposes only). You can publish to the user's feed using this feed publisher (just like you would do if your Graph object were any other Facebook Page).
To get to the admin page you just have to make sure your Facebook User ID is in the fb:admins meta tag. Once it is, visit a like button social widget for that object, and you'll get the a link that lets you go to the admin page for the object.
I hope that's clear. You should probably give the Open Graph Protocol Documentation a good read.