Reference
Client error codes
Every BMXErrorCode returned by the Lanying client SDKs, grouped by area: general, user, push, message, roster, group and server.
Client SDK calls return a BMXErrorCode. NoError means success; anything else should be surfaced or retried according to the group it belongs to.
General
| Code | Description |
|---|---|
| NoError | The operation succeeded. |
| GeneralError | A generic error occurred during the operation. |
| InvalidParam | One of the input parameters is invalid. |
| NotFound | The path or file does not exist. |
| DbOperationFailed | The local database operation failed. |
Sign-in and user
| Code | Description |
|---|---|
| SignInCancelled | The user cancelled the sign-in. |
| SignInTimeout | The sign-in timed out. |
| SignInFailed | The sign-in failed. |
| UserSigningIn | A sign-in is already in progress. |
| UserNotLogin | The user is not signed in. |
| UserAlreadyLogin | Another user is already signed in. |
| UserAuthFailed | Authentication failed: wrong name/id or password. |
| UserPermissionDenied | The user is not allowed to perform this operation. |
| UserNotExist | The user does not exist. |
| UserAlreadyExist | The user already exists. |
| UserFrozen | The user account is frozen. |
| UserBanned | The user is banned from sending messages. |
| UserRemoved | The user has been deleted. |
| UserTooManyDevice | The user is signed in on too many devices. |
| UserPasswordChanged | The password was changed on another device. |
| UserKickedBySameDevice | Kicked out by the same device. |
| UserKickedByOtherDevices | Kicked out by another device. |
| UserAbnormal | Abnormal sign-in state — ask the user to sign in again. |
| UserCancel | The user cancelled the operation. |
| UserOldPasswordNotMatch | The old password does not match when changing password. |
Push
| Code | Description |
|---|---|
| PushTokenInvalid | The push token is invalid. |
| PushAliasBindByOtherUser | The push alias is bound to another user. |
| PushAliasTokenNotMatch | The push alias and token do not match. |
Request and file validation
| Code | Description |
|---|---|
| InvalidVerificationCode | The verification code is invalid. |
| InvalidRequestParameter | The request parameter is invalid. |
| InvalidUserNameParameter | The username parameter is invalid. |
| MissingAccessToken | The access token parameter is missing. |
| InvalidToken | The token is invalid. |
| CurrentUserIsInRoster | The user is already in the contact list. |
| CurrentUserIsInBlocklist | The user is already in the block list. |
| AnswerFailed | The application does not exist or has expired. |
| InvalidFileSign | The file signature is invalid. |
| InvalidFileObjectType | The file object type is invalid. |
| InvalidFileUploadToType | The file upload target type is invalid. |
| InvalidFileDownloadUrl | The file download URL is invalid. |
Messages
| Code | Description |
|---|---|
| MessageInvalid | The message format is invalid. |
| MessageOutRecallTime | The message is past the allowed recall window. |
| MessageRecallDisabled | Recalling this message is disabled. |
| MessageCensored | The message contains censored content. |
| MessageInvalidType | This message type does not support the operation. |
| MessageBadArg | The message contains illegal characters. |
| MessageRateLimitExceeded | The message send rate limit was reached. |
Roster
| Code | Description |
|---|---|
| RosterNotFriend | The contact is not a friend. |
| RosterBlockListExist | The contact is already in the block list. |
| RosterRejectApplication | The user does not accept friend requests. |
| RosterHasDeletedFromSystem | The contact has been deleted from the system. |
Groups
| Code | Description |
|---|---|
| GroupServerDbError | A server database error occurred. |
| GroupNotExist | The group was not found. |
| GroupNotMemberFound | The user is not a member of the group. |
| GroupMsgNotifyTypeUnknown | Unknown group message notification type. |
| GroupOwnerCannotLeave | The owner cannot leave the group. |
| GroupTransferNotAllowed | Ownership can only be transferred to a member. |
| GroupRecoveryMode | The group is in recovery mode. |
| GroupExceedLimitGlobal | The global group limit was reached. |
| GroupExceedLimitUserCreate | Too many members passed when creating the group. |
| GroupExceedLimitUserJoin | The join limit was reached. |
| GroupCapacityExceedLimit | The group capacity limit was reached. |
| GroupMemberPermissionRequired | Member permission is required. |
| GroupAdminPermissionRequired | Admin permission is required. |
| GroupOwnerPermissionRequired | Owner permission is required. |
| GroupApplicationExpiredOrHandled | The join request expired or is being handled. |
| GroupInvitationExpiredOrHandled | The invitation expired or is being handled. |
| GroupKickTooManyTimes | The user has been kicked more than three times. |
| GroupMemberExist | The user is already in the group. |
| GroupBlockListExist | The user is already in the group block list. |
| GroupAnnouncementNotFound | The announcement was not found. |
| GroupAnnouncementForbidden | The announcement was forbidden by an administrator. |
| GroupSharedFileNotFound | The shared file was not found. |
| GroupSharedFileOperateNotAllowed | No permission to operate on the shared file. |
| GroupMemberBanned | The member is muted in the group. |
Server
| Code | Description |
|---|---|
| ServerNotReachable | The server is unreachable. |
| ServerUnknownError | An unknown server error occurred. |
| ServerInvalid | The server host is invalid. |
| ServerDecryptionFailed | Server-side decryption failed. |
| ServerEncryptMethodUnsupported | The encryption method is unsupported. |
| ServerBusy | The server is busy. |
| ServerNeedRetry | The request should be retried. |
| ServerTimeOut | The server request timed out. |
| ServerConnectFailed | The connection to the server failed. |
| ServerDNSFailed | Fetching the server DNS list failed. |
| ServerNeedReconnected | The server changed; reconnect required. |
| ServerFileUploadUnknownError | Unknown error while uploading a file. |
| ServerFileDownloadUnknownError | Unknown error while downloading a file. |
| ServerFileDownloadFailure | The download failed. |
| ServerInvalidLicense | The server licence is invalid. |
| ServerLicenseLimit | The server licence limit was reached. |
| ServerAppFrozen | The application is frozen. |
| ServerTooManyRequest | Too many requests were sent to the server. |
| ServerNotAllowOpenRegister | Open registration is disabled. |
| ServerFireplaceUnknownError | Unknown error in the fireplace service. |
| ServerResponseInvalid | The server response is invalid. |
| ServerInvalidUploadUrl | The upload URL is invalid. |
| ServerAppLicenseInvalid | The application licence is invalid. |
| ServerAppLicenseExpired | The application licence expired. |
| ServerAppLicenseExceedLimit | The application licence limit was reached. |
| ServerAppIdMissing | The App ID is missing. |
| ServerAppIdInvalid | The App ID is invalid. |
| ServerAppSignInvalid | The application signature is invalid. |
| ServerAppNotifierNotExist | The application notifier does not exist. |
| ServerNoClusterInfoForClusterId | No cluster information for the given cluster id. |
| ServerAppStatusNotNormal | The application status is abnormal. |
| ServerPlatformNotAllowed | The sign-in device platform is not allowed. |
| ServerCannotCreateDeviceSn | The server cannot create a device serial number. |
| ServerRtcNotOpen | The voice & video service is not enabled. |