Enable Time Tracking of JetBrains (PHPStorm, WebStorm) with ClickUp (using Gitlab endpoints).
This is some kind of workaround with which you are able to track your development time directly from your IDE (PHPStorm) to ClickUp. Current setup is a server on which we capturing native JetBrains integration with Gitlab requests and serve ClickUp data (spaces and tasks) in Gitlab format. Tracking data is pushed to ClickUp with capturing data which is pushed to "fake" Gitlab server.
- PHP >= 7.4 (not tested with PHP8.x, but code is compatible)
- Apache >= 2.4 (not tested with nginx)
Apache Directive AllowEncodedSlashes
need to be enabled.
Put this line AllowEncodedSlashes NoDecode
somewhere between <VirualHost>
and </VirtualHost>
Virtual Host example file:
<VirtualHost *:80>
ServerName track.example.com
DocumentRoot /var/www/vhosts/track
ErrorLog /var/log/httpd/track.example.com-error_log
CustomLog /var/log/httpd/track.example.com-access_log combined
HostnameLookups Off
UseCanonicalName On
ServerSignature Off
<FilesMatch \.php$>
SetHandler "proxy:unix:/var/php-fpm/www.sock|fcgi://localhost:9000"
</FilesMatch>
AllowEncodedSlashes NoDecode
<Directory "/var/www/vhosts/track">
Options FollowSymLinks
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
- Go to
File Settings (Ctrl + Alt + S) - Tasks - Servers
. - Click on
+
and choose Gitlab Server.
- Add server address configured above (http://track.example.com).
- Put ClickUp API Key (Menu - Integrations - Custom Apps). API Key starts with "pk_".
- Choose Project (ClickUp Space) from which will be fetched tasks.
- Go to
File - Settings (Ctrl + Alt + S) - Tasks - Time Tracking
. - Check Enable Time Tracking.
When Time Tracking feature is enabled you will see additional window form which you can get list of tasks.
- Comments from Tracking window are not added to ClickUp.
This was created for internal purposes and probably will not cover all cases. Feel free to open issue or fork and modify the code for your own requirements.