Documentation Index
Fetch the complete documentation index at: https://cometchat-22654f5b-docs-android-v6-beta2.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
AI Integration Quick Reference
AI Integration Quick Reference
login() method.
How It Works
Before You Log In
Create a User
A user must exist in CometChat before they can log in.- During development: Create users from the CometChat Dashboard. Five test users are already available with UIDs
cometchat-uid-1throughcometchat-uid-5. - In production: Call the Create User REST API when a user signs up in your app.
We have setup 5 users for testing having UIDs:
cometchat-uid-1, cometchat-uid-2, cometchat-uid-3, cometchat-uid-4 and cometchat-uid-5.Check for an Existing Session
The SDK persists the logged-in user’s session locally. Before callinglogin(), always check whether a session already exists — this avoids unnecessary login calls and keeps your app responsive.
getLoggedInUser() returns null, no active session exists and you need to call login().
| Method | Returns | Description |
|---|---|---|
CometChat.getLoggedInUser() | Future<User?> | Returns the currently logged-in user, or null if no session exists |
Login with Auth Key
This straightforward authentication method is ideal for proof-of-concept (POC) development or during the early stages of application development. For production environments, however, we strongly recommend using an Auth Token instead of an Auth Key to ensure enhanced security.- Dart
| Parameter | Type | Description |
|---|---|---|
UID | String | The UID of the user to log in |
authKey | String | Your CometChat Auth Key |
onSuccess callback receives a User object containing the logged-in user’s details.
Response
Response
On Success — A
User object representing the logged-in user:User Object:| Parameter | Type | Description | Sample Value |
|---|---|---|---|
uid | string | Unique identifier of the user | "cometchat-uid-1" |
name | string | Display name of the user | "Andrew Joseph" |
link | string | Profile link | null |
avatar | string | Avatar URL | "https://assets.cometchat.io/sampleapp/v2/users/cometchat-uid-1.webp" |
metadata | object | Custom metadata | {} |
status | string | Online status | "online" |
role | string | User role | "default" |
statusMessage | string | Status message | null |
tags | array | User tags | [] |
hasBlockedMe | boolean | Whether this user has blocked the current user | false |
blockedByMe | boolean | Whether the current user has blocked this user | false |
lastActiveAt | number | Epoch timestamp of last activity | 1745554700 |
Error
Error
CometChatException:
| Parameter | Type | Description | Sample Value |
|---|---|---|---|
code | string | Error code identifier | "ERR_UID_NOT_FOUND" |
message | string | Human-readable error message | "The specified UID does not exist." |
details | string | Additional technical details | "Please verify the UID and try again." |
Login with Auth Token
Auth Token login keeps your Auth Key off the client entirely. Your server generates a token via the REST API and passes it to the client.- Create the user via the REST API when they sign up (first time only).
- Generate an Auth Token on your server and return it to the client.
- Pass the token to
loginWithAuthToken().
- Dart
| Parameter | Type | Description |
|---|---|---|
authToken | String | Auth Token generated on your server for the user |
onSuccess callback receives a User object containing the logged-in user’s details.
Response
Response
On Success — A
User object representing the logged-in user:User Object:| Parameter | Type | Description | Sample Value |
|---|---|---|---|
uid | string | Unique identifier of the user | "cometchat-uid-1" |
name | string | Display name of the user | "Andrew Joseph" |
link | string | Profile link | null |
avatar | string | Avatar URL | "https://assets.cometchat.io/sampleapp/v2/users/cometchat-uid-1.webp" |
metadata | object | Custom metadata | {} |
status | string | Online status | "online" |
role | string | User role | "default" |
statusMessage | string | Status message | null |
tags | array | User tags | [] |
hasBlockedMe | boolean | Whether this user has blocked the current user | false |
blockedByMe | boolean | Whether the current user has blocked this user | false |
lastActiveAt | number | Epoch timestamp of last activity | 1745554700 |
Error
Error
CometChatException:
| Parameter | Type | Description | Sample Value |
|---|---|---|---|
code | string | Error code identifier | "ERR_UID_NOT_FOUND" |
message | string | Human-readable error message | "The specified UID does not exist." |
details | string | Additional technical details | "Please verify the UID and try again." |
Logout
Calllogout() when your user logs out of your app. This clears the local session.
- Dart
Response
Response
On Success — A
String message confirming the logout:| Parameter | Type | Description | Sample Value |
|---|---|---|---|
message | string | Success confirmation message | "Logout successful" |
Error
Error
CometChatException:
| Parameter | Type | Description | Sample Value |
|---|---|---|---|
code | string | Error code identifier | "ERR_NOT_LOGGED_IN" |
message | string | Human-readable error message | "No active user session." |
details | string | Additional technical details | "Please log in before attempting to log out." |
Login Listener
You can listen for login and logout events in real time usingLoginListener. This is useful for updating UI state or triggering side effects when the auth state changes.
| Callback | Description |
|---|---|
loginSuccess(User user) | User logged in successfully. Provides the User object. |
loginFailure(CometChatException e) | Login failed. Provides a CometChatException. |
logoutSuccess() | User logged out successfully. |
logoutFailure(CometChatException e) | Logout failed. Provides a CometChatException. |
Add a Listener
- Dart
Remove a Listener
Next Steps
Send Messages
Send your first text, media, or custom message
User Management
Create, update, and manage users in your app
Connection Status
Monitor the SDK connection state in real time
All Real-Time Listeners
Complete reference for all SDK event listeners