Navbar

Аудит

Аудит

Сервис МойСклад накапливает сведения о всех событиях в системе. Эта часть сервиса называется аудит, а накопленные сведения - событиями аудита. Изменения по конкретной сущности доступны пользователям при наличии прав на просмотр.

Основными сущностями в аудите JSON API являются контексты и события. События содержат подробную информацию о произошедших изменениях конкретной сущности или операции, например, изменение значения поля. Контекстом называются одно или несколько связанных событий, например, массовое обновление товаров. События отражают конкретные произошедшие изменения, связанные с одной сущностью, контекст же содержит только общую информацию событий, относящихся к нему.

Пользователь может получить подробную информацию об изменениях в системе через JSON API двумя способами:

Для просмотра общей ленты аудита через JSON API пользователь может запросить список контекстов, которые будут содержать общую информацию об изменениях, произошедших в системе, а также ссылку на связные с ними события. Для просмотра подробной информации по отдельному контексту, необходимо запросить события по конкретному контексту. В ответе пользователю будет содержаться детальная информация об изменениях сущности, произошедших в рамках данного обновления в системе, в специальном формате diff

Для того, чтобы получить события, связанные с конкретной сущностью, необходимо воспользоваться запросом событий по сущности. Ответ будет содержать список событий, относящихся к данной сущности или операции, где в специальном поле diff будут отражены подробные изменения полей сущности или операции.

Контексты

В аудите под контекстом подразумевается одно или несколько связанных событий, например, массовое обновление товаров. События отражают конкретные произошедшие изменения, например, изменение значения поля. Контекст же содержит только общую информацию событий, относящихся к нему.

Атрибуты сущности
Название Тип Описание
entityType Enum Название сущности (поле присутствует, только если оно одинаково у всех Событий в рамках данного Контекста)
Обязательное при ответе Только для чтения
eventType Enum Действие Событий (поле присутствует, только если оно одинаково у всех Событий в рамках данного Контекста)
Обязательное при ответе Только для чтения
events Array(Object) Список методанных Событий аудита
Обязательное при ответе Только для чтения
id UUID ID Контекста
Обязательное при ответе Только для чтения
info String(255) Краткое описание
Только для чтения
meta Meta Метаданные сущности Контекста
Обязательное при ответе Только для чтения
moment DateTime Дата изменения
Обязательное при ответе Только для чтения
objectCount Int количество измененных объектов
Обязательное при ответе Только для чтения
objectType Enum Тип сущностей, с которыми связанно данное изменение. Поле присутствует только для entityType = entitysettings или statesettings или templatesettings
Обязательное при ответе
source Enum Тип изменения
Обязательное при ответе Только для чтения
supportAccess Boolean Был ли доступ произведен поддержкой от имени пользователя. Флаг отсутствует, если значение false
Обязательное при ответе Только для чтения
uid String(255) Логин Сотрудника
Обязательное при ответе Только для чтения

Возможные значение параметра source преставлены ниже:

Значение параметра source Описание
registration Регистрация аккаунта
clearrecyclebin Автоматическая очистка корзины
combine Объединение
connectors Синхронизация с ИМ
copy Копирование
emailsend Отправка сообщения
evotor Синхронизация с Эвотор
export Экспорт
exportediclient1c Экспорт в 1С Клиент ЭДО
import Импорт
import1c Импорт из 1С
importAlfabank Импорт из Альфа-Банка
importModulebank Импорт из Модульбанка
importTinkoffbank Импорт из Тинькофф Банка
importTochkabank Импорт из Точка Банка
importediclient1c Импорт в 1С Клиент ЭДО
loginlogout Вход или выход из МоегоСклада
phone-1.0 Phone API
posapi POS API
remap-1.0 JSON API 1.0
remap-1.1 JSON API 1.1
remap-1.2 JSON API 1.2
restapi REST API
retail Точка продаж
app Все действия

Возможные значение параметров eventType и entityType приведены в разделе Фильтры

Получить Контексты

Запрос всех изменений. Результат: Объект JSON, включающий в себя поля:

Название Тип Описание
meta Meta Метаданные о выдаче,
context Meta Метаданные о сотруднике, выполнившем запрос.
rows Array(Object) Массив JSON объектов, представляющих собой изменения.

Параметры

