Access Control in Respresso

Using Respresso, all team members can edit software resource files. This helps you to efficiently collaborate and save time. As we add different team members, we need to limit their ability to edit resources. This is why Respresso has role-based access control.

Team and project structure

Generally speaking, Respresso groups users into teams. Each team can have multiple projects. Team members can be assigned to the team’s projects. Without project membership, team members can’t access the projects, only to list them.

Invite team members

Before you can add somebody to a project, you need to add them to your team. To do so, you have to have a team admin or team owner role.

You can invite users to Respresso by sending an invite directly to their email inbox. To send an invite, you have to go to the  Team Dashboard / Team Settings / Edit Team Permissions screen and press the New Invite button.

Showing a pending team invite and the option to invite new team members.
Screenshot of team invites in Respresso

Alternatively, you can allow anyone to join within your company domain. To add a domain, you have to go to the  Team Dashboard / Team Settings and add it to the Team domain names. Eg.: we could add the respresso.io domain to allow all our team members to join.

Showing 2 added team domains in Respresso. (respresso.io and ponte.hu)
Screenshot of team domains in Respresso

Team level roles

Everyone who joins a team starts with the lowest, team member role. To grant a higher role, you need to go to the Team Dashboard / Team Settings / Edit Team Permissions. On that screen, select the proper role for the user.

Available team roles in Respresso. (Member, Admin, Owner)
Screenshot of team roles in Respresso

Team role hierarchy:

  • Team member: Can list all projects’ names and submit join requests.
  • Team admin: Can edit team settings, create new projects and invite and manage team members with member or admin roles.
  • Team owner: Can manage project subscriptions, view invoices, and manage team members with owner role.

Add project members

As we mentioned above, any team member can submit a request to join a project. Although, a project admin also can add any team member. To do so,  you need to go to the Project Dashboard / Project Settings / Edit Project Permissions and click on the user’s name. By default, everyone will get only a viewer role.

Available team roles in Respresso. (Member, Admin, Owner)
Screenshot of adding a team member to a project in Respresso

Please note, that there is no invite option, only team members can join a project. If you have to add someone outside your team, you must also add them to the team first.

Project level roles

A project admin can manage project permissions. (Project Dashboard / Project Settings / Edit Project Permissions).

Available project roles in Respresso. (Viewer, Member, Editor, Admin)
Screenshot of project roles in Respresso

Project role hierarchy:

  • Project viewer: Can view all the resources.
  • Project member: Can edit existing resources, but with restrictions. With this role, the user can edit existing resources but should not be able to change or remove anything that could break your app. (Eg.: resource keys are read-only.)
  • Project editor: Can edit, add or remove resources, without restriction. This role is required to use integrations (Figma, Adobe XD, and Zeplin).
  • Project admin: Can edit project settings, flows and manage project users.

Our recommendations

As a rule of thumb, you should keep users’ access roles as low as possible. This can prevent errors and unauthorized or unintended modifications.

Team permissions are simple: Everybody should be only at the member level. Except for your system admins (admin level) and account managers (owner level).

Recommended roles set to different project members
Screenshot of recommended project roles for different team members

Project permissions should be determined on a case-by-case basis. Our recommendations are as follows:

  • Developers: Project editor. In case of Flow customizations: Project admin.
  • Designers: Project editor.
  • Testers: Project viewer or Project member.
  • Translators: Project member.
  • Clients: Project viewer or Project member.
  • Managers and POs: Project member.

Leave a Reply