Release notes

Updated

Provides release notes of Agora Chat.

This page provides release notes for Chat SDK for Web.

Client API

v1.4.0

Released on July 3, 2026.

New features

  • Added support for sending and receiving GIF image messages. A GIF image message is a subtype of image message that is not compressed when sent. For details, see Send and receive a GIF image message.
  • Added support for setting, updating, and retrieving chat group avatars. For details, see Update the chat group avatar.
  • Added an info field to the joinChatRoom response, so that a user receives the following information when joining a chat room: the chat room creation time (createtimestamp), whether all members are muted (isallmembersmuted), whether the user is on the allow list (isinallowlist), the current member count (membercount), and the user's mute expiration time (muteexpiretimestamp). For details, see Join and leave a chat room.
  • Added the muteTimestamp and userId parameters to the muteMember event, so that the chat room mute event includes the muted member's user ID and mute expiration time. For details, see Listen for chat room events.
  • Added support for retrieving roaming messages sent by a specific group member from the server. For details, see Retrieve message history of the specified conversation.
  • Added the membersPresence and membersAbsence events, which notify other members in batches when one or more members join or leave a group. Previously, the SDK triggered a separate event for each member. The original memberPresence and memberAbsence events remain valid. For details, see Listen for chat group events.
  • Added an announcement field to the chat room announcement update event (updateAnnouncement), so that members receive the new announcement content after it is modified.
  • Added support for setting extension information when creating a group. Use createGroupVNext instead of the deprecated createGroup. For details, see Create and destroy a chat group.

Improvements

  • Added support for modifying more message types with modifyMessage:

    • Text and custom messages: modify both the message body and the extension fields (ext).
    • File, video, voice, image, location, and combined messages: modify the extension fields (ext) only.
    • Command messages: modification is not supported.

    For details, see Modify sent messages.

  • Allowed group owners, chat room owners, and admins to recall messages sent by other members. For details, see Recall a message.

  • Changed the trigger threshold for the onTokenWillExpire event: the SDK now triggers the event when 80% of the token's validity period has elapsed, instead of 50%. For details, see Authentication.

  • Added support for retrieving a group or chat room member list that includes each member's user ID, role, and join time:

  • Optimized the reconnection logic to automatically switch reconnection addresses by default.

  • Adjusted the execution order of the login callback open().then and the connection success event onConnected. Calling open() now triggers the onConnected or onDisconnected event before resolving open().then or rejecting open().catch. This ensures that subsequent actions only occur after the connection is fully established, resolving the previous issue where messages could only be sent after onConnected was triggered following the login callback. Login errors, such as authentication failures, are now thrown directly in open().catch.

  • Added parseDownloadResponse and download methods to the SDK's message object. These methods are now available in both the utils object and the message object.

Issues fixed

  • The conversationId parameter value was incorrect in the message pinning event onMessagePinEvent.
  • Message retrieval occasionally failed.

v1.3.1

v1.3.1 was released on December 20, 2024.

Improvements

  • Added support for pinning messages in one-to-one conversations. Users can call pinMessage or unpinMessage to pin or unpin a one-to-one chat message.
  • Added the ConnectionParameters#isFixedDeviceId parameter (true by default) to specify whether to use a fixed device ID. Specifically, the SDK generates a device ID for a browser and saves it to the local storage. Then in the browser, all SDK instances use the same device. The setting of this parameter affects the strategy of forced logout in multi-device login use-cases. For details, see Log in from multiple devices. In previous versions, a random device ID was used for connections of each SDK instance. In this case, each SDK instance uses a different device for connections.
  • Added the callback for DNS request failures.
  • Added the reason for requesting to join the group to the requestToJoin event that is received by the group owner and administrators that approved the join request.

v1.3.0

v1.3.0 was released on December 11, 2024.

