# Connect to ZOHO API using OAuth2

**URL:** <https://community.parabola.io/t/connect-to-zoho-api-using-oauth2/2318>\
**Category:** Ask a question\
**Tags:** Using-APIs\
**Created:** [March 22, 2022, 10:18am UTC](https://community.parabola.io/t/connect-to-zoho-api-using-oauth2/2318 "2022-03-22T10:18:39Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![Dima\_Litvinchuk](https://avatars.discourse-cdn.com/v4/letter/d/d9b06d/32.png) [@Dima\_Litvinchuk](https://community.parabola.io/u/Dima_Litvinchuk)\
**Post date:** [March 22, 2022, 10:18am UTC](https://community.parabola.io/t/connect-to-zoho-api-using-oauth2/2318/1 "2022-03-22T10:18:39Z")

</div>

Hi,  
I set up OAuth flow to integrate with ZOHO API but as a result I got error: An error occurred during authorization: Access token URL returned a 400 when making a request for the access token.

But if I copy code from the url query params on the page with this error and make direct request to the [https://accounts.zoho.eu/oauth/v2/token](https://accounts.zoho.eu/oauth/v2/token) with the same params + code using Postman then I am able to receive tokens.

Could you please help me?

 ![image](https://us1.discourse-cdn.com/flex020/uploads/parabola/original/2X/f/fd8849872cc4408fc8b112f473d68a594e4162a0.png)  
 ![image](https://us1.discourse-cdn.com/flex020/uploads/parabola/original/2X/8/849b25211950f08a2f3e9caa51e0c3b0771730f7.png)  
 ![image](https://us1.discourse-cdn.com/flex020/uploads/parabola/original/2X/a/a0db140d4a80e224649be2710383db2fbe512db6.png)

---

<div class="post-metadata">

**Author:** ![Emory\_Stainbrook](https://sea2.discourse-cdn.com/flex020/user_avatar/community.parabola.io/emory_stainbrook/32/1772_2.png) [@Emory\_Stainbrook](https://community.parabola.io/u/Emory_Stainbrook)\
**Post date:** [March 22, 2022, 1:33pm UTC](https://community.parabola.io/t/connect-to-zoho-api-using-oauth2/2318/2 "2022-03-22T13:33:56Z")

</div>

Hi @Dima_Litvinchuk- Unfortunately, we are unable to directly integrate with Zoho CRM’s API. They require Parabola to pass a dynamic header value to authorize your account which we do not support.

How were you hoping to use that Zoho connection in Parabola? If you were trying to upload to Zoho, are there any other bulk methods (i.e. CSV upload or Google Sheets integration) that Zoho supports? If so, you could use Parabola to generate a file that you could then upload to Zoho.

Let me know if you have any questions!

---

<div class="post-metadata">

**Author:** ![Dima\_Litvinchuk](https://avatars.discourse-cdn.com/v4/letter/d/d9b06d/32.png) [@Dima\_Litvinchuk](https://community.parabola.io/u/Dima_Litvinchuk)\
**Post date:** [March 24, 2022, 12:55pm UTC](https://community.parabola.io/t/connect-to-zoho-api-using-oauth2/2318/3 "2022-03-24T12:55:11Z")

</div>

Hi, thanks a lot for your reply.

This required dynamic header is directly for Parabola origin? Because request from Postman works fine.

---

<div class="post-metadata">

**Author:** ![Emory\_Stainbrook](https://sea2.discourse-cdn.com/flex020/user_avatar/community.parabola.io/emory_stainbrook/32/1772_2.png) [@Emory\_Stainbrook](https://community.parabola.io/u/Emory_Stainbrook)\
**Post date:** [March 24, 2022, 1:56pm UTC](https://community.parabola.io/t/connect-to-zoho-api-using-oauth2/2318/4 "2022-03-24T13:56:53Z")

</div>

Hi @Dima_Litvinchuk- Parabola isn’t able to pass the dynamic header that Zoho would require. In the OAuth process that we support, we automatically send the token as an Authorization header. Because Zoho requires a different header, Zoho APIs are not compatible with Parabola at this time.

I apologize for the inconvenience but please let me know if you have any questions.

---

<div class="post-metadata">

**Author:** ![Dima\_Litvinchuk](https://avatars.discourse-cdn.com/v4/letter/d/d9b06d/32.png) [@Dima\_Litvinchuk](https://community.parabola.io/u/Dima_Litvinchuk)\
**Post date:** [March 28, 2022, 9:57am UTC](https://community.parabola.io/t/connect-to-zoho-api-using-oauth2/2318/5 "2022-03-28T09:57:41Z")

</div>

Hi, just the last question.

Could you please describe what header is it? Especially name of the header and what information should be passed in this header?  
“Because Zoho requires a different header, Zoho APIs are not compatible with Parabola at this time.” - what header is required by Zoho and what header could provide Parabola?

---

<div class="post-metadata">

**Author:** ![daniel](https://sea2.discourse-cdn.com/flex020/user_avatar/community.parabola.io/daniel/32/732_2.png) [@daniel](https://community.parabola.io/u/daniel)\
**Post date:** [March 28, 2022, 7:24pm UTC](https://community.parabola.io/t/connect-to-zoho-api-using-oauth2/2318/6 "2022-03-28T19:24:38Z")

</div>

Hi @Dima_Litvinchuk👋

Taking a look at [Zoho’s documentation](https://www.zoho.com/bigin/developer/docs/apis/access-refresh.html), they require you to pass a dynamic header value of `Zoho-oauthtoken {access_token}`.

 ![zoho_documentation](https://us1.discourse-cdn.com/flex020/uploads/parabola/original/2X/6/681c7c9175c657ee4d95c47fba6d495030391be6.png)

In most cases, the authorization flow demonstrated in their documentation should work with Parabola since we can generate new access tokens after they expire using a refresh token.

However, since each request to an API Endpoint URL also requires you to send a dynamic header using a valid access token, Parabola cannot insert the new access token as a custom header once the old token expires.

This means that if you wanted to connect to Zoho, it would be a manual process requiring you to follow these steps every time you make a request to an endpoint:

1. Make a request to the authorization endpoint
2. Copy the `code` parameter directly from the URL

 ![image](https://us1.discourse-cdn.com/flex020/uploads/parabola/original/2X/8/857c011df634969e82961c3f368623e925ebc538.png)

1. Make a request to the access token endpoint and paste the code into your JSON Request Body.
2. Copy the access token returned from the response and manually append it to your custom header value when making a request to any of their endpoints.

Hopefully, that adds clarification! Let me know if you have any other questions.

---

<div class="post-metadata">

**Author:** ![Geetha\_Ratnam](https://avatars.discourse-cdn.com/v4/letter/g/b5a626/32.png) [@Geetha\_Ratnam](https://community.parabola.io/u/Geetha_Ratnam)\
**Post date:** [June 10, 2022, 7:41pm UTC](https://community.parabola.io/t/connect-to-zoho-api-using-oauth2/2318/7 "2022-06-10T19:41:01Z")

</div>

Hi @Dima_Litvinchuk,

We’ve added in support for expiring access token which should allow you to connect to the Zoho API. Parabola can insert the new access token as a custom header once the old token expires.

Read more about this here, under “Advanced Settings”: [How to use the API integration in Parabola](https://parabola.io/integration/api#using-expiring-access-tokens-in-parabola)
