Introduction
Learn about QuickBlox platform features and documentation guidelines.
QuickBlox provides you with ready-to-use chat and video calling solutions for your apps. Using our documentation you can quickly integrate QuickBlox across multiple platforms and devices.
Before you begin
- Register a QuickBlox account. This is a matter of a few minutes and you will be able to use this account to build your apps.
- Create and configure a new app. Click Add new app button and fill in the information about your company.
- Get credentials. Go to the Overview section on your Dashboard and copy Application ID, Authorization Key, Authorization Secret, and Account Key.
Platform features
Use QuickBlox to add rich chat and video calling features to your apps. Our platform has a modular structure. Here is a list of all QuickBlox modules and their features:
Users
User management | iOS |
Android |
JavaScript |
React Native |
Flutter |
Server API | Create, update, delete, and list users. |
Standard login | iOS |
Android |
JavaScript |
React Native |
Flutter |
Server API | Log in with email/username and password. |
Social login | iOS | Android | JavaScript | Server API | Log in using social network accounts. |
Phone number login | iOS | Android | JavaScript | Server API | Log in using a phone number. |
Custom identity provider login | iOS | Android | JavaScript | Server API | Log in with a token generated by the identity provider. |
User tags | iOS |
Android |
JavaScript |
React Native |
Flutter |
Server API |
Assign tags to users and then address them separately by tags. |
Existing user database integration | Custom identity provider | Easily integrate your existing user database with QuickBlox. |
Chat
Private chat | iOS |
Android |
JavaScript |
React Native |
Flutter |
Server API |
Create a one-to-one chat. |
Group chat | iOS |
Android |
JavaScript |
React Native |
Flutter |
Server API |
Create a group chat between multiple users. |
Public chat | iOS |
Android |
JavaScript |
React Native |
Flutter |
Server API |
Create a public chat between hundreds of users. Anyone can freely join the public chat. |
Message history | iOS |
Android |
JavaScript |
React Native |
Flutter |
Server API |
All users' messages are stored on the server. You can fetch them for a particular dialog. |
Presence | iOS | Android | JavaScript | React Native | Flutter | Subscribe to user presence updates and check user online status. |
Read receipts | iOS | Android | JavaScript | React Native | Flutter | Mark messages as read. Thus, users will know if their messages have been read by other users in the dialog. |
Delivery receipts | iOS | Android | JavaScript | React Native | Flutter | Mark messages as delivered. Thus, users will know if their messages have been successfully delivered to other users in the dialog. |
Typing indicators | iOS | Android | JavaScript | React Native | Flutter | Subscribe to typing events to indicate if the other user is typing a message at the moment. |
Attachments | iOS |
Android |
JavaScript |
React Native |
Flutter |
Server API |
Send messages with attachment so users can share files during a chat, such as images, audio files, videos, and other file types. |
Extended messaging | iOS |
Android |
JavaScript |
React Native |
Flutter |
Server API |
Extend a message with additional fields. |
Unread message count | iOS | Android | JavaScript | React Native | Flutter | Display a number of unread messages in a particular dialog. |
Offline messages | iOS | Android | JavaScript | React Native | Flutter | Subscribe to push notifications about new messages when the app is not running. |
Contact list | iOS | Android | JavaScript | React Native | Flutter | Add and remove users from your contact list. |
User-to-user block | iOS | Android | JavaScript | Add users to your privacy list to block incoming messages from them. |
Trust and safety | Trust and safety | Create rules to mask profanity or block messages that contain it. |
User ban | User ban | Ban a user so the user can no longer connect to chat server. |
Chatbot | Simple bot | RiveScript bot | Integrate your chatbot with QuickBlox. |
Video calling
Voice and video | iOS | Android | JavaScript | React Native | Flutter | Create video sessions that can be video and voice, voice-only or video-only. |
One-to-one calls | iOS | Android | JavaScript | React Native | Flutter | Create video calls between two users. |
Group calls | iOS | Android | JavaScript | React Native | Flutter | Create video calls with up to 4 users at a time. |
Screen-sharing | iOS | Android | JavaScript | Share a screen across video session participants. |
Mute/unmute | iOS | Android | JavaScript | React Native | Flutter | Disable own or opponent’s audio/video stream. |
Camera switch | iOS | Android | JavaScript | React Native | Switch between camera input during a call. |
Video mirroring | Supported | Flip the video horizontally during a call. |
Offline calls | Supported | Implement offline calls workflow with QuickBlox push notifications. |
Video conference
Voice and video | iOS | Android | JavaScript | Flutter | Create video conference sessions that can be video and voice, voice-only or video-only. |
Group conference | iOS | Android | JavaScript | Flutter | Create conference calls between 10-12 users at a time. |
Join/rejoin | iOS | Android | JavaScript | Flutter | Join a meeting or continue an earlier meeting with those who were in it. |
Mute/unmute | iOS | Android | JavaScript | Flutter | Disable own or opponent’s audio/video stream. |
Camera switch | Supported | Switch video inputs during a call. |
Call recording | Supported | Enable server-side recording which means any conference call can be documented. |
Offline calls | Supported | Implement offline calls workflow with QuickBlox push notifications. |
Content
File storage | iOS |
Android |
JavaScript |
React Native |
Flutter |
Server API | Upload, download, delete media files such as photos, video, documents, etc. |
Push notifications
Instant notifications |
iOS |
Android |
JavaScript |
React Native |
Flutter |
Server API | Send instant push notifications to a user's device. |
Scheduled notifications | iOS |
Android |
JavaScript |
React Native |
Flutter |
Server API | Create push notifications that will be sent at a specific time/date. |
Recurring notifications | iOS |
Android |
JavaScript |
React Native |
Flutter |
Server API | Create push notifications that will be sent repeatedly according to the time interval. |
Notifications by user tags | Supported | Send push notifications to specific user groups defined by tags. |
Subscribe device | iOS | Android | React Native | Flutter | Server API | Subscribe/unsubscribe a device to receive push notifications. |
Custom objects
Data schema | iOS |
Android |
JavaScript |
React Native |
Flutter |
Server API |
Create a flexible data schema so you can store and structure your data exactly how you need to. |
Data management | iOS |
Android |
JavaScript |
React Native |
Flutter |
Server API |
Create, update, delete custom object records. |
Flexible queries | iOS |
Android |
JavaScript |
React Native |
Flutter |
Server API |
Define specific search criteria based on comparisons to the fields of each record and list the exact data that you need. |
Relations | iOS |
Android |
JavaScript |
Server API |
Build one-to-many relations between data schemas. |
Permissions | iOS | Android | JavaScript | Server API | Add a flexible permissions schema by choosing from five permission levels. Specify users who can access the object and operations allowed on a given object. |
Address book
Contact management | iOS |
Android |
JavaScript |
Server API |
Upload contacts to the server. Keep the contacts up-to-date by updating, deleting or syncing the device contacts with QuickBlox. |
Retrieve registered users | iOS |
Android |
JavaScript |
Server API |
Retrieve registered QuickBlox users from the address book. |
New contact notifications | iOS | Android | JavaScript | Enable push notifications when a contact from your address book joins the app. |
Getting around
Our documentation is split into two basic sections:
- Documentation. Here you can explore our SDKs in-depth. QuickBlox supports multiple platforms including iOS, Android, JavaScript, React Native, and Flutter. Learn all fundamentals for integrating and configuring our SDKs for each particular platform.
- Server API. Use QuickBlox Server API to establish a server-to-server connection between your application and QuickBlox server and fulfill activities associated with chat. Our API documentation is organized around modules. Each module contains a set of specific API requests and respective endpoints. Find a list of parameters and their descriptions below each request.
Basic recommendations
Here are basic recommendations for navigating our documentation.
-
It’s better to start with our Key Concepts page to get an overall understanding of QuickBlox.
-
Take a look at our Code Samples page with a collection of ready-to-go apps for the most popular platforms.
-
Move over to the Quick Start guide of the platform you want to add the QuickBlox to. Learn how to run the code sample and send your first message from here.
-
Refer to our Setup page to learn how to initialize, connect, and configure QuickBlox SDK so it works seamlessly with your app.
-
Check other pages to customize QuickBlox further. Following other sections, you will understand how to implement each particular functionality in detail whether it is Chat, Video Calling, Push Notifications, etc.
-
Suggest improvements using the Suggest edits tool. We will consider them for upcoming releases. QuickBlox aims to create first-rate interactive documentation. Explore our SDKs and API and let us know if you need any assistance.
Updated almost 3 years ago