Development and Testing - Organizations APIs - LinkedIn API - linkedin

LinkedIn provides 2 public organization API for development purpose:
link
But when I try to access these organization using:
link
It is showing following API fail message:
{"serviceErrorCode":100,"message":"Not enough permissions to access: GET-organization /organizationPageStatistics","status":403}
Is there any problem with my current flow?

From the docs here: https://learn.microsoft.com/en-us/linkedin/marketing/integrations/community-management/organizations/page-statistics#parameters it looks like the organization id is formatted differently
https://api.linkedin.com/v2/organizationPageStatistics?q=organization&organization=urn:li:organization:6177438
Edit: Also, auth tokens are not spec'd to be used as query parameters. You're meant to follow these steps: https://learn.microsoft.com/en-us/linkedin/shared/authentication/authorization-code-flow?context=linkedin/marketing/context and then use the token in the request header.

Related

Google Calendar API: calendar.events.freebusy vs calendar.freebusy

I have seen the description provided for these scopes in the console, but they are not clear for me.
What is the difference between these two scopes?
OAuth 2.0 Scopes for Google APIs
Calendar API:
It would be important to clarify that all necessary scopes for any Google application can be found here:
https://developers.google.com/identity/protocols/oauth2/scopes
There are 5 scopes over the official documentation that allows you acess Calendar and their properties, plus another 2 that are used for managing Calendar Resources from Google Admin for organizations. This means that both of those are old and deprecated scopes (Potentially from V2 or were removed due to being no longer necessary and packed under any other ones from the documentation):
https://www.googleapis.com/auth/calendar.event.freebusy
https://www.googleapis.com/auth/calendar.freebusy
If you try to run or access any of these scopes you would be prompted with an alert similar to this:
As one final thing that can easily help you with deatils on what scopes are needed to query Freebusy information, you can review the authorization scopes needed to run it here:
https://developers.google.com/calendar/api/v3/reference/freebusy/query

Request to retrieve by an API the profile URL (vanity name)

We're applaime - developing an AI driven product which will help job seekers to manage more effectively the job application process.
The product will enable Linkedin oauth authentication after which it is expected to retieve the current user's basic profile.
Hence we would like to apply for this permission (r_basicprofile). How can we get this process in motion?
Thanks.
Trying to fetch the basic profile via an API. Need permission for that.
This page describes how to get access to the various APIs: https://learn.microsoft.com/en-us/linkedin/shared/authentication/getting-access.

403 Forbidden "These credentials do not authorize access" for HERE Geocoding & Search API

Currently working on building an address validator for a project I am working on, currently using a HERE account with a credit card attached for usage with the HERE Geocoding and Search API.
A minimal example to get started, a request to https://geocode.search.hereapi.com/v1/geocode?q=eiffel+tower&apiKey={{apikey}} is returning the following;
{
"error": "Forbidden",
"error_description": "These credentials do not authorize access"
}
I've confirmed the API key to be functional, as a request to the older API, like so https://geocoder.ls.hereapi.com/search/6.2/geocode.json?searchtext=eiffel+tower&apiKey={{apikey}} does work and returns expected results.
I'd like to use this API specifically, as it will be interfacing with a system that uses this version of the HERE API, and would like to maintain parity.
The documentation states that either API Key or OAuth are acceptable to use, and according to the linked identity & access management guide, this is done by simply adding the apikey query parameter, as seen in the working 6.2 example.
Other questions on the matter state that this code is returned when the endpoint is not usable on a base plan, however the pricing page indicates this should be usable on a free account up to 5000 requests.
You have linked your app_id, which are using is linked to as specific project.Because of this you are not able to use this app_id in the geocode service.
Please make sure that the app is linked to No project in the access manager as shown in the below screen.

Getting access to r_basicprofile when I already have permission on LinkedIn api v2

After numerous exchanges with LinkedIn "Experts" none of them was able to help and do anything but copy paste the FAQ.
I'm preparing a client's platform for the v2 migration and encountered major problems for getting user data.
I currently have access to many fields including the r_basicprofile as can be seen in my app's auth tab:
However upon requesting the endpoint
/me I get the following error:
Not enough permissions to access: GET /me
I have also searched the new API documentation and there is no mention on how to request access to the r_basicprofile same on the FAQ the only link I could find was this one:
https://developer.linkedin.com/partner-programs
However it doesn't specify which one gives access to r_basicprofile
Our app is aimed at professionals and we require access to more info than just first, last name and email. Currently we work with positions, headlines and more.
How can I get access to the r_basicprofile and specifically the following fields:
'headline','summary','positions','specialties','location','industry','current-share','num-connections','num-connections-capped',

LinkedIn New API - Can't Get r_network Permission

I inherited a program that was written with the old LinkedIn API, and I'm trying to migrate it to the new API. When I try to get the r_basicprofile permission, my oauth token works. However, when I try r_network or rw_nus, I get a response
invalid scope -- your application has not been authorized for
r_network.
Yet, when I go to www.linkedin.com/developer/apps/xxxx/auth, the boxes for r_network and rw_nus are checked.
I.e., A request to
https://www.linkedin.com/uas/oauth2/authorization?response_type=code&client_id=xxxxxx&scope=r_basicprofile&state=yyyy&redirect_uri=http%3A%2F%2Fkalatublog.com%2Fwp-content%2Fmu-plugins%2Fimb-en%2Fhelpers%2Fsocial-connect%2Fapi%2Ffinalize.php%3Fapi%3Dlinkedin%26ch%zzzzz
works, but a request to
https://www.linkedin.com/uas/oauth2/authorization?response_type=code&client_id=xxxxxx&scope=r_network&state=yyyy&redirect_uri=http%3A%2F%2Fkalatublog.com%2Fwp-content%2Fmu-plugins%2Fimb-en%2Fhelpers%2Fsocial-connect%2Fapi%2Ffinalize.php%3Fapi%3Dlinkedin%26ch%zzzzz
gives that error. What am I doing wrong?
As of May 15,
After the grace period expires, several REST API endpoints will no longer be available for general use. The following endpoints are the only ones that will remain available for use:
Profile API — /v1/people/~ `
Share API — /v1/people/~/shares
Companies API — /v1/companies/{id}
If your application is currently using any other API services (e.g. Connections, Groups, People Search, Invitation, Job Search, etc.) you will have to apply to become a member of a relevant Partner Program that provides the necessary API access to continue to leverage any of the endpoints that are not listed above.
It looks like linkedin no longer wants to share anything with their API. Creating a new app indicates that the only possible options are r_basicprofile, r_emailaddress, rw_company_admin, and w_share:
TLDR: they have locked down the API and restricted the usage to an extremely limited set of access points.
I did some more digging. The linkedin website is misleading. On my app linkedin page, it says that I'm approved for rw_nus and r_network, but on this page
https://developer.linkedin.com/support/developer-program-transition
it says those are no longer approved.
So the app home page in linkedin incorrectly said I had those permissions.
Heres the link if you want to Apply for Linkedin
https://help.linkedin.com/app/ask/path/api-dvr

Resources