Skip to main content
Teams group agents together for organized ticket routing, workload management, and collaboration on customer support.

Overview

Teams in Frappe Helpdesk enable:
  • Logical grouping of agents by specialty or function
  • Organized ticket routing and assignment
  • Team-specific workflows and rules
  • Performance tracking by team
  • Controlled access to tickets

Team Structure

Each team consists of:

Basic Information

  • Team Name: Unique identifier for the team
  • Members: Agents who belong to this team
  • Assignment Rule: Optional automated ticket routing
  • Ignore Restrictions: Permission to see all tickets

Team Capabilities

Ticket Routing

Tickets can be assigned to teams for automatic distribution

Assignment Rules

Auto-assign tickets to team members based on conditions

Access Control

Limit agents to seeing only their team’s tickets

Performance Tracking

Monitor team-level metrics and SLAs

Creating Teams

1

Navigate to Settings

Go to Settings > Teams
2

Create New Team

Click “New Team” button
3

Enter Team Name

Provide a unique, descriptive name (e.g., “Technical Support”, “Billing”)
4

Add Team Members

Select agents to include in this team
5

Configure Settings

Set permissions and assignment preferences
6

Save Team

Save to create the team

Team Members

Managing team membership:

Adding Members

1

Open Team

Navigate to the team settings
2

Add User

Click to add new team member
3

Select Agent

Choose from available agents
4

Save

Member is added to the team

Removing Members

  • Click remove icon next to member name
  • Member loses access to team tickets (if restrictions enabled)
  • Existing assignments remain unless manually changed

Multi-Team Membership

Agents can belong to multiple teams:
Agent: John Smith
Teams:
  - Technical Support
  - Customer Success
  - VIP Support
Multi-team membership allows agents to handle different types of requests and provides backup coverage.

Assignment Rules

Each team can have an assignment rule:

Creating Team Assignment Rule

1

Open Team

Navigate to team settings
2

Create Assignment Rule

Click to create or link an assignment rule
3

Configure Rule

Set conditions, routing method, and assignees
4

Enable

Activate the rule for automatic assignment

How Team Assignment Works

1

Ticket Assigned to Team

Ticket’s “Team” field is set to this team
2

Check Assignment Rule

If team has an active assignment rule
3

Evaluate Conditions

Verify ticket matches rule conditions
4

Assign to Member

Automatically assign to a team member
See the Assignment Rules page for detailed configuration options.

Ticket Restrictions

Enabling Team Restrictions

Control ticket visibility by team: Global Setting: Settings > HD Settings > Restrict tickets by agent group
  • Enabled: Agents only see tickets from their teams
  • Disabled: All agents see all tickets (default)

Exception: Ignore Restrictions

Teams can bypass restrictions: Team Setting: Ignore Restrictions checkbox
  • Checked: Team members see ALL tickets regardless of team
  • Unchecked: Team members see only their team tickets (if restrictions enabled)
Use “Ignore Restrictions” for supervisor teams or quality assurance roles that need to review all tickets.

Restriction Behavior

When restrictions are enabled:
Agent sees tickets where:
  • Ticket’s team is one of agent’s teams
  • Agent is assigned to the ticket
  • Ticket has no team (if configured)

Show Tickets Without Team

Global Setting: Settings > HD Settings > Do not restrict tickets without an agent group
  • Enabled: Unassigned tickets visible to all agents
  • Disabled: Only agents with unrestricted teams see unassigned tickets

Team-Based Workflows

Example Team Structure

Support Team Hierarchy:
  
  Tier 1 Support:
    Purpose: Initial triage and common issues
    Members: [Agent A, Agent B, Agent C, Agent D]
    Assignment: Round Robin on all new tickets
    Restrictions: Yes - only see Tier 1 tickets
    
  Tier 2 Technical:
    Purpose: Complex technical issues
    Members: [Senior Agent A, Senior Agent B]
    Assignment: Manual escalation from Tier 1
    Restrictions: Yes - only see technical tickets
    
  Billing Team:
    Purpose: Payments and subscriptions
    Members: [Billing Specialist A, Billing Specialist B]
    Assignment: Auto-assign billing ticket type
    Restrictions: Yes - only see billing tickets
    
  Supervisors:
    Purpose: Quality assurance and oversight
    Members: [Manager A, Manager B]
    Assignment: None (manual only)
    Restrictions: No - Ignore Restrictions enabled

