Перейти к основному содержимому

Evolutrix CRM Rest API | Шаблоны документов (1.0.0)

Download OpenAPI specification:Download

Описание Rest API — методов для взаимодействия с шаблонами документов.

Шаблоны документов

Методы для работы с шаблонами документов (CRUD, детекция секций, автогенерация).

config

Возвращает конфигурацию модуля: доступные типы секций, действия, лимиты.

Требуются права доступа:

  • DOC_TEMPLATE_SHOW
Authorizations:
BearerToken

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    },
  • "message": "ОК"
}

index

Возвращает список шаблонов документов с пагинацией.

Требуются права доступа:

  • DOC_TEMPLATE_SHOW
Authorizations:
BearerToken
query Parameters
page
integer

Номер страницы (для постраничной пагинации).

cursor
string

Курсор (для курсорной пагинации).

sort_by
string
Default: "id"
Enum: "id" "title" "created_at"

Поле сортировки.

descending
boolean

Флаг обратного направления сортировки.

per_page
integer
Default: 10
Enum: 10 25 50

Кол-во отображаемых записей на странице.

search
string

Произвольный текстовый запрос для поиска записей.

status
string
Enum: "draft" "published"

Фильтр по статусу шаблона (draft, published).

type_id
integer

Фильтр по ID типа шаблона.

types
Array of integers

Массив ID типов для фильтрации.

has_tags
Array of integers

Массив ID меток, которые ДОЛЖНЫ быть у шаблона.

Responses

Response samples

Content type
application/json
Example
{
  • "success": true,
  • "data": {
    },
  • "message": "ОК"
}

store

Создаёт новый шаблон документа. Файл .docx обязателен при публикации.

Требуются права доступа:

  • DOC_TEMPLATE_STORE
Authorizations:
BearerToken
Request Body schema: multipart/form-data
required

Данные создаваемого шаблона

file
string <binary>

Файл шаблона (.docx)

status
string
Enum: "draft" "published"

Статус (draft, published)

title
string

Название шаблона (обязательно при публикации)

description
string

Описание шаблона

type_id
integer

ID типа шаблона

tag_ids
Array of integers

Массив ID меток

Array of objects
default_action
string
Enum: "download" "save_to_storage" "save_and_download"

Действие по умолчанию

save_to_storage
boolean

Сохранять ли на внешний диск

save_path
string

Путь сохранения

default_file_type_id
integer

ID типа файла по умолчанию

default_file_tag_ids
Array of integers

Массив ID меток файла

Array of objects

Responses

Request samples

Content type
multipart/form-data
{
  "title": "Договор оказания услуг",
  "status": "draft",
  "file": "template.docx"
}

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    },
  • "message": "ОК"
}

my draft

Возвращает черновик текущего пользователя. 404 если черновика нет.

Требуются права доступа:

  • DOC_TEMPLATE_SHOW
Authorizations:
BearerToken

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    },
  • "message": "ОК"
}

detect sections

Детекция разделов по плейсхолдерам ${section.key} в .docx файле.

Требуются права доступа:

  • DOC_TEMPLATE_STORE
Authorizations:
BearerToken
Request Body schema: multipart/form-data
required

Загрузка .docx файла для анализа

file
required
string <binary>

Файл .docx для анализа (макс. 5MB)

Responses

Request samples

Content type
multipart/form-data
{
  "file": "template.docx"
}

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    },
  • "message": "ОК"
}

auto generate

Автогенерация шаблона: анализ загруженного .docx, распознавание полей и секций.

Требуются права доступа:

  • DOC_TEMPLATE_STORE
Authorizations:
BearerToken
Request Body schema: multipart/form-data
required

Загрузка .docx файла для анализа

file
required
string <binary>

Файл .docx для анализа (макс. 5MB)

Responses

Request samples

Content type
multipart/form-data
{
  "file": "template.docx"
}

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    },
  • "message": "ОК"
}

auto generate save

Сохранение автогенерированного шаблона как нового шаблона.

Требуются права доступа:

  • DOC_TEMPLATE_STORE
Authorizations:
BearerToken
Request Body schema: application/json
required

Данные для сохранения автогенерированного шаблона

temp_file_path
required
string

Путь к temp-файлу автогенерации

title
required
string

Название шаблона

description
string

Описание шаблона

Array of objects
default_action
string
Enum: "download" "save_to_storage" "save_and_download"

Действие по умолчанию

Array of objects

Responses

Request samples

Content type
application/json
{
  • "temp_file_path": "auto_generated/abc123.docx",
  • "title": "Автогенерированный шаблон"
}

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    },
  • "message": "ОК"
}

