C# LinkedIn api entegration working example

121 posts / 0 new
Last post
Fatih YASAR's picture
Joined: 2009-11-23
Dec 2, 2009
C# LinkedIn api entegration working example

Hi Guys, As i promised i completed an example api entegration of linked project. You can find an example project enclosed in this post. As you can see the my previous example oAuth and Api call functions example working together in this projectLinkedIn oAuth mechanizm slightly different then other oAuth providers. During calling api functions you should add all oauth information to the request header. Probably you didn't find any example over the internet or google, i think it will be show to you how to call any api functions with custom request headers with HttpRequest class of .Net framework.I hope I will be help to a lot of people.Good luckFatih YASARfatihyasar.comExample screen :

LinkedInAuth.rar.zip

Phani Sundar's picture
Joined: 2009-11-23
Dec 2, 2009

Thanks Fatih YASAR,You are a life saver.Phani...

Fatih YASAR's picture
Joined: 2009-11-23
Dec 2, 2009

You are welcome Phani

- -
Joined: 2009-12-02
Dec 2, 2009

Hi Fatih,We have an application on facebook in which we are publishing to news feed and adding to profile our content, the content contains images and text inside a div.Can you please thriugh some light or give some idea to implement the same on Linkedin and where that content will go on Linkedin like in facebook its on the user's Wall.Regards,Him

Fatih YASAR's picture
Joined: 2009-11-23
Dec 2, 2009

Hi Him,I have no idea, I think you should thalk with Taylor Singletary about that.

Anonymous (not verified)
Dec 10, 2009

Hi "Fedora Linux,"There's currently no way to post rich media on to LinkedIn through the APIs available to you. Network updates are limited to anchor tags in markup, and no markup is supported in the messaging facilities. LinkedIn does have an on-site platform based off of OpenSocial that is more appropriate for these kind of integrations. You can inquire about our InApps platform on this form.Thanks,Taylor

- -
Joined: 2010-01-19
Jan 19, 2010

thank you

Joined: 2010-10-18
Oct 19, 2010

hi Fatih YASAR,i downloaded yr code. its working good. thanks. but i'm facing problem in some cases,in case of send message i'm getting 400 bad request. remote server errori can able to send messages to myself successfully sometimes.. using <recipient><person path='v1/people/~'/></recipient>but incase of try to send messages to others who are in my connections itself i' getting 400 bad req error only. using <recipient><person path='v1/people/id=abcdef'/></recipient>could yu please help me..here my code is_oauth.Token = txtAccessToken.Text;        _oauth.TokenSecret = txtAccessTokenSecret.Text;        _oauth.Verifier = txtoAuth_verifier.Text;            string xml2 = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>";xml2 += "<mailbox-item><recipients><recipient><person path='v1/people/~'/></recipient><recipient><person path='v1/people/id=*********'/></recipient></recipients><subject>Congratulations on your new position.</subject><body>You're certainly the best person for the job!</body></mailbox-item>";string response = _oauth.APIWebRequest("POST", "https://api.linkedin.com/v1/people/~/mailbox", xml2);if (response == "")                 txtApiResponse.Text = "Your message sent";

Nick Katsivelos's picture
Joined: 2009-11-23
Dec 2, 2009
Fatih YASAR's picture
Joined: 2009-11-23
Dec 2, 2009

Thanks Nick.

Anonymous (not verified)
Dec 2, 2009

Greetings. I read article on using liked in authorizationhttp://developer.linkedin.com/node/1008I want to do following thingA form will be presented to user where he will enter username and password for his linked in account and clicks submit button.login will be done to linkedin account and then it will return all details of contacts(connections) associated with his account in xml or any format.I want to do this preferably using HTML and javascript.I read the above article but not able figure out how to do this.Please send me a code sample to achieve this,.If we require some server side language in this then please send me sample with .net or java.Actually I want to make one application in visualforce, which will import all lined in contacts into users SalesForce account, so HTML js example will do for me.

Rizwan Ahmad's picture
Joined: 2010-03-25
Mar 25, 2010

hi nice app i have an issue..when i click the Creat Authorization it give me Token and Token secretand now we go to next step  and click  GET ACCESS TOKEN it give an error which isThe remote server returned an error: (400) Bad Request.plz solve this issue

Joined: 2010-03-30
Apr 26, 2010