New features

  • Added the deleteAllMessagesAndConversations method to uni-directionally clear all conversations and messages in them on the server.
  • Added the function of tagging a conversation:
    • addConversationMark: Tags a conversation.
    • removeConversationMark: Untags a conversation.
    • getServerConversationsByFilter: Gets the conversations from the server by conversation tag.
    • onMultiDeviceEvent#markConversation/unMarkConversation: Conversation tag update event in a multi-device login use-case. If a user adds or removes a conversation tag on one device, this event is received on other devices of the user.
  • Added the broadcast field to the message object to indicate whether the message is a broadcast message sent via a RESTful API to all chat rooms under an app.
  • Added the deliverOnlineOnly field during message creation to set whether the message is delivered only when the recipient(s) is/are online. If this field is set to true, the message is discarded when the recipient is offline.
  • Added support for retrieval of historical messages of chat rooms from the server.
  • Added the useReplacedMessageContents parameter to determine whether the server returns the adjusted text message to the sender if the message content is replaced during text moderation.
  • Added the function of pinning a message:
    • pinMessage: Pins a message.
    • unpinMessage: Unpins a message.
    • getServerPinnedMessages: Gets the list of pinned messages in a conversation from the server.
    • onMessagePinEvent: Occurs when the message pinning status changes. When a message is pinned or unpinned in a group or chat room, all members in the group or chat room receive this event.
  • Added the LocalCache module for local conversation data management:
    • getLocalConversations: Gets the local conversation list.
    • getLocalConversation: Gets a local conversation.
    • setLocalConversationCustomField: Sets a custom field for a local conversation.
    • clearConversationUnreadCount:Resets the number of unread messages in a conversation to zero.
    • removeLocalConversation: Deletes a local conversation.
    • getServerConversations: Synchronizes the conversation list from the server to the local database.
  • Added the applicant parameter to the joinPublicGroupDeclined event to indicate the user that applies to join the group.
  • Added the message field to the parameter type SendMsgResult in the message sending success callback to return the message object that is successfully sent.
  • Added the onMessage event which returns the following types of received messages to the recipient in bulk: text, image, video, voice, location, and file messages and combined messages.
  • Added the thumbnail for a video message by using the first video frame as the video thumbnail whose URL can be accessed via the videoMessage.thumb field.
  • Added the memberCount field to the events that occur when a member joins or exits a group or chat room.
  • Added the getSelfIdsOnOtherPlatform method to get the list of login IDs of other login devices of the current user so that the user can send messages to a specific device.
  • Added the support for returning the modified custom message via the onModifiedMessage event if the message is modified via a RESTful API.
  • Added two login token expiration events:
    • onTokenExpired: Occurs when the token expires.
    • onTokenWillExpire: Occurs half of the token validity period is passed.

Improvements

  • Fine tuned the error message for token-based login for the sake of accuracy.
  • Formatted the customExts field in the latest custom message of conversations in the conversation list.
  • Added support for uploading the attachment in fragments when sending an attachment message.
  • Marked the agoraToken parameter in the open login method deprecated. Use the accessToken parameter instead.

Issues fixed

  • Some types in the SDK are incorrect.

v1.2.0

v1.2.0 was released on December 6, 2023.

New features

  • Added the function of forwarding multiple messages:
    • downloadAndParseCombineMessage: Downloads and parses a combined message.
    • CreateCombineMsgParameters: The properties of creating a combined message.
    • CombineMsgBody: The combined message body type.
  • Added the function of modifying sent messages:
    • modifyMessage: Modifies a sent text message.
    • onModifiedMessage: Occurs when a sent message is modified. The message recipient receives this event.
  • Added the function of pinning a conversation:
    • pinConversation: Pins a conversation.
    • getServerPinnedConversations: Retrieves the pinned conversations from the server.
  • Added the getServerConversations method to retrieve the conversation list from the server. Marked getConversationlist deprecated.
  • Added the searchOptions parameter object to the getHistoryMessages method for pulling historical messages from the server.
  • Added the function of managing custom attributes of group members:
    • setGroupMemberAttributes: Sets custom attributes of a group member.
    • getGroupMemberAttributes: Retrieves custom attributes of group members.
    • GroupEvent#memberAttributesUpdate: Occurs when a custom attribute is changed for a group member.
  • Added the MultiDeviceEvent#RoamingDeleteMultiDeviceInfo event that occurs when historical messages in a conversation are deleted from the server on one device. This event is received by other devices.
  • Added the thumbnailHeight and thumbnailWidth parameters to the CreateImgMsgParameters interface to allow you to send the image thumbnail size when sending an image message.
  • Added the isLast field to the returned content of the getHistoryMessages method to indicates whether the returned data is on the last page.

