Qlik Sense — Настройка REST подключения к API SurveyMonkey

by Андрей Белобородов
Qlik Sense — Настройка REST подключения к API SurveyMonkey

Всем привет! Выкладываю продолжение статьи Qlik Sense в FutureToday — опыт работы с API SurveyMonkey.


Пройдя сквозь боль и страдания в борьбе с выгрузкой данных, залечив шишки от метких ударов граблей на своих лбах, перейдем к чему-то более созидательному. Рассмотрим как пошагово настроить REST API подключение в Qlik Sense.


Для этого нам необходимо:

  1. Создать приложение в SurveyMonkey и настроить разрешения на чтение
  2. Получить постоянный токен доступа к API SM (потребуется утилита cURL)
  3. Настроить REST-подключение в Qlik Sense


Создаем приложение и даем необходимые разрешения (1)

Перейдем по ссылке https://developer.surveymonkey.com/apps/ и нажмем на кнопку «Add a New App»:


Вводим название приложения (любое) и выбираем «Private App»:


После этого заходим в раздел «Settings» и настраиваем разрешения:

Нажимаем на «Upgrade Scopes». Первый шаг готов, идем дальше!


Получаем постоянный токен доступа к API SM (2)

Возвращаемся в настройки приложения и видим следующую картину:

Для получения постоянного OAuth-токена нам потребуются следующие данные (описания параметров взял отсюда):

  1. OAuth Redirect URL — это URL, на который сервис будет перенаправлять пользователя после авторизации (или отказа в авторизации) вашего приложения
  2. Client ID — представляет собой публично доступную строку, которая используется API сервиса для идентификации приложения, а также используется для создания авторизационных URL для пользователей
  3. Secret — используется для аутентификации подлинности приложения для API сервиса, когда приложение запрашивает доступ к аккаунту пользователя. Секрет клиента должен быть известен только приложению и API
  4. Access Token — на данном этапе бесполезен (почему?— не знаю...), потребуется получать его самостоятельно, для этого нам и потребуется утилита cURL


Далее нам надо получить временный токен. Для этого переходим по ссылке:

https://api.surveymonkey.com/oauth/authorize?response_type=code&redirect_uri=YOUR_REDIRECT_URI&client_id=YOUR_CLIENT_ID

Где вместо YOUR_REDIRECT_URI и YOUR_CLIENT_ID подставляем свои значения.


В результате в адресной строке мы получим в URL-ссылку типа:

https://www.surveymonkey.com/dashboard/?code=AUTH_CODE

где AUTH_CODE— временный код доступа к API SM, работающий всего несколько минут.


Далее, устанавливаем cURL (скачать его можно отсюда), заходим в командную строку и пишем команду вида:

curl -i -X POST https://api.surveymonkey.com/oauth/token -d \ 
  "client_secret=YOUR_CLIENT_SECRET \
  &code=AUTH_CODE \ 
  &redirect_uri=YOUR_REDIRECT_URI \ 
  &client_id=YOUR_CLIENT_ID \ 
  &grant_type=authorization_code"

где

  • YOUR_CLIENT_SECRET – ваш Secret,
  • AUTH_CODE – ваш временный код доступа к API SM,
  • YOUR_REDIRECT_URI – ваш OAuth Redirect URL
  • YOUR_CLIENT_ID – ваш Client ID


После выполнения команды Вы получите постоянный токен доступа к API SM, в командной строке это выглядит следующим образом:

Запишите его, ну или запомните, если у вас хорошая память :D


Настраиваем REST-подключение в Qlik Sense (3)

Хочу вас обрадовать, это последний шаг в настройке REST-подключения.

Заходим в редактор скрипта Qlik Sense и создаем новое подключение:


Выбираем REST и настраиваем как на картинках ниже:

Тестируем подключение и делаем пробную выборку:




На сегодня это все!

Спасибо за внимание, надеюсь статья окажется кому-то полезной :)

Если вы еще не читали первую часть, обязательно прочтите: Qlik Sense в FutureToday — опыт работы с API SurveyMonkey.

Если будут положительные отзывы — напишу продолжение о том, как настроить партиционную выгрузку и собрать модель данных.

Если у вас есть вопросы или предложения, не стесняйтесь и пишите мне на почту: me@andbel.it

February 1, 2019
by Андрей Белобородов
Qlik
Разработка