hi all,i have an issue..when i click the Creat Authorization it give an error which isThe remote server returned an error: (400) Bad Request.I get this error at WebResponseGet function. plz solve this issue. I'm stuck up here and unable to proceed further.Thanks & Regards,Vrunda.

Gopinath Reddy
Joined: 2009-12-01
Dec 2, 2009

Thanks for great solution Fatih.Again getting the same exception (The remote server returned an error: (400) Bad Request.) when I used search Api.Here is my code....     _oauth.Token = txtAccessToken.Text;        _oauth.TokenSecret = txtAccessTokenSecret.Text;        _oauth.Verifier = txtoAuth_verifier.Text;        string response = _oauth.APIWebRequest("GET", "    http://api.linkedin.com/v1/people?"+            "keywords=hr&name=&"+            "company=&current-company=true&title=&"+            "current-title=true&industry-code=&"+            "search-location-type=Y&country-code=&"+            "postal-code=&network=out&start=1&"+            "count=10&sort-criteria=ctx", null);        txtApiResponse.Text = response;        btnRequestProfile.Focus();Please let me know if you have any solution.Thanks,Gopinath.

Fatih YASAR's picture
Joined: 2009-11-23
Dec 2, 2009

Hi Gopinath, I haven't tried to use any search api yet. When i tried that i will send you an example code.

Anonymous (not verified)
Dec 3, 2009

Hi Gopinath,While I can't debug the C# code with you, I'd like to point out with the search API you'll get the best results by only providing the query parameters that you have values for in the request. I imagine your 400 Bad Request is due to providing query parameters without values  on the query string. So if you don't have, for example, a company name that you are searching by, you should not present a "company=" query parameter.Taylor

Gopinath Reddy
Joined: 2009-12-01
Dec 7, 2009

Thanks Taylor,  It Worked for me..

Thomas Xavier
Joined: 2009-12-14
Dec 14, 2009

Thanks Fatih, Tim, Taylor, Gopinath, etcYou guys are making the linkedin integration guys life easier.I appreciate the source code and valuable discussionI have one question. Working on search apiThe following code worksstring response = _oauth.APIWebRequest("GET", "    http://api.linkedin.com/v1/people?" +            "name=john smith&" +            "search-location-type=Y&start=1&" +            "count=10&sort-criteria=ctx", null);But if I use the delimiter + in the url like the following, getting a 401 errorstring response = _oauth.APIWebRequest("GET", "    http://api.linkedin.com/v1/people?" +            "name=john+smith&" +            "search-location-type=Y&start=1&" +            "count=10&sort-criteria=ctx", null);Any suggestions to fix this error?

Gopinath Reddy
Joined: 2009-12-01
Dec 15, 2009

Hi Taylor,     am not getting results using Search API when i pass country-code as query string to the url.     Here is my Url:     "http://api.linkedin.com/v1/people?keywords=hr&current-company=true&current-title=true&search-location-type=I&sort-criteria=relevance&network=out&country-code=IN&start=0&count=10"     And, the xml response i got is:           <?xml version="1.0" encoding="UTF-8" standalone="yes"?>     <people total="0" />     if don't pass country-code i am getting results.Regards,Gopinath.

Nicholas van Esch's picture
Joined: 2009-12-02
Dec 2, 2009

Good day FatihYou are a God Send thank-you. Would it be possible to modify the code to use a dynamic callback URL as there are some querystring parameters unique to each client request that need to come back to the application. (Hence we cannot configure a single static url) and we may access from different subdomains of the main domain of the application.Many thanksNick

- -
Joined: 2009-12-07
Dec 7, 2009

Can anyone describe more in detail how I can reach Step 3.I have entered my URL at registration of the app.After authorization in step 2, I get a "security code" on the screen.Exactly what is supposed to happen after that?I really don't know how to debug this.Today I got another error.After logging in and granting access in step 2, I get the  following error:"There was an error processing the request: You did not complete the authorization in a timely manner, please retry"What is "timely manner"?  Is really 30 seconds too much??????That doesn't seem right.

- -
Joined: 2009-12-07
Dec 8, 2009

I am really sorry for bothering you!  I finally made it work!  The trick was to use a valid redirection link. Obviously, the 'timeout' was not for pressing the button "Grant access" too late, but for the failed redirection.

Atul Arora's picture
Joined: 2010-12-01
Dec 1, 2010

