Policy Overview
Each group has aPolicySet that defines who can perform restricted actions:
- add_member_policy - Add new inboxes to the group
- remove_member_policy - Remove inboxes from the group
- update_metadata_policy - Modify group name, description, image, etc.
- add_admin_policy - Designate members as admins
- remove_admin_policy - Remove admin designation
- update_permissions_policy - Change the policy set itself
Preconfigured Policies
LibXMTP provides common policy configurations:Available Preconfigured Policies
- AllMembers
- AdminsOnly
- Default
Any group member can:
- Add/remove members
- Update metadata
- Add/remove admins
- Update permissions
Custom Policy Sets
Create custom policies for fine-grained control:Policy Types
Membership Policies
Control adding and removing members:Metadata Policies
Control metadata field updates:Permission Update Policies
Control who can modify policies:Admin Management
Admin Roles
LibXMTP has two admin levels:- Super Admin - Full control, cannot be removed
- Admin - Elevated permissions based on policies
The group creator is automatically designated as the only super admin and cannot be removed from that role.
Add Admins
Remove Admins
List Admins
Updating Permissions
Update Individual Policies
Update Entire Policy Set
Replace all policies at once:Permission Validation
Policies are enforced when processing commits:Query Current Permissions
TypeScript (Node.js) Examples
Advanced Policy Logic
Compound Policies
Combine multiple conditions:Dynamic Policy Evaluation
Policies are evaluated at commit time:Best Practices
Error Handling
Next Steps
Consent Management
Control which groups and users you interact with
Sending Messages
Send messages within your configured groups
