Search code examples
iosswiftiphonelinkedin-api

linkedin get profile - Request failed: forbidden (403) error swift


I am facing problem with "https://api.linkedin.com/v2/me" api of LinkedIn. Code was working good when I was using v1 api. I have updated my code for version 2 api for linkedIn authentication and When I tried to get profile with api "https://api.linkedin.com/v2/me" I am getting error Request failed: forbidden (403). I don't know how to resolve it.

Here is my code:

let linkedinHelper = LinkedinSwiftHelper(configuration: LinkedinSwiftConfiguration(clientId: Constant.Key.kLinkedInClientId, clientSecret: Constant.Key.kLinkedInClientSecret, state: Constant.Key.kLinkedInState, permissions: ["r_basicprofile", "r_emailaddress"], redirectUrl: Constant.Key.kLinkedInRedirectURL),nativeAppChecker: WebLoginOnly())
linkedinHelper.authorizeSuccess({ (token) in

        print(token)

        let url = "https://api.linkedin.com/v2/me"
        linkedinHelper.requestURL(url, requestType: LinkedinSwiftRequestGet, success: { (response) -> Void in

            print(response)


        }) {(error) -> Void in
            print(error.localizedDescription)
            //handle the error
        }

I've set URL scheme in info.plist as well.


Solution

  • You have to pass key in oauth2_access_token

    Example:

    https://api.linkedin.com/v2/me?oauth2_access_token={linkedin_key}
    

    Edit:-

    Also in permission need to set "r_liteprofile" instead of "r_basicprofile". To change permission worked for me.