can anyone tell how to signout from linkedin using oauth in asp.net?

Dev Filmjamr's picture
Joined: 2009-11-23
Dec 10, 2009

Can we Pass call back Url dynamicaly.my requirement is   User should be returned to same location from where  Api request is generated  after authentication.for example  on my site there  are 2 or more different pages from where Api request is generated now i want user should be returned to same Url (from where user has send request )after Authorization .thks in Advance.

Fatih YASAR's picture
Joined: 2009-11-23
Dec 10, 2009

Himm, i have no idea about that,You are right some providers are supporting callback paramaters and when their completed their auth mechanizm,they will redirect automatically to the given call back parameter. I think you should ask this question to Taylor. I hope he will give a real solution to you about your question.Regards

Dev Filmjamr's picture
Joined: 2009-11-23
Dec 10, 2009

thks for reply,can u tell what is expiration time for oauth_Access_token,oauth_Access_tokenSecret.If i save it in Session how long it will be valid.

Anonymous (not verified)
Dec 10, 2009

The accessToken and accessTokenSecret are valid for as long as the user specifies when they grant your application access, or until they manually disable the tokens through an interface on LinkedIn.com

Dev Filmjamr's picture
Joined: 2009-11-23
Dec 10, 2009

1. I passed call back url in while getting Access Token step  After Authentication Step (As Suggested by taylor)It generates 401 error Code.

Roy Clarke's picture
Joined: 2010-04-27
May 11, 2010

Hi,Is this code still working?  I'm getting a '(401) not authorized' quite often will either the sample code in this thread (thanks for that, by the way :-) ) or with the LinkedIn API toolkit for C# from codeplex.  The API just seems broken - I can't see that it can be a config setting and it does work flawlessly sometimes.  Once I have a valid accessToken and secret it's solid - it's just the initial authentication that throws a problem. It seems to happen suspiciously more often in the evening when LinkedIn must have more traffic...Can anyone here definitively say that this isn't an API error?Can someone help me figure out what's going on if it's on my side?Thanks in Advance,  Roy.

Joined: 2010-08-09
Aug 10, 2010

Hi Fatih YASAR,Thanks for you sample application,The way you provided the sample with fullllll of information  is excellent.You proivded the sample from A-Z steps with full explanaqtion with different classes with modularity.I hope you understand how much I am happy for this.But I need how can call back from linked in to my applicaion after my credentails are passed in linked in site. Please help me on this.You have provided 100% of stuff, but i need this integration stuff. Please help me.If any one knows this please help me.Thanks,Laxman.

Fatih YASAR's picture
Joined: 2009-11-23
Aug 10, 2010

Hi Lakshman,Thank you for your comments, I just tried to solve something who tries to connect to LinkedIn API with C# or .NET.Your question's answer is ;You gave oAuth Redirect Url value during registering your application on Application Registration which part of application registration. Did you ?As far as I remember, when your authentication completed, Finally LinkedIn redirects browser request to this defined url address with access_token. LinkedIn works according to oAuth standarts if you need to more detailed instruductions about oAuth protocol you can take a look hereI hope It will helpsRegards

Arian Geertsema's picture
Joined: 2009-11-27
Aug 11, 2010

Hi Lakshman,Maybe it's worth to have a look at the desktop sample the LinkedIn Developer Toolkit provides? Check the latest source code bits, this uses the verifier retrieved after authentication.

Anonymous (not verified)
Dec 10, 2009

Hi Dev,You can specify any callback URL that you like, provided that it's properly encoded and sent to LinkedIn in the requestToken step. The best implementations will generate the requestToken and then the authorize URL within the same operation.Taylor

Joined: 2010-01-27
Jan 27, 2010

Hello Taylor,I put in the parameter as oauth_callback but still my page doesnt return to the one I wantparameters.Add(new QueryParameter(OAuthVersionKey, OAuthVersion));parameters.Add(new QueryParameter("oauth_callback", "http%253A%252F%252Flocalhost%253A3000%252F"));parameters.Add(new QueryParameter(OAuthNonceKey, nonce));......Please can you tell me whats wrong with this?The returning URL I get after loggin in is as follows:https://api.linkedin.com/uas/oauth/http%3A%2F%2Flocalhost%3A3000%2F?oauth_token=efaa75cc-5db1-4f90-a57c-b543d5d0d762&oauth_verifier=82365I am implementing this in C#Please help!Leapfish Team

