'Trying to access https://api.github.com/user but it is returning status code of 401

I am working on creating Github third-party OAuth application. I get an email like this, which shows that my app is authorized:

A third-party OAuth application (Dev Snapshot) with read:user, repo:status, user:email, and user:follow scopes was recently authorized to access your account.

I am also signed in under my Github account via Firebase. However, I cannot access this endpoint: https://api.github.com/user

I get 401 response, meaning I am not authorized.

Here is the code that signs me in my app:

provider.customParameters = [ "allow_signup": "true" ]

provider.scopes = ["read:user","user:email","user:follow","repo:status"]
provider.getCredentialWith(nil) { credential, error in
    if error != nil {
        print("error: \(error!.localizedDescription)")
    }
    
    if credential == nil {
        print("no credential")
    }
    
    if credential != nil {
        
        Auth.auth().signIn(with: credential!) { [self] authResult, error in
            if error != nil {
                // Handle error.
                print("error sign in: \(error?.localizedDescription)")
            }
            // User is signed in.
            // IdP data available in authResult.additionalUserInfo.profile.
            
            guard let oauthCredential = authResult?.credential as? OAuthCredential else {
                print("oauth error")
                return
            }
            
            print("signed in")
            // GitHub OAuth access token can also be retrieved by:
            // oauthCredential.accessToken
            // GitHub OAuth ID token can be retrieved by calling:
            // oauthCredential.idToken
            configure()
            tableView.reloadData()
        }
    }
}


Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source