skip to Main Content

UpStream automatically sets up 3 new user roles in WordPress:

  • UpStream Manager (upstream_manager)
  • UpStream User (upstream_user)
  • UpStream Client User (upstream_client_user)

Users with Administrator or UpStream Manager roles can basically do anything within UpStream, so the conversation about capabilities and permissions mainly only pertains to the UpStream User role or adding custom capabilities to existing roles.

UpStream User role

To create one of these users, first create a new user in WordPress and then assign them the role of UpStream User via the Roles dropdown.

Things that an UpStream User CAN NOT do are:

  • Manage UpStream settings
  • Edit or delete Project Categories
  • Read or edit private Projects
  • Assign or edit Project Owner
  • Assign or edit Project Dates
  • Edit or delete other users’ existing Milestones, Tasks, Bugs or Files
  • Sort Milestones, Tasks, Bugs or Files
  • Add Milestones
  • Read or edit private Clients

So the only things that an UpStream User CAN do within a Project are to add and edit their own Tasks, Bugs, Files and Messages as well as assign Client Users to the project. It does not sound like much, but this is generally enough for somebody who does not need full control over the project.

Important! – there are exceptions to the above:
  • If an UpStream User has been Assigned To a Milestone, Task or Bug, then they will get full control over that particular item. They can edit it freely.
  • If an UpStream User has been Assigned To as the Project Owner or they are the Author, then they will have FULL control over the project and can modify anything within the project.

Using Plugins to Modify UpStream Permissions

It is possible to customize some of the permissions given to the UpStream user roles. UpStream works with the WordPress core, so many user management plugins will work with UpStream.

For example, the Members plugin is free to use, and will allow you to change the permissions for UpStream roles. Click here for instructions on using a plugin to customize UpStream permissions.

List of UpStream capabilities

Click here for a list of all the capabilities available in UpStream.

To change capabilities for users, you can visit this link or build on this sample code:

function add_theme_caps() {
    $role = get_role( 'upstream_user' );
    $role->add_cap( 'publish_project_milestones' ); 
add_action( 'admin_init', 'add_theme_caps');

Related Articles