auto generate download

Скачивание обработанного .docx файла автогенерации.

Требуются права доступа:

  • DOC_TEMPLATE_STORE
Authorizations:
BearerToken

Responses

Response samples

Content type
application/vnd.openxmlformats-officedocument.wordprocessingml.document

В ответе будет возвращён word-файл

docProps/PK.@j24.docProps/app.xml.#PBwR.{nO&.docProps/core.xml}...............

auto generate cleanup

Удаление temp-файла автогенерации (при закрытии диалога без сохранения).

Authorizations:
BearerToken

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": true,
  • "message": "ОК"
}

available variables

Возвращает список доступных переменных по указанным секциям.

Требуются права доступа:

  • DOC_TEMPLATE_SHOW
Authorizations:
BearerToken

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    },
  • "message": "ОК"
}

preview variables

Возвращает превью значений переменных для указанного клиента/события.

Требуются права доступа:

  • DOC_TEMPLATE_SHOW
Authorizations:
BearerToken
Request Body schema: application/json
required

Данные для превью значений переменных

required
Array of objects

Секции шаблона

client_id
integer

ID клиента для подстановки

event_id
integer

ID события для подстановки

Responses

Request samples

Content type
application/json
{
  • "sections": [
    ],
  • "client_id": 1,
  • "event_id": 5
}

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    },
  • "message": "ОК"
}

show

Возвращает данные шаблона документа.

Требуются права доступа:

  • DOC_TEMPLATE_SHOW
Authorizations:
BearerToken
path Parameters
docTemplateId
required
integer

Идентификатор шаблона документа

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    },
  • "message": "ОК"
}

update

Обновляет шаблон документа. Файл .docx обязателен при публикации.

Требуются права доступа:

  • DOC_TEMPLATE_STORE
Authorizations:
BearerToken
path Parameters
docTemplateId
required
integer

Идентификатор шаблона документа

Request Body schema: multipart/form-data
required

Данные обновляемого шаблона

file
string <binary>

Новый файл шаблона (.docx, необязательный)

status
string
Enum: "draft" "published"

Статус (draft, published)

title
string

Название шаблона

description
string

Описание шаблона

type_id
integer

ID типа шаблона

tag_ids
Array of integers
Array of objects
default_action
string
Enum: "download" "save_to_storage" "save_and_download"

Действие по умолчанию

save_to_storage
boolean
save_path
string
default_file_type_id
integer
default_file_tag_ids
Array of integers
Array of objects

Responses

Request samples

Content type
multipart/form-data
{
  "title": "Договор оказания услуг (обновлённый)",
  "status": "published"
}

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    },
  • "message": "ОК"
}

destroy

Удаляет шаблон документа (soft delete).

Требуются права доступа:

  • DOC_TEMPLATE_DESTROY
Authorizations:
BearerToken
path Parameters
docTemplateId
required
integer

Идентификатор шаблона документа

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    },
  • "message": "ОК"
}

duplicate

Дублирует шаблон документа.

Требуются права доступа:

  • DOC_TEMPLATE_STORE
Authorizations:
BearerToken
path Parameters
docTemplateId
required
integer

Идентификатор шаблона документа

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    },
  • "message": "ОК"
}

download file

Скачивание исходного .docx файла шаблона.

Требуются права доступа:

  • DOC_TEMPLATE_SHOW
Authorizations:
BearerToken
path Parameters
docTemplateId
required
integer

Идентификатор шаблона документа

Responses

Response samples

Content type
application/vnd.openxmlformats-officedocument.wordprocessingml.document

В ответе будет возвращён word-файл

docProps/PK.@j24.docProps/app.xml.#PBwR.{nO&.docProps/core.xml}...............

custom placeholder contexts

Контекстные строки для custom-плейсхолдеров из .docx шаблона.

Требуются права доступа:

  • DOC_TEMPLATE_SHOW
Authorizations:
BearerToken
path Parameters
docTemplateId
required
integer

Идентификатор шаблона документа

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    },
  • "message": "ОК"
}

Сгенерированные документы

Методы для генерации документов и управления историей генерации.

generate

Генерация документа по шаблону. В зависимости от действия (action) возвращает JSON или binary файл.

Требуются права доступа:

  • DOC_TEMPLATE_GENERATE
Authorizations:
BearerToken
Request Body schema: application/json
required

Данные для генерации документа

template_id
required
integer

ID шаблона

client_id
required
integer

ID клиента

event_id
integer

ID календарного события