Workflow Example: Escalation

1

Tier 1 Receives Ticket

New ticket auto-assigned to Tier 1 Support team
2

Agent Assesses Complexity

Tier 1 agent determines issue needs escalation
3

Change Team

Agent changes ticket team to “Tier 2 Technical”
4

Auto-Unassign

Tier 1 agent is removed (not in new team)
5

Auto-Assign

Tier 2 assignment rule assigns to available specialist
6

Specialist Resolves

Tier 2 agent handles complex technical issue

Team Performance Tracking

Monitor team-level metrics:

Key Metrics

  • Total Tickets: Volume assigned to team
  • Open Tickets: Current active workload
  • Average Response Time: Team responsiveness
  • Average Resolution Time: Team efficiency
  • SLA Compliance: Meeting deadlines
  • Customer Satisfaction: Feedback ratings

Comparison & Benchmarking

Team vs Team

Compare performance across teams

Team vs Target

Track against organizational goals

Trends Over Time

Monitor improvement or degradation

Individual vs Team

See agent performance in context

Saved Replies by Team

Teams can have dedicated saved reply templates:
  • Create team-scoped saved replies
  • Only team members can access
  • Share best practices within team
  • Maintain consistency in team responses
See Saved Replies for more on creating team-specific templates.

Common Team Configurations

By Function

Functional Teams:
  - Technical Support
  - Billing & Accounts
  - Sales Support
  - Customer Success

By Product

Product Teams:
  - Mobile App Support
  - Web Platform Support
  - API Support
  - Integration Support

By Region

Regional Teams:
  - Americas Support (EST/PST)
  - EMEA Support (GMT/CET)
  - APAC Support (IST/JST)

By Tier

Tiered Support:
  - Tier 1 (First Response)
  - Tier 2 (Advanced Support)
  - Tier 3 (Engineering)
  - VIP Support (Premium Customers)

Team Collaboration

Internal Communication

  • Use ticket comments to discuss within team
  • @mention team members for input
  • Share context without customer visibility

Handoffs Between Teams

1

Document Progress

Add internal comment with details
2

Change Team Assignment

Update ticket team field
3

Auto-Reassign

New team’s assignment rule assigns to member
4

Context Available

New assignee reads comments and history

Knowledge Sharing

  • Document solutions in team comments
  • Create knowledge base articles from resolutions
  • Share complex resolutions in team meetings
  • Maintain team runbooks for common scenarios

Best Practices

Create teams around clear specialties or functions. Avoid overly broad teams that handle everything.
Teams of 5-10 agents are manageable. Very large teams may need subdivision.
Team names should clearly indicate their purpose: “Billing Support” not “Team B”.
Ticket restrictions improve focus but can create silos. Use for specialized teams.
Have agents in multiple teams for coverage and knowledge sharing.
Regularly assess team metrics and rebalance workload as needed.
Maintain team-specific workflows and escalation paths.

Troubleshooting Teams

  • Verify agent is a team member
  • Check if ticket restrictions are enabled
  • Ensure team has tickets assigned to it
  • Confirm agent has Agent role
  • Verify assignment rule is enabled
  • Check rule conditions match tickets
  • Ensure team is linked to assignment rule
  • Confirm agents are in assignee list
  • They may be assigned to the ticket
  • They may be in another team with access
  • Restrictions may be disabled globally
  • Their team may have “Ignore Restrictions”
  • Check ticket’s team field is set
  • Verify SLA or automation isn’t overriding
  • Ensure team exists and is spelled correctly

API Access

Manage teams programmatically:
# Create a team
team = frappe.get_doc({
    "doctype": "HD Team",
    "team_name": "Technical Support",
    "users": [
        {"user": "[email protected]"},
        {"user": "[email protected]"},
        {"user": "[email protected]"}
    ],
    "ignore_restrictions": 0
})
team.insert()

# Add member to existing team
team = frappe.get_doc("HD Team", "Technical Support")
team.append("users", {
    "user": "[email protected]"
})
team.save()

# Get team members
members = frappe.get_all(
    "HD Team Member",
    filters={"parent": "Technical Support"},
    fields=["user"]
)
Team membership changes take effect immediately for ticket visibility and assignment rules.

Build docs developers (and LLMs) love