Developer Documentation Center

Automation

Updated: October 16, 2020

This page briefly presents what the Automation module is about. You can read the full conceptual explanation for a complete understanding.

Content Automation is a Nuxeo service that exposes common actions you do on a Nuxeo application as atomic operations. You can then assemble them to create complex business rules and logic, without writing any Java code. In other words, Content Automation provides a high level API over Nuxeo services — an API made of operations that can be assembled in more complex automation chains. These operations and chains can be called locally in Java, or remotely as being exposed via the REST API. Examples of business logic that you can implement with Automation are:

  • My documents should have a topic field;
  • Documents should be moved to another department when they are validated;
  • Procedures should become obsolete after one year;
  • Only the group “validators” can see it while the document is not published;
  • ...

You can also create new atomic operations (i.e. write a Java class that defines an operation) and contribute them, in addition to the set of built-in operations.

If you need to dynamically define the values of the operation parameters you can use scripting (e.g. EL syntax) to fetch the actual parameter values at execution time.

Studio can be used for defining automation chains.

A simple automation chain designed in Nuxeo Studio
A simple automation chain designed in Nuxeo Studio

The main goal of Content Automation is to enable users to rapidly build complex business logic without writing any Java code. First, they assemble the built-in set of atomic operations into complex chains. Then they can plug these chains inside the Nuxeo Platform as UI actions, event handlers, REST bindings and workflow logic.