google / google/GoogleSignIn-iOS

Documenting errors of revoked tokens

Open
#93 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Objective-C
Stars
750
Forks
282
Avg merge
2d 15h
Merged PRs (30d)
9

Description

Hi,

In our apps we need to know whether the Google token was revoked or not, so we can delete other data that was obtained using that token. Today, if one tries to call `restorePreviousSignInWithCallback:` when the token was revoked, we get the following error:

```
Error Domain=org.openid.appauth.oauth_token Code=-10 "invalid_grant: Token has been expired or revoked." UserInfo={OIDOAuthErrorResponseErrorKey={
error = "invalid_grant";
"error_description" = "Token has been expired or revoked.";
}, NSLocalizedDescription=invalid_grant: Token has been expired or revoked., NSUnderlyingError=0x281ab7e40 {Error Domain=org.openid.appauth.remote-http Code=400 "{
"error": "invalid_grant",
"error_description": "Token has been expired or revoked."
}" UserInfo={NSLocalizedDescription={
"error": "invalid_grant",
"error_description": "Token has been expired or revoked."
}}}}
```

Which comes directly from https://github.com/openid/AppAuth-iOS. Can this error be explicitly documented? Either by documenting that this is the error returned, or introducing a new error code to `GIDSignInErrorCode`.

Contributor guide

Open the contributing guide

Research direction

Review the restorePreviousSignInWithCallback: behavior and the GIDSignInErrorCode API, then compare the reported invalid_grant error with the existing documentation. Done means the revoked-token error is explicitly documented, or the requested new error-code behavior is clearly addressed; the issue also references AppAuth-iOS as the source error.

Written by the indexing model from the issue text.

Assessment

Tech stack
ios, objective-c
Domain
authentication, mobile-dev
Issue type
Documentation
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.