HERE-Routing API - "These credentials do not authorize access" - here-api

I have signed up to the free HERE account, with billing information.
The search function works fine, and returns expected results, however the calculateroute function throws up "These credentials do not authorize access" as 403.
I have registered a new map, and added to a project linked to the Route API, however I still cannot get it to work.
Any ideas anyone?

It seems V7 is oboslete. Using v8 has solved my issues.

What is the HTTP Status Codes returned ?
401
403
If 403 response, maybe calculateroute function is not available for free accounts ? (Your message "These credentials do not authorize access" may means that...)
You will find here list of status codes form here api: Routing API HTTP status code

Related

Sabre getting started V3 AuthToken V3

I am trying to access https://api-crt.cert.havail.sabre.com/v3/auth/token from the postman with valid base64 encoded Authorization header.
What is the valid value for username? Isn't it same which I used for registration. Document showing it as EPR in form 'user-group-domain'. Please help
I am getting an error.
{
"error": "invalid_client",
"error_description": "Credentials are missing or the syntax is not correct"
}
Go to: https://developer.sabre.com/user/{YOUR_USER}/applications
There you'll see YOUR_USER's application
Your user is what you have below Client ID and the password is below Client Secret. On that you have: Base64(Base64(Client ID):Base64(Client Secret)) (this is generic, to show how it should be coded.
This will only work on CERT environment.
It may be obvious what I am going to talk about, but you must have a SABER GDS authorized user to use this service.
If you do not have an authorized web user you will not be able to make the service work.
Ask Sabre or the agency that you represent this user to access, because without this credential correctly released you will not be able to make any REST / SOAP services work.
You can download the postman functionality package from the link below:
https://github.com/SabreDevStudio/postman-collections
https://developer.sabre.com/product-catalog?f%5B0%5D=product_type%3Aapi_reference

Using Linkedin Access Token

I've successfully gotten my access token to the LinkedIn api! However, I can only seem to make this request call:
GET https://api.linkedin.com/v2/me/
When I try to look up another public member's information using:
GET https://api.linkedin.com/v2/people/(id:{person ID})
I get the 403 error saying: serviceErrorCode":100,"message":"Not enough permissions to access: GET- vanityName /people","status":403.
This happens when I try to look up the member using the vanity name as well. Can someone explain why this is happening even though I've gotten the access token?
It's what the error message says: LinkedIn hasn't given your application permission to fetch other people's profiles. You can only fetch your own. Those APIs exist, but aren't given to everyone.

HTTPError: 403 Client Error: Forbidden for url: https://api.linkedin.com/v2/organizationalEntityAcls?q=roleAssignee

I'm running into this error when trying to hit any of the Organizations Lookup API endpoints:
HTTPError: 403 Client Error: Forbidden for url: https://api.linkedin.com/v2/organizationalEntityAcls?q=roleAssignee
I also run into this error for the Organization Search API. Which is strange because my "Usage and Limits" console says that these requests were successful. I've tried emailing LMSdeveloperteam#linkedin.com about this error but have gotten no response back.
Here is the permissions my app currently has: permissions
And here is my "Usage and Limits" screen: requests console
There are a number of v2 endpoints that I am able to access successfully and we already have API access so I'm drawing a blank on what else to do other than continue to email LMSdeveloperteam#linkedin.com and post here.
Does anyone have any ideas? LinkedIn support could you look into this please?
can you verify that you have an ADMINISTRATOR account in atleast one organization ?
Depending on your application's permissions, some Organization API
requests may require the authenticated member have a specific
organization role type, such as ADMINISTRATOR. You may lookup access
control information either by member or organizational entity.
could you also try if you have another api call from organization to look if you have access to the organization api ?
https://api.linkedin.com/v2/organizations/{organization ID}

Retrieve Access Token with LinkedIn JS SDK to use in Back-end

Currently I have both Facebook and LinkedIn Oauth2 flow working fine. Because in some cases I don't want the user to redirect to another page, I use the Facebook JS SDK that works fine, retrieving the access token and sending it to the server where I retrieve user data with REST calls.
Unfortunately, I'm not having success in doing the same with the LinkedIn JS SDK. The official documentation isn't helpful at all in that regard: https://developer.linkedin.com/docs/getting-started-js-sdk.
I retrieve user data in the server because it's easy to forge fake data in the client side and send it to the server, so a client side solution for that is not an option.
If I try to use the token that I get in js in the REST API I get Invalid access token. (401)
There are several opened questions that doesn't have any response (or a helpful response) here in SO:
2015-08-03 - No response:
Javascript: Linkedin Access TOken
2016-05-29 - No response:
can I get access token through LinknedIn JS SDK?
2016-08-31 - No helpful response (data is retrieved in the front-end):
How to Get Access Token Using LinkedIn API JavaScript SDK
2017-06-30 - No helpful response:
LinkedIn OAuth token with Javascript SDK
In the below question, there is a comment that says what I'm already guessing:
[...] Honestly I think the JS API is completely useless like this
because if you can't verify/use the token server-side you basically
cannot trust any of the information.
2015-07-22 - No helpful response (data is retrieved in the front-end):
get linkedin Access Token with JavaScript SDK
There's some information about exchanging the Javascript API tokens with a REST API OAuth token, but in the references I've found the links are broken (and it would be impractical to do this, depending on the complexity, instead of using the token directly, like in the Facebook JS SDK):
http://developer.linkedin.com/documents/exchange-jsapi-tokens-rest-api-oauth-tokens
https://developer-programs.linkedin.com/documents/exchange-jsapi-tokens-rest-api-oauth-tokens
So, I would like to know if there is some way to login with LinkedIn using the JS SDK and retrieve the user data in the back-end using REST calls (like I do in the Oauth2 flow), hopefully with official docs.
I've had the same problem and the only way I found to use the JS token was to add the header oauth_token instead of an Authorization Bearer header:
POST https://api.linkedin.com/v1/people/~:(id,firstName,lastName,picture-url,email-address)?format=json
Headers {
'oauth_token': JS_TOKEN
}
The JS_TOKEN I'm reading on frontend from IN.ENV.auth.oauth_token.
I've been struggling with the same issue for some time, this is the way I solved it (not using the JS SDK):
Step 1: you send your user to the LinkedIn login page, in the redirect_uri param use an endpoint to handle all the logic related to LinkedIn.
Step 2: When the user finishes login in, Linkedin is going to send a GET request to that endpoint, this request will have an "Authorization Token", this token is just a temporal token and it won't allow you to get your user's data.
Step 3: Use the Authorization Token you just received and send a post request to Linkedin
Step 4: Linkedin will send you back an Access Token (this is the one you are looking for), now you can request all the information you want
Step 5: Redirect your user back to your web app.
The structure of the request as well of the anchor tag params are available here: https://developer.linkedin.com/docs/oauth2

Why do I get an 401 error on /people/me/people/visible?

I use Firebase to sign in with Google. I sign in successfully.
I make a request to people/me using access token from sign in. Everything's ok.
I then make a request to people/me/people/visible using the same access token and I get an 401 (Invalid credentials).
Why is that? Any ideas?
Solved. I need to specify the scope https://www.googleapis.com/auth/plus.login in order to have access to social features.

Resources