ProcessMaker API Documentation
Script Central

What is a Script?

Understand what a Script does in ProcessMaker.

Overview

In ProcessMaker, Scripts allow Process Owners and ProcessMaker Developers to write self-contained programmatic actions that can be called from any Process Request at run-time. The same ProcessMaker Script can be deployed in any Process model. In other words, "write once, use anywhere."

Supported Programming Languages

ProcessMaker supports the following programming languages and their corresponding software development kits (SDKs) in the open-source edition:

  • PHP and SDK

  • Lua and SDK

  • JavaScript and SDK

ProcessMaker Enterprise edition supports the following additional programming languages and their corresponding SDKs:

ProcessMaker Scripts Run in Short-Lived Docker Containers for Security

ProcessMaker Scripts run securely and in isolation from within Docker containers. When the ProcessMaker instance calls a ProcessMaker Script to run, ProcessMaker creates a Docker container for corresponding with the programming language ProcessMaker supports, runs the Script, and then destroys the Docker container. This ensures that any malicious script that anyone in your organization might inadvertently introduce to ProcessMaker does not affect the ProcessMaker instance or its hosting environment: Docker containers cannot access them. Furthermore, Docker containers cannot listen for inbound connections; therefore, a Docker container cannot be accessed externally.

When the ProcessMaker instance creates a Docker container to run a ProcessMaker Script, required libraries are already built in that Docker container.

Design and Test ProcessMaker Scripts in One Environment

ProcessMaker Scripts are designed and tested in Scripts Editor.

While designing a ProcessMaker Script, test it before you deploy it. ProcessMaker Scripts are tested within the authoring environment to ensure they function as intended. While testing, do the following:

Related Topics