#api #m #pagerduty
#API #m #pagerduty
Вопрос:
Моя компания использует Power BI, и мы пытаемся получить данные об инцидентах из API PagerDuty.
Я изо всех сил пытался найти способ получить все данные, но я не знаю о PowerBI, PowerQuery или работе с API. Я нахожусь в роли базы данных.
Я использовал опцию получения данных в Power BI и выбрал Web в качестве источника данных. Ввел мою ссылку на API и передал заголовки. Полученный результат по умолчанию ограничен 25, я могу изменить его до 100, но моя главная проблема заключается в невозможности получить следующий набор результатов.
Мне нужно иметь какой-то цикл для увеличения параметра смещения и повторной обработки запроса.
Мой текущий запрос в PowerBI выглядит следующим образом.
= Json.Документ (Web.Contents(«https://api.pagerduty.com/incidents «, [Заголовки=[Принять=»application/ vnd.pagerduty json; версия = 2″, #»Content-Type»=»application / json», Авторизация=»Токен токена = МОЙ КЛЮЧ API»]]))
И он возвращает мне это:
Я могу расширить список и получить нужные мне данные. но сейчас я вижу только 25.
Ответ №1:
Вам понадобится способ постоянно обновлять offset
параметр в URL-адресе — например, если вы установили limit 25
, вы бы установили offset
25
значение, чтобы получить следующую страницу, 50
чтобы получить следующую страницу после этого, и так далее, вот так:
https://api.pagerduty.com/incidents?offset=25
Однако я не уверен, как вы могли бы добиться этого в своем инструменте! Вот ссылка на документацию PagerDuty по разбивке на страницы на случай, если вам понадобятся дополнительные сведения.