Параметр Описание
limit number (optional) Default: 25 Example: 25 Максимальное количество сущностей для извлечения.Допустимые значения 1 - 100.
offset number (optional) Default: 0 Example: 40 Отступ в выдаваемом списке сущностей.
filter string (optional) Example: source=jsonapi Подробное описание параметра в разделе Фильтрация выборки с помощью параметра filter Атрибуты фильтрации для Контекстов аудита представлены в разделе Фильтры

Получить Контексты c фильтрацией

Параметры

Параметр Описание
filter string (optional) Example: filter=entityType=customerorder фильтр по типу сущности

Пример запроса с фильтрацией контекстов по типу "заказ покупателя" https://api.moysklad.ru/api/remap/1.2/audit?filter=entityType=customerorder

События

События аудита содержат подробную информацию о произошедших изменениях, например, изменение значения поля.

Типы Событий

События делятся на несколько типов, начиная от аудита создания сущности и заканчивая аудитом печати, и состоят из сведений о времени события и произошедших во время этого события изменениях. Различные типы событий отличаются друг от друга форматом поля diff, подробнее о котором ниже.

Атрибуты сущности

Название Тип Описание
additionalInfo String(4096) Дополнительная информация о Событии
Только для чтения
audit Enum Метаданные контекста
Обязательное при ответе Только для чтения
diff Object Изменения, произошедшие в Событии, в специальном формате diff, описанном в разделе Формат поля diff
Обязательное при ответе Только для чтения
entity Meta Метаданные сущности. Не будет выводиться только для товаров, услуг, модификаций, комплектов удаленных до 20.08.2017
Только для чтения
entityType Enum Название сущности
Обязательное при ответе Только для чтения
eventType Enum Действие События
Обязательное при ответе Только для чтения
moment DateTime Время создания события
Обязательное при ответе Только для чтения
name String(255) Имя сущности
Обязательное при ответе Только для чтения
objectCount Int количество измененных объектов
Обязательное при ответе Только для чтения
objectType Enum Тип сущностей, с которыми связанно данное изменение. Поле присутствует только для entityType = entitysettings или statesettings или templatesettings
Обязательное при ответе
source Enum Тип изменения
Обязательное при ответе Только для чтения
supportAccess Boolean Был ли доступ произведен поддержкой от имени пользователя. Флаг отсутствует, если значение false
Обязательное при ответе Только для чтения
uid String(255) Логин Сотрудника
Обязательное при ответе Только для чтения

Формат поля diff

В данном поле отображены изменения полей сущности, произошедшие в Событии.

Сведения об изменениях в полях сущностей отображаются по всем полям, включая те, к которым нет доступа через JSON API. Для полей, используемых в JSON API для сущностей и документов, название атрибута сущности будет совпадать с названием соответствующего поля, описанного в разделе для данной сущности или документа.

Ниже приведены возможные форматы поля diff для разных типов Событий. Для событий создания сущности поле diff будет отсутствовать.

Событие регистрации

Название Тип Описание
account String(255) Название аккаунта
Обязательное при ответе Только для чтения
country String(255) Конфигурация аккаунта (страна)
Обязательное при ответе Только для чтения

События публикации документов

Название Тип Описание
templateName String(255) Название шаблона
Обязательное при ответе Только для чтения
publicationHref URL Ссылка на публикацию
Обязательное при ответе Только для чтения

События отправки писем

Название Тип Описание
senderEmail String(255) Почта отправителя письма
Обязательное при ответе Только для чтения
targetEmail String(255) Почта получателя письма
Обязательное при ответе Только для чтения
subjectEmail String(255) Тема письма
Обязательное при ответе Только для чтения
text String(255) Текст письма
Обязательное при ответе Только для чтения

События удаления сущностей

Название Тип Описание
attributeName String(255) Название атрибута сущности
Обязательное при ответе Только для чтения
oldValue Boolean Значение атрибута до удаления
Обязательное при ответе Только для чтения

События обновления сущностей, перемещения/восстановления из корзины, перемещение/восстановление из архива

Название Тип Описание
attributeName String(255) Название атрибута сущности
Обязательное при ответе Только для чтения
oldValue Boolean Значение атрибута до удаления
Обязательное при ответе Только для чтения
newValue Boolean Значение атрибута после обновления
Обязательное при ответе Только для чтения

Получить События по Контексту

Запрос на получение событий Контекста с указанным id. Результат: Объект JSON, включающий в себя поля:

