I understand this predicate but are your sure Twitter returns a different access token when something failed. IMO, you should make something similar to https://github.com/widop/twitter-rest/blob/master/src/Widop/Twitter/Rest/Twitter.php#L130 no? Anyway, if there is an error message you should expose it in the exception message.