Типы данных
При работе через API ELMA365 отправляет запрос к стороннему сервису и получает ответ, содержащий запрошенные данные. API оперирует следующими типами:
Строка
JSON тип: строка
Пример:
{
"key": "example"
}
Число
JSON тип: число
Пример:
{
"key": 10
}
Выбор да/нет
JSON тип: логическое значение
Пример:
{
"key": true
}
Дата/время
JSON тип: строка
Формат - RFC3339
Пример:
{
"key": "2006-01-02T15:04:05Z07:00"
}
Категория
JSON тип: массив объектов
Поля объектов:
- code - код категории (строка)
- name - название категории (строка)
Пример:
{
"key": [ { "code": "example", "name": "Пример"} ]
}
Деньги
JSON тип: объект
Поля объекта:
- cents - значение в минимальной монете (копейка, цент, евроцент) (число)
- currency - валюта (строка)
Пример:
{
"cents": 1000,
"currency": "RUB"
}
Номер телефона
JSON тип: массив объектов
Поля объектов:
- type - тип телефона (строка)
- tel - номер телефона - только значащие символы (строка)
Пример:
{
"key": [ { "type":"home", "tel":"+790000000000" } ]
}
Электронная почта
JSON тип: массив объектов
Поля объектов:
- type - тип почты (строка)
- email - адрес почты, только значащие символы (строка)
Пример:
{
"key": [ { "type":"home", "email":"example@email.com" } ]
}
Изображение
JSON тип: массив строк
Значения - идентификаторы файлов изображений в системе
Пример:
{
"key": [ "c44b66f6-216a-457e-a37e-ea8e373a4b77" ]
}
Файлы
JSON тип: массив строк
Значения - идентификаторы файлов в системе
Пример:
{
"key": [ "c44b66f6-216a-457e-a37e-ea8e373a4b77" ]
}
Работа с файлами в процессах и приложениях
Для добавления временного, только что загруженного файла необходимо передавать объект файла с полями name и hash
Пример:
{
"document":[
{
"name":"file.docx",
"hash":"e2949784-85a9-403e-9aa7-e222b4572082"
}
]
}
Eсли файлов несколько, объекты перечисляются через запятую
Пример:
{
"document":[
{
"name":"file1.docx",
"hash":"e2949784-85a9-403e-9aa7-e222b4572082"
},
{
"name":"file2.docx",
"hash":"120ae172-2ec0-47bd-a923-0de3ca40ee24"
}
]
}
Для добавления уже существующего файла (проинициализированного, находящегося в разделе "Файлы") необходимо передавать идентификатор файла
Пример:
{
"document":[
"444de6ec-84dc-489b-9273-23755860cab4"
]
}
Eсли файлов несколько, id файлов перечисляются через запятую
Пример:
{
"document":[
"ed7bde6a-ae8b-4e39-96a0-985f59bfda19",
"444de6ec-84dc-489b-9273-23755860cab4"
]
}
Приложения при работе с файлами создают копии этих файлов. Редактировать файл нужно внутри приложения (редактирование исходного файла в разделе "Файлы" не изменяет файл в приложении)
ФИО
JSON тип: объект
Поля объекта:
- lastname - фамилия
- firstname - имя
- middlename - отчество
Пример:
{
"key": {
"lastname": "Белозубов",
"firstname": "Сергей",
"middlename": "Львович"
}
}
Ссылка
JSON тип: строка
Пример:
{
"key": "http://site.org"
}
Пользователи
JSON тип: массив строк
Значения - идентификаторы пользователей
Пример:
{
"key": [ "c44b66f6-216a-457e-a37e-ea8e373a4b77" ]
}
Приложение
JSON тип: массив строк
Значения - идентификаторы элементов приложения
Пример:
{
"key": [ "c44b66f6-216a-457e-a37e-ea8e373a4b77" ]
}
Таблица
JSON тип: объект
Поля объекта:
- rows - массив строк. Каждая строка - объект, поля которого определяются при настройке таблицы. Ключи - это коды полей, значения зависит от типа. Если значение колонки задается по формуле, то оно вычисляется автоматически.
- result - объект результатов, поля которого определяются при настройке таблицы. В этот объект попадают только столбцы, для которых результат (значение в нижнем колонтитуле) вычисляется по формуле. Этот объект вычисляется автоматически исходя из настроек колонок.
- view - строчное представление таблицы, сформированное по шаблону. Это представление формируется автоматически.
Пример:
{
"key" : {
"rows": [
{ "good_name" : "product 1", "count" : 10},
{ "good_name" : "product 2", "count" : 20},
],
"result": { "count": 30 },
"view": "Итого: 30 позиций"
}
}