---
title: API key authentication type
slug: api-key-authentication-type
image: https://make-cxp-documentation.ams3.cdn.digitaloceanspaces.com/apps-center-icons/PREVIEW_DEFAULT.png
docTags: 
createdAt: 2025-11-07T14:10:47.559Z
---

API key authentication type is used when the service provider requires an API key. &#x20;

## Create a keychain for the API key authentication type

| **Field**                  | **Description**                                                                                                                                                                                                                                |
| -------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Name**                   | Enter the name for your API key connection.                                                                                                                                                                                                    |
| **Key**                    | Enter the full API key, including any required prefix if specified in the API documentation. For example, Bearer, Token, or APIKey<br />Example: `Bearer 1234-5678-abcd-efgh`                                                                  |
| **API key placement**      | Select where the API key should be added: in the request header or in the query parameters. Most modern APIs require the API key to be included in the header. However, to confirm, you need to check the API documentation for each service.  |
| **API key parameter name** | Enter the name of the parameter that contains the API key. For example, `authorization`, `x-api-key`, or `api_key.` This is how the service will identify the API key in your HTTP request.                                                    |

You can edit these credentials at any moment in the **Keys** section. For that:

- Click **Keys** (or **three dots > Keys**) in the left sidebar.&#x20;
- Click **three dots > Edit** next to the required **Key**.&#x20;

  ![](https://api.archbee.com/api/optimize/oAyFj2GHlBeBVWF5OAir2/WjhinoY2jk1d5ZV8dvycE-20251126-163439.png)

You will see the **Edit** **key** window. Add new credentials and click **Save**. All the modules that use this keychain will be automatically adjusted.

::::::ExpandableHeading
## HTTP request example with API key authentication

This example shows how to configure the **HTTP > Make a request** module for a `GET` request to Coda to retrieve a list of available docs.

:::hint{type="success"}
To make an HTTP request, you need to know the required authentication details, scopes, endpoints, and parameters for each request. Refer to the [Coda API documentation](https://coda.io/developers/apis/v1#tag/Docs/operation/listDocs) for these details.
:::

:::::WorkflowBlock
:::WorkflowBlockItem
In the **Authentication type** field, select **API key**.
:::

::::WorkflowBlockItem
Click **Credentials** (or **Add&#x20;**&#x6E;ext t&#x6F;**&#x20;Choose a key**) to add your API key:

- In the **Name&#x20;**&#x66;ield, enter a name for your API key.&#x20;
- In the **Key** field, enter the API key (called API token in Coda) you've obtained from your Coda account.&#x20;

:::hint{type="info"}
Since Coda requires specifying its API token by setting a header as `Authorization: Bearer <api_token>`, add the token to the **Key** field in this format: `Bearer <api_token>.`
:::

- In the **API Key placement&#x20;**&#x66;ield, select **In the header** as required by the Coda API Documentation.
- In the **API Key parameters name** field, enter `Authorization`.
- Click **Create**.

You can also click **Choose a key&#x20;**&#x74;o use an existing keychain from the drop-down list.&#x20;

![](https://api.archbee.com/api/optimize/oAyFj2GHlBeBVWF5OAir2/HzbjLYdbQePm6mxucMuUi-20251111-150801.png)
::::

:::WorkflowBlockItem
In the **URL** field, add the required API call. To list available docs in Coda, this example will use this URL: `https://coda.io/apis/v1/docs`
:::

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

::Image[]{src="https://api.archbee.com/api/optimize/oAyFj2GHlBeBVWF5OAir2/uQzLYHIBaKiDzNJBheWxB-20251111-153127.png" size="40" width="582" height="308" position="center" showCaption="false"}
:::

:::WorkflowBlockItem
Leave the **Headers** section empty.&#x20;
:::

::::WorkflowBlockItem
In the **Query** section, you can add `query` for the **Name** field, and `invoice` for the **Value** field. This way, you will set the filter to retrieve the docs that contain 'invoice' in their name. You can also set any other query.&#x20;

:::hint{type="info"}
You can find the mandatory and optional query parameters in the service's API documentation.
:::

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

:::WorkflowBlockItem
Since it's a **GET** request, you can leave the **Body content** section empty.&#x20;
:::

:::WorkflowBlockItem
Click **Save** and run the module.
:::
:::::

You'll see the HTTP response in the output bundle:

::Image[]{src="https://api.archbee.com/api/optimize/oAyFj2GHlBeBVWF5OAir2/yZrhhh-zKkzaR87PQNq-J-20251111-154633.png" size="40" width="580" height="1296" position="center" showCaption="false"}

To make an HTTP `POST` request to create a doc:&#x20;

::::WorkflowBlock
:::WorkflowBlockItem
Use the same credentials and the same URL: `https://coda.io/apis/v1/docs`
:::

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

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

::Image[]{src="https://api.archbee.com/api/optimize/oAyFj2GHlBeBVWF5OAir2/Hq5sYLwz55rXBhv4UUfAj-20251111-155107.png" size="40" width="584" height="964" position="center" showCaption="false"}
:::

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

- In the **Body content type** field, select **application/json**.
- In the **Body input method&#x20;**&#x66;ield, select **Data structure**.&#x20;
- In the **Body** **structure** field, click **Add&#x20;**&#x74;o create a new data structure. Add a text field `title` to be able to name the newly created doc, and a text field `folderId` to indicate the ID of the folder where the doc should be created. Click **Save**.
- In the **Body content&#x20;**&#x66;ield, add the **Title** and the **Folder** **ID**.&#x20;

  ::Image[]{src="https://api.archbee.com/api/optimize/oAyFj2GHlBeBVWF5OAir2/BRsJhiHk-lomkVlcW2hbU-20251111-155432.png" size="60" width="1088" height="1286" position="center" showCaption="false"}
:::

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

You can now check your Coda app. A new document called **New Doc from Make** will be created. You can also see it in the output:&#x20;

::Image[]{src="https://api.archbee.com/api/optimize/oAyFj2GHlBeBVWF5OAir2/6haHYpWOqsQEIwcPtqyOM-20251111-155843.png" size="40" width="582" height="1176" position="center" showCaption="false"}
::::::

