For the complete documentation index, see llms.txt. This page is also available as Markdown.

Differences Between Roles and Contacts

Display in Conversations

Contact

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

Contact name not set: User defaults to anonymous

Role

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.

Role user profile display

To learn more about roles, see 🌐 Role Permission Management

Permission Comparison

AI Assistant embed view
Comparison Item
Contact
Role

🎯 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

Typical Use Cases

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

Combined Usage Strategy

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.

Recommended usage of contacts and roles for authorization

Last updated

Was this helpful?