Содержание
Для взаимодействия с сервисом конвертации документов используются POST-запросы. Параметры запроса вводятся в формате JSON в теле запроса. Запросы отправляются на адрес https://documentserver/ConvertService.ashx, где documentserver — это имя сервера, на котором установлен Сервер документов Р7.
В Р7 Document Server до версии 4.2 использовался GET-запрос с параметрами в QueryString.
Параметры запроса и их описание
| Параметр | Описание | Тип | Наличие |
| async | Определяет тип запроса на конвертацю: асинхронный или нет. Поддерживаемые значения:
При использовании асинхронного типа запроса ответ формируется мгновенно. В этом случае для получения результата необходимо отправлять запросы без изменения параметров до завершения конвертации. Значение по умолчанию false. | логический | необязательно |
| codePage | Определяет кодировку файла при конвертации из формата csv или txt. Основные поддерживаемые значения:
Вы можете найти все поддерживаемые значения в этом файле | целое число | необязательно |
| delimiter | Определяет символы-разделители для разделения значений при преобразовании из формата csv. Поддерживаемые значения:
| целое число | необязательно |
| documentLayout | Определяет макет документа, который задает параметры для печати форм в виде pdf-документов или изображений. | объект | необязательно |
| documentLayout.drawPlaceHolders | Определяет, будут ли отображаться заполнители или нет. | логический | необязательно |
| documentLayout.drawFormHighlight | Определяет, будут ли формы выделены или нет. | логический | необязательно |
| documentLayout.isPrint | Определяет, включен или выключен режим печати. Этот параметр используется только для преобразования docx/docxf в pdf. Если этот параметр равен true, флаги drawPlaceHolders и drawFormHighlight используются, как описано выше. Если этот параметр равен false, флаг drawFormHighlight не работает, а параметр drawPlaceHolders позволяет сохранять формы в формате pdf. Значение по умолчанию false. | логический | необязательно |
| documentRenderer | Определяет визуализатор документа при конвертации из pdf, xps, oxps. | объект | необязательно |
| documentRenderer.textAssociation | Определяет режим визуализатора, который может принимать следующие значения:
Значение по умолчанию — plainLine | строковый | необязательно |
| filetype* | Определяет тип файла документа, который необходимо конвертировать. | строковый | обязательно |
| key | Определяет идентификатор документа, используемый для однозначной идентификации файла. | строковый | обязательно |
| outputtype* | Определяет результирующий преобразованный тип документа. Начиная с версии 7.0 вместо расширений можно указывать форматы файлов. Они используются, когда мы заранее не знаем, какое расширение требуется:
| строковый | обязательно |
| password | Определяет пароль для файла документа, если он защищен паролем. | строковый | необязательно |
| region | Определяет формат отображения по умолчанию для валюты, даты и времени при преобразовании из формата электронной таблицы в pdf. Устанавливается с использованием четырехбуквенного кода языка (en-US, fr-FR и т. д.). Значение по умолчанию — en-US. | строковый | необязательно |
| spreadsheetLayout | Определяет настройки для конвертации электронной таблицы в pdf. | объект | необязательно |
| spreadsheetLayout.fitToHeight | Задает высоту преобразованной области, измеряемую в количестве страниц. Значение по умолчанию равно 0. | целое число | необязательно |
| spreadsheetLayout.fitToWidth | Задает ширину преобразованной области, измеряемую в количестве страниц. Значение по умолчанию равно 0. | целое число | необязательно |
| spreadsheetLayout.gridLines | Позволяет включать линии сетки в выходной PDF-файл или нет. Значение по умолчанию равно false. | логический | необязательно |
| spreadsheetLayout.headings | Позволяет включать заголовки в выходной PDF-файл или нет. Значение по умолчанию равно false. | логический | необязательно |
| spreadsheetLayout.ignorePrintArea | Определяет, следует ли игнорировать область печати, выбранную для файла электронной таблицы, или нет. Значение по умолчанию true. | логический | необязательно |
| spreadsheetLayout.margins | Устанавливает поля выходного PDF-файла. | объект | необязательно |
| spreadsheetLayout.margins.bottom | Устанавливает нижнее поле выходного PDF-файла. Значение по умолчанию — 19,1 мм. | строковый | необязательно |
| spreadsheetLayout.margins.left | Устанавливает левое поле выходного PDF-файла. Значение по умолчанию — 17,8 мм. | строковый | необязательно |
| spreadsheetLayout.margins.right | Устанавливает правое поле выходного PDF-файла. Значение по умолчанию — 17,8 мм. | строковый | необязательно |
| spreadsheetLayout.margins.top | Устанавливает верхнее поле выходного PDF-файла. Значение по умолчанию — 19,1 мм. | строковый | необязательно |
| spreadsheetLayout.orientation | Задает ориентацию выходного PDF-файла. Может быть горизонтальный, вертикальный. Значение по умолчанию — вертикальный. | строковый | необязательно |
| spreadsheetLayout.pageSize | Устанавливает размер страницы выходного PDF-файла. | объект | необязательно |
| spreadsheetLayout.pageSize.height | Устанавливает высоту страницы выходного PDF-файла. Значение по умолчанию — 297 мм. | строковый | необязательно |
| spreadsheetLayout.pageSize.width | Устанавливает ширину страницы выходного PDF-файла. Значение по умолчанию — 210 мм. | строковый | необязательно |
| spreadsheetLayout.scale | Позволяет установить масштаб выходного файла PDF. Значение по умолчанию — 100. | целое число | необязательно |
| thumbnail | Определяет настройки миниатюры при указании форматов изображения (bmp, gif, jpg, png) в качестве outputtype. | объект | необязательно |
| thumbnail.aspect | Определяет режим, чтобы подогнать изображение под заданные высоту и ширину. Поддерживаемые значения:
| целое число | необязательно |
| thumbnail.first | Определяет, должны ли миниатюры создаваться только для первой страницы или для всех страниц документа. Если false, будет создан zip-архив, содержащий миниатюры всех страниц. Значение по умолчанию true, | логический | необязательно |
| thumbnail.height | Определяет высоту миниатюры в пикселях. Значение по умолчанию — 100. | целое число | необязательно |
| thumbnail.width | Определяет ширину миниатюры в пикселях. Значение по умолчанию — 100. | целое число | необязательно |
| title | Определяет конвертируемое имя файла. | строковый | необязательно |
| token | Определяет зашифрованную подпись, добавленную в конфигурацию сервера документов в виде токена. | строковый | требуется по конфигурации |
| url | Определяет абсолютный URL-адрес документа, который необходимо преобразовать. Обязательно добавляйте токен при использовании локальных ссылок. В противном случае произойдет ошибка. | строковый | обязательно |
* — в таблицах ниже вы можете увидеть возможность конвертации ваших документов в наиболее известные форматы файлов, где столбец Input format соответствует значениям параметра filetype и параметра outputtype.
Форматы файлов текстовых документов
| Формат ввода | Выходной формат | |||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| bmp | docm | docx | docxf | dotm | dotx | epub | fb2 | gif | html | jpg | odt | ott | pdfa | png | rtf | txt | ||
| djvu | ||||||||||||||||||
| doc | ||||||||||||||||||
| docm | ||||||||||||||||||
| docx | ||||||||||||||||||
| docxf | ||||||||||||||||||
| dot | ||||||||||||||||||
| dotm | ||||||||||||||||||
| dotx | ||||||||||||||||||
| epub | ||||||||||||||||||
| fb2 | ||||||||||||||||||
| fodt | ||||||||||||||||||
| htm | ||||||||||||||||||
| html | ||||||||||||||||||
| mht | ||||||||||||||||||
| mhtml | ||||||||||||||||||
| odt | ||||||||||||||||||
| ott | ||||||||||||||||||
| oxps | ||||||||||||||||||
| rtf | ||||||||||||||||||
| stw | ||||||||||||||||||
| sxw | ||||||||||||||||||
| txt | ||||||||||||||||||
| wps | ||||||||||||||||||
| wpt | ||||||||||||||||||
| xml | ||||||||||||||||||
| xps | ||||||||||||||||||
Форматы файлов электронных таблиц
| Формат ввода | Выходной формат | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| bmp | csv | gif | jpg | ods | ots | pdfa | png | xlsm | xlsx | xltm | xltx | ||
| csv | |||||||||||||
| et | |||||||||||||
| ett | |||||||||||||
| fods | |||||||||||||
| ods | |||||||||||||
| ots | |||||||||||||
| sxc | |||||||||||||
| xls | |||||||||||||
| xlsb | |||||||||||||
| xlsm | |||||||||||||
| xlsx | |||||||||||||
| xlt | |||||||||||||
| xltm | |||||||||||||
| xltx | |||||||||||||
| xml | |||||||||||||
Форматы файлов презентаций
| Формат ввода | Выходной формат | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| bmp | gif | jpg | odp | otp | pdfa | png | potm | potx | ppsm | ppsx | pptm | pptx | ||
| dps | ||||||||||||||
| dpt | ||||||||||||||
| fodp | ||||||||||||||
| odp | ||||||||||||||
| otp | ||||||||||||||
| pot | ||||||||||||||
| potm | ||||||||||||||
| potx | ||||||||||||||
| pps | ||||||||||||||
| ppsm | ||||||||||||||
| ppsx | ||||||||||||||
| ppt | ||||||||||||||
| pptm | ||||||||||||||
| pptx | ||||||||||||||
| sxi | ||||||||||||||
{
"async": false,
"filetype": "docx",
"key": "Khirz6zTPdfd7",
"outputtype": "pdf",
"title": "Example Document Title.docx",
"url": "https://example.com/url-to-example-document.docx"
}Где example.com — это имя сервера, на котором установлены менеджер документов и служба хранения документов. Дополнительные сведения о взаимодействии клиент-сервер службы Сервера документов см. в разделе как это работаетОбразец объекта JSON, отправленного в службу конвертации документов, которая используется для преобразования защищенного паролем файла из формата docx в формат pdf
{
"async": false,
"filetype": "docx",
"key": "Khirz6zTPdfd7",
"outputtype": "pdf",
"password": "123456",
"title": "Example Document Title.docx",
"url": "https://example.com/url-to-example-document.docx"
}Образец объекта JSON, отправленного в службу конвертации документов, используемого для создания миниатюры файла png в формате docx
{
"filetype": "docx",
"key": "Khirz6zTPdfd7",
"outputtype": "png",
"thumbnail": {
"aspect": 0,
"first": true,
"height": 150,
"width": 100
},
"title": "Example Document Title.docx",
"url": "https://example.com/url-to-example-document.docx"
}Образец объекта JSON, отправленного в службу конвертации документов, которая используется для преобразования файла электронной таблицы в формат pdf.
{
"filetype": "xlsx",
"key": "Khirz6zTPdfd7",
"outputtype": "pdf",
"region": "en-US",
"spreadsheetLayout": {
"ignorePrintArea": true,
"orientation": "portrait",
"fitToWidth": 0,
"fitToHeight": 0,
"scale": 100,
"headings": false,
"gridLines": false,
"pageSize": {
"width": "210mm",
"height": "297mm"
},
"margins": {
"left": "17.8mm",
"right": "17.8mm",
"top": "19.1mm",
"bottom": "19.1mm"
}
},
"title": "Example Document Title.docx",
"url": "https://example.com/url-to-example-spreadsheet.xlsx"
}Образец объекта JSON содержит веб-токен JSON, отправленный в службу конвертации документов, используемую для преобразования файла из формата docx в формат pdf.
{
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJmaWxldHlwZSI6ImRvY3giLCJrZXkiOiJLaGlyejZ6VFBkZmQ3Iiwib3V0cHV0dHlwZSI6InBkZiIsInRpdGxlIjoiRXhhbXBsZSBEb2N1bWVudCBUaXRsZS5kb2N4IiwidXJsIjoiaHR0cDovL2V4YW1wbGUuY29tL3VybC10by1leGFtcGxlLWRvY3VtZW50LmRvY3gifQ.U-YAfuuy7clWjn-xOncfJ-sxVG5DlcYn0AOzJYkoR0M"
}Где example.com — это имя сервера, на котором установлены менеджер документов и служба хранения документов. Дополнительные сведения о взаимодействии клиент-сервер службы Сервера документов см. в разделе как это работает
Параметры ответа и их описание
Результат запроса возвращается в формате XML. Для получения ответа в формате JSON необходимо указать заголовок Accept со значением application/json в HTTP-запросе (доступно с версии 4.3). При формировании ссылки на результирующий файл используется то же имя сервера, на которое был сделан запрос на конвертацию.
| Параметры | Описание | Тип | Пример |
| endConvert | Определяет, завершена конвертация или нет. | логический | true |
| error | Определяет ошибку, возникшую во время конвертации. Возможные коды ошибок можно найти здесь. | целое число | -3 |
| fileType | Определяет расширение конвертируемого файла. | строковый | «docm» |
| fileUrl | Определяет ссылку на конвертируемый документ. Этот параметр будет получен только в том случае, если для параметра endConvert установлено значение true. | строковый | «https://documentserver/url-to-converted-document.pdf» |
| percent | Определяет процент конвертирования файла. Если для параметра endConvert задано значение true, процент равен 100. | целое число | 100 |
<?xml version="1.0" encoding="utf-8"?>
<FileResult>
<EndConvert>True</EndConvert>
<FileType>docm</FileType>
<FileUrl>https://documentserver/url-to-converted-document.pdf</FileUrl>
<Percent>100</Percent>
</FileResult>При формировании ссылки на результирующий файл используется то же имя сервера, на которое был сделан запрос на конвертацию.
{
"endConvert": true,
"fileType": "docm",
"fileUrl": "https://documentserver/url-to-converted-document.pdf",
"percent": 100
}<?xml version="1.0" encoding="utf-8"?>
<FileResult>
<EndConvert>False</EndConvert>
<FileType></FileType>
<FileUrl></FileUrl>
<Percent>95</Percent>
</FileResult>{
"endConvert": false,
"percent": 95
}<?xml version="1.0" encoding="utf-8"?>
<FileResult>
<Error>-3</Error>
</FileResult>{
"error": -3
}| Код ошибки | Описание |
| -1 | Неизвестная ошибка |
| -2 | Ошибка тайм-аута конвертации. |
| -3 | Ошибка преобразования. |
| -4 | Ошибка при загрузке файла документа для конвертации. |
| -5 | Неправильный пароль |
| -6 | Ошибка при доступе к базе данных результатов конвертации. |
| -7 | Ошибка ввода. |
| -8 | Недействительный токен. |
