anil
anil

Reputation: 29

Implementing auto-post in linkedin using spring boot

I am implementing auto-post feature in linkedin using spring boot and oauth2. I have created the app in linkedin and the permissions it request are r_liteprofile, w_member_social. I am able to get access_token but when i am sending POST request to https://api.linkedin.com/v2/ugcPosts along with the token then the server is responding with 403 Forbidden status. What am i doing wrong? Does we need any more permission than r_liteprofile, w_member_social to post in linkedin?

    TokenResponse tokenResponse = gson.fromJson(token, TokenResponse.class);
    String post_url = "https://api.linkedin.com/v2/ugcPosts";
    HttpPost wallPost = new HttpPost(post_url);
    ArrayList mediaList = new ArrayList();
    wallPost.setHeader("Content-Type","application/json");
    wallPost.setHeader("Authorization","Bearer "+tokenResponse.getAccess_token());
    wallPost.setHeader("X-RestLi-Protocol-Version","2.0.0");

I have used HttpClient to send the request along with above headers.

The following image shows the token and permissions.

Upvotes: 0

Views: 493

Answers (1)

drodil
drodil

Reputation: 2324

There is nothing wrong with the OAuth token as if there was the response would be 401 (https://developer.linkedin.com/docs/v2/oauth2-client-credentials-flow)

I think you need to add 'w_share' scope to your application. Current scopes do now allow posting updates to LinkedIn. See details here: https://learn.microsoft.com/en-us/linkedin/shared/references/migrations/default-scopes-migration

Upvotes: 0

Related Questions