---
title: Connect to any web service using OAuth 2.0
slug: connect-to-any-web-service-using-oauth-20
description: Establish OAuth 2.0 connections to securely connect any web service to Make
image: https://archbee-image-uploads.s3.amazonaws.com/oAyFj2GHlBeBVWF5OAir2/vumanJqhHbT-kJ91c1xSV_domino-zoomin-purple-a-1.png
docTags: 
createdAt: 2025-11-14T16:14:58.717Z
---

To connect certain web services to Make, you need to establish an OAuth 2.0 connection.&#x20;

:::hint{type="info"}
**OAuth 2.0&#x20;**(Open Authorization) is an industry-standard protocol used for granting secure, limited access to a user's data. It allows one web service to access the resources from another one on behalf of the user. It also ensures that the user consents to the access and that the client service only performs specific, allowed actions.
:::

To establish the OAuth 2.0 connection, you must obtain **client credentials** from the service you want to connect to. These credentials are commonly called Client ID and Client Secret, though they may have different names. They authenticate your app to the authorization server. To obtain those credentials, you'd usually create an app within the service or app you want to connect to.&#x20;

In an OAuth 2.0 connection, you also need to specify **scopes**. They define the level of access your web service requests and control what the connected app can do. For example, you may allow the app to read files, but not delete them.&#x20;

## Example: Connect Make to Dropbox

Dropbox is a cloud storage service that uses the standardized OAuth 2.0 protocol for authorization. Thus, to connect Make to Dropbox using OAuth 2.0 authorization, you'll need to:

- [Obtain client credentials and scopes](docId\:dos_BeHkyQt6t3OF7xsTl)
- [Establish the connection in Make](docId\:dos_BeHkyQt6t3OF7xsTl)&#x20;

## Obtain client credentials and scopes

To obtain the client credentials in Dropbox, you need to create an application. There, you will get the **App key** (Client ID) and **App secret** (Client Secret), which are required to establish the OAuth 2.0 connection.&#x20;

To do that:

