Import data into Power BI

Get your activities, projects, and time entries from Clockify into Power BI via Clockify API or a 3rd-party plug-in.

Import data from Clockify to Power BI

Importing Clockify data via official API

Option 1 (GET requests only)

Get Web data

Click "Get data > Web > Advanced", and fill in the fields based on the API documentation.

Note: Don't forget to fill in necessary IDs (eg. workspace) and your API key (which you can generate in Profile settings).

Note: You can get max 5,000 results per page-size for base endpoints, or 1,000 for report endpoints. Paging technique is required if you have more results.

Power BI getting data simple way
Option 2 (for both GET/POST requests)

Advanced query builder

Click "Get data > Blank query > Advanced editor", and create your own request based on the API documentation.

Note: Don't forget to fill in necessary IDs (eg. workspace) and your API key (which you can generate in Profile settings).

Note: You can get max 5,000 results per page-size for base endpoints, or 1,000 for report endpoints. Paging technique is required if you have more results.

Power BI getting data via power query

"GET User Time Entries" example

let
Source = Json.Document(Web.Contents("https://api.clockify.me/api/v1/workspaces/COPY-WORKSPACE-ID-HERE/user/COPY-USER-ID-HERE/time-entries", [Headers=[Accept="application/json", #"X-Api-Key"="COPY-YOUR-API-KEY-HERE"]])), messages = Source[messages]
in
Source

"POST Run Report" example

let
body = "{ ""dateRangeStart"": ""2021-01-01T00:00:00.000"", ""dateRangeEnd"": ""2021-12-01T23:59:59.000"", ""detailedFilter"": { ""page"": ""1"", ""pageSize"": ""200"" } }", Source = Json.Document(Web.Contents("https://reports.api.clockify.me/v1/workspaces/COPY-WORKSPACE-ID-HERE/reports/detailed", [ Headers = [#"Content-Type"="application/json", #"X-Api-Key"="COPY-YOUR-API-KEY-HERE"], Content=Text.ToBinary(body) ]))
in
Source

"GET Shared Report" example

let
Source = Json.Document(Web.Contents("https://reports.api.clockify.me/v1/shared-reports/COPY-SHARED-REPORT-ID-HERE", [Headers=[Accept="application/json", #"X-Api-Key"="COPY-YOUR-API-KEY-HERE"]])),
messages = Source[messages]
in
Source

Connectors and templates

If you need a simpler way to get data into Power BI, you can use a custom connector or templates developed by the community.

Join discussion on Clockify Forum or Power BI Forum

Note: These tools are not developed by Clockify. Use at your own discretion and report issues on Github. In order to use, you'll need to go to "File > Options and Settings > Options > Security > Data Extensions" and enable "Allow any extension to load without validation or warning".

Power BI template and connector screenshot