/v2/Api/ImportToDataTableTasks POST

ImportToDataTableTasks позволяет запланировано (асинхронно) импортировать записи в Кастомные Таблицы Данных. Данные могут быть импортированы из различных внешних источников, таких как файл на FTP сервере.

В данный момент поддерживается единовременный мгновенный импорт.

Используя GET запрос "Получить статус импорта в таблицу" можно получить статус выполнения импорта (еще выполняется или уже завершен).

Формат запроса

Элементы тега Data:

Элемент/АтрибутТипОписание
SourcecomplexИнформация об источнике данных. Обязательный.
TargetcomplexИнформация о конечной цели импорта. Обязательный.
ImportSetupcomplexНастройки импорта, настройки файла, сопоставление (mapping) столбцов и т.д. Необязательный. Если не указан, используются настройки по умолчанию.

Элементы тега Source:

Элемент/АтрибутТипОписание
UrlstringURL адрес импортируемого файла. Обязательный. Поддерживаются протоколы HTTP, HTTPS, FTP, FTPS и SFTP, например ftp://www.domain.com/myimportedfile.csv
UsernamestringИмя пользователя используемое для аутентификации. Необязательный.
PasswordstringПароль используемый для аутентификации. Необязательный.
FtpAuthstringМетод аутентификации для защищенного FTP сервера. Необязательный. Может принимать следующие значения:
  1. None - без шифрования (по умолчанию)
  2. ExplicitTls - явное TLS/SSL аутентификация
  3. ExplicitSsl - только явная SSL аутентификация
  4. ImplicitSsl - неявная SSL аутентификация

Элементы тега Target:

Элемент/АтрибутТипОписание
NamestringНазвание импорта. Используется в платформе для упрощения поиска. Обязательное.

Элементы тега ImportSetup:

Элемент/АтрибутТипОписание
ModestringРежимы импорта. Аналогичны режимам при добавлении записи в таблицу. Необязательный. По умолчанию "Add".
DelimiterstringРазделитель в CSV файле. Необязательное. По умолчанию ',' (запятая).
QuotestringОграничитель в CSV файле. Необязательный. По умолчанию '"' (двойные кавычки).
EscapestringСимвол экранирования в CSV файле. Необязательный. По умолчанию '"' (двойные кавычки).
CommentstringСимвол комментирования в CSV файле. Необязательный. По умолчанию zero-byte (не определен)
EncodingstringКодировка файла CSV. Необязательный. По умолчанию "utf-8".Список доступных кодировок.
StartingLineintegerНомер строки в CSV, с которой начинается импорт. Необязательный. По умолчанию с 0 (c начала).

Режимы импорта:

РежимПоведение
AddЕсли строка не содержится в таблице данных, она будет добавлена.
ReplaceНесуществующая строка будет добавлена. Существующая строка будет заменена.*

*Важно! При импорте пустого файла он будет синхронизирован с таблицей, т.е. таблица будет очищена. Строки, которых нет в файле импорта будут удалены (синхронизация).

Ответ

Метод возвращает ID импорта. ID может использоваться для получения статуса импорта, используя GET метод.

Элементы тега Data в ответе:

Элемент/АтрибутТипОписание
(Содержимое тега Дата)intID импорта.

Примеры

Импорт в Таблицу Данных с настройками по умолчанию

Запрос:

POST https://api.esv2.com/v2/Api/ImportToDataTableTasks HTTP/1.1 
Accept-Encoding: gzip,deflate 
Content-Type: application/xml 
User-Agent: Jakarta Commons-HttpClient/3.1 
Host: api.esv2.com 
Content-Length: 353

<ApiRequest xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xs="http://www.w3.org/2001/XMLSchema">
   <ApiKey>Ваш_API-ключ</ApiKey>
   <Data>
     <Source>
       <Url>ftp://ftp.expertsender.com/Lists/название_таблицы.csv</Url>
     </Source>
     <Target>
       <Name>Тестовый импорт по API</Name>
     </Target>
   </Data>
</ApiRequest>

Ответ:

HTTP/1.1 201 Created 
Cache-Control: private 
Content-Type: text/xml; charset=utf-8 
Server: Microsoft-IIS/7.5 
X-AspNetMvc-Version: 3.0 
X-AspNet-Version: 4.0.30319 
X-Powered-By: ASP.NET 
Date: Tue, 25 Nov 2014 10:41:33 GMT 
Content-Length: 147 
 
<ApiResponse xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
   <Data>25</Data>
</ApiResponse>

Импорт в Таблицу Данных с расширенными настройками

Запрос:

POST https://api.esv2.com/v2/Api/ImportToDataTableTasks HTTP/1.1 
Accept-Encoding: gzip,deflate 
Content-Type: application/xml;charset=UTF-8 
User-Agent: Jakarta Commons-HttpClient/3.1 
Host: api.esv2.com 
Content-Length: 810 

<ApiRequest xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xs="http://www.w3.org/2001/XMLSchema">
   <ApiKey>Ваш_API-ключ</ApiKey>
   <Data>
     <Source>
       <Url>ftp://ftp.expertsender.com/Lists/table_name.csv</Url>
       <Username>Имя пользователя</Username>
       <Password>Пароль</Password>
     </Source>
     <Target>
       <Name>Тестовый импорт по API</Name>
     </Target>
     <ImportSetup>
       <Mode>Add</Mode>
       <Delimiter>,</Delimiter>
       <Quote>"</Quote>
       <Escape>"</Escape>
       <Comment>|</Comment>
       <Encoding>UTF-8</Encoding>
       <StartingLine>1</StartingLine>
     </ImportSetup>
   </Data>
 </ApiRequest>