Is there any method to read all mails (i.e. both read and unread) using Gmail API with OAuth.
The following link returns only new mails:
There is sample code. Alter the code as per your needs.. https://developers.google.com/google-apps/gmail/xoauth2_libraries
On June 25, 2014 Google released new Gmail API that can be used to easily gather messages, threads, labels and more from Gmail accounts. Service is OAuth 2 protected. They provide nice client libraries for Python, .NET and Java and wonderful documentation for those doing RESTful implementation.
I suggest using their API instead of IMAP - because Gmail has and supports many features that were not designed to run over IMAP. Features like search, tagging, etc...
You can also check their YouTube video for a nicer introduction.
edited: IMAP example to retrieve email count. Shows the count of all my mails. Seems to work this way.
<?php
$imap = imap_open('{imap.gmail.com:993/imap/ssl}INBOX', $username, $password);
$emails = imap_search($imap, 'ALL');
if($emails) {
echo count($emails);
}
imap_close($inbox);
?>