ClickUp integration

Authentication

Supported authentication methods

Personal token

To proceed with this authentication type you need to obtain API token from ClickUp. Steps below will instruct you how to do that.

Open ClickUp. Reveal user menu by clicking on your avatar icon in at the left bottom and then click "Apps" there.

Navigate to apps

In presented screen, click "Generate" button to create new token and then copy it.

Generate new personal token

Now, when you've obtained a token, lets configure integration in Bugsee. Select "Personal token" authentication type and click "Next".

Select personal token

Paste generated token into "Personal token" field and click "Next" to proceed.

Paste personal token

OAuth

Select "OAuth" authentication type and click "Next".

Select OAuth

You will be presented with the following window asking you to select workspaces you want to grant Bugsee access to. Once you select all the desired workspaces click "Connect N workspaces" to proceed.

Select workspace

Configuration

We describe here only specific configuration steps for ClickUp. Generic steps are described in configuration section. Refer to it for more details.

ClickUp has the following structure: "Team" -> "Space" -> "Folder" -> "List" -> "Task". So, we provide one more step in integration setup wizard that asks you to pick the "Team" and "Space" pair to fetch folders and lists from. Please, pick one and click "Next" to proceed.

Choose workspace

Custom recipes

Bugsee can accommodate all these customizations with the help of custom recipes. This section provides a few examples of using custom recipes specifically with ClickUp. For basic introduction, refer to custom recipe documentation.

Setting proper status for tasks

Bugsee can't set proper status (open or closed) for all the types of tasks ClickUp posses. As it differs from one type of the space/list to another and there is no API endpoint to inquire that. So, you can define that using custom recipe as follows:

function create(context) {
    // ....

    return {
        // ...
        custom: {
            // for some tasks this is 'open', for some others it's 'open'
            status: 'open'
        }
    };
}