Part 2 – The Facebook Tools
The tools developers use help them in many different ways. In the previous post I touched on the Graph API Explorer This tool provides you with a great way to check the values of Facebook Graph Objects and query interesting things about them. For example when querying the Graph API explorer with a page I built, some very interesting information is given back to me about it:

As you can see, there is a wealth of information here. You can query the API for virtually any Object as long as you know it’s ID. All permissions are respected, so in this example I happen to be an administrator for that page and as such a greater level of details is given to me then it would for you for example. Try it and see: http://developers.facebook.com/tools/explorer?method=GET&path=403281633034885.
The next tool I want to talk about is the “Debugger” This tool is crucial for any Facebook developer. With this tool you provide a URL and Facebook crawl it and present any information it can learn about the target. The Facebook Crawler looks for specific tags and can learn about the provided URL based on these tags. For example, in this screen shot below I’ve told the Object Debugger to report what it sees from http://www.bing.com:

As you can see it can pick up images, titles, etc, however, if you provide more details in the form of meta tags as seen in the above screen shot. Here is a zoomed view for better details:

This debugger is a fantastic tool if you would like to see what the “Facebook Scrapper” sees when it lands on a URL.
In addition to the debugger, there is also an access token tool located here. It will automatically pull and display any access tokens that belong to pages and applications that you are an administrator of. This is a very useful tool for easily determining a page or an application access token.
Access Tokens In Detail
There are different types of tokens, each of which serves a different purpose. When you login to Facebook as a normal user, you are using your own access token, this is refereed to as a user access token. With this token an application can query the graph API or even post things to Facebook on your behalf. When you post something to your timeline, it’s done using the /feed end point (more on that later) using your access token. If you are an Administrator of a Facebook page, you may utilize the page access token to post to /feed but the difference is the post will show up as being posted by the page, instead of by you. An application access token allows actions to be taken on behalf of an application.
Here is an example of an entry posted to my test page that I use for testing the application I build at work, this is a post to the /feed endpoint using a page access token:

Here is the very same post, on the same page using my user access token:

Notice one has the picture of the page, and one has my profile picture as well as my name next to it. As far as application access tokens go, this allows you to do things like: “Application Name Likes this Post” for example, The Real Estate Agent Directory is an application the company I work for produces and using the application access token, someone liked my page:

So that is the difference between the different types of access tokens, these examples of course do not define all the things that can be done with these various tokens, but this is just a small example of how they work and their purpose.
Another useful tool is the “Object Browser” this tool allows you to browse any “Open Graph” objects that are attached to your application and will even show you URL’s that Facebook has scrapped as well as the JSON data associated with it. This tool can come in handy when creating custom objects for your application.
One last useful tool is the “JavaScript Test Console” this tool allows you to code up some JavaScript and do various things to it, such as execute it and save it. There is even a drop down for changing the mode:

I strongly recommend you tinker with the “Examples” link as this gives you examples on many of the Facebook JavaScript SDK capabilities and you can play with them right in the console.
All of these tools can be found at here. I suggest checking it out if you are doing any sort of Facebook Application development.
That about wraps up this post. Next post we’ll dig into some C# code and how I prefer to serialize and de-serialize the JSON data coming to and from Facebook while using the C# Facebook SDK and the Newtonsoft Json Library.This library combined with the C# SDK makes communicating with Facebook a real breeze.
Thanks for reading and I hope you’ve found this post useful.