Frederick Florizoone's picture
Joined: 2009-12-14
Dec 15, 2009

Thx so much for providing your code.It seems that a lot of functionality is still missing.https://api.linkedin.com/v1/people/~   works fine buthttp://api.linkedin.com/v1/people/url=<public-profile-url> doesn't seem to workI tried to change your code so it could accept oauth_callback, but that doens't seem to work either.It would be great if this 2 functionalities would work.

Joined: 2010-01-27
Jan 27, 2010

Hi all,Is any body guide me how to get all information of perticular catagory through API.Means i want to display name ,email ,city all the things for perticular catagory like HR,Marketing people. Is it possible to get all the information through API.

Frederick Florizoone's picture
Joined: 2009-12-14
Jan 28, 2010

Anup,I know that is not possible to retrieve the email address and the city,  but you can retrieve the local area (I guess the nearest big city) where the person leaves.The fields you can retrieve, can be found here: http://developer.linkedin.com/node/1014

Joined: 2010-01-27
Jan 29, 2010

I want to programatically log in to LinkedIn website using C# and then use the search APIs to search users. I reach a point where I get to the url https://api.linkedin.com/uas/oauth/authorize?oauth_token=777e549b-bb7b-4465-b16e-faf9d2f4c7b6But how do I login programatically on this URL so that once the authentication succeeds I am back to my call back URL.I have the following code but it doesn't workprotected void CreateAuthorization()    {        string authLink = _oauth.AuthorizationLinkGet();        Session["reuqestToken"] = _oauth.Token;        Session["reuqestTokenSecret"] = _oauth.TokenSecret;        Session["oauthLink"] = authLink;        hdnRequestToken.Value = _oauth.Token;        hdnTokenSecret.Value = _oauth.TokenSecret;                //Response.Redirect(authLink);          //authlink = https://api.linkedin.com/uas/oauth/authorize?oauth_token=777e549b-bb7b-4465-b16e-faf9d2f4c7b6        AutoLoginToLinkedIn(authLink);            }    protected void AutoLoginToLinkedIn(string link)    {        // first, request the login form to get the viewstate value        HttpWebRequest webRequest = WebRequest.Create(link) as HttpWebRequest;        StreamReader responseReader = new StreamReader(              webRequest.GetResponse().GetResponseStream()           );        string responseData = responseReader.ReadToEnd();        responseReader.Close();        // extract the viewstate value and build out POST data        string postData =              String.Format(                 "email={0}&password={1}&authorize=Grant Access",                  "leapfish2@gmail.com", "myownpassword"              );        // have a cookie container ready to receive the forms auth cookie        CookieContainer cookies = new CookieContainer();        // now post to the login form        webRequest = WebRequest.Create(link) as HttpWebRequest;        webRequest.Method = "POST";        webRequest.ContentType = "application/x-www-form-urlencoded";        webRequest.CookieContainer = cookies;        // write the form values into the request message        StreamWriter requestWriter = new StreamWriter(webRequest.GetRequestStream());        requestWriter.Write(postData);        requestWriter.Close();        // we don't need the contents of the response, just the cookie it issues        webRequest.GetResponse().Close();        // now we can send out cookie along with a request for the protected page        webRequest = WebRequest.Create("https://api.linkedin.com/uas/oauth/authorize/submit") as HttpWebRequest;        webRequest.CookieContainer = cookies;                responseReader = new StreamReader(webRequest.GetResponse().GetResponseStream());        // and read the response        responseData = responseReader.ReadToEnd();        responseReader.Close();               //Response.Write(responseData);        //At this point my application should have the aouth_verifier so that i can redirect my page and then use search API or any other API as I am authenticated       //or my page should automatically redirect to the callback_url specified in LinkedIn app.    }Anyone please help if they have encountered and implemented such functionality.Thanks,LeapfishMessage was edited by: leapfish dotnext

Arian Geertsema's picture
Joined: 2009-11-27
Feb 1, 2010

You might take a look at the following Toolkit, this saves you the  trouble of creating your own Http requests:http://linkedintoolkit.codeplex.com/

Anonymous (not verified)
Feb 1, 2010

