Skip to main content
What you will learn: This page explains how Access Groups work, how to create and configure groups, how to assign members, and how to use the permission model to control access to ZappWay features.

🔢 Table of Contents

  1. Overview
  2. How Access Groups Work
  3. Endpoint Reference
  4. Managing Groups
  5. Managing Members
  6. System Groups
  7. Permission Audit
  8. Response Format
  9. Best Practices
  10. Troubleshooting

1. Overview

What are Access Groups?

Access Groups are collections of permissions that you assign to team members. Instead of managing individual permissions per person, you:
  1. Create a group (e.g., “Sales Team”, “Support Manager”)
  2. Define its permissions (e.g., read conversations, manage contacts)
  3. Assign members to the group
All members of a group inherit its permissions automatically.

Key Benefits

  • Simplified management — Change permissions for an entire team at once
  • Role-based access — Match your organization structure to platform access
  • Auditable — Every group change is recorded in the permission audit log
  • Scalable — Works for teams of 2 to 2000+

2. How Access Groups Work

Permission Model

ZappWay uses a permission-based access model with granular permissions such as:

Group Assignment Flow


3. Endpoint Reference


4. Managing Groups

List Access Groups

Returns all access groups in the current organization, including system-managed groups. Response:

Create an Access Group

Request Body: Example:
cURL:
TypeScript:
Every POST and DELETE on access groups is recorded in the permission audit log automatically.

Update an Access Group

All fields are optional. Only provided fields are updated. Example — add a permission:
Updating permissions replaces the entire permission set. Always include all desired permissions in the update, not just the additions.

Delete an Access Group

⚠️ System groups cannot be deleted. Attempting to delete a system group (isSystem: true) returns 403 Forbidden.

5. Managing Members

List Members of a Group

Response:

Assign Members to a Group

Request Body: Example:

Remove Members from a Group

Request Body:

6. System Groups

ZappWay automatically creates system-managed access groups for every organization: System group rules:
  • System groups cannot be deleted
  • System group permissions cannot be modified (managed by ZappWay)
  • Every new team member is assigned to member by default unless you specify otherwise during invitation

7. Permission Audit

Every group creation, update, deletion, and member assignment is automatically recorded in the permission audit log. The audit record includes:
  • Who made the change (user)
  • What changed (action: create, update, delete)
  • What resource was affected (access group ID, key)
  • Outcome (success/failure)
  • Metadata (group key, whether it’s a system group)
You can export audit logs via the organization settings.

8. Response Format

Status Codes


9. Best Practices

Design Your Group Structure First

Before creating groups, map your organization structure:

Permission Assignments

Do:
  • Follow the principle of least privilege — grant only the permissions each role actually needs
  • Create role-based groups that match real job functions
  • Review permissions quarterly and remove unnecessary ones
Avoid:
  • Creating one group with all permissions for non-admin users
  • Duplicating the admin system group behavior in custom groups
  • Giving billing.manage to non-financial team members

Managing Members at Scale

  • Assign members to groups during invitation rather than after (cleaner workflow)
  • Use PATCH /members to do bulk reassignments when reorganizing teams
  • Review group membership after team members change roles

10. Troubleshooting