action
required
string

Действие (download, save_to_storage, save_and_download)

file_type_id
integer

ID типа файла (для сохранения в хранилище)

file_tag_ids
Array of integers

Массив ID меток файла

Array of objects

Значения пользовательских переменных

event_user_id
integer

ID сотрудника события

save_path
string

Путь сохранения на внешнем диске

Responses

Request samples

Content type
application/json
{
  • "template_id": 1,
  • "client_id": 14,
  • "action": "download"
}

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    },
  • "message": "ОК"
}

preview

Генерирует превью документа (не сохраняется, отдаётся как download).

Требуются права доступа:

  • DOC_TEMPLATE_GENERATE
Authorizations:
BearerToken
Request Body schema: application/json
required

Данные для превью документа

template_id
required
integer

ID шаблона

client_id
required
integer

ID клиента

event_id
integer

ID календарного события

event_user_id
integer

ID сотрудника события

Array of objects

Значения пользовательских переменных

Responses

Request samples

Content type
application/json
{
  • "template_id": 1,
  • "client_id": 14
}

Response samples

Content type
application/vnd.openxmlformats-officedocument.wordprocessingml.document

В ответе будет возвращён word-файл

docProps/PK.@j24.docProps/app.xml.#PBwR.{nO&.docProps/core.xml}...............

index

Возвращает историю сгенерированных документов клиента с пагинацией.

Требуются права доступа:

  • DOC_TEMPLATE_SHOW
Authorizations:
BearerToken
query Parameters
client_id
required
integer

Идентификатор клиента (обязательный).

page
integer

Номер страницы (для постраничной пагинации).

sort_by
string
Default: "created_at"
Enum: "created_at" "original_file_name" "action_taken"

Поле сортировки.

descending
boolean

Флаг обратного направления сортировки.

per_page
integer
Default: 10
Enum: 10 25 50 100

Кол-во отображаемых записей на странице (макс. 100).

search
string

Произвольный текстовый запрос для поиска записей.

types
Array of integers

Массив ID типов для фильтрации.

has_tags
Array of integers

Массив ID меток.

Responses

Response samples

Content type
application/json
Example
{
  • "success": true,
  • "data": {
    },
  • "message": "ОК"
}

show

Возвращает данные сгенерированного документа. При параметре ?download — скачивает файл с Яндекс Диска.

Требуются права доступа:

  • DOC_TEMPLATE_SHOW
Authorizations:
BearerToken
path Parameters
generatedDocumentId
required
integer

Идентификатор сгенерированного документа

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    },
  • "message": "ОК"
}

destroy

Удаляет сгенерированный документ (soft delete).

Требуются права доступа:

  • DOC_TEMPLATE_DESTROY
Authorizations:
BearerToken
path Parameters
generatedDocumentId
required
integer

Идентификатор сгенерированного документа

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    },
  • "message": "ОК"
}

Сохранённые формулы

Методы для управления сохранёнными формулами шаблонизатора.

index

Возвращает список сохранённых формул тенанта.

Требуются права доступа:

  • DOC_TEMPLATE_SHOW
Authorizations:
BearerToken

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    },
  • "message": "ОК"
}

store

Создаёт новую сохранённую формулу.

Требуются права доступа:

  • DOC_TEMPLATE_STORE
Authorizations:
BearerToken
Request Body schema: application/json
required

Данные сохранённой формулы

title
required
string

Название формулы (макс. 255)

formula
required
string

Тело формулы (макс. 2000)

Responses

Request samples

Content type
application/json
{
  • "title": "Разница дат",
  • "formula": "date_diff(${client.birthday}, ${event.date}, d)"
}

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    },
  • "message": "ОК"
}

update

Обновляет сохранённую формулу.

Требуются права доступа:

  • DOC_TEMPLATE_STORE
Authorizations:
BearerToken
path Parameters
savedFormulaId
required
integer

Идентификатор сохранённой формулы

Request Body schema: application/json
required

Данные сохранённой формулы

title
required
string

Название формулы (макс. 255)

formula
required
string

Тело формулы (макс. 2000)

Responses

Request samples

Content type
application/json
{
  • "title": "Разница дат",
  • "formula": "date_diff(${client.birthday}, ${event.date}, d)"
}

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    },
  • "message": "ОК"
}

destroy

Удаляет сохранённую формулу.

Требуются права доступа:

  • DOC_TEMPLATE_STORE
Authorizations:
BearerToken
path Parameters
savedFormulaId
required
integer

Идентификатор сохранённой формулы

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": true,
  • "message": "ОК"
}