Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork1.7k
Description
Linkedin changes to versioned api. See:https://learn.microsoft.com/en-us/linkedin/marketing/versioning?trk=eml-mktg-cust-202304-global-api-migrations-june&mcid=7054174543908663296&src=e-eml&view=li-lms-2023-04
This has some impact.
1.Change needed to OAuth20Service
final OAuth20Service service = new ServiceBuilder(clientId) .apiSecret(clientSecret) .defaultScope(new ScopeBuilder("r_liteprofile", "r_emailaddress")) .callback("http://example.com/callback") .build(LinkedInApi20.instance());
a. LinkedInApi20 need different endpoints: change v2 to rest
public String getAccessTokenEndpoint() { return "https://www.linkedin.com/oauth/**rest**/accessToken"; } protected String getAuthorizationBaseUrl() { return "https://www.linkedin.com/oauth/**rest**/authorization"; }
This could be solved by using an extention of LinkedInApi20 with the rest endpoint. But it is better that LinkedInApi20 gets updated.
b. the oauth request need to get a version header. I think for this, scribejava lib needs a change
- Change to Resource api. This is easy and does not require a change of the scribeapi.
In the examplehttps://github.com/scribejava/scribejava/blob/master/scribejava-apis/src/test/java/com/github/scribejava/apis/examples/LinkedIn20Example.java change the resource endpoint:
now:
```
private static final String PROTECTED_RESOURCE_URL = "https://api.linkedin.com/v2/me";
private static final String PROTECTED_EMAIL_RESOURCE_URL
= "https://api.linkedin.com/v2/emailAddress?q=members&projection=(elements*(handle~))";
chage to
private static final String PROTECTED_RESOURCE_URL = "https://api.linkedin.com/**rest**/me";private static final String PROTECTED_EMAIL_RESOURCE_URL = "https://api.linkedin.com/**rest**/emailAddress?q=members&projection=(elements*(handle~))";
..final OAuthRequest request = new OAuthRequest(Verb.GET, PROTECTED_RESOURCE_URL);**request.addHeader("LinkedIn-Version", "202304");**