InboxSDK (from Streak) is the best API to use for Gmail.
I personally found both to be lacking in different areas, too bad they weren't merged together to cover a broader base.
Gmail.js lets you avoid doibng the DOM hacking yourself but is still fairly low level. The InboxSDK was targeted for people who are building apps inside of Gmail. We assume multiple extensions to be running and make sure they play nice, we handle auto updates to handle changes in Gmail and we try to guide developers to using standard Gmail UI styles. We have inbox support coming soon which will let you write your app once and have it work in Gmail and Inbox.