Improvements

  • The addContact, acceptInvitation, declineInvitation, addToBlackList, and removeFromBlackList methods support the Promise syntax.

Issues fixed

  • A user, when pulling historical messages, sends a reception receipt to the server.

v1.1.0

v1.1.0 was released on April 28, 2023.

New features

  • Adds the function of managing custom chat room attributes to implement functions like seat control and synchronization in voice chat rooms. See Manage chat room attributes.
  • Adds the priority attribute to the message creation method create to implement the chat room message priority function. This ensures that high-priority messages are dealt with first. See Set message priority.
  • Adds the pagination parameters pageNum and pageSize in the getConversationlist method to allow users to get the conversation list from the server with pagination. See Retrieve a list of conversations from the server.
  • Adds the group creation event create, which occurs on other devices of the group owner after group creation.
  • Adds an additional option to delete messages on the server side. See Delete conversations and historical messages.

Improvements

Reduces the size of MiniCore.

Issues fixed

Type-related issues in TypeScript code.

v1.0.8

v1.0.8 was released on December 19, 2022.

Improvements

Optimized the callback for a message sending failure, to make sure that it is triggered immediately when the network is disconnected.

Issues fixed

The file_length parameter in the create method did not work when this method was called to create an attachment message.

v1.0.7

v1.0.7 was released on November 22, 2022.

Improvements

  • Split the SDK into several modules.
  • Added in-line comments.
  • Optimized the reconnection logic.

Issues fixed

  • A compatibility issue with Internet Explorer.
  • A lack of the longest validity period of a token.

v1.0.6

v1.0.6 was released on August 26, 2022.

New Features

  • Adds disaster recovery policies.
  • Adds resourceId to the group and chat room APIs to deliver event notifications to multiple devices of one user.
  • Adds the needAffiliations and needRole parameters to the getJoinedGroups method to return the number of group members and their roles.

Improvements

  • Optimized communication protocols to reduce the data volume.
  • Added inline documents.

Issues fixed

Some type definition errors.

v1.0.5

v1.0.5 was released on Jul 22, 2022.

New features

  • Adds the onGroupEvent and onChatroomEvent callback events.
  • Adds the error code MESSAGE_CURRENT_LIMITING, which means that the chat group message has exceeded the concurrent limit.

Improvements

  • Supported retrieving the information of multiple chat groups using getGroupInfo.

v1.0.3

v1.0.3 was released on May 16, 2022.

New Features

  • Supports reaction, which enables users to add reaction emojis to the specified message.
  • Supports content moderation with the reportMessage method.
  • Supports message push configuration, which enables users to configure various push settings.
  • Supports data report.

Improvements

  • Supports retrieving chat groups by pagination.
  • Supports setting the number of chat group members when creating a chat group.
  • Adds thumbnail URL to the received image messages.

Issues fixed

When the user switched the user ID, cache remains in the group message.

v1.0.2

v1.0.2 was released on April 19, 2022.

New features

  • Supports the presence feature, which indicates the online status of the user.
  • Supports translation. You can implement translation on the recipient's client, or auto-translation on the sender's client.

Improvements

  • The Uni_SDK cannot run on the browser.
  • The user cannot modify the group description when creating a chat group.
  • The compatibility of SSR.

v1.0.1.1

v1.0.1.1 was released on January 19, 2022.

New features

This release adds the following features:

  • Supports downloading group shared files using the downloadGroupSharedFile method.
  • Supports retrieving group shared files by pagination using the fecthGroupSharedFileList method.

v1.0.1

v1.0.1 was released on January 14, 2022.

New features

This release supports deleting the conversation thread using the deleteSession method.

Improvements

The release made the following improvements:

  • Added a buildingNumber parameter in the location message.
  • Added error: type 221 for sending a message to a user that is not a contact.
  • Added error: type 219 for failing to send a message because all the users are muted.

Issues fixed

This release fixe the issue that the onChanelMessage callback was not triggered and other known issues.

v1.0.0

v1.0.0 was released on December 10, 2021.

Improvements

This release made the following improvements:

  • Added some error codes.
  • Renamed some functions and updated the API annotations.

Fixed issues

This release fixed the following issues:

  • The delivery acknowledgement was not received.
  • The group announcement could not be set as null.
  • An error was reported when muting a specified user during chat.