Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

The ultimate Microsoft Fabric, Power BI, Azure AI & SQL learning event! Join us in Las Vegas from March 26-28, 2024. Use code MSCUST for a $100 discount. Register Now

Reply
rishtinz
Helper I
Helper I

Jira API connection and data refresh

Hello,

I have JIRA issues management system which gets updated on a daily basis. I used the following solution to read JIRA data through api in Power BI desktop and published it on Power BI service and scheduled a data refreshed. Funny thing is it worked for a month or two but just recently it start throwing the following error. 

 

This dataset includes a dynamic data source. Since dynamic data sources aren't refreshed in the Power BI service, this dataset won't be refreshed. Learn more: https://aka.ms/dynamic-data-sources.

 

It does not refresh and upon some research someone said that by using RelativePath function you could fix this problem but even that didn't work for me. 

 

Solved: Get Data from JIRA API and import in Power BI with... - Microsoft Fabric Community

My modifed code is the following. 

 

 

 

let 
    BaseUrl = "myhttpsURL",
    JiraIDPerPage = 1000,
 
 GetJson = (Url) =>
        let 
            RawData = Web.Contents(Url),
            Json = Json.Document(RawData)
        in  Json,
 
    GetJiraIDCount = () =>
        let Url = "myhttpsURL&maxResults=0",
            Json = GetJson(Url),
            Count = Json[#"total"]
        in  Count,
 
    GetPage = (Index) =>
        let Skip = "&startAt=" & Text.From(Index * JiraIDPerPage),
            Top = "&maxResults=" & Text.From(JiraIDPerPage),
            Url = BaseUrl & Skip & Top,
            Json = GetJson(Url),
            Value = Json[#"issues"]
        in  Value,
 
    JiraIDCount = List.Max({ JiraIDPerPage, GetJiraIDCount() }),
    PageCount = Number.RoundUp(JiraIDCount / JiraIDPerPage),
    PageIndices = { 0 .. PageCount - 1 },
    Pages = List.Transform(PageIndices, each GetPage(_)),
    JiraID = List.Union(Pages),
    Table1 = Table.FromList(JiraID, Splitter.SplitByNothing(), null, null, ExtraValues.Error),
    #"Expanded Column101" = Table.ExpandRecordColumn(Table1, "Column1", {"id", "key", "fields"}, {"Issue ID", "Issue Key", "Issue Fields"}),
    #"Expanded issue.fields" = Table.ExpandRecordColumn(#"Expanded Column101", "Issue Fields", {"issuetype", "customfield_10901", "resolutiondate", "lastViewed", "created", "priority", "assignee", "updated", "status", "description", "summary", "creator", "reporter", "duedate"}, {"issuetype", "customfield_10901", "resolutiondate", "lastViewed", "created", "priority", "assignee", "updated", "status", "description", "summary", "creator", "reporter", "duedate"})
in
    #"Expanded issue.fields"

 

 

 

 

  1. Does anyone know of another solution, or maybe a workaround to this solution with a slight twist. I am also looking into exporting data using power automate but power automate exports data each issue at a time, which is a pain as well. Does anyone know of a workable solution for this JIRA -> Power BI mystery?
0 REPLIES 0

Helpful resources

Announcements
Fabric Community Conference

Microsoft Fabric Community Conference

Join us at our first-ever Microsoft Fabric Community Conference, March 26-28, 2024 in Las Vegas with 100+ sessions by community experts and Microsoft engineering.

February 2024 Update Carousel

Power BI Monthly Update - February 2024

Check out the February 2024 Power BI update to learn about new features.

Fabric Career Hub

Microsoft Fabric Career Hub

Explore career paths and learn resources in Fabric.

Fabric Partner Community

Microsoft Fabric Partner Community

Engage with the Fabric engineering team, hear of product updates, business opportunities, and resources in the Fabric Partner Community.

Top Solution Authors