Триггеры в Albato используются как способ получения данных из Агбис и передачи их в другие сервисы связок.
Их настройка в целом идентична запросам из настройки авторизации, но есть несколько нюансов. В качестве общего примера рассмотрим настройку на этой команде
Здесь обычно нужно добавить два поля - startDate и stopDate (название можно поменять), для того, чтобы задать промежуток, за который нужно получить данные. Тип данных - обычно string (см. документацию по команде).
Если в данных нам понадобятся массивы, для них нужно завести "Строковые секции" (на примере этой команды).
В ответе команды есть массивы Srvices и Payments - для них например и заведем секции 
Уже внутри секции добавляются поля, которые используются в ней - по аналогии с обычными полями. 
StopDate = new Date();
StopDate.setHours(StopDate.getHours() + parseInt(credential.timezone, 10));
const StartDate = new Date(StopDate.getTime() - 5 * 60 * 1000);
// Функция для форматирования даты в "DD.MM.YYYY HH:mm"
function formatDate(date) {
const day = String(date.getDate()).padStart(2, '0');
const month = String(date.getMonth() + 1).padStart(2, '0'); // месяцы 0-11
const year = date.getFullYear();
const hours = String(date.getHours()).padStart(2, '0');
const minutes = String(date.getMinutes()).padStart(2, '0');
return `${day}.${month}.${year} ${hours}:${minutes}`;
}
// Форматируем обе даты
data.stopDate = formatDate(StopDate);
data.startDate = formatDate(StartDate);



function decodeData(item) {
if (Array.isArray(item)) {
// Если это массив, обрабатываем каждый элемент
item.forEach(decodeData);
} else if (typeof item === 'object' && item !== null) {
// Если это объект, проходим по его ключам
for (const key in item) {
if (Object.prototype.hasOwnProperty.call(item, key)) {
const value = item[key];
if (typeof value === 'string') {
// Если значение - строка, декодируем ее
item[key] = decodeURIComponent(value);
} else if (typeof value === 'object' && value !== null) {
// Если значение - объект или массив, рекурсивно вызываем функцию
decodeData(value);
}
}
}
}
}
// Запускаем декодирование для всего массива data
decodeData(data);
Если у нас в ответе есть массивы (как в случае этой команды), для них указывается соответствующее поле сущности, после чего уже для него добавляем ключи из ответа, соответствующие полям строковой секции

Здесь важно добавить ошибку с типом ExpiredToken - именно она даёт сигнал Albato о необходимости сделать запрос на обновление токена
В качестве значения указываем data.error, условие - "равно", значение - 3 (такой код ответа нам приходит при просроченной сессии).