Differences Between Roles and Contacts
Last updated
Was this helpful?
A contact is a storage entity in MaiAgent that synchronizes user information. A Contact ID is created to identify user conversation data.
Users do not need to log in or have a MaiAgent account to be created.
To learn more about contacts, see 🌐 Contacts

To assign a role to a user, the user must have a MaiAgent account and be a member of the organization. Enterprises can predefine roles such as customer service agent, administrative staff, intern, etc. Within an organization, you can preconfigure the permissions and reference databases available to each role, and organization members can select and apply role settings as needed.

To learn more about roles, see 🌐 Role Permission Management

🎯 Use Case
External users, system integration
Internal users, organization management
👤 MaiAgent Registration
❌ No registration required
✅ Registration and organization membership required
📋 Creation Method
Automatically or manually created by the system
Predefined role templates
🔄 Update Mechanism
Dynamic user information sync
Static role permission settings
🎯 Purpose
Identify user conversation data
Apply preset permission settings, manage AI Assistant backend permissions
👥 Target Users
External visitors, members
Internal employees, organization members
⚙️ Management Method
Managed via API integration
Managed via backend role management
📊 Permission Control
Dynamic control based on Contact ID
Static control based on Role
Contact use cases: Suitable for scenarios requiring clear identity-based differentiation
Company website: Visitors receive different product information based on their identity
Membership center: Access corresponding service content based on membership tier
Customer service center: Provide differentiated support based on customer type
Role use cases
Internal operations: Employees handle tasks based on departmental roles
Customer service team: Query knowledge bases according to job responsibilities
Management: Review and maintain content based on permissions
External-facing operations (where user identity does not need to be explicitly known) are best managed with contacts.
Internal operations (requiring clear permission separation / multiple members sharing the same permissions) are best managed with roles.

Last updated
Was this helpful?
Was this helpful?
