Cannot get an access token - unknown grant type

SOLVE
esthom
Member

Hi,

I am trying to get access token for a user, but I keep receiving "status":"BAD_GRANT_TYPE","message":"missing or unknown grant type". I have tried encoding query params or passing them as one json param, but nothing worked.

payload = {
    'grant_type': 'authorization_code',
    'client_id': 'f6***',
    'client_secret': 'f2***',
    'redirect_uri': 'https://sc***/',
    'code': '5f***'
}
requests.post('https://api.hubapi.com/oauth/v1/token?', params=payload)
0 Upvotes
1 Accepted solution

Accepted Solutions
3PETE
Solution
HubSpot Employee

@esthom Are you setting your content-type in the headers? Should be

Content-Type: application/x-www-form-urlencoded;charset=utf-8

Sometimes not having the correct content-type can throw off a server trying to read your request.

View solution in original post

0 Upvotes
14 Replies 14
3PETE
Solution
HubSpot Employee

@esthom Are you setting your content-type in the headers? Should be

Content-Type: application/x-www-form-urlencoded;charset=utf-8

Sometimes not having the correct content-type can throw off a server trying to read your request.

View solution in original post

0 Upvotes
Not applicable

@pmanca I seem to be having the same issue. Not sure why however. the header on postman is as you describe it along with the body data.

header image: https://ibb.co/bOVrAm
body image: https://ibb.co/d6Rni6

Any ideas would be greatly appreciated.

thx

0 Upvotes
3PETE
HubSpot Employee

@sphot Can you send along the full image of your body?

0 Upvotes
macarlucho
Member

Hi, I'm having the same problem with Postman, how could you solve it?

0 Upvotes
brij
Member

But not working for me even after chnaging the order as follows:
grant_type=authorization_code
&client_id=xxx
&client_secret=xxx
&redirect_uri=https://api.hubapi.com/contacts/v1/lists/all/contacts/all
&code=code_here

And adding " Content-Type: application/x-www-form-urlencoded;charset=utf-8"

image

0 Upvotes
samarr
Member

I am facing this problem, even though supplying the required params in the header and request body respectively as follows:

 

ContentHeaderContentHeader

 

BodyBody

 

Here's the error I face:

Error WindowError Window

 

esthom
Member

Thanks @pmanca, that worked fine!

0 Upvotes
IsaacTakushi
HubSpot Employee

Welcome, @brij.

Per this documentation, you must include grant_type, client_id, client_secret, redirect_uri, and code in the request body.

You are trying to include those parameters as headers, but the only header should be Content-Type: application/x-www-form-urlencoded;charset=utf-8.

Isaac Takushi

Alumnus, HubSpot Developer Support
0 Upvotes
brij
Member

Not it says "{
"status": "BAD_CLIENT_ID",

"message": "missing or unknown client id","

I think it worked now I have to get new client id.

But the same client id was used to get the code.

0 Upvotes
yan_hero_power
Member

Hi, I am encountering similar issues with the curl response. In POSTMAN I am able to get a successful response, but when I replicate the settings in PHP with cURL, I am getting a "BAD_GRANT_TYPE" response.

 

Content Type should be set properly in the request. But I notice in the curl response, it shows content_type = application/json, is that correct?

 

Do you have any suggestions? Thanks

 

Screen Shot 2019-09-21 at 1.19.42 AM.pngScreen Shot 2019-09-21 at 1.22.46 AM.pngScreen Shot 2019-09-21 at 1.24.10 AM.png

0 Upvotes
IsaacTakushi
HubSpot Employee

Hi, @brij.

Are you still experiencing this error? I was unsure whether your last post said you got it working.

The client_id you should use is located in your app settings. If you need help finding this, please share your developer Hub ID and app ID.

Isaac Takushi

Alumnus, HubSpot Developer Support
0 Upvotes
brij
Member

It worked now, please remove my last response.

0 Upvotes
IsaacTakushi
HubSpot Employee

Glad to hear it, @brij! I've deleted the post you requested.

Isaac Takushi

Alumnus, HubSpot Developer Support
0 Upvotes
brij
Member

@Isaac_Takushi Thanks a lot!

0 Upvotes