iGoogleContactsDemo

In this demo, we have created a simple gadget that runs on iGoogle and uses the OAuth Proxy to access the Google Data API feed for your Gmail contacts and display the first 25 entries. The same technology can be used to create a gadget that runs on any website that supports the gadget spec, and the gadget can access any API that supports OAuth which includes all Google Data APIs but also many APIs exposed by MySpace, Photobucket, Plaxo, Yahoo-FireEage, etc.

However currently this feature is optimized for private gadget pages like iGoogle, and not social gadget pages like orkut.com. In the future we will enhance the design to make it more useful on social sites.

For this demo, you need to use Firefox or IE, not Safari/Opera.

First you need to signup for the iGoogle sandbox which is only available to a limited set of external developers. Connect to http://www.google.com/ig/sandbox. Fill out the page and click Sign Up, then wait for confirmation that your request has been approved.

Once you are signed up, your iGoogle service will now opered in “sandbox” mode and you will see the new leftnav bar to navigate your pages of gadgets. Click the “Personalize this page >>” link near the top right

Now click the “Add feed or gadget” link near the bottom left

Enter http://monsur.googlepages.com/contacts.xml and click “add” (and if you are interested, try looking at that XML file to see how simple it is to write an OAuth gadget).

You will get the following warning page, and should click ok.

You will now see a yellow line in the add gadget field to indicate this succeeded. You can now click the X button in the top right of that dialog box to close it.

Now click “Back to iGoogle home”

The next few steps will authorize the gadget to see your contact information. However if the gadget is built by a Google team and is running on a Google container like iGoogle or orkut.com then we can bypass these steps. If the gadget is not written by Google, or is accessing data from another website there are some other tricks we can use to optimize the user experience, but the following is a worst case scenario.

Click “Personalize this gadget”

You may get a screen asking you to choose whether to use your personal Google Account or your corporate E-mail address. If so, choose your personal Gmail address, but it should work with either.

Now click “Grant access”

You will get this page and you will need to manually navigate back to iGoogle by closing this tab (and yes, the UI flow can be optimized to avoid this page.)

Now close this tab and you should get back to the iGoogle sandbox windows that now looks like the screen below. Click in the area that says “I’ve approved access”

And it works! You now can use the gadget to view the list of your contacts, and the notes field from those contact entries.

Choosing the drop-down shows the list of your contacts.

If you then go to your Gmail contacts interface, you can open the modified contact entry and see the new note you created.

You can even modify the notes in the gadget, and click the "Update Notes" button to save the changes.

If you want, you can create your own gadget. See OAuth Proxy for the current rough documentation.