Thursday, March 25, 2021

Function to Get Linkedin User Profile Data (like first name , last name , photo etc) using Linkedin Auth Token

//Function to get LinkedIn user profile data using LinkedIn auth token


public LinkedinProfileDetailsDTO ValidateLinkedinTokenAndGetProfileDetails(string tokenCode)

{

try

{

LinkedinTokenDTO LinkedinToken = GenerateLinkedinToken(tokenCode);

var request = new RestRequest(Method.GET);

LinkedinProfileDetailsDTO profiledata = new LinkedinProfileDetailsDTO();

if (LinkedinToken != null && !string.IsNullOrWhiteSpace(LinkedinToken.access_token))

{

                    var client = new RestClient("https://api.linkedin.com/v2/me");

                    client.Timeout = -1;

                    request.AddHeader("Host", "api.linkedin.com");

                    request.AddHeader("Connection", "Keep-Alive");

                    request.AddHeader("Authorization", "Bearer " + LinkedinToken.access_token);

                    IRestResponse response = client.Execute(request);

                    profiledata = JsonConvert.DeserializeObject<LinkedinProfileDetailsDTO>(response.Content);

                }

return profiledata;

}

catch (Exception ex)

{

}

return null;

}





///-----------------------Response Model Class's to receive and parse response----------------------


public class LinkedinProfileDetailsDTO
    {
        public string localizedLastName { get; set; }
        public FirstName firstName { get; set; }
        public LastName lastName { get; set; }
        public string id { get; set; }
        public string localizedFirstName { get; set; }
        public string emailAddress { get; set; }
    }
    public class Localized
    {
        public string en_US { get; set; }
    }

    public class PreferredLocale
    {
        public string country { get; set; }
        public string language { get; set; }
    }

    public class FirstName
    {
        public Localized localized { get; set; }
        public PreferredLocale preferredLocale { get; set; }
    }

    public class LastName
    {
        public Localized localized { get; set; }
        public PreferredLocale preferredLocale { get; set; }
    }
    public class LinkedinTokenDTO
    {
        public string access_token { get; set; }
        public int expires_in { get; set; }
    }

No comments:

Post a Comment

What is C# ("See Sharp") | Introduction of C#

  C# (pronounced " See Sharp ") is a modern, object-oriented, and type-safe programming language.  C# is a simple programming lan...