---
description: >-
  Use reusable and pre-built Process Modeler objects created from a set of other
  objects to serve a specific purpose or function.
---

# PM Blocks Package

## Overview

A [PM Block](broken-reference) is a reusable Process Modeler object composed of a set of other objects to serve a specific purpose or function. Process Designers may place into a Process a PM Block as its own Process Modeler object and then configure it as its own functional unit. The Process Modeler need not have the technical skills to have composed the PM Block, but be able to quickly place it into Process models and configure to the business solution.

PM Blocks have the following attributes:

* **PM Blocks are pre-built, packaged Processes:** PM Blocks are ready-to-use, packaged Processes with their own configuration settings designed by the Process Designer who built the PM Block. PM Blocks are no-code to place in Process Modeler.
* **PM Blocks are reusable:** PM Blocks are reusable by any Process Designer with appropriate permissions, and then configured for each business solution. Configuration settings, such as authentication to a third-party service, are separate from the objects within the PM Block. This  allows PM Blocks be quickly configured and deployed regardless of technical expertise or the involvement of Administrators.&#x20;
* **Built in Process Modeler:** PM Blocks are built from Process Modeler, saved as a Process, and then saved as a PM Block. Process Designers can design complex functionality that other Designers may leverage with no technical skills.
* **Save a Process as a PM Block:** Any user with appropriate permissions may save a Process as a PM Block and/or use a PM Block in a Process model.
* **Built PM Blocks are accessible from Process Modeler for Process design:** Within Process Modeler, PM Blocks are available in a separate tab in the left-side panel, adjacent to the ProcessMaker BPMN elements and connectors. With the appropriate permissions, a Process Modeler may place a PM Block as its own object, and then configure it with the configuration settings built for that PM Block.
