Are you in the loop? Keep up with the latest by making sure you're subscribed to Community Announcements. Just click Watch and select Articles.

×
Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in
Celebration

Earn badges and make progress

You're on your way to the next level! Join the Kudos program to earn points and save your progress.

Deleted user Avatar
Deleted user

Level 1: Seed

25 / 150 points

Next: Root

Avatar

1 badge earned

Collect

Participate in fun challenges

Challenges come and go, but your rewards stay with you. Do more to earn more!

Challenges
Coins

Gift kudos to your peers

What goes around comes around! Share the love by gifting kudos to your peers.

Recognition
Ribbon

Rise up in the ranks

Keep earning points to reach the top of the leaderboard. It resets every quarter so you always have a chance!

Leaderboard

Opsgenie integration with PowerBI using Rest API

I am trying to integrate Opsgenie alerts api in PowerBi using Web contents. But I facing challenges to fetch list of alerts lets say for last one months. As it limits the record to 100 for API call. Can you please help us with DAX query in powerBI to meet the requirement of fetching data for last month. can you please help on how we can use pagination as an option.

 

2 answers

1 vote
Robert
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
Sep 15, 2020

Hi @Ajaykumar Panchal !

 

A URL for the next set of alerts will be returned in the headers and body of your API call. We have documentation on pagination here:

 

https://docs.opsgenie.com/docs/pagination

Hi @Ajaykumar Panchal

I have the same problem. I've tried with loops in Power Query but didn't work.

Did you find the solution ?

 

let
 iterations = 10,          // Number of iterations
 url = 
  "https://api.opsgenie.com/v2/alerts?query=<enter your query here>",
 
 FnGetOnePage =
  (url) as record =>
   let
    Source = Json.Document(Web.Contents(url,[Headers=[Authorization="GenieKey XXXXXXXXXXXXXXXXXXXXXXXXX"])),
    data = try Source[data] otherwise null,
    next = try Source[paging][next] otherwise null,
    res = [Data=data, Next=next]
   in
    res,
 
 GeneratedList =
  List.Generate(
   ()=>[i=0, res = FnGetOnePage(url)],
   each [i]<iterations and [res][Data]<>null,
   each [i=[i]+1, res = FnGetOnePage([res][Next])],
   each [res][Data])
 in
  GeneratedList

Suggest an answer

Log in or Sign up to answer
DEPLOYMENT TYPE
CLOUD
TAGS
AUG Leaders

Atlassian Community Events