Rev the engine, Eat up some feeds

Friday, May 09, 2008 at 3:00 PM



As you may have heard, Google recently released Google App Engine, which allows you to run your code on Google's highly scalable infrastructure.

Since App Engine currently runs Python code, I thought it would be a good idea (and fun) to get the gdata-python-client to run in this new environment. After making a few changes, I wrote a simple sample application and an article on retrieving authenticated feeds.

For more details, see the post about Google Data APIs on the Google App Engine Blog.

Google I/O Is Approaching, and so are the Google Data APIs sessions

Monday, May 05, 2008 at 5:12 PM



May is here, which means Google I/O is just a few weeks away (May 28 - 29). If you haven't already, don't forget to register for the event.

Google I/O will be our largest developer event of the year. We'll have over 80 in-depth, technical sessions focused on building the next generation of web apps. If you haven't visited lately, you may want to check out the sessions related to the Google data APIs, including:

Extend the Reach of Your Google Apps Environment with Google APIs:
Jackie Bodine and Ryan Boyd from Google, and Ron Hess from Salesforce will show how to use the Calendar, Spreadsheets, Doc List, and other APIs to integrate Google Apps with other systems and add custom functionality

Creating a Google Data API Client:
Jeff Scudder will explain how to create your own client library when there isn't one in the language that you need or it doesn't fit your needs.

Authenticating to Google Data Services:
Jeff Fisher and Jeff Scudder discuss current options for authenticating users to Google services, their limitations, and some advanced use cases.

YouTube on Your Site:
John Harding will give an overview of the updates to the YouTube API since it launched last Fall and how you can use the new features on your own site.

Hands-on YouTube: Creating an Applications with the YouTube APIs in Python:
Jochen Hartmann and Stephanie Liu will lead this Code Lab on how to use the Python Client Library to control and interact with embedded YouTube videos.

Be sure to visit the website to see the complete list of sessions and to
register. For those coming from out of town, we've arranged discounted room rates at nearby hotels. Read the details on the website to take advantage of the discount, but move fast because the hotel discount ends May 6th.

We're looking forward to seeing you in San Francisco in just a few weeks!


Update: Fixed Typo

.NET 1.1.4.1 with Contacts support released

Wednesday, April 30, 2008 at 8:39 AM



We are happy to announce that we've just just released a new version of the .NET client library for Google Data APIs, based on the Atom Publishing Protocol. There are a lot of changes in this release, but the most notable changes are listed here.

Visual Studio Project Templates
It was never so easy to get going. When you use the setup program, 6 project templates are placed into your Visual Studio template folder. Now, just use "New Project" and pick the template you like. You get a minimal, but working Google Data API application. They use a common login dialog, log you in, and display the result in a listview. It's easy to start, easy to modify. If you choose the archive download, just copy the templates from the subversion repository to your Visual Studio installation.

Better Visual Studio integration
After installation, the Google .NET assemblies are now registered and they will show up in the "Add reference" dialog. No more searching your harddisk to find the just installed SDK.

.NET 2.0 and upwards
Support for .NET 1.1 was removed with this release. Generics and other features just make the SDK perform better, as well as rendering it easier to maintain-something that will help us in adding more features in the future. If you still need 1.1 support, you can use the older versions of the .NET client library.

Support for Google Contacts
There is a new objectmodel for the Google Contacts API, as well as a project template to get you going.

You can find the release here:
http://code.google.com/p/google-gdata/downloads/list

and if you happen to find bugs or have suggestions, please post them here:
http://code.google.com/p/google-gdata/issues/list

New Google Data video tutorials!

Wednesday, April 16, 2008 at 10:26 AM



A picture is worth a thousand words, so a video is probably worth a few thousands more. I'll try to keep this blog post short so you can watch the new tutorial videos we've released!

The first video focuses on the Google Calendar API. I go over how to get started using the JavaScript client library to interact with Google Calendar, and show a demo of the recently launched Interactive Developer Guide:




The second video focuses on the Google Spreadsheets API. My colleague Jeff Scudder presents a nifty demo on how to use a Google Spreadsheet as a virtual database with an extension he wrote for the Python client library (if this seems familiar, it's because Jeff gave it as a talk at PyCon!):




Enjoy!

Using Eclipse to work with Google Data APIs

Tuesday, April 15, 2008 at 4:33 PM



Eclipse is an awesome tool to use for Java development, one that has made my life a bit easier. Using it with the Java client library is a great way to get started developing with our Google Data APIs.

To make it even easier to get started with Eclipse, I've written a new article whimsically titled "Coding in the Shade" to take you through all the required steps of writing a simple Java program using one of our APIs. Sparing no expense, I've added several pretty pictures as well.

Announcing an Authentication Proxy Service for Google Apps

Monday, April 14, 2008 at 5:47 PM



As a third party web application developer, you may know about AuthSub, an authentication proxy service bundled with the Google Data APIs. AuthSub gives you access to service data protected by a user's Google account without your web application ever having to handle usernames and passwords. We are excited to announce that AuthSub has now been extended to support Google Apps accounts as well!

Google Apps brings together essential services to help businesses, schools, groups or families communicate and collaborate more effectively. A large and growing number of organizations are choosing Google Apps, including more than 500,000 businesses and thousands of Universities. With our latest release of AuthSub, you do not need to make any code changes to reach these Google Apps users. As part of the AuthSub flow, users are directed to a sign-in page where they can choose to grant you access to either their Google account or to their Google Apps account. You can choose to customize this default behavior by making minor code changes, a handy option if, for example, you are developing applications for one particular managed domain. For details on the new authentication flow and customization options, please see our documentation.

AuthSub helps keep accounts secure by making it possible to share certain information from those accounts without sharing the username and password that protect them. We hope you and your Google Apps users will enjoy the added protection.

Update:changes made

Using Ruby to work with the Google Spreadsheets API

Sunday, April 13, 2008 at 4:36 PM



I've recently started to explore using Ruby as an all-purpose tool for scripting and programming small tasks. Seeing requests for Ruby code samples inspired me to write this article, which will hopefully help other developers get started using Ruby to access the Google Data API services.

The article explores the Spreadsheets API from within irb, Ruby's interactive shell. We explore performing basic GET, POST and PUT requests and finish by writing a sample method to perform batch updates.

All of the sample code has also been added to a Google Code Project which contains a class that can be used to perform various operations such as authentication, as shown here:


def authenticate(email, password)
http = Net::HTTP.new('www.google.com', 443)
http.use_ssl = true
path = '/accounts/ClientLogin'
data = "accountType=HOSTED_OR_GOOGLE&Email=#{email}" \
"&Passwd=#{password}&service=wise"
@headers = { 'Content-Type' => CONTENT_TYPE_FORM }
resp, data = http.post(path, data, headers)
cl_string = data[/Auth=(.*)/, 1]
@headers["Authorization"] = "GoogleLogin auth=#{cl_string}"
end

Find out more by reading the article: Using Ruby with the Google Data APIs.

If you want to share your experiences using Ruby with the Google Data APIs or express your opinions on the article, please join the discussion on the Documents List and Spreadsheets API group wiki page.