Client is the primary interface for interacting with the XMTP network. This guide shows you how to create and configure clients using the ClientBuilder pattern.
Overview
Each client instance is bound to:- A single Inbox ID (user identity)
- A single Installation ID (device/app instance)
- A local SQLite database for storage
Basic Client Creation
ClientBuilder Configuration
TheClientBuilder supports extensive configuration:
Storage Configuration
Device Sync Configuration
Version Information
Offline Mode
Smart Contract Verifier
Client Properties
Identity States
A client’s identity can be in one of three states:- Not Registered - Installation keys generated but not associated with an inbox
- Registered but Not Ready - Identity update created but not published to network
- Ready - Fully registered and operational
Multi-Device Support
Multiple installations can share the same inbox:Best Practices
Error Handling
Common errors when building clients:Next Steps
Managing Groups
Create and manage group conversations
Database Encryption
Secure your local database with SQLCipher
