Skip to content

[WIP ]Adding ClickUp documentation #413

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
665 changes: 665 additions & 0 deletions pages/toolkits/productivity/clickup.mdx

Large diffs are not rendered by default.

38 changes: 38 additions & 0 deletions pages/toolkits/productivity/clickup/reference.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
# Clickup Reference

Below is a reference of enumerations used by some tools in the Clickup toolkit:

## TaskPriority

Task priority values are used in the `Clickup.CreateTask` tool to set the priority of a new task. Those are default values and cannot be changed by the user.

- **URGENT**: `URGENT`
- **HIGH**: `HIGH`
- **NORMAL**: `NORMAL`
- **LOW**: `LOW`

## FilterScope

Filter scope values are used in the `Clickup.GetTasksByScope` tool to filter tasks by scope. The following enumeration values represent the possible scopes supported by the Clickup API:

- **ALL**: `all`
- **SPACES**: `spaces`
- **FOLDERS**: `folders`
- **LISTS**: `lists`

## TaskOrderBy

Task order by values are used in the `Clickup.GetTasksByScope` tool to order tasks by a specific field. The following enumeration values represent the possible order by fields supported by the Clickup API:

- **CREATED**: `created`
- **UPDATED**: `updated`
- **DUE_DATE**: `due_date`

## CommentResolution

Comment resolution values are used in the comment tools to set the resolution of a comment. The following enumeration values represent the possible resolutions supported by the Clickup API:

- **SET_AS_RESOLVED**: `resolved`
- **SET_AS_UNRESOLVED**: `unresolved`


Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
import { Arcade } from "@arcadeai/arcadejs";

const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable

const USER_ID = "{arcade_user_id}";
const TOOL_NAME = "Clickup.CreateComment";

// Start the authorization process
const authResponse = await client.tools.authorize({tool_name: TOOL_NAME});

if (authResponse.status !== "completed") {
console.log(`Click this link to authorize: ${authResponse.url}`);
}

// Wait for the authorization to complete
await client.auth.waitForCompletion(authResponse);

const toolInput = {
"task_id": "12345",
"comment_text": "This is a sample comment.",
"assignee_id": 678
};

const response = await client.tools.execute({
tool_name: TOOL_NAME,
input: toolInput,
user_id: USER_ID,
});

console.log(JSON.stringify(response.output.value, null, 2));
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
import json
from arcadepy import Arcade

client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable

USER_ID = "{arcade_user_id}"
TOOL_NAME = "Clickup.CreateComment"

auth_response = client.tools.authorize(tool_name=TOOL_NAME)

if auth_response.status != "completed":
print(f"Click this link to authorize: {auth_response.url}")

# Wait for the authorization to complete
client.auth.wait_for_completion(auth_response)

tool_input = {
'task_id': '12345', 'comment_text': 'This is a sample comment.', 'assignee_id': 678
}

response = client.tools.execute(
tool_name=TOOL_NAME,
input=tool_input,
user_id=USER_ID,
)
print(json.dumps(response.output.value, indent=2))
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
import { Arcade } from "@arcadeai/arcadejs";

const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable

const USER_ID = "{arcade_user_id}";
const TOOL_NAME = "Clickup.CreateCommentReply";

// Start the authorization process
const authResponse = await client.tools.authorize({tool_name: TOOL_NAME});

if (authResponse.status !== "completed") {
console.log(`Click this link to authorize: ${authResponse.url}`);
}

// Wait for the authorization to complete
await client.auth.waitForCompletion(authResponse);

const toolInput = {
"comment_id": "12345",
"reply_text": "Thanks for the update!",
"assignee_id": 678
};

const response = await client.tools.execute({
tool_name: TOOL_NAME,
input: toolInput,
user_id: USER_ID,
});

console.log(JSON.stringify(response.output.value, null, 2));
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
import json
from arcadepy import Arcade

client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable

USER_ID = "{arcade_user_id}"
TOOL_NAME = "Clickup.CreateCommentReply"

auth_response = client.tools.authorize(tool_name=TOOL_NAME)

if auth_response.status != "completed":
print(f"Click this link to authorize: {auth_response.url}")

# Wait for the authorization to complete
client.auth.wait_for_completion(auth_response)

tool_input = {
'comment_id': '12345', 'reply_text': 'Thanks for the update!', 'assignee_id': 678
}

response = client.tools.execute(
tool_name=TOOL_NAME,
input=tool_input,
user_id=USER_ID,
)
print(json.dumps(response.output.value, indent=2))
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
import { Arcade } from "@arcadeai/arcadejs";

const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable

const USER_ID = "{arcade_user_id}";
const TOOL_NAME = "Clickup.CreateTask";

// Start the authorization process
const authResponse = await client.tools.authorize({tool_name: TOOL_NAME});

if (authResponse.status !== "completed") {
console.log(`Click this link to authorize: ${authResponse.url}`);
}

// Wait for the authorization to complete
await client.auth.waitForCompletion(authResponse);

const toolInput = {
"list_id": "12345",
"task_title": "Implement feature X",
"description": "Details about feature X implementation",
"priority": "HIGH",
"due_date": "2023-12-31"
};

