Содержание:

Представление данных: Doczilla Workspaces

Представление данных: System Users

Представление данных: System Users

Представление данных: Doczilla Workspaces

Описание всех атрибутов запросов

Примеры запросов в разрезе по типам действия


Представление: Doczilla Workspaces

$Workspace.description$

Идентификатор представления: ru.doczilla.search.WorkspacesView. Указывается в параметре запроса "request"

Перечень связанных таблиц.

Значения используются в параметре запроса "query":

Значение параметра Наименование таблицы
users System Users
theme Doczilla Themes
user System Users
author System Users
document Doczilla Documents
publisher System Users
editor System Users
share Doczilla Shares
shareCountShare Doczilla Shares
dotx Doczilla Workspaces
drive Doczilla Workspaces

Описание входных параметров действия action="content".

request: ru.doczilla.search.WorkspacesView
session: <session_guid>
$Operations.api.description$
            




Представление: System Users

$Users.title$

Идентификатор представления: ru.doczilla.workspace.table.StatisticsUsers. Указывается в параметре запроса "request"

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

recordId
Guid
$User.recordId$
createdAt
Datetime
format: d.m.Y H:i
$User.createdAt$
modifiedAt
Datetime
format: d.m.Y H:i
$User.modifiedAt$
createdBy
Guid
$User.createdBy$
modifiedBy
Guid
$User.modifiedBy$
login
String
length: 128
$User.login$
firstName
String
length: 128
$User.firstName$
middleName
String
length: 128
$User.middleName$
lastName
String
length: 128
$User.lastName$
comment
String
length: 1,024
$User.comment$
phone
String
length: 128
$User.phone$
email
String
length: 128
$User.email$
banned
Boolean
$User.banned$



Представление: System Users

$Users.title$

Идентификатор представления: ru.doczilla.security.user.Users. Указывается в параметре запроса "request"

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

recordId
Guid
$User.recordId$
createdAt
Datetime
format: d.m.Y H:i
$User.createdAt$
modifiedAt
Datetime
format: d.m.Y H:i
$User.modifiedAt$
createdBy
Guid
$User.createdBy$
modifiedBy
Guid
$User.modifiedBy$
login
String
length: 128
$User.login$
firstName
String
length: 128
$User.firstName$
middleName
String
length: 128
$User.middleName$
lastName
String
length: 128
$User.lastName$
comment
String
length: 1,024
$User.comment$
phone
String
length: 128
$User.phone$
email
String
length: 128
$User.email$
banned
Boolean
$User.banned$



Представление: Doczilla Workspaces

$Workspace.description$

Идентификатор представления: ru.doczilla.workspace.table.Workspace. Указывается в параметре запроса "request"

Перечень связанных таблиц.

Значения используются в параметре запроса "query":

Значение параметра Наименование таблицы
users System Users
theme Doczilla Themes
user System Users
author System Users
document Doczilla Documents
publisher System Users
editor System Users
share Doczilla Shares
shareCountShare Doczilla Shares
dotx Doczilla Workspaces
drive Doczilla Workspaces

Описание входных параметров действия action="content".

request: ru.doczilla.workspace.table.Workspace
session: <session_guid>
$Operations.api.description$
            




Описание всех возможных комбинаций атрибутов при выполнении запросов

Параметры запроса

Наименование параметра Описание
request *required
string
уникальная строка, идентифицирующая представление данных, к которому формируется запрос;
query
string
Обязательно в отдельных случаях, уникальная строка, идентифицирующая запрос в рамках представления данных;
session *required
guid
Обязательно, идентификатор сессии, полученный в ответе на запрос авторизации
action *required
string
Действие запроса, один из вариантов:
login - Авторизация в системе
create - создать запись в базе данных
copy - скопировать запись(создать новую и скопировать все значения полей из исходной записи)
read - прочитать записи из базе данных
update - изменить поля записи в базе данных
destroy - удалить записи из базе данных
export -
report - запустить создание отчета, результатом является файл
preview - загрузить указанный файл в режиме preview (файл на лету конвертируется в PDF)
action - выполнить команду
attach - прикрепить файл к записи
detach - открепить файл от записи
content - опциональное действие для работы с бинарными данными(получить/записать).
            Для каждого представления перечень входных параметров описывается отдельно
start
integer
Опционально, номер первой записи в запрашиваемой выборке (странице) данных
limit
integer
Опционально, количество записей в выборке (странице)
fields
object
Обязательно, если указан query, JSON-массив названий полей запроса в представлении.
Допустимо указание полей из связанных таблиц. Пример: ["recordId", "status.name"]
count
boolean
Опционально, если указано, ответ содержит общее количество записей в выборке
sort
object
Опционально, JSON-массив параметров сортировки выборки, каждый параметр описывается объектом со следующей структурой:
◦ property: <имя поля> — имя поля сортировки (перечень полей определяется представлением);
◦ direction: <направление> — направление сортировки: по возрастанию «asc», либо по убыванию «desc»
filter
object
Опционально, JSON-массив объектов-фильтров, каждый объект-фильтр имеет следующую структуру:
◦ property: <имя поля> — имя поля сортировки (перечень полей определяется представлением);
◦ operator: <оператор> — оператор сравнения, один из:

    -not
    -minus
    -add
    -sub
    -mul
    -div
    -mod
    -and
    -or
    -eq
    -notEq
    -lt
    -gt
    -le
    -ge
    -beginsWith
    -notBeginsWith
    -endsWith
    -notEndsWith
    -contains
    -notContains
    -containsWord
    -notContainsWord
    -isSimilarTo
    -isNotSimilarTo
    -isEmpty
    -isNotEmpty
    -yesterday
    -today
    -tomorrow
    -lastWeek
    -thisWeek
    -nextWeek
    -lastMonth
    -thisMonth
    -nextMonth
    -lastYear
    -thisYear
    -nextYear
    -lastDays
    -nextDays
    -lastHours
    -nextHours
    -isTrue
    -isFalse
