Ok so some of the messages in the GI are private, those could be filtered out of the API return, or replaced by a type = private so that apps can let the user that if they want to see it they have to go to the site.
Or really what I wanted to ask in this edit is can we have access to the unread count:
http://stackexchange.com/inbox/genuwine/unviewed-count
except with a guid parameter to get the count for any user (in the same way you can get the order of the sites for any user, (the sites tab is ordered according to the rep of that user))
eg: http://stackexchange.com/inbox/genuwine/unviewed-count?guid=c8039b19-c343-41eb-9ad8-31ff2f1cd3b3
the reason this would be useful is that it would make push notifications on iOS possible.