Gmail_IconYet another announcement from Google I/O today comes in the form of a new Gmail API beta that will make it easier for developers to integrate Gmail features into their apps:

While IMAP is great at what it was designed for (connecting email clients to email servers in a standard way), it wasn’t really designed to do all of the cool things that you have been working on, which is why this week at Google I/O, we’re launching the beta of the new Gmail API.

Designed to let you easily deliver Gmail-enabled features, this new API is a standard Google API, which gives RESTful access to a user’s mailbox under OAuth 2.0 authorization. It supports CRUD operations on true Gmail datatypes such as messages, threads, labels and drafts.

So what’s the benefit over IMAP or other solutions that developers have already been using to integrate Gmail features? Google says the new API, unlike IMAP, “gives fine-grained control to a user’s mailbox.” That means that an app, for example, “only needs to send mail on behalf of a user and does not need to read mail, you can limit your permission request to send-only.” There are also other benefits like speed:

To keep in sync, the API allows you to query the inbox change history, thereby avoiding the need to do “archaeology” to figure out what changed. Finally, a huge benefit is speed. While there’s still some tuning to be done (“beta” – remember?), results from our tests and feedback from pre-release developers suggest that the new Gmail API is delivering dramatic performance improvements over IMAP for web application use cases.

Google has more on the new API here. 

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s