This module allows you to create arbitrary Workflows, and assign them to Entities.

Workflows are made up of workflow states. Transitions between states can be allowed per role. For example, a workflow with the states Draft, Review, and Published could be assigned to the Story node type. Only users with role 'chief editor' can set Stories to the published state.
You can set up the Workflow to alter states from form, page, comment and a special workflow tab.

Transitions between workflow states can have actions assigned to them. In our example, we could assign an action so that when the story moves from the Draft state to the Review state an email is sent out. Another action could be assigned to the transition from Review to Published so that the node's status is set to Published (and becomes visible on your website).

If you are interested in the future of the workflow module, please join the workflow group on

If you have learned anything while implementing this module, please update the documentation here:

Developer notes: If you are upgrading your module to support Workflow please review the available functions and check the change records.

NEW in 7.x-2.x

- Introduction of Workflow Field. Now you can add a Workflow to terms, users or other entity types as you do with other Field types, and enjoy the features the Field API provides, such as revisioning, multilingual, etc. Enable the 'Workflow Field' submodule, and leave the 'Workflow Node' submodule disabled. You still use 'Workflow Node' if you come from version 7.x-1.2 or 6.x.
- You can have multiple workflows on an Entity type.
- You can select States using radiobuttons, select list or action buttons. The available options can have the traditional State labels, but now you can also use Transition labels!
- To change the State from a comment, add the same field to the Node and the Comment.
- When 'Entity tokens' module is enabled, lots of tokens are provided.

Run Update.php after downloading a new version.

NEW in 7.x-1.1

The 7.x Workflow_Admin_UI module has been greatly overhauled. The old, hugely complex page is broken into into smaller parts that are separately viewable. The states for a workflow are now in a drag-and-drop table, which makes reorganizing the states much easier. Additionally, there is a new permission, "participate in workflow," which allows you to limit which roles to show on the workflow edit screen, thereby simplifying it even more.

If you are upgrading from Drupal 6 to Drupal 7 versions of Workflow, please be aware that many features of the module have been broken out into sub modules that you will need to activate. There is an UPDATE.txt file in Workflow, please read it.

A new Workflow_Cleanup module was created in response to #1347116: States don't get removed when a workflow is deleted. Use it with caution (as in back up your database).

The Workflow_Search_API module adds the workflow state name to the entity so it is available in search_api as a facet and field.

There was VBO support in the workflow_actions module but people didn't want to enable that module just to get VBO. So now, the VBO functions have been pulled out into their own module.

#1997242: ask other modules for permission in node forms has introduced a new operation for hook_workflow(). It is "transition permitted" and gives your module a chance to remove potential transitions from the list that is presented to the user. As an example of how to use it, we only allow members of the author's group to transition nodes.

Related Projects

Project Information