На данный момент Tableau имеет несколько точек расширения.
- Если вы публикуете на Tableau Server, в Интернете или общедоступном, вы можете использовать JavaScript API Tableau для взаимодействия между вашим клиентом веб-приложения и визуализацией Tableau. Ваш javascript может получать уведомления о событиях в Tableau, а именно, а также эффективно управлять им.
Вместо использования JavaScript API вы можете включить параметры запроса URL для передачи фильтров, настройки размеров и управления некоторыми другими аспектами. Точно так же вы можете добавить строку формата, например «.png», «.pdf» или «.csv», чтобы запросить статический снимок в определенном формате вместо интерактивного объекта. Вы не можете контролировать столько всего через URL-адрес, как через Javascript API, но подход с URL-адресом очень прост и удобен для распространенных случаев.
Как с визуализацией Tableau Server, так и с настольной визуализацией Tableau вы можете создавать действия URL, чтобы пользователи могли выбирать данные, а затем вызывать HTTP-запросы GET к URL-адресам, основанным на информации в выбранных данных.
Если у вас есть источник данных, для которого Tableau еще не предоставляет драйвера (их много, включая ODBC), вы можете написать программу, используя их API извлечения данных для извлечения данных из вашего пользовательского источника и сделать его доступным для Tableau. Вы также можете публиковать этот источник на сервере Tableau так часто, как это необходимо, чтобы поддерживать актуальность ваших визуализаций.
Если у вас есть специальные функции на сервере базы данных, вы можете получить к ним доступ из вычислений Tableau, используя их функции передачи SQL. Вы также можете определить подключение Tableau, используя произвольный пользовательский SQL, что дает вам еще одно место для вставки настроек.
В версии 8.1 добавлена интеграция с R, поэтому вы можете вызывать скрипты R из вычисляемых полей Tableau.
Версия 8.2 добавила REST API в Tableau Server для административных функций.
В версии 9.1 добавлен веб-коннектор, позволяющий предоставлять пользовательский код для подключения к источникам данных, доступным в Интернете.
В версии 10.1 Tableau добавлен TabPy локальный HTTP-сервер Python, который позволяет вам выполнять функции Python из Tableau так же, как вы можете вызывать функции R. Те же хуки теперь были расширены, чтобы разрешить вызовы функций Matlab.
Существуют также программы командной строки, tabcmd и tabadmin, которые работают с сервером Tableau, и вы можете использовать их для отправки команд на сервер из ваших собственных скриптов, но REST API может быть более удобным во многих случаях.
Tableau выпустила несколько библиотек, инструментов и примеров с открытым исходным кодом по адресу https://github.com/tableau Одна из этих библиотек, API документов, позволяет программно изменять некоторые атрибуты файлов рабочих книг Tableau.
Tableau выпустила API расширений в 2018 году, чтобы позволить разработчикам добавлять пользовательские функции к информационным панелям Tableau.
Версия 2019.3 добавляет API метаданных с использованием GraphQL, чтобы клиенты могли запрашивать информацию о полях, типах и атрибутах, доступных в источниках данных, опубликованных в каталоге данных Tableau Server.
Будем надеяться, что они продолжат добавлять дополнительные API и интеграционные крючки, но это большинство доступных сейчас вариантов.