The token expires after 60 minutes. As Kenny mentioned, if you are requesting a second token before first token expires, then the first token becomes invalid.
Is it possible that you're requesting a new token during the live period for existing one from the same client id? This could cause extant tokens to become invalid.