:::::WorkflowBlock
:::WorkflowBlockItem
Log in to your Dropbox account and go to the [Developers page](https://www.dropbox.com/developers/).
:::

:::WorkflowBlockItem
Click **Create** **apps**.&#x20;
:::

:::WorkflowBlockItem
A window to create a new app on the DBX platform will appear. There, you should:

- Select **Scoped** **access&#x20;**&#x75;nde&#x72;**&#x20;Choose an API.**
- Select **Full Dropbox** under **Choose the type of access you need.**
- Enter a **Name** for your app under **Name your app**.
- Click **Create** **app**.

![](https://api.archbee.com/api/optimize/oAyFj2GHlBeBVWF5OAir2/rAEOAB-WvZAysoiK20hJG-20251117-131843.png)
:::

:::WorkflowBlockItem
An app configuration window will appear. In the **Settings** tab, enter `https://www.integromat.com/oauth/cb/oauth2` as a **Redirect URI&#x20;**&#x61;nd click **Add**.
:::

:::WorkflowBlockItem
Copy the **App key** (Client ID) and **App secret** (Client Secret) and store them in a safe place. You will need them later to establish the connection in Make.

![](https://api.archbee.com/api/optimize/oAyFj2GHlBeBVWF5OAir2/dgwayNnx14mKPE1gVlKO3-20251117-132509.png)
:::

::::WorkflowBlockItem
Switch to the **Permissions** tab. Select the scopes to let Make perform the required actions in Dropbox, and click **Submit&#x20;**&#x74;o save the changes. You will also need to add those selected scopes later when setting the connection in Make.

![](https://api.archbee.com/api/optimize/oAyFj2GHlBeBVWF5OAir2/f2CzmysDYO_P19eBdyO4M-20251117-135927.png)

:::hint{type="info"}
You can always check the API documentation of the service you're connecting to to see which scope is required for a particular action.
:::
::::
:::::

Once you have your client credentials and scopes, you can proceed with establishing the OAuth 2.0 connection in Make.

## Establish the connection in Make

For some websites or apps that do not have a dedicated Make integration, you will need to use an [HTTP > Make a request](https://apps.make.com/http#pKx7q) module with an [OAuth 2.0 authentication type](https://apps.make.com/oauth-20-authentication-type).&#x20;

If Make provides a relevant app module, you can just add that module to the scenario and establish the OAuth 2.0 connection. This is usually simpler, as the module handles most of the configurations automatically.&#x20;

Since Make has a Dropbox app, we can look at both cases.&#x20;

### Establish the connection in Make using the HTTP app

Suppose you need to create a folder in Dropbox via an HTTP `POST` request. Here's how to establish the OAuth connection and configure the module:

:::hint{type="success"}
Check the required API details in the [Dropbox API documentation.](https://www.dropbox.com/developers/documentation/http/documentation)
:::

:::::WorkflowBlock
:::WorkflowBlockItem
Create a new scenario, or open the existing one and add an **HTTP > Make a request** module.

::Image[]{src="https://app.archbee.com/api/optimize/oAyFj2GHlBeBVWF5OAir2/Enlxf9gxerQySvAJvFqYX-20251117-142731.png" size="50" width="942" height="766" position="center" showCaption="false"}
:::

:::WorkflowBlockItem
In the **Authentication type** field, select&#x20;**&#x20;OAuth 2.0**.

::Image[]{src="https://app.archbee.com/api/optimize/oAyFj2GHlBeBVWF5OAir2/p1wFYel-X4zdvSQJkb6fQ-20251117-142911.png" size="50" width="928" height="578" position="center" showCaption="false"}
:::

:::WorkflowBlockItem
In the **Credentials** field, click **Create a connection** (or **Add&#x20;**&#x6E;ext t&#x6F;**&#x20;Create a connection**) to create your OAuth 2.0 connection:

- In the **Connection name&#x20;**&#x66;ield, enter a name for your connection.&#x20;
- In the **Flow** **type** field, select Authorization Code as you'll need to enter further both an **Authorize URI** and **Token URI**.&#x20;
- In th&#x65;**&#x20;Authorize URI** field, enter the **Authorize URI&#x20;**`https://www.dropbox.com/oauth2/authorize` as it's defined in the Dropbox API documentation.  &#x20;
- In th&#x65;**&#x20;Token URI** field, enter the **Token URI&#x20;**`https://api.dropboxapi.com/oauth2/token` as it's defined in the Dropbox API documentation. &#x20;
- In the **Scope** field, click **+Add item** to add the required scope(s).&#x20;
- In the **Client** **ID** field, add the **App** **key** you obtained from your Dropbox app.
- In the **Client** **Secret** field, add the **App** **secret&#x20;**&#x79;ou obtained from your Dropbox app.&#x20;

::Image[]{src="https://api.archbee.com/api/optimize/oAyFj2GHlBeBVWF5OAir2/3gcfNfs95KGWeBxHOwutV-20251219-135523.png" size="40" width="592" height="1136" position="center" showCaption="false" indent="2"}
:::

::::WorkflowBlockItem
To avoid having to constantly refresh the connection, enable the **Advanced settings&#x20;**&#x74;oggle, and click **+Add item** to add the following **Authorize** **parameters**:

- **Key**: `token_access_type`**&#x20;Value**: `offline`
- **Key**: `force_reapprove` **Value**: `true`

::Image[]{src="https://api.archbee.com/api/optimize/oAyFj2GHlBeBVWF5OAir2/e22akFm4NRTR1h9hjh7O4-20251219-135609.png" size="40" width="706" height="936" position="center" showCaption="false"}

:::hint{type="warning"}
The **Authorize** **parameters** mentioned above only apply to Dropbox. Other services’ APIs may require similar parameters, but with different names.&#x20;

Check the service’s API documentation to add the required **Authorize** **parameters** and avoid constant OAuth 2.0 connection refreshes.&#x20;
:::
::::

:::WorkflowBlockItem
Click **Save**.
:::

:::WorkflowBlockItem
Allow access in the emerging window.&#x20;
:::
:::::

Your connection is now successfully established. To check that it works, you can make an HTTP request. To create a folder in Dropbox:

::::WorkflowBlock
:::WorkflowBlockItem
In the URL field, add `https://api.dropboxapi.com/2/files/create_folder_v2`.
:::

:::WorkflowBlockItem
Select the **POST** method required for this API call.&#x20;

::Image[]{src="https://app.archbee.com/api/optimize/oAyFj2GHlBeBVWF5OAir2/hGTtN_bb77rXkm_d0avtO-20251111-114522.png" size="30" width="586" height="338" position="center" showCaption="false"}
:::

:::WorkflowBlockItem
Leave the **Header** and the **Query** sections empty.
:::

:::WorkflowBlockItem
For the **Body** section:

- In the **Body content type** field, select `application/json`.&#x20;
- In th&#x65;**&#x20;Body input method&#x20;**&#x66;ield, select **Data structure**.
- In the **Body** **structure** field, click **Add&#x20;**&#x74;o create a new data structure. Add a text field `path` to indicate where the folder should be created and how it should be called. You can also add the Boolean `autorename` field to specify whether Dropbox can autorename the folder if there's a conflict. Click **Save**.

::Image[]{src="https://app.archbee.com/api/optimize/oAyFj2GHlBeBVWF5OAir2/RA7vFDMJMtqbdfz7nC2Du-20251111-130849.png" size="60" width="1090" height="1294" position="center" showCaption="false" indent="2"}

- In the **Body** **content** **field**, add the path (`/Make` in this example) and disable the autorename.&#x20;
:::

:::WorkflowBlockItem
Click **Save&#x20;**&#x61;nd run the module.
:::
::::

You can now check your Dropbox storage. A new folder called **Make** will be created. You can also see it in the output:&#x20;

::Image[]{src="https://app.archbee.com/api/optimize/oAyFj2GHlBeBVWF5OAir2/BjJyhLJmf2pft5iMJ0VZb-20251111-131416.png" size="40" width="588" height="1132" position="center" showCaption="false"}

### Establish the connection in Make through the Dropbox app

Since there's a Dropbox app in Make with a corresponding module, you can also add it to the scenario and establish the OAuth 2.0 connection. To do that:

::::WorkflowBlock
:::WorkflowBlockItem
Create a new scenario, or open an existing one, and add a **Dropbox > Create a Folder** module.

::Image[]{src="https://app.archbee.com/api/optimize/oAyFj2GHlBeBVWF5OAir2/6t918xC_tkXStCDFA_4ny-20251117-171629.png" size="50" width="902" height="724" position="center" showCaption="false"}
:::

:::WorkflowBlockItem
Click **Create a connection** (or **Add**) to create your OAuth 2.0 connection.
:::

:::WorkflowBlockItem
In the connection configuration window:

- In the **Connection name&#x20;**&#x66;ield, enter a name to distinguish your connection.&#x20;
- In the **Client** **ID** field, add the **Client ID&#x20;**&#x79;ou obtained from your Dropbox app.
- In th&#x65;**&#x20;Client Secret** field, add the **Client** **Secret&#x20;**&#x79;ou obtained from your Dropbox app.
- In the **Scope** field, click **+Add item** to add the required scopes.&#x20;
- Click **Save**.

::Image[]{src="https://app.archbee.com/api/optimize/oAyFj2GHlBeBVWF5OAir2/ReVOrDm37ydF4XHGJ09gK-20251117-172852.png" size="50" width="1538" height="956" position="center" showCaption="false"}
:::

:::WorkflowBlockItem
Allow access in the emerging window.&#x20;
:::
::::

Your connection is now successfully established. To verify that it works, you can configure the module settings and run it.&#x20;

::::WorkflowBlock
:::WorkflowBlockItem
To replicate what we've done above with the **HTTP > Make a reques**t module, add 'Make' in the **Folder** **Name** field. Set the **Folder** to a general one.&#x20;

::Image[]{src="https://app.archbee.com/api/optimize/oAyFj2GHlBeBVWF5OAir2/PpTWQPXS7iPTwGMBd__9I-20251117-174000.png" size="50" width="988" height="612" position="center" showCaption="false"}
:::
::::

You can now check your Dropbox storage. A new folder called **Make** will be created. You can also see it in the output:&#x20;

::Image[]{src="https://app.archbee.com/api/optimize/oAyFj2GHlBeBVWF5OAir2/rEnH5LkV3mZpkas3T64oB-20251117-174402.png" size="30" width="582" height="818" position="center" showCaption="false"}

