Summary
eazyBI is a cloud Business Intelligence service that also has a Jira app.
eazyBI has built-in adapters for Jira data. Using this adapter, it is possible to pull Timepiece (formerly Time in Status) data to eazyBI as well.
This document assumes the reader has basic knowledge about REST APIs and eazyBI configuration. The document itself is not an overall eazyBI or REST API tutorial.
Timepiece Reporting URL
While using Timepiece REST API, the client is expected to provide a single REST API call that includes all the parameters of the requested Timepiece report. Something like below:
https://tis.obss.io/rest/list?filterType=customJQL&customJQL=project in (ABC)&columnsBy=statusDuration&calendar=normalHours&fields=calc:projectKey,issueType&outputType=csv&statuses=1,3,4,5,6
In this URL:
- "tis.obss.io" is the domain for the Timepiece cloud service. Timepiece's REST API is served through this domain.
- "/rest/list" is the REST API endpoint that provides a "List" report. We want to pull each issue's data individually so it is appropriate to get a "List" report.
- All the query parameters after the "?" character are the report parameters for the Timepiece List report.
- You can reference this documentation page for details about how to modify each parameter of this endpoint according to your needs.
- To overcome the complexity of setting all those parameters, you can prepare the report you want to get in Timepiece main reporting page, save it as a Parameter Set, and just reference the parameter set in your integration reporting URL.
- Make sure you set "outputType" to CSV.
- It is recommended you explicitly provide a "statuses" parameter.
- Timepiece will still return data if you don't supply this parameter but you won't be able to map all value columns if the first page of the results doesn't contain all statuses. Declaring the statuses explicitly overcomes this problem.
- Make sure you don't use any paging parameters (startIssueIndex, pageSize) in this URL. They will be added by eazyBI according to the pagination configuration below.
Data Source Definition
Adding a new Data Source to eazyBI
In the Jira Apps menu:
- select eazyBI
- Switch to Source Data tab
- Click on the Add new source application button.
You can configure your adapter manually from scratch or you can start with a template and make changes on it.
Manual Configuration
To manually configure an eazyBI REST API data source for Timepiece, select the "REST:API" option in the "Add new source application" page.
Source Data URL
You enter the Timepiece Reporting URL (mentioned above) as the "Source data URL" and select a "GET" request.
Pagination
Timepiece REST API will provide issues in pages of 100 so the integration will need to run with paging.
- For "Pagination", select the "Offset and limit parameter" option.
- For "Offset parameter", enter "startIssueIndex".
- For "Limit parameter", enter "pageSize".
- For "Limit value", enter "100".
- For "Concurrency", you can leave the default value "10".
Authentication
For authentication, you'll first need to get a Timepiece REST API token as described in the API Settings page. After you get the API token,
- For "Authentication type", select "HTTP Header".
- For "Header Name", enter "Authorization".
- For "Header Value", enter "TISJWT <your_api_token>" and replace the "<your_api_token" with the actual API token you created in the API Settings page.
Content Parameters
- For Content Parameters, set the "Content type" to "CSV"
- For "Header Rows", enter "1", as all the CSV responses from Timepiece REST API will contain a header row.
Schedule
You can set the schedule according to your needs.
Importing Configuration
Instead of configuring the REST API data source from scratch, you can select the "Import Definition" option on the "Add new source application" page to import a predefined Timepiece REST API configuration and make necessary changes in the next step.
Next steps
In the next step, you will be asked to map the data gathered from Timepiece REST API to dimensions and measures on your system.
And, when you are done, click the "Start Import" button. You've successfully configured a data source for Timepiece in eazyBI.