const response = await client.tools.execute({
tool_name: TOOL_NAME,
input: toolInput,
user_id: USER_ID,
});

console.log(JSON.stringify(response.output.value, null, 2));
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
import json
from arcadepy import Arcade

client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable

USER_ID = "{arcade_user_id}"
TOOL_NAME = "Clickup.CreateTask"

auth_response = client.tools.authorize(tool_name=TOOL_NAME)

if auth_response.status != "completed":
print(f"Click this link to authorize: {auth_response.url}")

# Wait for the authorization to complete
client.auth.wait_for_completion(auth_response)

tool_input = {
'list_id': '12345',
'task_title': 'Implement feature X',
'description': 'Details about feature X implementation',
'priority': 'HIGH',
'due_date': '2023-12-31'
}

response = client.tools.execute(
tool_name=TOOL_NAME,
input=tool_input,
user_id=USER_ID,
)
print(json.dumps(response.output.value, indent=2))
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
import { Arcade } from "@arcadeai/arcadejs";

const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable

const USER_ID = "{arcade_user_id}";
const TOOL_NAME = "Clickup.FuzzySearchFoldersByName";

// Start the authorization process
const authResponse = await client.tools.authorize({tool_name: TOOL_NAME});

if (authResponse.status !== "completed") {
console.log(`Click this link to authorize: ${authResponse.url}`);
}

// Wait for the authorization to complete
await client.auth.waitForCompletion(authResponse);

const toolInput = {
"name_to_search": "project",
"workspace_id": "12345",
"scan_size": 200,
"space_ids": [
"space1",
"space2"
],
"archived": true
};

const response = await client.tools.execute({
tool_name: TOOL_NAME,
input: toolInput,
user_id: USER_ID,
});

console.log(JSON.stringify(response.output.value, null, 2));
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
import json
from arcadepy import Arcade

client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable

USER_ID = "{arcade_user_id}"
TOOL_NAME = "Clickup.FuzzySearchFoldersByName"

auth_response = client.tools.authorize(tool_name=TOOL_NAME)

if auth_response.status != "completed":
print(f"Click this link to authorize: {auth_response.url}")

# Wait for the authorization to complete
client.auth.wait_for_completion(auth_response)

tool_input = {
'name_to_search': 'project',
'workspace_id': '12345',
'scan_size': 200,
'space_ids': ['space1', 'space2'],
'archived': True
}

response = client.tools.execute(
tool_name=TOOL_NAME,
input=tool_input,
user_id=USER_ID,
)
print(json.dumps(response.output.value, indent=2))
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
import { Arcade } from "@arcadeai/arcadejs";

const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable

const USER_ID = "{arcade_user_id}";
const TOOL_NAME = "Clickup.FuzzySearchListsByName";

// Start the authorization process
const authResponse = await client.tools.authorize({tool_name: TOOL_NAME});

if (authResponse.status !== "completed") {
console.log(`Click this link to authorize: ${authResponse.url}`);
}

// Wait for the authorization to complete
await client.auth.waitForCompletion(authResponse);

const toolInput = {
"name_to_search": "Project Alpha",
"workspace_id": "12345",
"scan_size": 200,
"space_ids": [
"space1",
"space2"
],
"archived": false
};

const response = await client.tools.execute({
tool_name: TOOL_NAME,
input: toolInput,
user_id: USER_ID,
});

console.log(JSON.stringify(response.output.value, null, 2));
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
import json
from arcadepy import Arcade

client = Arcade() # Automatically finds the `ARCADE_API_KEY` env variable

USER_ID = "{arcade_user_id}"
TOOL_NAME = "Clickup.FuzzySearchListsByName"

auth_response = client.tools.authorize(tool_name=TOOL_NAME)

if auth_response.status != "completed":
print(f"Click this link to authorize: {auth_response.url}")

# Wait for the authorization to complete
client.auth.wait_for_completion(auth_response)

tool_input = {
'name_to_search': 'Project Alpha',
'workspace_id': '12345',
'scan_size': 200,
'space_ids': ['space1', 'space2'],
'archived': False
}

response = client.tools.execute(
tool_name=TOOL_NAME,
input=tool_input,
user_id=USER_ID,
)
print(json.dumps(response.output.value, indent=2))
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
import { Arcade } from "@arcadeai/arcadejs";

const client = new Arcade(); // Automatically finds the `ARCADE_API_KEY` env variable

const USER_ID = "{arcade_user_id}";
const TOOL_NAME = "Clickup.FuzzySearchMembersByName";

// Start the authorization process
const authResponse = await client.tools.authorize({tool_name: TOOL_NAME});

if (authResponse.status !== "completed") {
console.log(`Click this link to authorize: ${authResponse.url}`);
}

// Wait for the authorization to complete
await client.auth.waitForCompletion(authResponse);

const toolInput = {
"name_to_search": "John Doe",
"workspace_id": "workspace_123",
"scan_size": 200
};

const response = await client.tools.execute({
tool_name: TOOL_NAME,
input: toolInput,
user_id: USER_ID,
});

console.log(JSON.stringify(response.output.value, null, 2));
Loading
Loading