Типы данных

При работе через API система отправляет запрос к стороннему сервису и получает ответ, содержащий запрошенные данные. API оперирует следующими типами:

Строка

JSON тип: строка

Пример:

{
    "key": "example"
}

Число

JSON тип: число

Пример:

{
    "key": 10
}

Выбор «да/нет»

JSON тип: логическое значение

Пример:

{
    "key": true
}

Дата/время

JSON тип: строка

Значение должно быть записано в формате RFC 3339.

Пример:

{
    "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 позиций"
    }  
}