Получение данных из REST API
Пользователи могут подключаться к источникам REST API используя мастер подключения к данным.
Разработчики могут настроить подключения REST API в таблице xls.objects или представлениях списков запросов, чтобы предоставить пользователям возможность подключения без дополнительных шагов по настройке.
Пользователи в этом случае должны подключаться к базе данных, а не напрямую к сервису.
Ниже приведен формат настройки для таблицы xls.objects:
ID | TABLE_SCHEMA | TABLE_NAME | TABLE_TYPE | TABLE_CODE | INSERT_OBJECT | UPDATE_OBJECT | DELETE_OBJECT |
---|---|---|---|---|---|---|---|
<schema> | <name> | HTTP | <select command> |
Ниже приведен формат настройки для представления списка запросов:
ID | TABLE_SCHEMA | TABLE_NAME | TABLE_TYPE | TABLE_CODE | INSERT_PROCEDURE | UPDATE_PROCEDURE | DELETE_PROCEDURE | PROCEDURE_TYPE |
---|---|---|---|---|---|---|---|---|
<schema> | <name> | HTTP | <select command> |
В таблицы приведен пример настройки для ZohoCRM:
ID | TABLE_SCHEMA | TABLE_NAME | TABLE_TYPE | TABLE_CODE | INSERT_OBJECT | UPDATE_OBJECT | DELETE_OBJECT |
---|---|---|---|---|---|---|---|
ZohoCRM | Accounts | HTTP | https://www.zohoapis.com/crm/v2/Accounts | ||||
ZohoCRM | Contacts | HTTP | https://www.zohoapis.com/crm/v2/Contacts | ||||
ZohoCRM | Leads | HTTP | https://www.zohoapis.com/crm/v2/Leads |
Пример содержит три настроенных объекта в схеме ZohoCRM: Accounts, Contacts, and Leads.
Поле TABLE_CODE содержит URL для загрузки данных.
Другие поля могут содержать форматы команд REST API для добавления, изменения и удаления данных. См. Сохранение данных по REST API.
Объекты REST API имеют тип HTTP, как и объекты получения данных из веб.
Однако, следует иметь ввиду несколько важных различий:
- REST API возвращает типизированный JSON или XML, тогда как для объектов веб обычно требуется специфическое извлечение данных.
- REST API поддерживает сохранение изменений.
- REST API обычно требует аутентификацию пользователя.
- REST API может поддерживать постраничную выдачу данных.
- REST API может поддерживать операции SELECT, WHERE, GROUP BY и ORDER BY на уровне сервиса.
Для обработки типизированных данных, надстройка использует специальный парсер. Для его использования добавьте параметр парсера ApiResult=true.
Например:
https://www.zohoapis.com/crm/v2/Contacts;ApiResult=true
Чтобы узнать, как настроить сохранение изменений, см. Сохранение данных по REST API.
Чтобы узнать больше об аутентификации, см. HTTP-аутентификация.
Чтобы загрузить все страницы данных, используйте специальную вставку {$page} как значение параметра страницы. Надстройка будет автоматически увеличивать номер страницы и делать новый запрос, если данные текущей страницы получены.
Например:
https://www.zohoapis.com/crm/v2/Contacts?page={$page};ApiResult=true
В URL можно добавить любые другие параметры, которые поддерживаются API сервиса.
SaveToDB 10 позволяет настроить колонки, которые определены для API, в таблице xls.columns.
В этом случае, надстройка будет позволять пользователям выбирать колонки для вывода в мастере подключения.
Например, если пользователь выберет поля ID, First_Name и Last_Name, то надстройка сгенерирует команду
SELECT ID, First_Name, Last_Name FROM [https://www.zohoapis.com/crm/v2/Contacts?page={$page};ApiResult=true]
В этом случае будут загружены все данные, однако в Excel будут вставлены только выбранные колонки.
В URL можно использовать вставку {$select_fields}, чтобы передать список выбранных полей.
Например:
https://www.zohoapis.com/crm/v2/Contacts?fields={$select_fields}&page={$page};ApiResult=true
В приведенном примере, надстройка сгенерирует команду:
SELECT ID, First_Name, Last_Name FROM [https://www.zohoapis.com/crm/v2/Contacts?fields=ID,First_Name,Last_Name&page={$page};ApiResult=true]
В результате сервис вернет только те поля, которые требуются, с экономией трафика и времени.
Если пользователь выберет все колонки, то надстройка удалит параметр списка полей, и команда будет выглядеть как
https://www.zohoapis.com/crm/v2/Contacts?page={$page};ApiResult=true
См. также: