Adds a user to a chat and sends a service message on it.
May also return 0-N updates of type updateGroupInvitePrivacyForbidden: it indicates we couldn't add a user to a chat because of their privacy settings; if required, an invite link can be shared with the user, instead.
messages.statedMessage#d07ae726 message:Message chats:Vector<Chat> users:Vector<User> pts:int seq:int = messages.StatedMessage;
messages.statedMessageLink#a9af2881 message:Message chats:Vector<Chat> users:Vector<User> links:Vector<contacts.Link> pts:int seq:int = messages.StatedMessage;
---functions---
messages.addChatUser#2ee9ee9e chat_id:int user_id:InputUser fwd_limit:int = messages.StatedMessage;
Name | Type | Description |
---|---|---|
chat_id | long | Chat ID |
user_id | InputUser | User ID to be added |
fwd_limit | int | Number of last messages to be forwarded |
Code | Type | Description |
---|---|---|
400 | BOT_GROUPS_BLOCKED | This bot can't be added to groups. |
403 | CHAT_ADMIN_REQUIRED | You must be an admin in this chat to do this. |
400 | CHAT_ID_INVALID | The provided chat id is invalid. |
403 | CHAT_WRITE_FORBIDDEN | You can't write in this chat. |
400 | INPUT_USER_DEACTIVATED | The specified user was deleted. |
400 | MSG_ID_INVALID | Invalid message ID provided. |
400 | PEER_ID_INVALID | The provided peer id is invalid. |
400 | USERS_TOO_MUCH | The maximum number of users has been exceeded (to create a chat, for example). |
400 | USER_ALREADY_PARTICIPANT | The user is already in the group. |
400 | USER_ID_INVALID | The provided user ID is invalid. |
400 | USER_IS_BLOCKED | You were blocked by this user. |
403 | USER_NOT_MUTUAL_CONTACT | The provided user is not a mutual contact. |
403 | USER_PRIVACY_RESTRICTED | The user's privacy settings do not allow you to do this. |
400 | YOU_BLOCKED_USER | You blocked this user. |
0-N updates of this type may be returned only when invoking messages.addChatUser, channels.inviteToChannel or messages.createChat: it indicates we couldn't add a user to a chat because of their privacy settings; if required, an invite link can be shared with the user, instead.
Chats and channels may have a public username or a private invite link: private invite links may be further enhanced with per-user join requests.