Introducing the Google Wave APIs: what can you build?

Thursday, May 28, 2009 | 8:50 AM

Welcome to the Google Wave Developer Blog. This is a new blog where you can learn about the technical aspects of Google Wave, especially the Google Wave APIs and the Google Wave Federation Protocol. In this first post, we'll walk you through the Google Wave APIs that have just been announced as part of the Google Wave developer preview release at Google I/O.

Google Wave is a new communication and collaboration tool that lets people work together more productively online. If you haven't already seen the demo presentation, please take a jump over to learn more about Google Wave by visiting http://wave.google.com/.

The Google Wave APIs come in two flavors: Embed and Extensions. With Embed, you're able to bring waves into your own site through a simple JavaScript API. For example, embedding a wave in a webpage is a good way to encourage a discussion among the visitors. With Extensions, you're able to write programs, which are packaged as Robots or Gadgets, that provide rich functionality inside the Google Wave web client.

Robots are automated participants that are written on the server side, and help perform tasks on behalf of the users, including syncing data with other services. Thus far, Robots are hosted on Google App Engine, and we have client libraries available in the Java language and Python. We're working towards a lower-level Robots API that can be backed by any server on the web. As an example of something you could build, here is a robot we affectionately call "Tweety," which helps you use Twitter easily inside Google Wave.

Gadgets, which you may know from OpenSocial, are client-side programs that make it easy to write full applications inside of Google Wave. The neat part is that we've introduced an extension to the OpenSocial gadgets API that enables you to take advantage of the collaborative nature of Wave when building a gadget. For example, check out this screenshot of a multiplayer Sudoku gadget (available as a sample too):

If you'd like to learn more about the Google Wave APIs: request access to the sandbox, check out the code samples, and join us in the Google Wave API forum.