> ## Documentation Index
> Fetch the complete documentation index at: https://docs.alumio.com/llms.txt
> Use this file to discover all available pages before exploring further.

# ClickUp

> Connect Alumio to ClickUp.

## Extra information

System documentation: [ClickUp API Reference](https://clickup.com/api/)

## Connector package documentation

### Table of Contents

* **1.** Setting up HTTP Client ClickUp
  * **1.1** Steps
* **2.** Subscribing to entities from ClickUp
  * **2.1** Steps
  * **2.2** General concept
* **3.** Publishing entity to ClickUp
  * **3.1** Steps
  * **3.2** General concept

### 1. Setting up HTTP Client ClickUp

**1.1 Steps**

1. In the Alumio Dashboard, go to Clients -> HTTP Clients. Create a new HTTP Client.
2. Select ClickUp HTTP Client as PlatForm and click next step
3. Fill in the Base URI
4. Select the Authentication Type
   * Basic Authentication
     * Fill in the Personal Token
       (See the [ClickUp Token Authentication Documentation](https://clickup.com/api/developer-portal/authentication/#personal-token) for more information)
   * Oauth 2.0 Authentication
     * Fill in the Token URL, Authorize URL, Client ID and Client Secret.
     * Click on "Grant access to ClickUp" and you will be redirected to ClickUp website to get the key for the client.
       (See the [ClickUp Oauth 2.0 Authentication Documentation](https://clickup.com/api/developer-portal/authentication/#build-apps-for-others---oauth-flow)
5. You can optionally enable logging of request to get the log of the authentication.
6. Click next step, fill the name of the HTTP Client and finally you can save the HTTP Client for use.

<img src="https://mintcdn.com/alumio/rvdAjy4YRzDDREsn/images/connectors/clickup-01.png?fit=max&auto=format&n=rvdAjy4YRzDDREsn&q=85&s=ab0557ff3590cbca595ba40fde828dd1" alt="ClickUp connector screenshot 1" width="574" height="500" data-path="images/connectors/clickup-01.png" />

### 2. Subscribing to Entities from ClickUp

**2.1 Steps**

1. Go to Connections -> Incoming and create a new incoming configuration and select "ClickUp Subscriber" as the subscriber.
2. Select the entity you want to subscribe to from ClickUp.
3. Add any request parameters needed to subscribe to the entity.
4. Select the ClickUp HTTP Client to use.
5. You can optionally add a transformer to transform the request parameters into something you will request from ClickUp.
6. You can also optionally enable pagination to allow Alumio fetches paginated entities.

**2.2 General Concept**

We follow ClickUp documentation on building this connector, so you can easily use the connector based on [ClickUp API Reference](https://clickup.com/api/).

**Entity**

The entity you want to subscribe to ClickUp. Please refer to the entities from [ClickUp 2.0 API Reference](https://clickup.com/api/) page.

**Request Parameters**

These are the parameters you can provide to get the needed entity based on the [ClickUp API Reference](https://clickup.com/api/).

Please look at the example below on how to fill path field when we want retrieve list of task by subscribing ["Tasks - Get Tasks"](https://clickup.com/api/clickupreference/operation/GetTasks/) entity.

<img src="https://mintcdn.com/alumio/rvdAjy4YRzDDREsn/images/connectors/clickup-02.png?fit=max&auto=format&n=rvdAjy4YRzDDREsn&q=85&s=70b8a08599155b26428417782d58252d" alt="ClickUp connector screenshot 2" width="690" height="431" data-path="images/connectors/clickup-02.png" />

<img src="https://mintcdn.com/alumio/rvdAjy4YRzDDREsn/images/connectors/clickup-03.png?fit=max&auto=format&n=rvdAjy4YRzDDREsn&q=85&s=200688a31a0fec7af2e9d567bff6a456" alt="ClickUp connector screenshot 3" width="690" height="352" data-path="images/connectors/clickup-03.png" />

From the end point, we can see that we need to set the list id as parameters. That is why we set the "list\_id" inside the path key in the Request Parameters.

Alumio will then make a request to ClickUp with the URL `/v2/list/901803781168/task`

* Path is the path parameter of the url. For example the \{id}.
* Query is defined set of parameters attached to the end of a url.\
  Example: `www.url.com?type=true&start=0`

**HTTP Client**

The HTTP Client configuration you will use to access ClickUp.

**3.1 Steps**

1. Go to Connections -> Outgoing, create a new outgoing configuration and select "ClickUp Publisher" as the publisher.
2. Select the Method that you want the publisher to perform with the data.
3. Select the ClickUp entity you want the data to be published to.
4. You can optionally add any query data to the request on the key query.
5. You can optionally add any payload data to the request on the key payload.
6. Select the HTTP Client to use.

**3.2 General Concept**

Like the subscriber, the publisher has similar methods on how to use it. The difference is the payload that will be submitted by the publisher originating from the data (from routes, from transformers in outgoing configuration), though you can also add or modify payload using the Request Transformer.

**Method**

Currently, we support HTTP Post method, HTTP Put method and HTTP Delete method on submitting data to ClickUp.

**Entity**

We support publishing to all ClickUp 2.0 endpoints.
Please refer to [ClickUp API Reference](https://clickup.com/api/) page.

For example, we want to update a task. Please select “Put” as the Method and ["Tasks - Update a Task"](https://clickup.com/api/clickupreference/operation/UpdateTask/).

<img src="https://mintcdn.com/alumio/rvdAjy4YRzDDREsn/images/connectors/clickup-04.png?fit=max&auto=format&n=rvdAjy4YRzDDREsn&q=85&s=a12981ca6ccac70a4f5256a64b8cce27" alt="ClickUp connector screenshot 4" width="690" height="329" data-path="images/connectors/clickup-04.png" />

<img src="https://mintcdn.com/alumio/rvdAjy4YRzDDREsn/images/connectors/clickup-05.png?fit=max&auto=format&n=rvdAjy4YRzDDREsn&q=85&s=019ea820867379724fa48957b70db012" alt="ClickUp connector screenshot 5" width="690" height="259" data-path="images/connectors/clickup-05.png" />

From the documentation, we can see that we need to set a path parameter and a body parameters. That is why we set the "task\_id" inside the path key and body parameters inside the payload key in the data.

<img src="https://mintcdn.com/alumio/rvdAjy4YRzDDREsn/images/connectors/clickup-06.png?fit=max&auto=format&n=rvdAjy4YRzDDREsn&q=85&s=abefa396c403737e38c667c4eddc0bfe" alt="ClickUp connector screenshot 6" width="284" height="186" data-path="images/connectors/clickup-06.png" />

Alumio will send an API request to ClickUp with URL `https://api.clickup.com/api/v2/task/86eqhgatq`

* Path is the path parameter of the url. For example the \{id}.
* Query is defined set of parameters attached to the end of a url.\
  Example: `www.url.com?type=true&start=0`
* Payload is the data contained within a request.

**HTTP Client**

The HTTP Client configuration you will use to access ClickUp.
