Skip to main content

Overview

Teams are the foundation of collaboration in Lawn. Each team has its own projects, videos, and members with specific roles that control what they can do.

Creating a Team

1

Create your team

When you create a team, you automatically become the owner. Each team gets a unique slug based on the team name for easy sharing.
// Team is created with these default settings
{
  plan: "basic",
  billingStatus: "not_subscribed",
  role: "owner"
}
2

Set up your team name

Choose a descriptive name for your team. The system automatically generates a URL-friendly slug. If the slug is taken, a counter is added (e.g., my-team-1).
3

Start inviting members

Once created, you can immediately start inviting team members and creating projects.
Team slugs are permanent identifiers. Choose a name that represents your team well since the slug is used in URLs throughout the platform.

Understanding Roles

Lawn has four role levels with different permissions:

Owner

  • Full control over the team
  • Can delete the team
  • Can manage billing and subscriptions
  • Cannot leave the team (must transfer ownership first)
  • Cannot be removed by other admins
  • All admin permissions included

Admin

  • Invite and remove members
  • Update member roles
  • Manage team settings
  • Create and delete projects
  • Delete videos
  • Cannot remove the owner or other admins

Member

  • Create and upload videos
  • Update video details and workflow status
  • Create share links
  • Comment on videos
  • Cannot manage team members or settings

Viewer

  • View videos and comments
  • Read-only access
  • Cannot upload or modify content
  • Cannot create share links
Use the “viewer” role for stakeholders who need to review work but shouldn’t make changes. This keeps your review process clean and organized.

Inviting Team Members

1

Generate an invite

Admins and owners can invite new members by email. The system generates a unique invite token that expires in 7 days.
// Each invite includes
{
  email: "member@example.com",
  role: "member", // or "admin" or "viewer"
  expiresAt: Date.now() + 7 * 24 * 60 * 60 * 1000
}
2

Send the invite link

Share the generated invite link with the new member. They must accept the invite while logged in with the matching email address.
3

Track pending invites

View all active invites in your team settings. Expired invites are automatically filtered out.

Invite Validation

When a user accepts an invite, Lawn verifies:
  • The invite token is valid and not expired
  • The user’s email matches the invite email (case-insensitive)
  • The user isn’t already a team member
If someone doesn’t receive the invite, you can delete the old invite and create a new one. Old invites for the same email are automatically replaced.

Managing Member Roles

Updating Roles

Admins can change member roles at any time:
// Example: Promoting a member to admin
updateMemberRole({
  membershipId: "...",
  role: "admin"
})
Restrictions:
  • Cannot change the owner’s role
  • Must be an admin or owner to update roles
  • Role changes take effect immediately

Removing Members

Admins can remove members from the team:
1

Verify permissions

Only admins and owners can remove members. You cannot remove yourself (use the “leave” function instead).
2

Remove the member

The member loses access to all team projects, videos, and content immediately.
3

Content preservation

Videos and comments created by the removed member remain in the team. Their name stays associated with their contributions.
Before removing a member who owns important projects, consider reassigning ownership of their work or documenting their contributions.

Leaving a Team

Members can leave teams they’re part of:
// Members can leave unless they're the owner
leave({ teamId: "..." })
Important: The team owner cannot leave. They must:
  1. Transfer ownership to another member first
  2. Or delete the team entirely (if they’re done with it)

Real-World Scenarios

Scenario: Agency with Multiple Clients

Structure:
  • Owner: Agency principal
  • Admins: Project managers
  • Members: Designers and video editors
  • Viewers: Client stakeholders
Workflow:
  1. Project manager creates projects for each client
  2. Team members upload review videos
  3. Clients (as viewers) review and comment
  4. Members update workflow status based on feedback

Scenario: In-House Marketing Team

Structure:
  • Owner: Marketing director
  • Admins: Team leads
  • Members: All marketing team members
  • Viewers: Executives and department heads
Workflow:
  1. All members can upload campaign videos
  2. Team leads manage projects and workflows
  3. Executives review as viewers
  4. Director manages billing and team settings

Scenario: Freelancer with Clients

Structure:
  • Owner: Freelancer (you)
  • Admins: None needed
  • Members: None
  • Viewers: All clients
Workflow:
  1. You upload videos for client review
  2. Clients join as viewers to review work
  3. You manage all projects and settings
  4. Keep clean separation between client projects

Team Deletion

Only the owner can delete a team. Before deletion:
1

Cancel billing

Teams with active subscriptions cannot be deleted. Cancel billing first in team settings.
2

Understand data loss

Deletion is permanent and removes:
  • All team members and invites
  • All projects in the team
  • All videos and their comments
  • All share links and access grants
3

Confirm deletion

Once deleted, the team slug becomes available for reuse, but all data is permanently lost.
Team deletion cannot be undone. Export any important videos or data before deleting a team.

Best Practices

Start Small

Begin with a minimal team structure. Add admins only when needed. Most teams work well with one or two admins and everyone else as members.

Use Viewers Liberally

Give stakeholders viewer access instead of member access. This prevents accidental changes while keeping everyone informed.

Regular Audit

Periodically review your team members. Remove inactive members and ensure roles match current responsibilities.

Clear Naming

Use clear team names that indicate purpose or client. This helps when managing multiple teams.

Document Roles

For larger teams, document who has what role and why. This helps when onboarding new admins or transferring responsibilities.

Build docs developers (and LLMs) love