Agent Management

Invite team members, assign roles, and manage agent access to your workspace.

Overview

Agents are team members who handle conversations and tickets in ZapTicket. Each workspace can have multiple agents with different roles. Agent management is available under Settings → Team in the dashboard.

Inviting Agents

To add a new agent to your workspace, invite them by email. The invited person receives an email with a link to join the workspace. If they don't already have a ZapTicket account, they'll be prompted to create one during the invitation acceptance flow.

  1. Navigate to Settings → Team.
  2. Click Invite Agent.
  3. Enter the person's email address.
  4. Select a role: Owner or Agent.
  5. Click Send Invite.
💡Invitations expire after 7 days. If the invite isn't accepted in time, you can resend it from the Team settings page. Pending invitations are shown with an "Invited" badge.

Roles

ZapTicket has two roles that control what an agent can do within a workspace:

Owner

Full administrative access to the workspace. Owners can:

  • Manage all conversations and tickets (view, assign, resolve)
  • Invite and remove agents
  • Change other agents' roles
  • Access workspace settings (branding, API keys, canned responses)
  • Regenerate API keys
  • Deactivate agents
  • Delete the workspace

Agent

Standard access for handling customer interactions. Agents can:

  • View and reply to all conversations
  • Assign conversations to themselves or other agents
  • Create, update, and resolve tickets
  • Use canned responses
  • View team members (but not manage them)
  • Update their own profile and notification preferences

Agents cannot:

  • Invite or remove other agents
  • Change roles
  • Access API keys or workspace settings
  • Delete the workspace
PermissionOwnerAgent
Handle conversationsYesYes
Manage ticketsYesYes
Use canned responsesYesYes
Invite agentsYesNo
Remove/deactivate agentsYesNo
Change rolesYesNo
Access settingsYesNo
Regenerate API keysYesNo
Delete workspaceYesNo

Changing an Agent's Role

Owners can change any agent's role between Owner and Agent. This is useful when promoting a trusted team member or reducing permissions for someone changing responsibilities.

  1. Go to Settings → Team.
  2. Find the agent in the list.
  3. Click the role dropdown next to their name.
  4. Select the new role.
  5. Confirm the change.
⚠️Every workspace must have at least one Owner. You cannot demote the last remaining Owner to Agent — promote another agent to Owner first.

Deactivating an Agent

Deactivating an agent revokes their access to the workspace without deleting their account. Deactivated agents:

  • Can no longer log in to the workspace.
  • Are removed from the active agents list.
  • Have their assigned conversations unassigned (moved to Unassigned tab).
  • Retain their historical activity (messages, notes, ticket comments) for audit purposes.
  • Can be reactivated later by an Owner.
💡Deactivation is preferred over deletion because it preserves conversation history and audit trails. The deactivated agent's messages remain attributed to them in the thread.

Agent Profile

Each agent has a profile that's visible to visitors and other team members:

  • Display name: Shown to visitors in the chat widget when replying.
  • Avatar: Shown next to messages in the widget and dashboard.
  • Email: Used for login and notification delivery.
  • Status: Online/Offline based on dashboard connection.

Agents can update their own profile (name, avatar) from their account settings. Email changes require verification.

Managing Agents via API

List all agents in workspace
curl https://api.zapticket.app/api/agents \
  -H "Authorization: Bearer zt_sk_YOUR_SECRET_KEY"
Invite an agent
curl -X POST https://api.zapticket.app/api/agents/invite \
  -H "Authorization: Bearer zt_sk_YOUR_SECRET_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "email": "[email protected]",
    "role": "agent"
  }'
Deactivate an agent
curl -X POST https://api.zapticket.app/api/agents/agent_xyz/deactivate \
  -H "Authorization: Bearer zt_sk_YOUR_SECRET_KEY"