Get Buidling!
This section covers everything you will require from Push SDK to create any functionality or features related to Push Chat.
Get Started
Push Chat enables web3 native messaging between wallets, groups, NFTs or even conditional (gated) groups. To do so, you will be using Push SDK API that will abstract away the complexity of authentication, encryption, signing, sending and receiving of messages.
Initialize User
Before you can start sending messages, or create conditional access group for your community, or send those chat requests to Vitalik.eth. you will need to initialize a user or re-authenticate the user. To do so you will use PushAPI.initialize call from @pushprotocol/restapi package.
Manage User
These APIs are useful when you want to manage the Push User profile. This includes changing profile name, avatar, preferences or encrytion algorithms.
Fetch Chats
These APIs are useful for fetching list of all chats (or chat requests) that a user might have, along with providing calls to get latest message or historical messages between two users (or from a group).
Chat Requests
You can send a message using chat.send API to either an existing chat connection or to initiate a new chat to a wallet you haven't chatted with before (which is called sending a chat request).
Send Message
Push Chat doesn't require a user to be on the network for you to send message 😀. Instead, it gives you the freedom to send a nudge to an account or a message (or a meme).
Create Group
Group chat is the latest exciting addition to Push Chat, for the first time ever, web3 users are finally able to talk to each other in web3 native groups and have fine-grained controls over them allowing new ways by which community can be engaged besides adding new utilities to your token. Group chat enables protocols or web3 projects to create —
Group Requests
This section deals with API calls related to joining or leaving a group.
Group Permissions
These APIs help in validating if you have permissions for a gated group.
Conditional Rules for Group
Conditional gating allows you to define rules for the members of the group for different privileges / permissions such as entry or chat. It is driven by Push Chat rules engine which is inspired by json rules engine and allows you to create powerful dynamics guiding communication for your community. Some examples of what you can achieve with it —
Manage Group
This section covers all APIs related to managing groups including adding / removing members or admins, updating group info or fetching group info.
Stream Chat
Stream Chat APIs enable you to receive chat messages, chat requests, group invites, and notifications instantly, without the need for constant polling. Push Chat achieves this by the use of sockets.
All API Calls
This tutorial is designed to get you up and going by providing a step wise guide to use and explore the Push SDK.