Automation enables you to speed through certain tasks in ftrack that can take a long time to achieve manually. It removes or reduces the time spent on tedious tasks, lets your coworkers focus on more creative tasks, and reduces the risk of human error. As such, automation is an important part of your ftrack pipeline to get right!
You can build most automation scripts using the ftrack API. Automations are categorized into three different groups:
- Actions - User-triggered scripts that perform a piece of work. Actions are typically written with the ftrack Python API client and present a user interface to the user. This interface can either be a form or a custom JavaScript-based web widget.
Examples: run a custom report, move files on storage, open an application using ftrack Connect.
- Event listeners - Most changes in ftrack trigger an event, such as status changes, project creation, and assignments. You can set up a script to listen to these events and react accordingly using our event system.
Examples: send an email upon completion of all tasks, create a folder on disk when you start a new project, sync with an external system based on changes in ftrack.
- Scheduled scripts - A traditional and simple yet powerful way of extending a system. Depending on the platform and infrastructure, scheduled scripts can be as simple as setting up a CRON job or a scheduled task in Windows to run a script that uses the ftrack API to automate tasks.
Examples: send a nightly report email to management, archive data on your storage system based on ftrack statuses.
Typically automation scripts in the form of Actions and event listeners run either as a plugin to the ftrack Connect service or somewhere on your company's infrastructure (perhaps a VM or a Docker). We recommend using a system where the script automatically restarts if it were to error out.