title: Most efficient way to get new messages
body: <p>I have a process that looks for new messages in a users Gmail.  The message is added to an external database if it meets certain address criteria.</p>
  
  <p>We have been using Users.History.List which returns all messages that have had a change made to them.  This is quite inefficient as we have to subsequently check each message to see if we have already processed it.</p>
  
  <p>We are looking at alternatively using Users.Messages.List and checking the MsgId to see if it is larger than the previous check (we store the Id from that).  The assumption here is that the MsgId will keep getting larger.  Is this approach flawed?  What are others doing?</p>
  
  <p>Many Thanks.</p>