Hi there Leapfish,The OAuth authorization process is meant to do away with the need for third parties to store or provide login credentials for web services -- all portions of the OAuth process are implementatble in C#, but you must always open a distinct web browser for a LinkedIn member to provide their username and password. If you are building a desktop application that cannot be registered as a custom URI scheme for use in an OAuth callback, we provide the "out of band" flow such that after entering their login credentials, a LinkedIn member is presented with a short PIN code that they are asked to enter into a GUI in your application that you provide.Any automation of the passing of login and password to a LinkedIn sign-on form is strictly against our Terms of Service; please use the OAuth authentication patterns we provide to you for programmatic access. Once you've obtained an access token after successfully having a member login, that token will persist in its allowance for you to make API calls on the member's behalf for as long as the member wishes to grant you integration rights. By storing a member's login and password, you are circumventing the controls we have put in place to protect our users privacy and agency in how & where they use their professional identity online. Every LinkedIn member using an Open API integration with LinkedIn must manually enter their credentials into our authentication screen.If you need help understanding how the OAuth flow works, I recommend taking a look at this presentation on OAuth Authentication for LinkedIn. If you have any questions on how to implement the out of band flow in your own application, I'll be happy to help.Thanks,Taylor

Joined: 2010-01-27
Feb 1, 2010

Thank you Taylor for your reply. What is the timeline that LinkedIn can provide a public API to search LinkedIn users based on firstname and lastname without the member being logged in. Any update on this is highly appreciated.

erwin yulianto's picture
Joined: 2010-02-20
Feb 20, 2010

Hi Fatih Yasar, nice code,We're having problem after we remove those "oAuth Redirect parameter", it redirect to another page with this information :You have successfully authorized [Application Name]. Please return to your application and enter the following security code to grant access: 05835do you had any idea how to implement oauth_callback ?I modify your code but had no luck.Please help.erwin

erwin yulianto's picture
Joined: 2010-02-20
Feb 20, 2010

David Quail post in http://developer.linkedin.com/thread/1190 is very helpfull.

- -
Joined: 2010-05-20
May 20, 2010

hi Fatih,Really good sample... i like it.keep it up.Thank you for such nice post.---AMOL

Joined: 2010-06-29
Jul 8, 2010

Thanks for the great application. It really helps me a lot. However, I am facing an issue "The remote server returned an error: (401) Unauthorized." when I refresh the page after clicking on "Get Access Token" button. Could you please help me out in this issue.Thanks,Sufiyan

Joined: 2010-07-09
Jul 15, 2010

HI fatih,You have provided a very good example for linkedin API search key example.Now I have some queriesWhen i searched for only country code and postal code then i never got  first name and lastname. 1)When i usedstring response = _oauth.APIWebRequest("GET", "http://api.linkedin.com/v1/people?" +                                            "search-location-type=Y&country-code=gb&postcode=ab10" +                "&start=" + index.ToString() + "&" +                "count=10", null);as my request stringI never got first name and lastname of the people.But got the records with first name as private and lastname as private.2)Also when i usedstring response = _oauth.APIWebRequest("GET", "http://api.linkedin.com/v1/people?" +                "first-name=John" +"&last-name=Bender" +                "&current-company=false" +                "&search-location-type=Y&country-code=in" +                "&start=" + index.ToString() + "&" +                "count=10", null);as my request thenwhere i specified first name and last name stillI never got first name and lastname of the people.But got the records  with first name as private and lastname as private.Please can u resolve my queries.Thanks & RegardsAmit Habu

Joined: 2010-07-09
Jul 15, 2010

HI fatih,You have provided a very good example for  linkedin API search key example.Now I have some queriesWhen  i searched for only country code and postal code then i never got   first name and lastname. 1)When i usedstring response =  _oauth.APIWebRequest("GET", "http://api.linkedin.com/v1/people?"  +                                              "search-location-type=Y&country-code=gb&postcode=ab10" +                 "&start=" + index.ToString() + "&" +                 "count=10", null);as my request stringI  never got first name and lastname of the people.But got the records  with first name as private and lastname as private.2)Also when i usedstring response =  _oauth.APIWebRequest("GET", "http://api.linkedin.com/v1/people?" +                 "first-name=John" +"&last-name=Bender" +                 "&current-company=false" +                 "&search-location-type=Y&country-code=in" +                 "&start=" + index.ToString() + "&" +                 "count=10", null);as my request thenwhere  i specified first name and last name stillI never got first  name and lastname of the people.But got the records  with first name as  private and lastname as private.Please can u  resolve my queries.Thanks &  RegardsAmit Habu

