contacts.addContact
contacts.addContact
Section titled “contacts.addContact”No description provided by the pinned schema.
Signature
Section titled “Signature”contacts.addContact#d9ba2e54 flags:# add_phone_privacy_exception:flags.0?true id:InputUser first_name:string last_name:string phone:string note:flags.1?TextWithEntities = Updates;Result type
Section titled “Result type”Updates
Parameters
Section titled “Parameters”| Name | Type | Flag | Default | Description |
|---|---|---|---|---|
| flags | # | flag word | — | No description provided by the pinned schema. |
| add_phone_privacy_exception | flags.0?true | flags.0 | — | No description provided by the pinned schema. |
| id | InputUser | — | — | No description provided by the pinned schema. |
| first_name | string | — | — | No description provided by the pinned schema. |
| last_name | string | — | — | No description provided by the pinned schema. |
| phone | string | — | — | No description provided by the pinned schema. |
| note | flags.1?TextWithEntities | flags.1 | — | No description provided by the pinned schema. |
| Parameter | Bit | Meaning |
|---|---|---|
| add_phone_privacy_exception | 0 | Controlled by flags; present when this bit is set. |
| note | 1 | Controlled by flags; present when this bit is set. |
Python binding
Section titled “Python binding”from miniproto.raw.functions import ContactsAddContactPublic access: miniproto.raw.functions.ContactsAddContact.
Safe usage shape
Section titled “Safe usage shape”from miniproto.raw.functions import ContactsAddContact
# Naming the raw request class is local only; it performs no I/O or network request.request_type = ContactsAddContactResult family
Section titled “Result family”RPC errors
Section titled “RPC errors”| Code | Error | Description |
|---|---|---|
| 400 | BUSINESS_CONNECTION_NOT_ALLOWED | This method was invoked over a business connection using invokeWithBusinessConnection, but either (1) we’re a user, and users cannot invoke methods over a business connection; (2) we’re a bot, but business mode was disabled in @botfather or (3); we’re a bot, but this method cannot be invoked over a business connection. |
| 400 | CHANNEL_PRIVATE | You haven’t joined this channel/supergroup. |
| 400 | CONTACT_ID_INVALID | The provided contact ID is invalid. |
| 400 | CONTACT_NAME_EMPTY | Contact name empty. |
| 400 | MSG_ID_INVALID | Invalid message ID provided. |
| 401 | AUTH_KEY_UNREGISTERED | The specified authorization key is not registered in the system (for example, a PFS temporary key has expired). |
Accepted types
Section titled “Accepted types”InputUser, TextWithEntities
Known selected constructors: inputUser, inputUserEmpty, inputUserFromMessage, inputUserSelf, textWithEntities
Returned types
Section titled “Returned types”Updates
Known selected constructors: updateShort, updateShortChatMessage, updateShortMessage, updateShortSentMessage, updates, updatesCombined, updatesTooLong
Related methods
Section titled “Related methods”account.confirmBotConnection, account.getBotBusinessConnection, account.getNotifyExceptions, account.getPaidMessagesRevenue, account.toggleNoPaidMessagesException, account.toggleWebBrowserSettingsException, account.updateConnectedBot, bots.addPreviewMedia, bots.allowSendMessage, bots.canSendMessage, bots.checkDownloadFileParams, bots.createBot, bots.deletePreviewMedia, bots.editAccessSettings, bots.editPreviewMedia, bots.exportBotToken, bots.getAccessSettings, bots.getBotInfo, bots.getBotMenuButton, bots.getBotRecommendations, bots.getPreviewInfo, bots.getPreviewMedias, bots.getRequestedWebViewButton, bots.invokeWebViewCustomMethod, bots.reorderPreviewMedias, bots.reorderUsernames, bots.requestWebViewButton, bots.setBotInfo, bots.setBotMenuButton, bots.setCustomVerification, bots.toggleUserEmojiStatusPermission, bots.toggleUsername, bots.updateStarRefProgram, bots.updateUserEmojiStatus, channels.convertToGigagroup, channels.createChannel, channels.deleteChannel, channels.deleteHistory, channels.editAdmin, channels.editBanned, channels.editPhoto, channels.editTitle, channels.getAdminLog, channels.inviteToChannel, channels.leaveChannel, channels.restrictSponsoredMessages, channels.setBoostsToUnblockRestrictions, channels.toggleAntiSpam, channels.toggleAutotranslation, channels.toggleForum, channels.toggleJoinRequest, channels.toggleJoinToSend, channels.toggleParticipantsHidden, channels.togglePreHistoryHidden, channels.toggleSignatures, channels.toggleSlowMode, channels.toggleViewForumAsMessages, channels.updateColor, channels.updateEmojiStatus, channels.updatePaidMessagesPrice, chatlists.joinChatlistInvite, chatlists.joinChatlistUpdates, chatlists.leaveChatlist, communities.create, communities.toggleCommunityCollapsedInDialogs, contacts.acceptContact, contacts.blockFromReplies, contacts.deleteContacts, contacts.getLocated, contacts.updateContactNote, ephemeral.deleteMessage, ephemeral.editMessage, ephemeral.sendMessage, folders.editPeerFolders, help.editUserInfo, help.getUserInfo, messages.addChatUser, messages.addPollAnswer, messages.appendTodoList, messages.composeMessageWithAI, messages.createChat, messages.createForumTopic, messages.deleteChatUser, messages.deleteFactCheck, messages.deleteParticipantReaction, messages.deletePollAnswer, messages.deleteQuickReplyMessages, messages.deleteRevokedExportedChatInvites, messages.deleteScheduledMessages, messages.editChatAdmin, messages.editChatCreator, messages.editChatDefaultBannedRights, messages.editChatParticipantRank, messages.editChatPhoto, messages.editChatTitle, messages.editFactCheck, messages.editForumTopic, messages.editMessage, messages.forwardMessages, messages.getAllDrafts, messages.getAttachMenuBot, messages.getChatInviteImporters, messages.getCommonChats, messages.getExportedChatInvites, messages.getExtendedMedia, messages.getGameHighScores, messages.getInlineBotResults, messages.getInlineGameHighScores, messages.getMessagesReactions, messages.getPaidReactionPrivacy, messages.getPersonalChannelHistory, messages.getPollResults, messages.getPreparedInlineMessage, messages.hideAllChatJoinRequests, messages.hideChatJoinRequest, messages.migrateChat, messages.prolongWebView, messages.reorderPinnedForumTopics, messages.requestEncryption, messages.requestMainWebView, messages.requestSimpleWebView, messages.requestWebView, messages.savePreparedInlineMessage, messages.sendBotRequestedPeer, messages.sendInlineBotResult, messages.sendMedia, messages.sendMessage, messages.sendMultiMedia, messages.sendPaidReaction, messages.sendQuickReplyMessages, messages.sendReaction, messages.sendScheduledMessages, messages.sendScreenshotNotification, messages.sendVote, messages.sendWebViewData, messages.setChatAvailableReactions, messages.setChatTheme, messages.setChatWallPaper, messages.setGameScore, messages.setHistoryTTL, messages.setInlineGameScore, messages.startBot, messages.summarizeText, messages.toggleBotInAttachMenu, messages.toggleNoForwards, messages.toggleSuggestedPostApproval, messages.toggleTodoCompleted, messages.translateText, messages.updatePinnedForumTopic, messages.updatePinnedMessage, payments.applyGiftCode, payments.assignAppStoreTransaction, payments.assignPlayMarketTransaction, payments.botCancelStarsSubscription, payments.connectStarRefBot, payments.craftStarGift, payments.getConnectedStarRefBot, payments.getStarsGiftOptions, payments.launchPrepaidGiveaway, payments.refundStarsCharge, payments.resolveStarGiftOffer, payments.sendStarGiftOffer, payments.transferStarGift, payments.updateStarGiftPrice, payments.upgradeStarGift, phone.createConferenceCall, phone.createGroupCall, phone.declineConferenceCallInvite, phone.deleteConferenceCallParticipants, phone.deleteGroupCallMessages, phone.deleteGroupCallParticipantMessages, phone.discardCall, phone.discardGroupCall, phone.editGroupCallParticipant, phone.editGroupCallTitle, phone.getGroupCallChainBlocks, phone.inviteConferenceCallParticipant, phone.inviteToGroupCall, phone.joinGroupCall, phone.joinGroupCallPresentation, phone.leaveGroupCall, phone.leaveGroupCallPresentation, phone.requestCall, phone.sendConferenceCallBroadcast, phone.sendGroupCallMessage, phone.setCallRating, phone.startScheduledGroupCall, phone.toggleGroupCallRecord, phone.toggleGroupCallSettings, phone.toggleGroupCallStartSubscription, photos.getUserPhotos, photos.updateProfilePhoto, photos.uploadContactProfilePhoto, photos.uploadProfilePhoto, premium.getUserBoosts, stickers.createStickerSet, stories.activateStealthMode, stories.editStory, stories.getAllReadPeerStories, stories.sendReaction, stories.sendStory, stories.startLive, users.getFullUser, users.getRequirementsToContact, users.getSavedMusic, users.getSavedMusicByID, users.getUsers, users.setSecureValueErrors, users.suggestBirthday
Availability evidence
Section titled “Availability evidence”- user only
Provenance
Section titled “Provenance”- layer: 228
- structural source:
tdlib - canonical schema: https://raw.githubusercontent.com/tdlib/td/refs/heads/master/td/generate/scheme/telegram_api.tl
- prose merge precedence: TDLib → Telegram Desktop → Core JSON
- source note: Canonical structure is the pinned TDLib telegram_api.tl; Layer 228 comes only from the matching Telegram Desktop end-of-file marker; core.telegram.org inputs enrich documentation and RPC error metadata without overriding structure.
Source-diff notes
Section titled “Source-diff notes”- tdlib_vs_core: changed_count=68; core_only_count=1; overlap_count=2302; tdlib_only_count=158
- tdlib_vs_tdesktop: changed_count=0; overlap_count=2448; tdesktop_only=null; tdlib_only=accessPointRule, ephemeral.editMessage, help.configSimple, inputPeerPhotoFileLocationLegacy, inputStickerSetThumbLegacy, invokeWithApnsSecretPrefix, invokeWithBusinessConnectionPrefix, invokeWithGooglePlayIntegrityPrefix, invokeWithReCaptchaPrefix, ipPort, ipPortSecret, updateEphemeralBotCallbackQuery