Назначение

Любой HTTP-сервис: чтение записей (JSON, XML, CSV/TSV, JSON Lines) и отправка строк (JSON, XML, данные формы, CSV). Одно подключение представляет один ресурс API и метод запроса; для другого ресурса или метода создайте другое подключение.

Поля подключения

Снимок интерфейсаУвеличить ↗Поля подключения REST API. Верхняя часть формы: название, сервис, базовый адрес, аутентификация и дополнительные заголовки. api.example — учебный адрес.
Поля подключения REST API

Верхняя часть формы REST API: название, сервис, базовый адрес, аутентификация и дополнительные заголовки. api.example — учебный адрес.

ПолеПравило и значение по умолчаниюПояснение
Базовый адрес API
base_url
ОбязательноЗадайте значение согласно конфигурации сервиса.
Аутентификация
auth
По настройке
По умолчанию: none
none — Без аутентификации
basic — Basic (имя пользователя и пароль)
bearer — Bearer-токен
api_key — Ключ API в заголовке
oauth2 — OAuth 2.0 client credentials
Пользователь
username
По настройкеОтображается при: auth = basic
Заголовок ключа API
header_name
По настройке
По умолчанию: X-API-Key
Отображается при: auth = api_key
Адрес получения токена
token_url
По настройкеОтображается при: auth = oauth2
Client ID
client_id
По настройкеОтображается при: auth = oauth2
Scope (необязательно)
scope
По настройкеОтображается при: auth = oauth2
Дополнительные заголовки
headers
По настройкеПо одному в строке: «Name: value». Секреты указывайте в поле секрета, а не здесь.
Ожидание ответа, секунд
timeout
По настройке
По умолчанию: 60
Диапазон: 1–600
Задайте значение согласно конфигурации сервиса.
Путь ресурса
resource_path
По настройкеОтносительно базового адреса, без параметров запроса (? …). Для отдельных запросов в путь можно вставить поле строки: /orders/{{Number}}.
Метод запроса
method
По настройке
По умолчанию: GET
GET — GET — чтение
POST — POST — чтение с телом запроса или отправка строк
PUT — PUT — отправка строк (замена)
PATCH — PATCH — отправка строк (обновление)
Базовые параметры запроса
query_params
По настройкеДобавляются к каждому запросу этого подключения. По одному в строке: «name=value» или только «name» (например, json). Значения кодируются автоматически. Блок-источник может добавлять собственные параметры.
Формат тела запроса
request_format
По настройке
По умолчанию: json
Для отправки строк и тела запроса чтения методом POST.
json — JSON
xml — XML
form — Форма (application/x-www-form-urlencoded)
csv — CSV — текст с разделителями
Отображается при: method = POST, PUT, PATCH
Тело запроса
body
По настройкеТолько для чтения POST, в выбранном формате тела (для формы — по одному «name=value» в строке). При отправке тело формируется из строк таблицы, это поле не используется.
Отображается при: method = POST
Элемент строки XML
xml_record
По настройке
По умолчанию: record
Каждая строка отправляется элементом с этим именем; колонки становятся его дочерними элементами.
Отображается при: method = POST, PUT, PATCH, request_format = xml
Формат ответа
response_format
По настройке
По умолчанию: auto
auto — Определять автоматически (по Content-Type)
json — JSON
xml — XML
csv — CSV/TSV — текст с разделителями
jsonl — JSON Lines (NDJSON) — один объект JSON в строке
Отображается при: method = GET, POST
Кодировка ответа
response_encoding
По настройке
По умолчанию: auto
Автоматически: из Content-Type или объявления XML; иначе UTF-8.
auto — Автоматически
utf-8 — UTF-8
windows-1251 — Windows-1251
iso-8859-1 — ISO-8859-1 (Latin-1)
Отображается при: method = GET, POST
Разделитель CSV
csv_delimiter
По настройке
По умолчанию: comma
comma — Запятая ( , )
semicolon — Точка с запятой ( ; )
tab — Табуляция (TSV)
pipe — Вертикальная черта ( | )
Доступность зависит от метода запроса и формата.
Первая строка CSV-ответа содержит названия колонок
csv_header
По настройке
По умолчанию: True
Отображается при: method = GET, POST, response_format = csv
Путь к записям в ответе
records_path
По настройкеJSON: путь через точку (data.items); пустое значение означает массив записей или объект с одним массивом. XML: путь элементов от корня (./item, ./data/item, .//item); пустое значение означает повторяющиеся элементы: наибольшую группу одинаковых элементов (для простого списка — дочерние элементы корня). Вложенные объекты и элементы становятся колонками «a.b»; атрибуты XML — «@name».
Отображается при: method = GET, POST, response_format = auto, json, xml
Добавлять атрибуты родительских элементов в записи XML
xml_ancestors
По настройке
По умолчанию: True
Каждая запись получает атрибуты элементов между корнем и этой записью. Например, в курсах ЕЦБ дата Cube.Cube.@time появляется в каждой строке валюты. Название колонки — путь от корня плюс «@attribute»; поле самой записи имеет приоритет.
Отображается при: method = GET, POST, response_format = auto, xml
Страницы ответа
pagination
По настройке
По умолчанию: none
none — Один ответ
next_link — Ссылка следующей страницы в теле ответа (JSON, XML)
link_header — Ссылка следующей страницы в заголовке Link (rel="next")
page — Номер страницы в параметре
offset — Смещение в параметре
Отображается при: method = GET, POST
Путь к ссылке следующей страницы
next_link_path
По настройке
По умолчанию: next
JSON: путь через точку; XML: путь элемента (текст элемента) или «path@attribute». Ссылка должна вести на тот же сервер.
Отображается при: method = GET, POST, pagination = next_link
Параметр номера страницы или смещения
page_param
По настройке
По умолчанию: page
Отображается при: method = GET, POST, pagination = page, offset
Параметр размера страницы (необязательно)
size_param
По настройкеОтображается при: method = GET, POST, pagination = page, offset
Размер страницы
page_size
По настройке
По умолчанию: 100
Диапазон: 1–10000
Отображается при: method = GET, POST, pagination = page, offset
Номер первой страницы
first_page
По настройке
По умолчанию: 1
Диапазон: 0–1
Отображается при: method = GET, POST, pagination = page
Максимум страниц
max_pages
По настройке
По умолчанию: 100
Диапазон: 1–10000
Отображается при: method = GET, POST, pagination = next_link, link_header, page, offset
Способ отправки строк
send_mode
По настройке
По умолчанию: row
Для получателей. JSON: строка — объект «колонка: значение», порция — массив объектов. XML: элемент строки, порция внутри корневого элемента. Данные формы: только отдельные запросы. CSV: строка заголовков, затем строки значений.
row — Отдельный запрос для каждой строки
batch — Порции — несколько строк в запросе
Отображается при: method = POST, PUT, PATCH
Строк в порции
batch_size
По настройке
По умолчанию: 100
Диапазон: 1–10000
Отображается при: method = POST, PUT, PATCH, send_mode = batch
Ключ массива в теле порции JSON (необязательно)
batch_key
По настройкеОтображается при: method = POST, PUT, PATCH, send_mode = batch, request_format = json
Корневой элемент порции XML
xml_root
По настройке
По умолчанию: records
Отображается при: method = POST, PUT, PATCH, send_mode = batch, request_format = xml
Пароль, токен, ключ или секрет клиента
secret
Отдельное защищённое полеПосле сохранения секрет не отображается. Пустое поле существующего подключения сохраняет текущий секрет.

Настройка и проверка

  1. Создайте подключение и дайте ему понятное название.
  2. Заполните обязательные поля и отдельное поле секрета.
  3. Выполните «Тест» и прочитайте диагностику.
  4. Сохраните подключение и выберите его в соответствующем блоке потока.

Успешный тест не заменяет проверку доступа к нужному объекту и конкретному режиму записи.

Использование в потоке

Настройки сервера и учётной записи хранятся в подключении. Конкретный объект, поля и поведение потока задаются в блоке. Перейти к правилам обработки данных →

Важные особенности