Метод «Поиск альтернативных представлений документа по атрибутам»¶
Endpoint: POST {hostname}/dh-documents-service/api/v1/documents/{id}/versions/{versionId}/renditionSearch
Метод регистрирует токен в сервисе предпросмотра для формирования предпросмотра.
Более подробное описание метода находится в yaml файле «documents_service», который расположен в папке с документацией.
Маппинг параметров запроса
| Входящие параметры | Способ передачи параметров | Требования к заполнению |
|---|---|---|
| id | Path | Идентификатор документа (id), полученный методом GET {hostname}/dh-documents-service/api/v1/documents |
| versionId | Path | Идентификатор версии документа (id), полученный методом GET {hostname}/dh-documents-service/api/v1/documents/{id}/versions |
| baseClass | Body | Базовый класс, по которому и/или по классам которого производится поиск. |
| enrichedDto | Body | Флаг, обозначающий, требуется ли обогащение DTO объектов в результате поиска. Значение по умолчанию: false |
| responseFilterAttributes: · name · id · createdBy |
Body | Выборка атрибутов DTO для возврата в результате поиска. Если не заполнена, возвращается полный DTO |
| group: · objectClass · operands: - code - value - function · operators |
Body | Структура группы, содержащая параметры поискового запроса |
| pageInfo: · page · size · sorts: - code - direction · offset |
Body | Структура пагинации и сортировки |
Пример запроса:
curl --location 'https://docshouse-dev.k8s.lan.lanit.ru/dh-documents-service/api/v1/documents/e65c7375-9586-4ee5-b65e-7c480d60b9c2/versions/08cd9656-4a49-47bf-b168-fe16b2633035/renditionSearch' \
-header 'accept: */*' \
-header 'Content-Type: application/json' \
-data '{
"baseClass": "OBJECT",
"enrichedDto": true,
"responseFilterAttributes": [
"name",
"id",
"createdBy"
],
"group": {
"operands": [
{
"objectClass": "Rendition",
"operands": [
{
"code": "label",
"value": "some_label",
"function": "LIKE"
},
{
"code": "kind",
"value": "ALTERNATIVE",
"function": "LIKE"
}
],
"operators": [
"AND"
]
}
],
"operators": [
"AND",
"OR"
]
},
"pageInfo": {
"page": 0,
"size": 1,
"sorts": [
{
"property": "createdBy",
"direction": "ASC"
}
],
"offset": 0
}
}'