What is the Google Wave API?
The Google Wave API gives developers enough power to work with Google Wave in the following ways:
- Extensions: task automation or gadgets
By creating robot extensions (robots) to automate most common tasks or by building gadget extensions devellopers will be able to provide a new way of interaction for users - Embedding into sites
You will be able to embed waves seamlessly into your site.

Wave Entities
Programming effectively using the Google Wave APIs requires understanding some basic wave concepts.
A wave is a threaded conversation, consisting of one or more participants (which may include both human participants and robots).
The wave is a dynamic entity which contains state and stores historical information. A wave is a living thing, with participants communicating and modifying the wave in real time. A wave serves as a container for one or more wavelets defined below.
A wavelet is a threaded conversation that is spawned from a wave (including the initial conversation).
Wavelets serve as the container for one or more messages, known as blips. The wavelet is the basic unit of access control for data in the wave. All participants on a wavelet have full read/write access to all of the content within the wavelet. As well, all events that occur within the Google Wave APIs operate on wavelet level or lower.
When you spawn a wavelet from within a wave, you do not inherit any access permissions from the parent wavelet. During the lifetime of a wave, you may spawn private conversations, which become separate wavelets, but are bundled together within the same “wave.” Since events occur at the wavelet level or below, the context of an event is restricted to a single wavelet. A wavelet may be created and managed with a robot as its only participant. This allows the robot to use the wavelet effectively as a private data document. These data documents are never rendered/revealed to the user and may contain structured or unstructured data about the wavelet.
A blip is the basic unit of conversation and consists of a single messages which appears on a wavelet.
Blips may either be drafts or published (by clicking “Done” within the Wave client). Blips manage their content through their document, defined below. Blips may also contain other blips as children, forming a blip hierarchy. Each wavelet always consists of at least one root blip.