Название Тип Описание
meta Meta Метаданные о выдаче,
context Meta Метаданные о сотруднике, выполнившем запрос.
rows Array(Object) Массив JSON объектов, представляющих собой события.

Параметры

Параметр Описание
id string (required) Example: 7944ef04-f831-11e5-7a69-971500188b19 id Контекста.

Получить События по Сущности

Запрос на получение событий по сущности с указанным id. Результат: Объект JSON, включающий в себя поля:

Название Тип Описание
meta Meta Метаданные о выдаче,
context Meta Метаданные о сотруднике, выполнившем запрос.
rows Array(Object) Массив JSON объектов, представляющих собой события.

Параметры

Параметр Описание
id string (required) Example: 7944ef04-f831-11e5-7a69-971500188b19 id сущности.
type string (required) Example: product тип сущности.

Фильтры

В JSON API сервиса МойСклад предусмотрена возможность фильтрации Контекстов аудита с помощью url параметр filter. Подробнее про данный параметр можно посмотреть в разделе Фильтрация выборки с помощью параметра filter Фильтрация может осуществляться по полям, описанным ниже.

Атрибуты сущности

Допустимые операторы для фильтрации по атрибуту moment : ['>=', '<=']

Формат строки : ГГГГ-ММ-ДД ЧЧ:ММ:СС[.ммм], Часовой пояс: MSK (Московское время). Минимальное значение: 1970-01-01 03:00:00. Максимальное значение даты также ограничено.

Формат строки : href

Значение параметра eventType Описание
registration Регистрация
bulkoperation Массовая операция
closepublication Удаление публикации
create Создание сущностей
delete Удаление сущностей
openpublication Создание публикации
print Печать документа
puttoarchive Помещение в архив
puttorecyclebin Помещение в корзину
replacetoken Смена токена для Точки продаж
restorefromarchive Извлечение из архива
restorefromrecyclebin Извлечение из корзины
sendemailfromentity Отправка письма
update Изменение сущностей
Значение параметра source Описание
registration Регистрация аккаунта
clearrecyclebin Автоматическая очистка корзины
combine Объединение
connectors Синхронизация с ИМ
copy Копирование
emailsend Отправка сообщения
evotor Синхронизация с Эвотор
export Экспорт
exportediclient1c Экспорт в 1С Клиент ЭДО
import Импорт
importediclient1c Импорт в 1С Клиент ЭДО
jsonapi JSON API (remap-1.0, remap-1.1, remap-1.2)
loginlogout Вход или выход из МоегоСклада
phone-1.0 Phone API
posapi POS API
restapi REST API
retail Точка продаж
scriptor Работа со сценариями
Значение параметра entityType Описание
accountrole Роль
amiroconnectorsettings Настройка синхронизации (Amiro)
cmlconnectorsettings Настройка синхронизации (CML)
crptcancellation Списание кодов маркировки
crptdemand Отгрузка маркированной продукции
crptpackagecreation Формирование упаковки
crptpackagedisaggregation Расформирование упаковки
crptpackageitemremoval Изъятие из упаковки
ecwidconnectorsettings Настройка синхронизации (Ecwid)
entitysettings Настройки сущностей
evotorsetting Настройка обмена с Эвотор
processingplanfolder Группа техкарт
scripttemplate Сценарий
smartwebconnectorsettings Настройка синхронизации (SmartWeb)
statesettings Настройки статусов
templatesettings Настройки шаблонов
user Пользователь
usersettings Настройки пользователя
vkconnectorsettings Настройка синхронизации (Вконтакте)
yandexconnectorsettings Настройка синхронизации (Яндекс.Маркет)
ymlconnectorsettings Настройка синхронизации (YML)

Также можно отфильтровать контексты аудита по пользовательскому справочнику. Для этого в качестве параметра entityType необходимо передать href пользовательского справочника. Пример: https://api.moysklad.ru/api/remap/1.2/entity/customentity/eaacabaf-2655-11e6-8a84-bae500000045

Получить Фильтры

Запрос всех фильтров аудита, доступных пользователю. Результат: Объект JSON, включающий в себя поля:

Название Описание
eventType действия, по которым могут быть отфильтрованы сущности аудита
source типы действий, по которым могут быть отфильтрованы сущности аудита
entityType названия сущностей, по которым могут быть отфильтрованы сущности аудита