Links

Teams

Collaborate on projects with other Form.io users.

Introduction

Teams functionality allows multiple developers and form builders to collaborate and have access to Projects and Stages. Any user within the platform is able to create a new Team and then assign that team to a Project which they own or are already an Administrator of. Once a team is created, users can then be assigned to that team which will then further grant those users access to the Projects and Stages to which that team was assigned. The first step is to create a team.
There are two ways Teams are created and managed. The first, leveraging the User Resource within the Portal Base Project, and the second utilizing your own SSO Provider. The following sections will document how to create and manage your teams using both methods:

Teams Section

The Teams section is on the main Portal page found in the left-hand navigation bar. In this section, users can create new teams, manage existing teams, and review any outstanding Team invitations.

Team Creation

Create a Team for Portal Base users or SSO users.
Portal Base
After creation, you’ll be redirected to the Teams page where you can add members to the team.
Teams can be created by any user within the platform by clicking the green +Create Team button within the Teams section of the Portal home page. After creating the Team, you’ll be redirected to the Teams view page where Team members can be added or removed. Teams are managed using the Team Resource within the Portal Base project.
Team members must be registered with Form.io before being added to a Team

SSO

If you wish to map this team with an SSO Role, tick the SSO Team checkbox which will communicate to the API platform this team should be mapped with SSO roles and users. For more information on SSO integration, please visit the Portal SSO documentation.

Adding Team Members

Adding Team Members for a Portal Base or SSO team.

Portal Base

Before a Team Member can be added, the user must first be part of the User Resource within the Portal Base project. To add a Team Member, click the +Add Member button when viewing a Team. Input the member Form.io email address found saved within the User Resource and click Submit. That user will then receive a Team Invite within the Team section of their main Portal page.
SSO
To add SSO Team Members, the Team must first have the SSO setting checked. Once an SSO team is in place, simply add the Team Member using their SSO email.
When using SAML, it is not necessary to add individual SSO users to the Team since that will be handled automatically through the SSO process when they authenticate by associating SAML roles to that Team. For more information on SSO integration, please visit the Portal SSO documentation.
Team Admins
Within the Add Team Member modal, you will also have the option to make the user a Team Admin. Team Admins add a new layer of permissions allowing the user to add or remove members for the Team. Please note that Team Admins/Team Owners do not have additional permissions on the Projects that the Team has been assigned. The Team Admin functionality only applies to adding or removing Team Members for their Team.
Adding a Team Member does NOT send an invitation email to the user. Instead, invites are accepted by the Team Member by logging in to their main Portal Page and accepting the invite from the Teams section.

Team Invite

Once a member has been added, the member will be displayed on the Team View page. This member will not have access to the Team or Projects the Team has been assigned to until they have accepted the Invitation. Members that have not accepted the Team Invite will display a yellow Invitation Pending tag underneath their Team Member email address.
SSO Team Members are not required to accept a Team invite and will automatically be added to the Team when the SSO Team setting is active.
To accept a Team invitation as a member, log in to the main Portal page and click the Teams button in the left-hand sidebar. From the Team page, click the Invitation tab. Here the user will see any pending invitations they have not yet accepted or rejected.
Click the Team to review the invitation. Clicking Accept adds you to the Team, removing the Invitation Pending tag. In turn, Projects with that Team assigned will display for the user on the main Portal page. Clicking Reject will remove the user and invitation from the Team. Once accepted

Team View Page

Accessing the Team View page will present two tabs, Team Members and Projects.
Team Members tab will show accepted or pending Team Members. Team Admins or Team Owners will have the option to remove members from the Team or make a Team Member a Team Admin by clicking the Gear icon.
Projects tab will display a list of all Projects the Team has been assigned to. Clicking the Modify button will navigate you to the Team assignment page for that Project (depending on your Team's permissions).

Assigning Teams to a Project

Once a Team has been created, the Team will be available for Project assignment. As a Project Admin or Owner, navigate to the Project you wish to assign a Team to and then click on the Teams icon.
Clicking the Add a team button will present a dropdown list with every Team the user is the owner of and has the permission to add.
Once a team has been added, one of the following team permissions should be selected.
Project Access
Provides only the ability to see the Project within the home page, and then be able to open up that project. No access is given to read or write anything within that project. This is useful for Stage Teams where you can grant users access to only a single stage within that project.
Project Read
Provides the ability to Read the forms and submission data, but no access to modify the forms or submission data.
Project Write
Provides the ability to Read and Update both Forms and Submissions within that project. Does NOT provide access to the Project Settings and configurations.
Project Admin
Gives full access to the project including sensitive project configuration values.
To select a Permission, click the dropdown for that team within the Teams page.
Once a team has been assigned, all members of that team share the same assigned permissions. You can assign multiple teams to a single project for more control over different Teams.

Stage Teams

You can also use teams to grant specific access to Stages within a project. Stage Teams are necessary if a user should have Team permissions for a specific stage (EG Development Stage), but should NOT have access to the Live (Production) stage.
To add a stage team, navigate to the desired Stage and click Access in the left-hand navigation bar. At this point, assigning a Team is the same process as assigning a Team to a Project. Click the Team dropdown from the Stage Team section, select the desired Team, and pick the Team permission.
Since this Team assignment is for a Stage only, the Team members will not be able to access it until the Team has permission to the main Project. As a Project Admin, Navigate back to the Live stage, click on Teams, add the Team, and select the Project Access permission.
Once this is done, a user assigned to the Development team will see the Project on their Portal home page. When an access user opens the Project, the user will be presented with a message stating they only have Access to the main Live stage.
You have been granted access to this project in order to access some stages. Please use the stages tabs to access a stage you have access to.
At this point, the Team Member should click the Stage dropdown and select the Stage they have permission to. This method is used to split up different teams between stages. Specific teams would only have access to certain stages depending on the team's functionality and purpose (think Dev, Stage, Prod deployment workflows). These different stages would eventually be deployed to the main Live stage for production use.
Click here for more information on how Stages are leveraged.