Joined: 2010-07-19
Jul 19, 2010

Thanks for this great example it has really helped just 1 question I notice that I can post a status message but can I also post a link and if so how can that be done?Regards

Joined: 2010-08-20
Aug 25, 2010

Hi there,I have a general question:i've read that after you have your access token you can discard the verifier but i think the code listed here still uses the verifier to construct the signature when it's retrieving data from "https://api.linkedin.com/v1/people/~". Also it seems that if the verifier is an empty string linkedin returns a 401 error instead of person data. What have i missed?

Andy Kalbvleesch's picture
Joined: 2010-02-10
Sep 30, 2010

Well I tried downloading the example, filled in my Api keys, etc. It all works fine util I try to request the user profile.... I have used this code before and it worked fine... It allmost looks like something on LinkedIn was changed. Hopefully there is someone who can help me with this. I have been testing for a whole day and it is like a needle in a haystack since it could be anything. I tested the time stamp wich looks okay, I tried to skip the URLencode etc. nothing so far...The remote server returned an error: (401) Unauthorized.Line 340:        finallyLine 341:        {Line 342:            if (webRequest != null && webRequest.GetResponse() != null)Line 343:                webRequest.GetResponse().GetResponseStream().Close();Line 344:            responseReader.Close();

Anton Skvortsov's picture
Joined: 2010-10-22
Oct 28, 2010

Hello Everybody,

This is my first time dealing with LinkedIn/OAuth, so if i say something stupid, please take it easy, my first two hours with LinkedIn/OAuth were spent debugging this one specific problem.

I hope somebody benefits from this, 'cause i killed over 2 hours ripping hair out of my head. But i need this, and naturally i'm trying other people's codes first to get idea how stuff works, so cant say this was a waste of time even if nobody needs this post.

Alot(or atleast some) of people complaining about 401 Un-Authorized error, here is what i discovered.

I used Web Version from this thread at first, but then i tried Desktop one posted here: http://developer.linkedin.com/thread/1346?start=15&tstart=0

(Its basically same 2 operational classes used in a GUI desktop app instead of ASP web app)

It was throwing me same exact error 401, 401, 401, 401.... oh.. and how about 401?

I figured it was because the "Verifier" property wasnt being set at all for some reason, it was empty.

1. AT LEAST in Desktop version of the app, the problem was found in callback property, with this code in one of the methods.

(I do have i am not that idiot who downloaded old source, and spent hours solving something that was updated long time ago )


Th) is is a code from LoginForm.cs.browser_Navigated() method - and this method gets hit a few times, but this specific condition waits for YOUR specified CallBack URL + Properties. It rips verifier parameter from the URL request string. But if your callback is set to www.linkedin.com, because you use Desktop app and dont have a domain to specify.... Look below.

private void browser_Navigated(object sender, WebBrowserNavigatedEventArgs e)
{
//Method is called when in-app browser changes pages

   if (browser.Url.ToString().Contains(_oauth.CALLBACK_URL)) // This gets hit one or even two times before it gets to proper call back URL
   {

          // If your callback set by default www.linkedin.com will 'cause this conditional to launch earlier than it was meant to

     // because it will find a match in first possible URL since all URLs have linkedin.com in them.
     string queryParams = e.Url.Query;
     if (queryParams.Length > 0)
     {
          //Store the Token and Token Secret
          NameValueCollection qs = HttpUtility.ParseQueryString(queryParams);
          if (qs["oauth_token"] != null)
          {
               _token = qs["oauth_token"];
          }
          if (qs["oauth_verifier"] != null)
          {

                       // Since those URLs before callback one don't contain any 'oauth_verifier' parameter

                // this will not be set at all
               _verifier = qs["oauth_verifier"];
          }

     }
     this.Close();

   }
}

SO...Maybe i misunderstood something, MAYBE im a retard who needs to play with legos instead of coding apps, but.... As soon as i set callback to be done to www.<one_of_my_websites>.com/oauth_callback everything worked fine and no more 401s, and verifier was set just as it should, and i was able to use the Desktop App AS IS without changing anything else.

Well if it helps - good. If not, atleast i learned to debug some more, and got good 'into your ugly face!' welcome from LinkedIn API that already hates me I'm sure this will be a interesting relationship

Pages