Skip to main content
Наполегливо рекомендуємо створювати автоматизації за допомогою дії «Запуск сценарію», оскільки вона охоплює всі типи дій, зокрема ті, які інакше довелося б створювати вручну. Просто опишіть свої вимоги ШІ в чаті.Зверніть увагу: якщо ви додасте дії вручну, ШІ надалі не розпізнаватиме й не змінюватиме їх.
Дія «Запуск сценарію» дає змогу писати власний JavaScript для обробки логіки, якої не охоплюють вбудовані дії. Ви можете перетворювати дані, викликати зовнішні API, виконувати обчислення, реалізовувати умовне розгалуження тощо — усе в захищеному середовищі пісочниці. Сценарії отримують дані з попередніх кроків через об’єкт input і передають результати наступним крокам через функцію output.set().

Коли використовувати «Запуск сценарію», а коли — вбудовані дії

Зазвичай використовуйте вбудовані дії, якщо вони відповідають вашим потребам. Використовуйте «Запуск сценарію», коли потрібні власна логіка, перетворення даних або складна взаємодія з API.

Середовище

Як налаштувати

  1. Додайте до робочого процесу дію Запуск сценарію.
  2. Відкриється редактор сценарію з порожнім полотном. Напишіть тут код JavaScript.
  3. Сценарій може читати дані з попередніх кроків через об’єкт input (див. нижче).
  4. Використовуйте output.set(key, value), щоб передавати результати наступним крокам.
  5. (Необов’язково) Додайте залежності npm на панелі налаштувань, якщо сценарію потрібні зовнішні бібліотеки.
  6. Натисніть Перевірити, щоб запустити сценарій із реальними даними останнього виконання тригера.
  7. Перегляньте тестовий результат і журнали консолі, щоб переконатися, що сценарій працює правильно.
  8. Збережіть дію.

Читання вхідних даних

Об’єкт input містить дані з усіх попередніх кроків робочого процесу. Кожен крок визначається ідентифікатором дії.

Структура вхідних даних

Отримання даних тригера (полів запису)

Отримання даних із кроку «Отримати записи»

Отримання даних із результатів інших дій

Під час тестування використовуйте console.log(JSON.stringify(input, null, 2)), щоб побачити точну структуру вхідних даних. Це найшвидший спосіб зрозуміти, які дані доступні.

Запис вихідних даних

Використовуйте output.set(key, value), щоб зробити дані доступними наступним крокам. Можна задати кілька ключів.
Кожен заданий ключ стає окремою змінною, на яку наступні кроки можуть посилатися через засіб вибору змінних +. Наприклад, якщо викликати output.set("status", "success"), наступний крок зможе посилатися на status у результаті цього сценарію.

Налагодження за допомогою console.log

Під час розробки використовуйте console.log() для перевірки даних і відстеження перебігу виконання. Результат журналу з’являється на панелі тестування після натискання Перевірити.
Журнали консолі видимі лише під час тестування — вони не з’являються в історії виробничих запусків. Активно використовуйте їх під час створення сценарію.

Керування пакетами npm

У сценаріях можна використовувати пакети npm. Оголосіть залежності на панелі налаштувань:
Потім використовуйте їх у сценарії за допомогою require():
За можливості віддавайте перевагу вбудованим можливостям JavaScript, а не пакетам npm. Сучасний JavaScript має багато вбудованих засобів — Array.map(), Array.filter(), Object.entries(), шаблонні літерали, деструктурування тощо. Додавайте пакети npm лише тоді, коли вони дають істотну користь.

Вбудовані змінні

Безпека: область дії AUTOMATION_TOKEN

AUTOMATION_TOKEN автоматично створюється для кожного запуску автоматизації. Він має ті самі дозволи, що й автор автоматизації, а його область дії обмежена поточним виконанням. Основне:
  • Він може отримувати доступ до будь-якої таблиці, доступної автору автоматизації.
  • Він дійсний лише протягом виконання сценарію (тайм-аут 60 секунд).
  • Не передавайте цей токен зовнішнім системам — він призначений для виклику API Teable із вашого сценарію.

Виклик API Teable

Виклик ШІ зі сценарію

POST /api/automation/runtime/ai надсилає запит моделі ШІ вашої Бази. База визначається з контексту автоматизації, тому її ідентифікатор не потрібен. Тіло приймає prompt, а також необов’язкові attachments, modelKey, temperature й outputType; відповідь має формат { "message": ... }. Вкладення — це елементи { url, mimetype, name }, до 10 на один виклик, кожен розміром до 20 МБ і з часом завантаження до 30 секунд; підтримуються зображення, PDF і документи Office. Стандартна модель чату може не читати зображення та подібні вкладення, тому під час надсилання файлів передавайте modelKey. Кожен виклик витрачає кредити.

Обробка помилок

Завжди обгортайте ризиковані операції в блоки try/catch, щоб робочий процес міг належно обробляти помилки:
Без обробки помилок невдалий виклик fetch або неочікуваний формат даних призведе до аварійного завершення сценарію, і наступні кроки не отримають результату.

Повний приклад: обробка й маршрутизація звернень до служби підтримки

Поради

  • Почніть із console.log. Створюючи новий сценарій, спочатку запишіть до журналу весь об’єкт input, щоб зрозуміти його структуру.
  • Зосереджуйте сценарії на одному завданні. Краще добре виконати одне завдання, ніж умістити в одному сценарії кілька. За потреби створіть послідовність із кількох дій «Запуск сценарію».
  • Пам’ятайте про 60-секундний тайм-аут. Тривалі операції (обробка великого обсягу даних, багато послідовних викликів API) можуть перевищити тайм-аут. Розділяйте великі завдання на менші частини.
  • Перевіряйте з реальними даними. Панель тестування використовує фактичні дані останнього виконання тригера, забезпечуючи реалістичні результати.
  • Обробляйте відсутні дані. Використовуйте стандартні значення (оператор ||) для полів, які можуть бути порожніми або undefined.

Пов’язані матеріали

Останнє оновлення 4 вересня 2026 р.