ClickUp connector setup
Operator·2 minutes to read
This page is the setup half — creating the OAuth app ClickUp needs in its own settings and getting its client id and secret into this deployment. Authorising a connection afterwards is the Authenticate control on the plugin sheet, which is what actually sends you to ClickUp.
1. Create the OAuth app in ClickUp's settings
-
Open ClickUp's Apps settings and create a new app — this is your own app, not Botseon's.
-
Under Redirect URL, add the redirect URL from
docs/connectors/README.md— with the quickstart's defaultBOTSEON_PUBLIC_URL, that is:http://127.0.0.1:3000/api/oauth/clickup/callback -
Save. The app's settings show you a Client ID and a Client Secret — copy both now.
2. Scopes
clickup:all— the spaces, folders, lists and tasks the account can already reach.
clickup:all is a sentinel, the same kind as Notion's notion:all: ClickUp does not narrow what
an OAuth app can reach by scope, so what this connector can reach is bounded by the account that
authorises it, not by anything requested here.
3. Enter the app
One command, with the client secret on standard input — there is no flag that takes it and no
environment variable that holds it (see
docs/connectors/README.md):
printf %s "$CLIENT_SECRET" | botseon oauth-app set \
--org <organisation id> --slug clickup \
--client-id <the client ID from step 1> \
--auth-url https://app.clickup.com/api \
--token-url https://api.clickup.com/api/v2/oauth/token \
--configured-by <your user id>
Both URLs are read from ClickUp's own current documentation (Authentication), not invented here.
It stores the secret encrypted and prints the redirect URL from step 1 back, so you can check the
two match. botseon oauth-app show --org <organisation id> --slug clickup says whether an app is
configured and under which client id; nothing prints the secret back.
Never put either value in a bot's description, a memory, or anywhere else a model reads as ordinary text.
Last verified against build 445930e.