◦ value: <значение> — значение, с которым сравнивается поле.
name
string
Обязательно в случаях, при вызове метода [action="action"]. Наименование команды представления. Перчень команд определяется представлением
data
object
Массив объектов-записей представления
values
object
Массив значений по умолчанию объекта. Используется при вызове метода [action="copy"]
data
object
Массив объектов-записей
field
string
Наименование поля. При вызове методов [action="attach|detach"] указывает на поле хранящее файл
columns
object
Массив объектов.
Атрибуты объекта:
"id" - содержит наименование поля представления,
"width" - ширина колонки.
Используется при вызове метода [action="export"]
recordId
string
Идентификатор записи. Используется при вызове методов [action="attach|detach|copy"]
records
object
Массив идентификаторов записей. При вызове метода [action="action"], указывает к каким записям выполнить команду
login
string
Логин пользователя
password
string
MD5 хеш пароля

Ответ запроса

Наименование параметра Описание
success
boolean
Результат обработки запроса — успешно / неуспешно
status
integer
Целочисленный код ошибки (возвращается в случае неуспешной обработки запроса)
server
guid
Идентификатор сервера в формате UUID, сформировавшего ответ (возвращается в случае успешной обработки запроса)
request
string
уникальная строка, идентифицирующая представление данных, к которому формируется запрос;
data
object
Массив объектов-записей представления
info
object
 Объект вида: {messages: [], files: []}.
total
integer
Количество записей в выборке (только для параметра count: true)

Примеры запросов в разрезе по типам действия

Запросы выполняются методом POST на адрес http://127.0.0.1:9080/request.json, в заголовках указывается "content-type: application/x-www-form-urlencoded", или "multipart/form-data".

Запрос авторизации

curl -X POST \
      http://127.0.0.1:9080/request.json \
      -H 'content-type: application/x-www-form-urlencoded' \
      -d 'request=login&password=d41d8cd98f00b204e9800998ecf8427e&login=Admin'

Метод: create

Параметры запроса

{"request":"ru.doczilla.search.WorkspacesView","data":[{}],"session":"00000000-0000-0000-0000-000000000000","action":"create"}

Параметры ответа

{"request":"ru.doczilla.search.WorkspacesView","server":"00000000-0000-0000-0000-000000000000","data":[{}],"success":"true","info":"{}"}

Метод: copy

Параметры запроса

{"recordId":"00000000-0000-0000-0000-000000000000","request":"ru.doczilla.search.WorkspacesView","data":[{}],"session":"00000000-0000-0000-0000-000000000000","action":"copy"}

Параметры ответа

{"request":"ru.doczilla.search.WorkspacesView","server":"00000000-0000-0000-0000-000000000000","data":[{}],"success":"true","info":"{}"}

Метод: read

Параметры запроса

{"filter":[{"expressions":[{"property":"recordId","value":"00000000-0000-0000-0000-000000000000","operator":"eq"}],"logical":"and"}],"request":"ru.doczilla.search.WorkspacesView","session":"00000000-0000-0000-0000-000000000000","start":"0","limit":"200","action":"read","sort":[{"property":"recordId","direction":"asc"}],"fields":[]}

Параметры ответа

{"request":"ru.doczilla.search.WorkspacesView","server":"00000000-0000-0000-0000-000000000000","data":[{}],"success":"true","info":"{}"}

Метод: update

Параметры запроса

{"request":"ru.doczilla.search.WorkspacesView","data":[{}],"session":"00000000-0000-0000-0000-000000000000","action":"update"}

Параметры ответа

{"request":"ru.doczilla.search.WorkspacesView","server":"00000000-0000-0000-0000-000000000000","data":[{}],"success":"true","info":"{}"}

Метод: destroy

Параметры запроса

{"request":"ru.doczilla.search.WorkspacesView","data":[{}],"session":"00000000-0000-0000-0000-000000000000","action":"destroy"}

Параметры ответа

{"request":"ru.doczilla.search.WorkspacesView","server":"00000000-0000-0000-0000-000000000000","success":"true","info":"{}"}

Метод: action

Параметры запроса

{"request":"ru.doczilla.search.WorkspacesView","records":["00000000-0000-0000-0000-000000000000"],"session":"00000000-0000-0000-0000-000000000000","name":"actionName","action":"action"}

Параметры ответа

{"request":"ru.doczilla.search.WorkspacesView","server":"00000000-0000-0000-0000-000000000000","success":"true","info":"{}"}

Метод: export

Параметры запроса

{"filter":[{"expressions":[{"property":"recordId","value":"00000000-0000-0000-0000-000000000000","operator":"eq"}],"logical":"and"}],"request":"ru.doczilla.search.WorkspacesView","columns":[{}],"session":"00000000-0000-0000-0000-000000000000","format":"pdf","action":"export","sort":[{"property":"recordId","direction":"asc"}]}

Параметры ответа

{"request":"ru.doczilla.search.WorkspacesView","server":"00000000-0000-0000-0000-000000000000","success":"true","info":"{}"}