Update to TDLib 1.8.32

This commit is contained in:
c0re100 2024-07-02 01:51:28 +08:00
parent fefab36108
commit 1f84ff6e15
No known key found for this signature in database
GPG key ID: 7C3B3004FE745AAF
4 changed files with 899 additions and 230 deletions

View file

@ -4346,7 +4346,7 @@ type EditMessageCaptionRequest struct {
ReplyMarkup ReplyMarkup `json:"reply_markup"` ReplyMarkup ReplyMarkup `json:"reply_markup"`
// New message content caption; 0-getOption("message_caption_length_max") characters; pass null to remove caption // New message content caption; 0-getOption("message_caption_length_max") characters; pass null to remove caption
Caption *FormattedText `json:"caption"` Caption *FormattedText `json:"caption"`
// Pass true to show the caption above the media; otherwise, caption will be shown below the media. Can be true only for animation, photo, and video messages // Pass true to show the caption above the media; otherwise, the caption will be shown below the media. Can be true only for animation, photo, and video messages
ShowCaptionAboveMedia bool `json:"show_caption_above_media"` ShowCaptionAboveMedia bool `json:"show_caption_above_media"`
} }
@ -4519,7 +4519,7 @@ type EditInlineMessageCaptionRequest struct {
ReplyMarkup ReplyMarkup `json:"reply_markup"` ReplyMarkup ReplyMarkup `json:"reply_markup"`
// New message content caption; pass null to remove caption; 0-getOption("message_caption_length_max") characters // New message content caption; pass null to remove caption; 0-getOption("message_caption_length_max") characters
Caption *FormattedText `json:"caption"` Caption *FormattedText `json:"caption"`
// Pass true to show the caption above the media; otherwise, caption will be shown below the media. Can be true only for animation, photo, and video messages // Pass true to show the caption above the media; otherwise, the caption will be shown below the media. Can be true only for animation, photo, and video messages
ShowCaptionAboveMedia bool `json:"show_caption_above_media"` ShowCaptionAboveMedia bool `json:"show_caption_above_media"`
} }
@ -4865,7 +4865,7 @@ type EditBusinessMessageCaptionRequest struct {
ReplyMarkup ReplyMarkup `json:"reply_markup"` ReplyMarkup ReplyMarkup `json:"reply_markup"`
// New message content caption; pass null to remove caption; 0-getOption("message_caption_length_max") characters // New message content caption; pass null to remove caption; 0-getOption("message_caption_length_max") characters
Caption *FormattedText `json:"caption"` Caption *FormattedText `json:"caption"`
// Pass true to show the caption above the media; otherwise, caption will be shown below the media. Can be true only for animation, photo, and video messages // Pass true to show the caption above the media; otherwise, the caption will be shown below the media. Can be true only for animation, photo, and video messages
ShowCaptionAboveMedia bool `json:"show_caption_above_media"` ShowCaptionAboveMedia bool `json:"show_caption_above_media"`
} }
@ -17701,7 +17701,7 @@ type GetPaymentFormRequest struct {
Theme *ThemeParameters `json:"theme"` Theme *ThemeParameters `json:"theme"`
} }
// Returns an invoice payment form. This method must be called when the user presses inline button of the type inlineKeyboardButtonTypeBuy // Returns an invoice payment form. This method must be called when the user presses inline button of the type inlineKeyboardButtonTypeBuy, or wants to buy access to media in a messagePaidMedia message
func (client *Client) GetPaymentForm(req *GetPaymentFormRequest) (*PaymentForm, error) { func (client *Client) GetPaymentForm(req *GetPaymentFormRequest) (*PaymentForm, error) {
result, err := client.Send(Request{ result, err := client.Send(Request{
meta: meta{ meta: meta{
@ -19039,7 +19039,7 @@ type GetChatRevenueWithdrawalUrlRequest struct {
Password string `json:"password"` Password string `json:"password"`
} }
// Returns URL for chat revenue withdrawal; requires owner privileges in the chat. Currently, this method can be used only for channels if supergroupFullInfo.can_get_revenue_statistics == true and getOption("can_withdraw_chat_revenue") // Returns a URL for chat revenue withdrawal; requires owner privileges in the chat. Currently, this method can be used only for channels if supergroupFullInfo.can_get_revenue_statistics == true and getOption("can_withdraw_chat_revenue")
func (client *Client) GetChatRevenueWithdrawalUrl(req *GetChatRevenueWithdrawalUrlRequest) (*HttpUrl, error) { func (client *Client) GetChatRevenueWithdrawalUrl(req *GetChatRevenueWithdrawalUrlRequest) (*HttpUrl, error) {
result, err := client.Send(Request{ result, err := client.Send(Request{
meta: meta{ meta: meta{
@ -19094,7 +19094,7 @@ func (client *Client) GetChatRevenueTransactions(req *GetChatRevenueTransactions
} }
type GetStarRevenueStatisticsRequest struct { type GetStarRevenueStatisticsRequest struct {
// Identifier of the owner of the Telegram stars; can be identifier of an owned bot, or identifier of a channel chat with supergroupFullInfo.can_get_revenue_statistics == true // Identifier of the owner of the Telegram stars; can be identifier of an owned bot, or identifier of an owned channel chat
OwnerId MessageSender `json:"owner_id"` OwnerId MessageSender `json:"owner_id"`
// Pass true if a dark theme is used by the application // Pass true if a dark theme is used by the application
IsDark bool `json:"is_dark"` IsDark bool `json:"is_dark"`
@ -19123,7 +19123,7 @@ func (client *Client) GetStarRevenueStatistics(req *GetStarRevenueStatisticsRequ
} }
type GetStarWithdrawalUrlRequest struct { type GetStarWithdrawalUrlRequest struct {
// Identifier of the owner of the Telegram stars; can be identifier of an owned bot, or identifier of a channel chat with supergroupFullInfo.can_get_revenue_statistics == true // Identifier of the owner of the Telegram stars; can be identifier of an owned bot, or identifier of an owned channel chat
OwnerId MessageSender `json:"owner_id"` OwnerId MessageSender `json:"owner_id"`
// The number of Telegram stars to withdraw. Must be at least getOption("star_withdrawal_count_min") // The number of Telegram stars to withdraw. Must be at least getOption("star_withdrawal_count_min")
StarCount int64 `json:"star_count"` StarCount int64 `json:"star_count"`
@ -19131,7 +19131,7 @@ type GetStarWithdrawalUrlRequest struct {
Password string `json:"password"` Password string `json:"password"`
} }
// Returns URL for Telegram star withdrawal // Returns a URL for Telegram star withdrawal
func (client *Client) GetStarWithdrawalUrl(req *GetStarWithdrawalUrlRequest) (*HttpUrl, error) { func (client *Client) GetStarWithdrawalUrl(req *GetStarWithdrawalUrlRequest) (*HttpUrl, error) {
result, err := client.Send(Request{ result, err := client.Send(Request{
meta: meta{ meta: meta{
@ -19154,6 +19154,32 @@ func (client *Client) GetStarWithdrawalUrl(req *GetStarWithdrawalUrlRequest) (*H
return UnmarshalHttpUrl(result.Data) return UnmarshalHttpUrl(result.Data)
} }
type GetStarAdAccountUrlRequest struct {
// Identifier of the owner of the Telegram stars; can be identifier of an owned bot, or identifier of an owned channel chat
OwnerId MessageSender `json:"owner_id"`
}
// Returns a URL for a Telegram Ad platform account that can be used to set up advertisments for the chat paid in the owned Telegram stars
func (client *Client) GetStarAdAccountUrl(req *GetStarAdAccountUrlRequest) (*HttpUrl, error) {
result, err := client.Send(Request{
meta: meta{
Type: "getStarAdAccountUrl",
},
Data: map[string]interface{}{
"owner_id": req.OwnerId,
},
})
if err != nil {
return nil, err
}
if result.Type == "error" {
return nil, buildResponseError(result.Data)
}
return UnmarshalHttpUrl(result.Data)
}
type GetChatStatisticsRequest struct { type GetChatStatisticsRequest struct {
// Chat identifier // Chat identifier
ChatId int64 `json:"chat_id"` ChatId int64 `json:"chat_id"`

File diff suppressed because it is too large Load diff

View file

@ -200,6 +200,40 @@ func UnmarshalListOfAuthorizationState(dataList []json.RawMessage) ([]Authorizat
return list, nil return list, nil
} }
func UnmarshalFirebaseDeviceVerificationParameters(data json.RawMessage) (FirebaseDeviceVerificationParameters, error) {
var meta meta
err := json.Unmarshal(data, &meta)
if err != nil {
return nil, err
}
switch meta.Type {
case TypeFirebaseDeviceVerificationParametersSafetyNet:
return UnmarshalFirebaseDeviceVerificationParametersSafetyNet(data)
case TypeFirebaseDeviceVerificationParametersPlayIntegrity:
return UnmarshalFirebaseDeviceVerificationParametersPlayIntegrity(data)
default:
return nil, fmt.Errorf("Error unmarshaling. Unknown type: " + meta.Type)
}
}
func UnmarshalListOfFirebaseDeviceVerificationParameters(dataList []json.RawMessage) ([]FirebaseDeviceVerificationParameters, error) {
list := []FirebaseDeviceVerificationParameters{}
for _, data := range dataList {
entity, err := UnmarshalFirebaseDeviceVerificationParameters(data)
if err != nil {
return nil, err
}
list = append(list, entity)
}
return list, nil
}
func UnmarshalInputFile(data json.RawMessage) (InputFile, error) { func UnmarshalInputFile(data json.RawMessage) (InputFile, error) {
var meta meta var meta meta
@ -680,8 +714,11 @@ func UnmarshalStarTransactionPartner(data json.RawMessage) (StarTransactionPartn
case TypeStarTransactionPartnerFragment: case TypeStarTransactionPartnerFragment:
return UnmarshalStarTransactionPartnerFragment(data) return UnmarshalStarTransactionPartnerFragment(data)
case TypeStarTransactionPartnerUser: case TypeStarTransactionPartnerTelegramAds:
return UnmarshalStarTransactionPartnerUser(data) return UnmarshalStarTransactionPartnerTelegramAds(data)
case TypeStarTransactionPartnerBot:
return UnmarshalStarTransactionPartnerBot(data)
case TypeStarTransactionPartnerChannel: case TypeStarTransactionPartnerChannel:
return UnmarshalStarTransactionPartnerChannel(data) return UnmarshalStarTransactionPartnerChannel(data)
@ -2398,7 +2435,7 @@ func UnmarshalListOfInputInvoice(dataList []json.RawMessage) ([]InputInvoice, er
return list, nil return list, nil
} }
func UnmarshalMessageExtendedMedia(data json.RawMessage) (MessageExtendedMedia, error) { func UnmarshalPaidMedia(data json.RawMessage) (PaidMedia, error) {
var meta meta var meta meta
err := json.Unmarshal(data, &meta) err := json.Unmarshal(data, &meta)
@ -2407,28 +2444,28 @@ func UnmarshalMessageExtendedMedia(data json.RawMessage) (MessageExtendedMedia,
} }
switch meta.Type { switch meta.Type {
case TypeMessageExtendedMediaPreview: case TypePaidMediaPreview:
return UnmarshalMessageExtendedMediaPreview(data) return UnmarshalPaidMediaPreview(data)
case TypeMessageExtendedMediaPhoto: case TypePaidMediaPhoto:
return UnmarshalMessageExtendedMediaPhoto(data) return UnmarshalPaidMediaPhoto(data)
case TypeMessageExtendedMediaVideo: case TypePaidMediaVideo:
return UnmarshalMessageExtendedMediaVideo(data) return UnmarshalPaidMediaVideo(data)
case TypeMessageExtendedMediaUnsupported: case TypePaidMediaUnsupported:
return UnmarshalMessageExtendedMediaUnsupported(data) return UnmarshalPaidMediaUnsupported(data)
default: default:
return nil, fmt.Errorf("Error unmarshaling. Unknown type: " + meta.Type) return nil, fmt.Errorf("Error unmarshaling. Unknown type: " + meta.Type)
} }
} }
func UnmarshalListOfMessageExtendedMedia(dataList []json.RawMessage) ([]MessageExtendedMedia, error) { func UnmarshalListOfPaidMedia(dataList []json.RawMessage) ([]PaidMedia, error) {
list := []MessageExtendedMedia{} list := []PaidMedia{}
for _, data := range dataList { for _, data := range dataList {
entity, err := UnmarshalMessageExtendedMedia(data) entity, err := UnmarshalPaidMedia(data)
if err != nil { if err != nil {
return nil, err return nil, err
} }
@ -2770,6 +2807,9 @@ func UnmarshalMessageContent(data json.RawMessage) (MessageContent, error) {
case TypeMessageDocument: case TypeMessageDocument:
return UnmarshalMessageDocument(data) return UnmarshalMessageDocument(data)
case TypeMessagePaidMedia:
return UnmarshalMessagePaidMedia(data)
case TypeMessagePhoto: case TypeMessagePhoto:
return UnmarshalMessagePhoto(data) return UnmarshalMessagePhoto(data)
@ -3078,6 +3118,40 @@ func UnmarshalListOfTextEntityType(dataList []json.RawMessage) ([]TextEntityType
return list, nil return list, nil
} }
func UnmarshalInputPaidMediaType(data json.RawMessage) (InputPaidMediaType, error) {
var meta meta
err := json.Unmarshal(data, &meta)
if err != nil {
return nil, err
}
switch meta.Type {
case TypeInputPaidMediaTypePhoto:
return UnmarshalInputPaidMediaTypePhoto(data)
case TypeInputPaidMediaTypeVideo:
return UnmarshalInputPaidMediaTypeVideo(data)
default:
return nil, fmt.Errorf("Error unmarshaling. Unknown type: " + meta.Type)
}
}
func UnmarshalListOfInputPaidMediaType(dataList []json.RawMessage) ([]InputPaidMediaType, error) {
list := []InputPaidMediaType{}
for _, data := range dataList {
entity, err := UnmarshalInputPaidMediaType(data)
if err != nil {
return nil, err
}
list = append(list, entity)
}
return list, nil
}
func UnmarshalMessageSchedulingState(data json.RawMessage) (MessageSchedulingState, error) { func UnmarshalMessageSchedulingState(data json.RawMessage) (MessageSchedulingState, error) {
var meta meta var meta meta
@ -3167,6 +3241,9 @@ func UnmarshalInputMessageContent(data json.RawMessage) (InputMessageContent, er
case TypeInputMessageDocument: case TypeInputMessageDocument:
return UnmarshalInputMessageDocument(data) return UnmarshalInputMessageDocument(data)
case TypeInputMessagePaidMedia:
return UnmarshalInputMessagePaidMedia(data)
case TypeInputMessagePhoto: case TypeInputMessagePhoto:
return UnmarshalInputMessagePhoto(data) return UnmarshalInputMessagePhoto(data)
@ -4838,6 +4915,9 @@ func UnmarshalPremiumFeature(data json.RawMessage) (PremiumFeature, error) {
case TypePremiumFeatureBusiness: case TypePremiumFeatureBusiness:
return UnmarshalPremiumFeatureBusiness(data) return UnmarshalPremiumFeatureBusiness(data)
case TypePremiumFeatureMessageEffects:
return UnmarshalPremiumFeatureMessageEffects(data)
default: default:
return nil, fmt.Errorf("Error unmarshaling. Unknown type: " + meta.Type) return nil, fmt.Errorf("Error unmarshaling. Unknown type: " + meta.Type)
} }
@ -5553,6 +5633,9 @@ func UnmarshalPushMessageContent(data json.RawMessage) (PushMessageContent, erro
case TypePushMessageContentLocation: case TypePushMessageContentLocation:
return UnmarshalPushMessageContentLocation(data) return UnmarshalPushMessageContentLocation(data)
case TypePushMessageContentPaidMedia:
return UnmarshalPushMessageContentPaidMedia(data)
case TypePushMessageContentPhoto: case TypePushMessageContentPhoto:
return UnmarshalPushMessageContentPhoto(data) return UnmarshalPushMessageContentPhoto(data)
@ -7931,6 +8014,22 @@ func UnmarshalAuthorizationStateClosed(data json.RawMessage) (*AuthorizationStat
return &resp, err return &resp, err
} }
func UnmarshalFirebaseDeviceVerificationParametersSafetyNet(data json.RawMessage) (*FirebaseDeviceVerificationParametersSafetyNet, error) {
var resp FirebaseDeviceVerificationParametersSafetyNet
err := json.Unmarshal(data, &resp)
return &resp, err
}
func UnmarshalFirebaseDeviceVerificationParametersPlayIntegrity(data json.RawMessage) (*FirebaseDeviceVerificationParametersPlayIntegrity, error) {
var resp FirebaseDeviceVerificationParametersPlayIntegrity
err := json.Unmarshal(data, &resp)
return &resp, err
}
func UnmarshalPasswordState(data json.RawMessage) (*PasswordState, error) { func UnmarshalPasswordState(data json.RawMessage) (*PasswordState, error) {
var resp PasswordState var resp PasswordState
@ -8819,8 +8918,16 @@ func UnmarshalStarTransactionPartnerFragment(data json.RawMessage) (*StarTransac
return &resp, err return &resp, err
} }
func UnmarshalStarTransactionPartnerUser(data json.RawMessage) (*StarTransactionPartnerUser, error) { func UnmarshalStarTransactionPartnerTelegramAds(data json.RawMessage) (*StarTransactionPartnerTelegramAds, error) {
var resp StarTransactionPartnerUser var resp StarTransactionPartnerTelegramAds
err := json.Unmarshal(data, &resp)
return &resp, err
}
func UnmarshalStarTransactionPartnerBot(data json.RawMessage) (*StarTransactionPartnerBot, error) {
var resp StarTransactionPartnerBot
err := json.Unmarshal(data, &resp) err := json.Unmarshal(data, &resp)
@ -11395,32 +11502,32 @@ func UnmarshalInputInvoiceTelegram(data json.RawMessage) (*InputInvoiceTelegram,
return &resp, err return &resp, err
} }
func UnmarshalMessageExtendedMediaPreview(data json.RawMessage) (*MessageExtendedMediaPreview, error) { func UnmarshalPaidMediaPreview(data json.RawMessage) (*PaidMediaPreview, error) {
var resp MessageExtendedMediaPreview var resp PaidMediaPreview
err := json.Unmarshal(data, &resp) err := json.Unmarshal(data, &resp)
return &resp, err return &resp, err
} }
func UnmarshalMessageExtendedMediaPhoto(data json.RawMessage) (*MessageExtendedMediaPhoto, error) { func UnmarshalPaidMediaPhoto(data json.RawMessage) (*PaidMediaPhoto, error) {
var resp MessageExtendedMediaPhoto var resp PaidMediaPhoto
err := json.Unmarshal(data, &resp) err := json.Unmarshal(data, &resp)
return &resp, err return &resp, err
} }
func UnmarshalMessageExtendedMediaVideo(data json.RawMessage) (*MessageExtendedMediaVideo, error) { func UnmarshalPaidMediaVideo(data json.RawMessage) (*PaidMediaVideo, error) {
var resp MessageExtendedMediaVideo var resp PaidMediaVideo
err := json.Unmarshal(data, &resp) err := json.Unmarshal(data, &resp)
return &resp, err return &resp, err
} }
func UnmarshalMessageExtendedMediaUnsupported(data json.RawMessage) (*MessageExtendedMediaUnsupported, error) { func UnmarshalPaidMediaUnsupported(data json.RawMessage) (*PaidMediaUnsupported, error) {
var resp MessageExtendedMediaUnsupported var resp PaidMediaUnsupported
err := json.Unmarshal(data, &resp) err := json.Unmarshal(data, &resp)
@ -12051,6 +12158,14 @@ func UnmarshalMessageDocument(data json.RawMessage) (*MessageDocument, error) {
return &resp, err return &resp, err
} }
func UnmarshalMessagePaidMedia(data json.RawMessage) (*MessagePaidMedia, error) {
var resp MessagePaidMedia
err := json.Unmarshal(data, &resp)
return &resp, err
}
func UnmarshalMessagePhoto(data json.RawMessage) (*MessagePhoto, error) { func UnmarshalMessagePhoto(data json.RawMessage) (*MessagePhoto, error) {
var resp MessagePhoto var resp MessagePhoto
@ -12755,6 +12870,30 @@ func UnmarshalInputThumbnail(data json.RawMessage) (*InputThumbnail, error) {
return &resp, err return &resp, err
} }
func UnmarshalInputPaidMediaTypePhoto(data json.RawMessage) (*InputPaidMediaTypePhoto, error) {
var resp InputPaidMediaTypePhoto
err := json.Unmarshal(data, &resp)
return &resp, err
}
func UnmarshalInputPaidMediaTypeVideo(data json.RawMessage) (*InputPaidMediaTypeVideo, error) {
var resp InputPaidMediaTypeVideo
err := json.Unmarshal(data, &resp)
return &resp, err
}
func UnmarshalInputPaidMedia(data json.RawMessage) (*InputPaidMedia, error) {
var resp InputPaidMedia
err := json.Unmarshal(data, &resp)
return &resp, err
}
func UnmarshalMessageSchedulingStateSendAtDate(data json.RawMessage) (*MessageSchedulingStateSendAtDate, error) { func UnmarshalMessageSchedulingStateSendAtDate(data json.RawMessage) (*MessageSchedulingStateSendAtDate, error) {
var resp MessageSchedulingStateSendAtDate var resp MessageSchedulingStateSendAtDate
@ -12835,6 +12974,14 @@ func UnmarshalInputMessageDocument(data json.RawMessage) (*InputMessageDocument,
return &resp, err return &resp, err
} }
func UnmarshalInputMessagePaidMedia(data json.RawMessage) (*InputMessagePaidMedia, error) {
var resp InputMessagePaidMedia
err := json.Unmarshal(data, &resp)
return &resp, err
}
func UnmarshalInputMessagePhoto(data json.RawMessage) (*InputMessagePhoto, error) { func UnmarshalInputMessagePhoto(data json.RawMessage) (*InputMessagePhoto, error) {
var resp InputMessagePhoto var resp InputMessagePhoto
@ -15443,6 +15590,14 @@ func UnmarshalPremiumFeatureBusiness(data json.RawMessage) (*PremiumFeatureBusin
return &resp, err return &resp, err
} }
func UnmarshalPremiumFeatureMessageEffects(data json.RawMessage) (*PremiumFeatureMessageEffects, error) {
var resp PremiumFeatureMessageEffects
err := json.Unmarshal(data, &resp)
return &resp, err
}
func UnmarshalBusinessFeatureLocation(data json.RawMessage) (*BusinessFeatureLocation, error) { func UnmarshalBusinessFeatureLocation(data json.RawMessage) (*BusinessFeatureLocation, error) {
var resp BusinessFeatureLocation var resp BusinessFeatureLocation
@ -16251,6 +16406,14 @@ func UnmarshalPushMessageContentLocation(data json.RawMessage) (*PushMessageCont
return &resp, err return &resp, err
} }
func UnmarshalPushMessageContentPaidMedia(data json.RawMessage) (*PushMessageContentPaidMedia, error) {
var resp PushMessageContentPaidMedia
err := json.Unmarshal(data, &resp)
return &resp, err
}
func UnmarshalPushMessageContentPhoto(data json.RawMessage) (*PushMessageContentPhoto, error) { func UnmarshalPushMessageContentPhoto(data json.RawMessage) (*PushMessageContentPhoto, error) {
var resp PushMessageContentPhoto var resp PushMessageContentPhoto
@ -19997,6 +20160,12 @@ func UnmarshalType(data json.RawMessage) (Type, error) {
case TypeAuthorizationStateClosed: case TypeAuthorizationStateClosed:
return UnmarshalAuthorizationStateClosed(data) return UnmarshalAuthorizationStateClosed(data)
case TypeFirebaseDeviceVerificationParametersSafetyNet:
return UnmarshalFirebaseDeviceVerificationParametersSafetyNet(data)
case TypeFirebaseDeviceVerificationParametersPlayIntegrity:
return UnmarshalFirebaseDeviceVerificationParametersPlayIntegrity(data)
case TypePasswordState: case TypePasswordState:
return UnmarshalPasswordState(data) return UnmarshalPasswordState(data)
@ -20330,8 +20499,11 @@ func UnmarshalType(data json.RawMessage) (Type, error) {
case TypeStarTransactionPartnerFragment: case TypeStarTransactionPartnerFragment:
return UnmarshalStarTransactionPartnerFragment(data) return UnmarshalStarTransactionPartnerFragment(data)
case TypeStarTransactionPartnerUser: case TypeStarTransactionPartnerTelegramAds:
return UnmarshalStarTransactionPartnerUser(data) return UnmarshalStarTransactionPartnerTelegramAds(data)
case TypeStarTransactionPartnerBot:
return UnmarshalStarTransactionPartnerBot(data)
case TypeStarTransactionPartnerChannel: case TypeStarTransactionPartnerChannel:
return UnmarshalStarTransactionPartnerChannel(data) return UnmarshalStarTransactionPartnerChannel(data)
@ -21296,17 +21468,17 @@ func UnmarshalType(data json.RawMessage) (Type, error) {
case TypeInputInvoiceTelegram: case TypeInputInvoiceTelegram:
return UnmarshalInputInvoiceTelegram(data) return UnmarshalInputInvoiceTelegram(data)
case TypeMessageExtendedMediaPreview: case TypePaidMediaPreview:
return UnmarshalMessageExtendedMediaPreview(data) return UnmarshalPaidMediaPreview(data)
case TypeMessageExtendedMediaPhoto: case TypePaidMediaPhoto:
return UnmarshalMessageExtendedMediaPhoto(data) return UnmarshalPaidMediaPhoto(data)
case TypeMessageExtendedMediaVideo: case TypePaidMediaVideo:
return UnmarshalMessageExtendedMediaVideo(data) return UnmarshalPaidMediaVideo(data)
case TypeMessageExtendedMediaUnsupported: case TypePaidMediaUnsupported:
return UnmarshalMessageExtendedMediaUnsupported(data) return UnmarshalPaidMediaUnsupported(data)
case TypePremiumGiveawayParameters: case TypePremiumGiveawayParameters:
return UnmarshalPremiumGiveawayParameters(data) return UnmarshalPremiumGiveawayParameters(data)
@ -21542,6 +21714,9 @@ func UnmarshalType(data json.RawMessage) (Type, error) {
case TypeMessageDocument: case TypeMessageDocument:
return UnmarshalMessageDocument(data) return UnmarshalMessageDocument(data)
case TypeMessagePaidMedia:
return UnmarshalMessagePaidMedia(data)
case TypeMessagePhoto: case TypeMessagePhoto:
return UnmarshalMessagePhoto(data) return UnmarshalMessagePhoto(data)
@ -21806,6 +21981,15 @@ func UnmarshalType(data json.RawMessage) (Type, error) {
case TypeInputThumbnail: case TypeInputThumbnail:
return UnmarshalInputThumbnail(data) return UnmarshalInputThumbnail(data)
case TypeInputPaidMediaTypePhoto:
return UnmarshalInputPaidMediaTypePhoto(data)
case TypeInputPaidMediaTypeVideo:
return UnmarshalInputPaidMediaTypeVideo(data)
case TypeInputPaidMedia:
return UnmarshalInputPaidMedia(data)
case TypeMessageSchedulingStateSendAtDate: case TypeMessageSchedulingStateSendAtDate:
return UnmarshalMessageSchedulingStateSendAtDate(data) return UnmarshalMessageSchedulingStateSendAtDate(data)
@ -21836,6 +22020,9 @@ func UnmarshalType(data json.RawMessage) (Type, error) {
case TypeInputMessageDocument: case TypeInputMessageDocument:
return UnmarshalInputMessageDocument(data) return UnmarshalInputMessageDocument(data)
case TypeInputMessagePaidMedia:
return UnmarshalInputMessagePaidMedia(data)
case TypeInputMessagePhoto: case TypeInputMessagePhoto:
return UnmarshalInputMessagePhoto(data) return UnmarshalInputMessagePhoto(data)
@ -22814,6 +23001,9 @@ func UnmarshalType(data json.RawMessage) (Type, error) {
case TypePremiumFeatureBusiness: case TypePremiumFeatureBusiness:
return UnmarshalPremiumFeatureBusiness(data) return UnmarshalPremiumFeatureBusiness(data)
case TypePremiumFeatureMessageEffects:
return UnmarshalPremiumFeatureMessageEffects(data)
case TypeBusinessFeatureLocation: case TypeBusinessFeatureLocation:
return UnmarshalBusinessFeatureLocation(data) return UnmarshalBusinessFeatureLocation(data)
@ -23117,6 +23307,9 @@ func UnmarshalType(data json.RawMessage) (Type, error) {
case TypePushMessageContentLocation: case TypePushMessageContentLocation:
return UnmarshalPushMessageContentLocation(data) return UnmarshalPushMessageContentLocation(data)
case TypePushMessageContentPaidMedia:
return UnmarshalPushMessageContentPaidMedia(data)
case TypePushMessageContentPhoto: case TypePushMessageContentPhoto:
return UnmarshalPushMessageContentPhoto(data) return UnmarshalPushMessageContentPhoto(data)

View file

@ -59,10 +59,9 @@ authenticationCodeTypeMissedCall phone_number_prefix:string length:int32 = Authe
authenticationCodeTypeFragment url:string length:int32 = AuthenticationCodeType; authenticationCodeTypeFragment url:string length:int32 = AuthenticationCodeType;
//@description A digit-only authentication code is delivered via Firebase Authentication to the official Android application //@description A digit-only authentication code is delivered via Firebase Authentication to the official Android application
//@use_play_integrity True, if Play Integrity API must be used for device verification. Otherwise, SafetyNet Attestation API must be used //@device_verification_parameters Parameters to be used for device verification
//@nonce Nonce to pass to the Play Integrity API or the SafetyNet Attestation API
//@length Length of the code //@length Length of the code
authenticationCodeTypeFirebaseAndroid use_play_integrity:Bool nonce:bytes length:int32 = AuthenticationCodeType; authenticationCodeTypeFirebaseAndroid device_verification_parameters:FirebaseDeviceVerificationParameters length:int32 = AuthenticationCodeType;
//@description A digit-only authentication code is delivered via Firebase Authentication to the official iOS application //@description A digit-only authentication code is delivered via Firebase Authentication to the official iOS application
//@receipt Receipt of successful application token validation to compare with receipt from push notification //@receipt Receipt of successful application token validation to compare with receipt from push notification
@ -173,6 +172,17 @@ authorizationStateClosing = AuthorizationState;
authorizationStateClosed = AuthorizationState; authorizationStateClosed = AuthorizationState;
//@class FirebaseDeviceVerificationParameters @description Describes parameters to be used for device verification
//@description Device verification must be performed with the SafetyNet Attestation API @nonce Nonce to pass to the SafetyNet Attestation API
firebaseDeviceVerificationParametersSafetyNet nonce:bytes = FirebaseDeviceVerificationParameters;
//@description Device verification must be performed with the classic Play Integrity verification (https://developer.android.com/google/play/integrity/classic)
//@nonce Base64url-encoded nonce to pass to the Play Integrity API
//@cloud_project_number Cloud project number to pass to the Play Integrity API
firebaseDeviceVerificationParametersPlayIntegrity nonce:string cloud_project_number:int64 = FirebaseDeviceVerificationParameters;
//@description Represents the current state of 2-step verification //@description Represents the current state of 2-step verification
//@has_password True, if a 2-step verification password is set //@has_password True, if a 2-step verification password is set
//@password_hint Hint for the password; may be empty //@password_hint Hint for the password; may be empty
@ -579,7 +589,9 @@ botCommand command:string description:string = BotCommand;
//@description Contains a list of bot commands @bot_user_id Bot's user identifier @commands List of bot commands //@description Contains a list of bot commands @bot_user_id Bot's user identifier @commands List of bot commands
botCommands bot_user_id:int53 commands:vector<botCommand> = BotCommands; botCommands bot_user_id:int53 commands:vector<botCommand> = BotCommands;
//@description Describes a button to be shown instead of bot commands menu button @text Text of the button @url URL to be passed to openWebApp //@description Describes a button to be shown instead of bot commands menu button
//@text Text of the button
//@url URL of a Web App to open when the button is pressed. If the link is of the type internalLinkTypeWebApp, then it must be processed accordingly. Otherwise, the link must be passed to openWebApp
botMenuButton text:string url:string = BotMenuButton; botMenuButton text:string url:string = BotMenuButton;
@ -811,7 +823,7 @@ premiumPaymentOption currency:string amount:int53 discount_percentage:int32 mont
//@last_transaction_id Identifier of the last in-store transaction for the currently used option //@last_transaction_id Identifier of the last in-store transaction for the currently used option
premiumStatePaymentOption payment_option:premiumPaymentOption is_current:Bool is_upgrade:Bool last_transaction_id:string = PremiumStatePaymentOption; premiumStatePaymentOption payment_option:premiumPaymentOption is_current:Bool is_upgrade:Bool last_transaction_id:string = PremiumStatePaymentOption;
//@description Describes an option for creating Telegram Premium gift codes //@description Describes an option for creating Telegram Premium gift codes. Use telegramPaymentPurposePremiumGiftCodes for out-of-store payments
//@currency ISO 4217 currency code for Telegram Premium gift code payment //@currency ISO 4217 currency code for Telegram Premium gift code payment
//@amount The amount to pay, in the smallest units of the currency //@amount The amount to pay, in the smallest units of the currency
//@user_count Number of users which will be able to activate the gift codes //@user_count Number of users which will be able to activate the gift codes
@ -833,7 +845,7 @@ premiumGiftCodePaymentOptions options:vector<premiumGiftCodePaymentOption> = Pre
//@use_date Point in time (Unix timestamp) when the code was activated; 0 if none //@use_date Point in time (Unix timestamp) when the code was activated; 0 if none
premiumGiftCodeInfo creator_id:MessageSender creation_date:int32 is_from_giveaway:Bool giveaway_message_id:int53 month_count:int32 user_id:int53 use_date:int32 = PremiumGiftCodeInfo; premiumGiftCodeInfo creator_id:MessageSender creation_date:int32 is_from_giveaway:Bool giveaway_message_id:int53 month_count:int32 user_id:int53 use_date:int32 = PremiumGiftCodeInfo;
//@description Describes an option for buying Telegram stars //@description Describes an option for buying Telegram stars. Use telegramPaymentPurposeStars for out-of-store payments
//@currency ISO 4217 currency code for the payment //@currency ISO 4217 currency code for the payment
//@amount The amount to pay, in the smallest units of the currency //@amount The amount to pay, in the smallest units of the currency
//@star_count Number of Telegram stars that will be purchased //@star_count Number of Telegram stars that will be purchased
@ -868,11 +880,20 @@ starTransactionPartnerGooglePlay = StarTransactionPartner;
//@description The transaction is a transaction with Fragment @withdrawal_state State of the withdrawal; may be null for refunds from Fragment //@description The transaction is a transaction with Fragment @withdrawal_state State of the withdrawal; may be null for refunds from Fragment
starTransactionPartnerFragment withdrawal_state:RevenueWithdrawalState = StarTransactionPartner; starTransactionPartnerFragment withdrawal_state:RevenueWithdrawalState = StarTransactionPartner;
//@description The transaction is a transaction with another user @user_id Identifier of the user @product_info Information about the bought product; may be null if none //@description The transaction is a transaction with Telegram Ad platform
starTransactionPartnerUser user_id:int53 product_info:productInfo = StarTransactionPartner; starTransactionPartnerTelegramAds = StarTransactionPartner;
//@description The transaction is a transaction with a channel chat @chat_id Identifier of the chat //@description The transaction is a transaction with a bot
starTransactionPartnerChannel chat_id:int53 = StarTransactionPartner; //@bot_user_id Identifier of the bot
//@product_info Information about the bought product; may be null if not applicable
//@invoice_payload Invoice payload; for bots only
starTransactionPartnerBot bot_user_id:int53 product_info:productInfo invoice_payload:bytes = StarTransactionPartner;
//@description The transaction is a transaction with a channel chat
//@chat_id Identifier of the chat
//@paid_media_message_id Identifier of the corresponding message with paid media; can be an identifier of a deleted message
//@media Information about the bought media
starTransactionPartnerChannel chat_id:int53 paid_media_message_id:int53 media:vector<PaidMedia> = StarTransactionPartner;
//@description The transaction is a transaction with unknown partner //@description The transaction is a transaction with unknown partner
starTransactionPartnerUnsupported = StarTransactionPartner; starTransactionPartnerUnsupported = StarTransactionPartner;
@ -1298,6 +1319,7 @@ supergroup id:int53 access_hash:int64 usernames:usernames date:int32 status:Chat
//-so this option affects only private non-forum supergroups without a linked chat. The value of this field is only available to chat administrators //-so this option affects only private non-forum supergroups without a linked chat. The value of this field is only available to chat administrators
//@can_have_sponsored_messages True, if the chat can have sponsored messages. The value of this field is only available to the owner of the chat //@can_have_sponsored_messages True, if the chat can have sponsored messages. The value of this field is only available to the owner of the chat
//@has_aggressive_anti_spam_enabled True, if aggressive anti-spam checks are enabled in the supergroup. The value of this field is only available to chat administrators //@has_aggressive_anti_spam_enabled True, if aggressive anti-spam checks are enabled in the supergroup. The value of this field is only available to chat administrators
//@has_paid_media_allowed True, if paid media can be sent and forwarded to the channel chat; for channels only
//@has_pinned_stories True, if the supergroup or channel has pinned stories //@has_pinned_stories True, if the supergroup or channel has pinned stories
//@my_boost_count Number of times the current user boosted the supergroup or channel //@my_boost_count Number of times the current user boosted the supergroup or channel
//@unrestrict_boost_count Number of times the supergroup must be boosted by a user to ignore slow mode and chat permission restrictions; 0 if unspecified //@unrestrict_boost_count Number of times the supergroup must be boosted by a user to ignore slow mode and chat permission restrictions; 0 if unspecified
@ -1308,7 +1330,7 @@ supergroup id:int53 access_hash:int64 usernames:usernames date:int32 status:Chat
//@bot_commands List of commands of bots in the group //@bot_commands List of commands of bots in the group
//@upgraded_from_basic_group_id Identifier of the basic group from which supergroup was upgraded; 0 if none //@upgraded_from_basic_group_id Identifier of the basic group from which supergroup was upgraded; 0 if none
//@upgraded_from_max_message_id Identifier of the last message in the basic group from which supergroup was upgraded; 0 if none //@upgraded_from_max_message_id Identifier of the last message in the basic group from which supergroup was upgraded; 0 if none
supergroupFullInfo photo:chatPhoto description:string member_count:int32 administrator_count:int32 restricted_count:int32 banned_count:int32 linked_chat_id:int53 slow_mode_delay:int32 slow_mode_delay_expires_in:double can_get_members:Bool has_hidden_members:Bool can_hide_members:Bool can_set_sticker_set:Bool can_set_location:Bool can_get_statistics:Bool can_get_revenue_statistics:Bool can_toggle_aggressive_anti_spam:Bool is_all_history_available:Bool can_have_sponsored_messages:Bool has_aggressive_anti_spam_enabled:Bool has_pinned_stories:Bool my_boost_count:int32 unrestrict_boost_count:int32 sticker_set_id:int64 custom_emoji_sticker_set_id:int64 location:chatLocation invite_link:chatInviteLink bot_commands:vector<botCommands> upgraded_from_basic_group_id:int53 upgraded_from_max_message_id:int53 = SupergroupFullInfo; supergroupFullInfo photo:chatPhoto description:string member_count:int32 administrator_count:int32 restricted_count:int32 banned_count:int32 linked_chat_id:int53 slow_mode_delay:int32 slow_mode_delay_expires_in:double can_get_members:Bool has_hidden_members:Bool can_hide_members:Bool can_set_sticker_set:Bool can_set_location:Bool can_get_statistics:Bool can_get_revenue_statistics:Bool can_toggle_aggressive_anti_spam:Bool is_all_history_available:Bool can_have_sponsored_messages:Bool has_aggressive_anti_spam_enabled:Bool has_paid_media_allowed:Bool has_pinned_stories:Bool my_boost_count:int32 unrestrict_boost_count:int32 sticker_set_id:int64 custom_emoji_sticker_set_id:int64 location:chatLocation invite_link:chatInviteLink bot_commands:vector<botCommands> upgraded_from_basic_group_id:int53 upgraded_from_max_message_id:int53 = SupergroupFullInfo;
//@class SecretChatState @description Describes the current secret chat state //@class SecretChatState @description Describes the current secret chat state
@ -1520,8 +1542,8 @@ inputTextQuote text:formattedText position:int32 = InputTextQuote;
//@origin_send_date Point in time (Unix timestamp) when the message was sent if the message was from another chat or topic; 0 for messages from the same chat //@origin_send_date Point in time (Unix timestamp) when the message was sent if the message was from another chat or topic; 0 for messages from the same chat
//@content Media content of the message if the message was from another chat or topic; may be null for messages from the same chat and messages without media. //@content Media content of the message if the message was from another chat or topic; may be null for messages from the same chat and messages without media.
//-Can be only one of the following types: messageAnimation, messageAudio, messageContact, messageDice, messageDocument, messageGame, messageInvoice, messageLocation, //-Can be only one of the following types: messageAnimation, messageAudio, messageContact, messageDice, messageDocument, messageGame, messageInvoice, messageLocation,
//-messagePhoto, messagePoll, messagePremiumGiveaway, messagePremiumGiveawayWinners, messageSticker, messageStory, messageText (for link preview), messageVenue, //-messagePaidMedia, messagePhoto, messagePoll, messagePremiumGiveaway, messagePremiumGiveawayWinners, messageSticker, messageStory, messageText (for link preview),
//-messageVideo, messageVideoNote, or messageVoiceNote //-messageVenue, messageVideo, messageVideoNote, or messageVoiceNote
messageReplyToMessage chat_id:int53 message_id:int53 quote:textQuote origin:MessageOrigin origin_send_date:int32 content:MessageContent = MessageReplyTo; messageReplyToMessage chat_id:int53 message_id:int53 quote:textQuote origin:MessageOrigin origin_send_date:int32 content:MessageContent = MessageReplyTo;
//@description Describes a story replied by a given message @story_sender_chat_id The identifier of the sender of the story @story_id The identifier of the story //@description Describes a story replied by a given message @story_sender_chat_id The identifier of the sender of the story @story_id The identifier of the story
@ -2103,7 +2125,7 @@ keyboardButton text:string type:KeyboardButtonType = KeyboardButton;
//@class InlineKeyboardButtonType @description Describes the type of inline keyboard button //@class InlineKeyboardButtonType @description Describes the type of inline keyboard button
//@description A button that opens a specified URL @url HTTP or tg:// URL to open //@description A button that opens a specified URL @url HTTP or tg:// URL to open. If the link is of the type internalLinkTypeWebApp, then the button must be marked as a Web App button
inlineKeyboardButtonTypeUrl url:string = InlineKeyboardButtonType; inlineKeyboardButtonTypeUrl url:string = InlineKeyboardButtonType;
//@description A button that opens a specified URL and automatically authorize the current user by calling getLoginUrlInfo @url An HTTP URL to pass to getLoginUrlInfo @id Unique button identifier @forward_text If non-empty, new text of the button in forwarded messages //@description A button that opens a specified URL and automatically authorize the current user by calling getLoginUrlInfo @url An HTTP URL to pass to getLoginUrlInfo @id Unique button identifier @forward_text If non-empty, new text of the button in forwarded messages
@ -2635,6 +2657,7 @@ locationAddress country_code:string state:string city:string street:string = Loc
//@secondary_background_color A secondary color for the background in the RGB24 format //@secondary_background_color A secondary color for the background in the RGB24 format
//@header_background_color A color of the header background in the RGB24 format //@header_background_color A color of the header background in the RGB24 format
//@section_background_color A color of the section background in the RGB24 format //@section_background_color A color of the section background in the RGB24 format
//@section_separator_color A color of the section separator in the RGB24 format
//@text_color A color of text in the RGB24 format //@text_color A color of text in the RGB24 format
//@accent_text_color An accent color of the text in the RGB24 format //@accent_text_color An accent color of the text in the RGB24 format
//@section_header_text_color A color of text on the section headers in the RGB24 format //@section_header_text_color A color of text on the section headers in the RGB24 format
@ -2644,7 +2667,7 @@ locationAddress country_code:string state:string city:string street:string = Loc
//@link_color A color of links in the RGB24 format //@link_color A color of links in the RGB24 format
//@button_color A color of the buttons in the RGB24 format //@button_color A color of the buttons in the RGB24 format
//@button_text_color A color of text on the buttons in the RGB24 format //@button_text_color A color of text on the buttons in the RGB24 format
themeParameters background_color:int32 secondary_background_color:int32 header_background_color:int32 section_background_color:int32 text_color:int32 accent_text_color:int32 section_header_text_color:int32 subtitle_text_color:int32 destructive_text_color:int32 hint_color:int32 link_color:int32 button_color:int32 button_text_color:int32 = ThemeParameters; themeParameters background_color:int32 secondary_background_color:int32 header_background_color:int32 section_background_color:int32 section_separator_color:int32 text_color:int32 accent_text_color:int32 section_header_text_color:int32 subtitle_text_color:int32 destructive_text_color:int32 hint_color:int32 link_color:int32 button_color:int32 button_text_color:int32 = ThemeParameters;
//@description Portion of the price of a product (e.g., "delivery cost", "tax amount") @label Label for this portion of the product price @amount Currency amount in the smallest units of the currency //@description Portion of the price of a product (e.g., "delivery cost", "tax amount") @label Label for this portion of the product price @amount Currency amount in the smallest units of the currency
@ -2777,7 +2800,7 @@ paymentReceipt product_info:productInfo date:int32 seller_bot_user_id:int53 type
//@class InputInvoice @description Describes an invoice to process //@class InputInvoice @description Describes an invoice to process
//@description An invoice from a message of the type messageInvoice @chat_id Chat identifier of the message @message_id Message identifier //@description An invoice from a message of the type messageInvoice or paid media purchase from messagePaidMedia @chat_id Chat identifier of the message @message_id Message identifier
inputInvoiceMessage chat_id:int53 message_id:int53 = InputInvoice; inputInvoiceMessage chat_id:int53 message_id:int53 = InputInvoice;
//@description An invoice from a link of the type internalLinkTypeInvoice @name Name of the invoice //@description An invoice from a link of the type internalLinkTypeInvoice @name Name of the invoice
@ -2787,24 +2810,23 @@ inputInvoiceName name:string = InputInvoice;
inputInvoiceTelegram purpose:TelegramPaymentPurpose = InputInvoice; inputInvoiceTelegram purpose:TelegramPaymentPurpose = InputInvoice;
//@class MessageExtendedMedia @description Describes a media, which is attached to an invoice //@class PaidMedia @description Describes a paid media
//@description The media is hidden until the invoice is paid //@description The media is hidden until the invoice is paid
//@width Media width; 0 if unknown //@width Media width; 0 if unknown
//@height Media height; 0 if unknown //@height Media height; 0 if unknown
//@duration Media duration, in seconds; 0 if unknown //@duration Media duration, in seconds; 0 if unknown
//@minithumbnail Media minithumbnail; may be null //@minithumbnail Media minithumbnail; may be null
//@caption Media caption paidMediaPreview width:int32 height:int32 duration:int32 minithumbnail:minithumbnail = PaidMedia;
messageExtendedMediaPreview width:int32 height:int32 duration:int32 minithumbnail:minithumbnail caption:formattedText = MessageExtendedMedia;
//@description The media is a photo @photo The photo @caption Photo caption //@description The media is a photo @photo The photo
messageExtendedMediaPhoto photo:photo caption:formattedText = MessageExtendedMedia; paidMediaPhoto photo:photo = PaidMedia;
//@description The media is a video @video The video @caption Photo caption //@description The media is a video @video The video
messageExtendedMediaVideo video:video caption:formattedText = MessageExtendedMedia; paidMediaVideo video:video = PaidMedia;
//@description The media is unsupported @caption Media caption //@description The media is unsupported
messageExtendedMediaUnsupported caption:formattedText = MessageExtendedMedia; paidMediaUnsupported = PaidMedia;
//@description Describes parameters of a Telegram Premium giveaway //@description Describes parameters of a Telegram Premium giveaway
@ -3111,7 +3133,7 @@ messageText text:formattedText web_page:webPage link_preview_options:linkPreview
//@description An animation message (GIF-style). //@description An animation message (GIF-style).
//@animation The animation description //@animation The animation description
//@caption Animation caption //@caption Animation caption
//@show_caption_above_media True, if caption must be shown above the animation; otherwise, caption must be shown below the animation //@show_caption_above_media True, if the caption must be shown above the animation; otherwise, the caption must be shown below the animation
//@has_spoiler True, if the animation preview must be covered by a spoiler animation //@has_spoiler True, if the animation preview must be covered by a spoiler animation
//@is_secret True, if the animation thumbnail must be blurred and the animation must be shown only while tapped //@is_secret True, if the animation thumbnail must be blurred and the animation must be shown only while tapped
messageAnimation animation:animation caption:formattedText show_caption_above_media:Bool has_spoiler:Bool is_secret:Bool = MessageContent; messageAnimation animation:animation caption:formattedText show_caption_above_media:Bool has_spoiler:Bool is_secret:Bool = MessageContent;
@ -3122,10 +3144,17 @@ messageAudio audio:audio caption:formattedText = MessageContent;
//@description A document message (general file) @document The document description @caption Document caption //@description A document message (general file) @document The document description @caption Document caption
messageDocument document:document caption:formattedText = MessageContent; messageDocument document:document caption:formattedText = MessageContent;
//@description A message with paid media
//@star_count Number of stars needed to buy access to the media in the message
//@media Information about the media
//@caption Media caption
//@show_caption_above_media True, if the caption must be shown above the media; otherwise, the caption must be shown below the media
messagePaidMedia star_count:int53 media:vector<PaidMedia> caption:formattedText show_caption_above_media:Bool = MessageContent;
//@description A photo message //@description A photo message
//@photo The photo //@photo The photo
//@caption Photo caption //@caption Photo caption
//@show_caption_above_media True, if caption must be shown above the photo; otherwise, caption must be shown below the photo //@show_caption_above_media True, if the caption must be shown above the photo; otherwise, the caption must be shown below the photo
//@has_spoiler True, if the photo preview must be covered by a spoiler animation //@has_spoiler True, if the photo preview must be covered by a spoiler animation
//@is_secret True, if the photo must be blurred and must be shown only while tapped //@is_secret True, if the photo must be blurred and must be shown only while tapped
messagePhoto photo:photo caption:formattedText show_caption_above_media:Bool has_spoiler:Bool is_secret:Bool = MessageContent; messagePhoto photo:photo caption:formattedText show_caption_above_media:Bool has_spoiler:Bool is_secret:Bool = MessageContent;
@ -3136,7 +3165,7 @@ messageSticker sticker:sticker is_premium:Bool = MessageContent;
//@description A video message //@description A video message
//@video The video description //@video The video description
//@caption Video caption //@caption Video caption
//@show_caption_above_media True, if caption must be shown above the video; otherwise, caption must be shown below the video //@show_caption_above_media True, if the caption must be shown above the video; otherwise, the caption must be shown below the video
//@has_spoiler True, if the video preview must be covered by a spoiler animation //@has_spoiler True, if the video preview must be covered by a spoiler animation
//@is_secret True, if the video thumbnail must be blurred and the video must be shown only while tapped //@is_secret True, if the video thumbnail must be blurred and the video must be shown only while tapped
messageVideo video:video caption:formattedText show_caption_above_media:Bool has_spoiler:Bool is_secret:Bool = MessageContent; messageVideo video:video caption:formattedText show_caption_above_media:Bool has_spoiler:Bool is_secret:Bool = MessageContent;
@ -3204,8 +3233,9 @@ messageStory story_sender_chat_id:int53 story_id:int32 via_mention:Bool = Messag
//@is_test True, if the invoice is a test invoice //@is_test True, if the invoice is a test invoice
//@need_shipping_address True, if the shipping address must be specified //@need_shipping_address True, if the shipping address must be specified
//@receipt_message_id The identifier of the message with the receipt, after the product has been purchased //@receipt_message_id The identifier of the message with the receipt, after the product has been purchased
//@extended_media Extended media attached to the invoice; may be null //@paid_media Extended media attached to the invoice; may be null if none
messageInvoice product_info:productInfo currency:string total_amount:int53 start_parameter:string is_test:Bool need_shipping_address:Bool receipt_message_id:int53 extended_media:MessageExtendedMedia = MessageContent; //@paid_media_caption Extended media caption; may be null if none
messageInvoice product_info:productInfo currency:string total_amount:int53 start_parameter:string is_test:Bool need_shipping_address:Bool receipt_message_id:int53 paid_media:PaidMedia paid_media_caption:formattedText = MessageContent;
//@description A message with information about an ended call @is_video True, if the call was a video call @discard_reason Reason why the call was discarded @duration Call duration, in seconds //@description A message with information about an ended call @is_video True, if the call was a video call @discard_reason Reason why the call was discarded @duration Call duration, in seconds
messageCall is_video:Bool discard_reason:CallDiscardReason duration:int32 = MessageContent; messageCall is_video:Bool discard_reason:CallDiscardReason duration:int32 = MessageContent;
@ -3345,7 +3375,7 @@ messageGiftedPremium gifter_user_id:int53 currency:string amount:int53 cryptocur
//@code The gift code //@code The gift code
messagePremiumGiftCode creator_id:MessageSender is_from_giveaway:Bool is_unclaimed:Bool currency:string amount:int53 cryptocurrency:string cryptocurrency_amount:int64 month_count:int32 sticker:sticker code:string = MessageContent; messagePremiumGiftCode creator_id:MessageSender is_from_giveaway:Bool is_unclaimed:Bool currency:string amount:int53 cryptocurrency:string cryptocurrency_amount:int64 month_count:int32 sticker:sticker code:string = MessageContent;
//@description A Telegram Premium giveaway was created for the chat //@description A Telegram Premium giveaway was created for the chat. Use telegramPaymentPurposePremiumGiveaway or storePaymentPurposePremiumGiveaway to create a giveaway
messagePremiumGiveawayCreated = MessageContent; messagePremiumGiveawayCreated = MessageContent;
//@description A Telegram Premium giveaway //@description A Telegram Premium giveaway
@ -3482,6 +3512,27 @@ textEntityTypeMediaTimestamp media_timestamp:int32 = TextEntityType;
inputThumbnail thumbnail:InputFile width:int32 height:int32 = InputThumbnail; inputThumbnail thumbnail:InputFile width:int32 height:int32 = InputThumbnail;
//@class InputPaidMediaType @description Describes type of paid media to sent
//@description The media is a photo. The photo must be at most 10 MB in size. The photo's width and height must not exceed 10000 in total. Width and height ratio must be at most 20
inputPaidMediaTypePhoto = InputPaidMediaType;
//@description The media is a video
//@duration Duration of the video, in seconds
//@supports_streaming True, if the video is supposed to be streamed
inputPaidMediaTypeVideo duration:int32 supports_streaming:Bool = InputPaidMediaType;
//@description Describes a paid media to be sent
//@type Type of the media
//@media Photo or video to be sent
//@thumbnail Media thumbnail; pass null to skip thumbnail uploading
//@added_sticker_file_ids File identifiers of the stickers added to the media, if applicable
//@width Media width
//@height Media height
inputPaidMedia type:InputPaidMediaType media:InputFile thumbnail:inputThumbnail added_sticker_file_ids:vector<int32> width:int32 height:int32 = InputPaidMedia;
//@class MessageSchedulingState @description Contains information about the time when a scheduled message will be sent //@class MessageSchedulingState @description Contains information about the time when a scheduled message will be sent
//@description The message will be sent at the specified date @send_date Point in time (Unix timestamp) when the message will be sent. The date must be within 367 days in the future //@description The message will be sent at the specified date @send_date Point in time (Unix timestamp) when the message will be sent. The date must be within 367 days in the future
@ -3511,7 +3562,7 @@ messageSelfDestructTypeImmediately = MessageSelfDestructType;
//@only_preview Pass true to get a fake message instead of actually sending them //@only_preview Pass true to get a fake message instead of actually sending them
messageSendOptions disable_notification:Bool from_background:Bool protect_content:Bool update_order_of_installed_sticker_sets:Bool scheduling_state:MessageSchedulingState effect_id:int64 sending_id:int32 only_preview:Bool = MessageSendOptions; messageSendOptions disable_notification:Bool from_background:Bool protect_content:Bool update_order_of_installed_sticker_sets:Bool scheduling_state:MessageSchedulingState effect_id:int64 sending_id:int32 only_preview:Bool = MessageSendOptions;
//@description Options to be used when a message content is copied without reference to the original sender. Service messages, messages with messageInvoice, messagePremiumGiveaway, or messagePremiumGiveawayWinners content can't be copied //@description Options to be used when a message content is copied without reference to the original sender. Service messages, messages with messageInvoice, messagePaidMedia, messagePremiumGiveaway, or messagePremiumGiveawayWinners content can't be copied
//@send_copy True, if content of the message needs to be copied without reference to the original sender. Always true if the message is forwarded to a secret chat or is local //@send_copy True, if content of the message needs to be copied without reference to the original sender. Always true if the message is forwarded to a secret chat or is local
//@replace_caption True, if media caption of the message copy needs to be replaced. Ignored if send_copy is false //@replace_caption True, if media caption of the message copy needs to be replaced. Ignored if send_copy is false
//@new_caption New message caption; pass null to copy message without caption. Ignored if replace_caption is false //@new_caption New message caption; pass null to copy message without caption. Ignored if replace_caption is false
@ -3536,7 +3587,7 @@ inputMessageText text:formattedText link_preview_options:linkPreviewOptions clea
//@width Width of the animation; may be replaced by the server //@width Width of the animation; may be replaced by the server
//@height Height of the animation; may be replaced by the server //@height Height of the animation; may be replaced by the server
//@caption Animation caption; pass null to use an empty caption; 0-getOption("message_caption_length_max") characters //@caption Animation caption; pass null to use an empty caption; 0-getOption("message_caption_length_max") characters
//@show_caption_above_media True, if caption must be shown above the animation; otherwise, caption must be shown below the animation; not supported in secret chats //@show_caption_above_media True, if the caption must be shown above the animation; otherwise, the caption must be shown below the animation; not supported in secret chats
//@has_spoiler True, if the animation preview must be covered by a spoiler animation; not supported in secret chats //@has_spoiler True, if the animation preview must be covered by a spoiler animation; not supported in secret chats
inputMessageAnimation animation:InputFile thumbnail:inputThumbnail added_sticker_file_ids:vector<int32> duration:int32 width:int32 height:int32 caption:formattedText show_caption_above_media:Bool has_spoiler:Bool = InputMessageContent; inputMessageAnimation animation:InputFile thumbnail:inputThumbnail added_sticker_file_ids:vector<int32> duration:int32 width:int32 height:int32 caption:formattedText show_caption_above_media:Bool has_spoiler:Bool = InputMessageContent;
@ -3556,6 +3607,13 @@ inputMessageAudio audio:InputFile album_cover_thumbnail:inputThumbnail duration:
//@caption Document caption; pass null to use an empty caption; 0-getOption("message_caption_length_max") characters //@caption Document caption; pass null to use an empty caption; 0-getOption("message_caption_length_max") characters
inputMessageDocument document:InputFile thumbnail:inputThumbnail disable_content_type_detection:Bool caption:formattedText = InputMessageContent; inputMessageDocument document:InputFile thumbnail:inputThumbnail disable_content_type_detection:Bool caption:formattedText = InputMessageContent;
//@description A message with paid media; can be used only in channel chats with supergroupFullInfo.has_paid_media_allowed
//@star_count The number of stars that must be paid to see the media; 1-getOption("paid_media_message_star_count_max")
//@paid_media The content of the paid media
//@caption Message caption; pass null to use an empty caption; 0-getOption("message_caption_length_max") characters
//@show_caption_above_media True, if the caption must be shown above the video; otherwise, the caption must be shown below the video; not supported in secret chats
inputMessagePaidMedia star_count:int53 paid_media:vector<inputPaidMedia> caption:formattedText show_caption_above_media:Bool = InputMessageContent;
//@description A photo message //@description A photo message
//@photo Photo to send. The photo must be at most 10 MB in size. The photo's width and height must not exceed 10000 in total. Width and height ratio must be at most 20 //@photo Photo to send. The photo must be at most 10 MB in size. The photo's width and height must not exceed 10000 in total. Width and height ratio must be at most 20
//@thumbnail Photo thumbnail to be sent; pass null to skip thumbnail uploading. The thumbnail is sent to the other party only in secret chats //@thumbnail Photo thumbnail to be sent; pass null to skip thumbnail uploading. The thumbnail is sent to the other party only in secret chats
@ -3563,7 +3621,7 @@ inputMessageDocument document:InputFile thumbnail:inputThumbnail disable_content
//@width Photo width //@width Photo width
//@height Photo height //@height Photo height
//@caption Photo caption; pass null to use an empty caption; 0-getOption("message_caption_length_max") characters //@caption Photo caption; pass null to use an empty caption; 0-getOption("message_caption_length_max") characters
//@show_caption_above_media True, if caption must be shown above the photo; otherwise, caption must be shown below the photo; not supported in secret chats //@show_caption_above_media True, if the caption must be shown above the photo; otherwise, the caption must be shown below the photo; not supported in secret chats
//@self_destruct_type Photo self-destruct type; pass null if none; private chats only //@self_destruct_type Photo self-destruct type; pass null if none; private chats only
//@has_spoiler True, if the photo preview must be covered by a spoiler animation; not supported in secret chats //@has_spoiler True, if the photo preview must be covered by a spoiler animation; not supported in secret chats
inputMessagePhoto photo:InputFile thumbnail:inputThumbnail added_sticker_file_ids:vector<int32> width:int32 height:int32 caption:formattedText show_caption_above_media:Bool self_destruct_type:MessageSelfDestructType has_spoiler:Bool = InputMessageContent; inputMessagePhoto photo:InputFile thumbnail:inputThumbnail added_sticker_file_ids:vector<int32> width:int32 height:int32 caption:formattedText show_caption_above_media:Bool self_destruct_type:MessageSelfDestructType has_spoiler:Bool = InputMessageContent;
@ -3585,7 +3643,7 @@ inputMessageSticker sticker:InputFile thumbnail:inputThumbnail width:int32 heigh
//@height Video height //@height Video height
//@supports_streaming True, if the video is supposed to be streamed //@supports_streaming True, if the video is supposed to be streamed
//@caption Video caption; pass null to use an empty caption; 0-getOption("message_caption_length_max") characters //@caption Video caption; pass null to use an empty caption; 0-getOption("message_caption_length_max") characters
//@show_caption_above_media True, if caption must be shown above the video; otherwise, caption must be shown below the video; not supported in secret chats //@show_caption_above_media True, if the caption must be shown above the video; otherwise, the caption must be shown below the video; not supported in secret chats
//@self_destruct_type Video self-destruct type; pass null if none; private chats only //@self_destruct_type Video self-destruct type; pass null if none; private chats only
//@has_spoiler True, if the video preview must be covered by a spoiler animation; not supported in secret chats //@has_spoiler True, if the video preview must be covered by a spoiler animation; not supported in secret chats
inputMessageVideo video:InputFile thumbnail:inputThumbnail added_sticker_file_ids:vector<int32> duration:int32 width:int32 height:int32 supports_streaming:Bool caption:formattedText show_caption_above_media:Bool self_destruct_type:MessageSelfDestructType has_spoiler:Bool = InputMessageContent; inputMessageVideo video:InputFile thumbnail:inputThumbnail added_sticker_file_ids:vector<int32> duration:int32 width:int32 height:int32 supports_streaming:Bool caption:formattedText show_caption_above_media:Bool self_destruct_type:MessageSelfDestructType has_spoiler:Bool = InputMessageContent;
@ -3637,8 +3695,9 @@ inputMessageGame bot_user_id:int53 game_short_name:string = InputMessageContent;
//@provider_token Payment provider token; may be empty for payments in Telegram Stars //@provider_token Payment provider token; may be empty for payments in Telegram Stars
//@provider_data JSON-encoded data about the invoice, which will be shared with the payment provider //@provider_data JSON-encoded data about the invoice, which will be shared with the payment provider
//@start_parameter Unique invoice bot deep link parameter for the generation of this invoice. If empty, it would be possible to pay directly from forwards of the invoice message //@start_parameter Unique invoice bot deep link parameter for the generation of this invoice. If empty, it would be possible to pay directly from forwards of the invoice message
//@extended_media_content The content of extended media attached to the invoice. The content of the message to be sent. Must be one of the following types: inputMessagePhoto, inputMessageVideo //@paid_media The content of paid media attached to the invoice; pass null if none
inputMessageInvoice invoice:invoice title:string description:string photo_url:string photo_size:int32 photo_width:int32 photo_height:int32 payload:bytes provider_token:string provider_data:string start_parameter:string extended_media_content:InputMessageContent = InputMessageContent; //@paid_media_caption Paid media caption; pass null to use an empty caption; 0-getOption("message_caption_length_max") characters
inputMessageInvoice invoice:invoice title:string description:string photo_url:string photo_size:int32 photo_width:int32 photo_height:int32 payload:bytes provider_token:string provider_data:string start_parameter:string paid_media:inputPaidMedia paid_media_caption:formattedText = InputMessageContent;
//@description A message with a poll. Polls can't be sent to secret chats. Polls can be sent only to a private chat with a bot //@description A message with a poll. Polls can't be sent to secret chats. Polls can be sent only to a private chat with a bot
//@question Poll question; 1-255 characters (up to 300 characters for bots). Only custom emoji entities are allowed to be added and only by Premium users //@question Poll question; 1-255 characters (up to 300 characters for bots). Only custom emoji entities are allowed to be added and only by Premium users
@ -4249,7 +4308,7 @@ chatBoostSlots slots:vector<chatBoostSlot> = ChatBoostSlots;
resendCodeReasonUserRequest = ResendCodeReason; resendCodeReasonUserRequest = ResendCodeReason;
//@description The code is re-sent, because device verification has failed //@description The code is re-sent, because device verification has failed
//@error_message Cause of the verification failure, for example, PLAY_SERVICES_NOT_AVAILABLE, APNS_RECEIVE_TIMEOUT, APNS_INIT_FAILED, etc. //@error_message Cause of the verification failure, for example, PLAY_SERVICES_NOT_AVAILABLE, APNS_RECEIVE_TIMEOUT, or APNS_INIT_FAILED
resendCodeReasonVerificationFailed error_message:string = ResendCodeReason; resendCodeReasonVerificationFailed error_message:string = ResendCodeReason;
@ -5253,6 +5312,9 @@ premiumFeatureLastSeenTimes = PremiumFeature;
//@description The ability to use Business features //@description The ability to use Business features
premiumFeatureBusiness = PremiumFeature; premiumFeatureBusiness = PremiumFeature;
//@description The ability to use all available message effects
premiumFeatureMessageEffects = PremiumFeature;
//@class BusinessFeature @description Describes a feature available to Business user accounts //@class BusinessFeature @description Describes a feature available to Business user accounts
@ -5485,7 +5547,7 @@ backgroundTypeWallpaper is_blurred:Bool is_moving:Bool = BackgroundType;
//@description A PNG or TGV (gzipped subset of SVG with MIME type "application/x-tgwallpattern") pattern to be combined with the background fill chosen by the user //@description A PNG or TGV (gzipped subset of SVG with MIME type "application/x-tgwallpattern") pattern to be combined with the background fill chosen by the user
//@fill Fill of the background //@fill Fill of the background
//@intensity Intensity of the pattern when it is shown above the filled background; 0-100. //@intensity Intensity of the pattern when it is shown above the filled background; 0-100
//@is_inverted True, if the background fill must be applied only to the pattern itself. All other pixels are black in this case. For dark themes only //@is_inverted True, if the background fill must be applied only to the pattern itself. All other pixels are black in this case. For dark themes only
//@is_moving True, if the background needs to be slightly moved when device is tilted //@is_moving True, if the background needs to be slightly moved when device is tilted
backgroundTypePattern fill:BackgroundFill intensity:int32 is_inverted:Bool is_moving:Bool = BackgroundType; backgroundTypePattern fill:BackgroundFill intensity:int32 is_inverted:Bool is_moving:Bool = BackgroundType;
@ -5665,6 +5727,11 @@ pushMessageContentInvoice price:string is_pinned:Bool = PushMessageContent;
//@description A message with a location @is_live True, if the location is live @is_pinned True, if the message is a pinned message with the specified content //@description A message with a location @is_live True, if the location is live @is_pinned True, if the message is a pinned message with the specified content
pushMessageContentLocation is_live:Bool is_pinned:Bool = PushMessageContent; pushMessageContentLocation is_live:Bool is_pinned:Bool = PushMessageContent;
//@description A message with paid media
//@star_count Number of stars needed to buy access to the media in the message; 0 for pinned message
//@is_pinned True, if the message is a pinned message with the specified content
pushMessageContentPaidMedia star_count:int53 is_pinned:Bool = PushMessageContent;
//@description A photo message //@description A photo message
//@photo Message content; may be null //@photo Message content; may be null
//@caption Photo caption //@caption Photo caption
@ -5954,7 +6021,7 @@ userPrivacySettingAllowPrivateVoiceAndVideoNoteMessages = UserPrivacySetting;
//@description Contains privacy settings for message read date in private chats. Read dates are always shown to the users that can see online status of the current user regardless of this setting //@description Contains privacy settings for message read date in private chats. Read dates are always shown to the users that can see online status of the current user regardless of this setting
//@show_read_date True, if message read date is shown to other users in private chats. If false and the current user isn't a Telegram Premium user, then they will not be able to see other's message read date. //@show_read_date True, if message read date is shown to other users in private chats. If false and the current user isn't a Telegram Premium user, then they will not be able to see other's message read date
readDatePrivacySettings show_read_date:Bool = ReadDatePrivacySettings; readDatePrivacySettings show_read_date:Bool = ReadDatePrivacySettings;
//@description Contains privacy settings for new chats with non-contacts //@description Contains privacy settings for new chats with non-contacts
@ -6175,7 +6242,7 @@ internalLinkTypeBotStart bot_username:string start_parameter:string autostart:Bo
//-If administrator rights are provided by the link, call getChatMember to receive the current bot rights in the chat and if the bot already is an administrator, //-If administrator rights are provided by the link, call getChatMember to receive the current bot rights in the chat and if the bot already is an administrator,
//-check that the current user can edit its administrator rights, combine received rights with the requested administrator rights, show confirmation box to the user, //-check that the current user can edit its administrator rights, combine received rights with the requested administrator rights, show confirmation box to the user,
//-and call setChatMemberStatus with the chosen chat and confirmed administrator rights. Before call to setChatMemberStatus it may be required to upgrade the chosen basic group chat to a supergroup chat. //-and call setChatMemberStatus with the chosen chat and confirmed administrator rights. Before call to setChatMemberStatus it may be required to upgrade the chosen basic group chat to a supergroup chat.
//-Then, if start_parameter isn't empty, call sendBotStartMessage with the given start parameter and the chosen chat; otherwise, just send /start message with bot's username added to the chat. //-Then, if start_parameter isn't empty, call sendBotStartMessage with the given start parameter and the chosen chat; otherwise, just send /start message with bot's username added to the chat
//@bot_username Username of the bot //@bot_username Username of the bot
//@start_parameter The parameter to be passed to sendBotStartMessage //@start_parameter The parameter to be passed to sendBotStartMessage
//@administrator_rights Expected administrator rights for the bot; may be null //@administrator_rights Expected administrator rights for the bot; may be null
@ -6306,7 +6373,8 @@ internalLinkTypeSettings = InternalLinkType;
//-If the bot is added to side menu, then use getWebAppUrl with the given URL and open the returned URL as a Web App //-If the bot is added to side menu, then use getWebAppUrl with the given URL and open the returned URL as a Web App
//@bot_username Username of the bot //@bot_username Username of the bot
//@url URL to be passed to getWebAppUrl //@url URL to be passed to getWebAppUrl
internalLinkTypeSideMenuBot bot_username:string url:string = InternalLinkType; //@is_compact True, if the Web App must be opened in a compact mode instead of a full-size mode
internalLinkTypeSideMenuBot bot_username:string url:string is_compact:Bool = InternalLinkType;
//@description The link is a link to a sticker set. Call searchStickerSet with the given sticker set name to process the link and show the sticker set. //@description The link is a link to a sticker set. Call searchStickerSet with the given sticker set name to process the link and show the sticker set.
//-If the sticker set is found and the user wants to add it, then call changeStickerSet //-If the sticker set is found and the user wants to add it, then call changeStickerSet
@ -6355,7 +6423,8 @@ internalLinkTypeVideoChat chat_username:string invite_hash:string is_live_stream
//@bot_username Username of the bot that owns the Web App //@bot_username Username of the bot that owns the Web App
//@web_app_short_name Short name of the Web App //@web_app_short_name Short name of the Web App
//@start_parameter Start parameter to be passed to getWebAppLinkUrl //@start_parameter Start parameter to be passed to getWebAppLinkUrl
internalLinkTypeWebApp bot_username:string web_app_short_name:string start_parameter:string = InternalLinkType; //@is_compact True, if the Web App must be opened in a compact mode instead of a full-size mode
internalLinkTypeWebApp bot_username:string web_app_short_name:string start_parameter:string is_compact:Bool = InternalLinkType;
//@description Contains an HTTPS link to a message in a supergroup or channel, or a forum topic @link The link @is_public True, if the link will work for non-members of the chat //@description Contains an HTTPS link to a message in a supergroup or channel, or a forum topic @link The link @is_public True, if the link will work for non-members of the chat
@ -7304,9 +7373,10 @@ updateFileRemovedFromDownloads file_id:int32 counts:downloadedFileCounts = Updat
//@description A request can't be completed unless application verification is performed; for official mobile applications only. //@description A request can't be completed unless application verification is performed; for official mobile applications only.
//-The method setApplicationVerificationToken must be called once the verification is completed or failed //-The method setApplicationVerificationToken must be called once the verification is completed or failed
//@verification_id Unique identifier for the verification process //@verification_id Unique identifier for the verification process
//@nonce Unique nonce for the classic Play Integrity verification (https://developer.android.com/google/play/integrity/classic) for Android, //@nonce Unique base64url-encoded nonce for the classic Play Integrity verification (https://developer.android.com/google/play/integrity/classic) for Android,
//-or a unique string to compare with verify_nonce field from a push notification for iOS //-or a unique string to compare with verify_nonce field from a push notification for iOS
updateApplicationVerificationRequired verification_id:int53 nonce:string = Update; //@cloud_project_number Cloud project number to pass to the Play Integrity API on Android
updateApplicationVerificationRequired verification_id:int53 nonce:string cloud_project_number:int64 = Update;
//@description New call was created or information about a call was updated @call New data about a call //@description New call was created or information about a call was updated @call New data about a call
updateCall call:call = Update; updateCall call:call = Update;
@ -8401,7 +8471,7 @@ editMessageMedia chat_id:int53 message_id:int53 reply_markup:ReplyMarkup input_m
//@message_id Identifier of the message //@message_id Identifier of the message
//@reply_markup The new message reply markup; pass null if none; for bots only //@reply_markup The new message reply markup; pass null if none; for bots only
//@caption New message content caption; 0-getOption("message_caption_length_max") characters; pass null to remove caption //@caption New message content caption; 0-getOption("message_caption_length_max") characters; pass null to remove caption
//@show_caption_above_media Pass true to show the caption above the media; otherwise, caption will be shown below the media. Can be true only for animation, photo, and video messages //@show_caption_above_media Pass true to show the caption above the media; otherwise, the caption will be shown below the media. Can be true only for animation, photo, and video messages
editMessageCaption chat_id:int53 message_id:int53 reply_markup:ReplyMarkup caption:formattedText show_caption_above_media:Bool = Message; editMessageCaption chat_id:int53 message_id:int53 reply_markup:ReplyMarkup caption:formattedText show_caption_above_media:Bool = Message;
//@description Edits the message reply markup; for bots only. Returns the edited message after the edit is completed on the server side. //@description Edits the message reply markup; for bots only. Returns the edited message after the edit is completed on the server side.
@ -8437,7 +8507,7 @@ editInlineMessageMedia inline_message_id:string reply_markup:ReplyMarkup input_m
//@inline_message_id Inline message identifier //@inline_message_id Inline message identifier
//@reply_markup The new message reply markup; pass null if none //@reply_markup The new message reply markup; pass null if none
//@caption New message content caption; pass null to remove caption; 0-getOption("message_caption_length_max") characters //@caption New message content caption; pass null to remove caption; 0-getOption("message_caption_length_max") characters
//@show_caption_above_media Pass true to show the caption above the media; otherwise, caption will be shown below the media. Can be true only for animation, photo, and video messages //@show_caption_above_media Pass true to show the caption above the media; otherwise, the caption will be shown below the media. Can be true only for animation, photo, and video messages
editInlineMessageCaption inline_message_id:string reply_markup:ReplyMarkup caption:formattedText show_caption_above_media:Bool = Ok; editInlineMessageCaption inline_message_id:string reply_markup:ReplyMarkup caption:formattedText show_caption_above_media:Bool = Ok;
//@description Edits the reply markup of an inline message sent via a bot; for bots only //@description Edits the reply markup of an inline message sent via a bot; for bots only
@ -8514,7 +8584,7 @@ editBusinessMessageMedia business_connection_id:string chat_id:int53 message_id:
//@message_id Identifier of the message //@message_id Identifier of the message
//@reply_markup The new message reply markup; pass null if none //@reply_markup The new message reply markup; pass null if none
//@caption New message content caption; pass null to remove caption; 0-getOption("message_caption_length_max") characters //@caption New message content caption; pass null to remove caption; 0-getOption("message_caption_length_max") characters
//@show_caption_above_media Pass true to show the caption above the media; otherwise, caption will be shown below the media. Can be true only for animation, photo, and video messages //@show_caption_above_media Pass true to show the caption above the media; otherwise, the caption will be shown below the media. Can be true only for animation, photo, and video messages
editBusinessMessageCaption business_connection_id:string chat_id:int53 message_id:int53 reply_markup:ReplyMarkup caption:formattedText show_caption_above_media:Bool = BusinessMessage; editBusinessMessageCaption business_connection_id:string chat_id:int53 message_id:int53 reply_markup:ReplyMarkup caption:formattedText show_caption_above_media:Bool = BusinessMessage;
//@description Edits the reply markup of a message sent on behalf of a business account; for bots only //@description Edits the reply markup of a message sent on behalf of a business account; for bots only
@ -10524,7 +10594,7 @@ getChatEventLog chat_id:int53 query:string from_event_id:int64 limit:int32 filte
getTimeZones = TimeZones; getTimeZones = TimeZones;
//@description Returns an invoice payment form. This method must be called when the user presses inline button of the type inlineKeyboardButtonTypeBuy //@description Returns an invoice payment form. This method must be called when the user presses inline button of the type inlineKeyboardButtonTypeBuy, or wants to buy access to media in a messagePaidMedia message
//@input_invoice The invoice //@input_invoice The invoice
//@theme Preferred payment form theme; pass null to use the default theme //@theme Preferred payment form theme; pass null to use the default theme
getPaymentForm input_invoice:InputInvoice theme:themeParameters = PaymentForm; getPaymentForm input_invoice:InputInvoice theme:themeParameters = PaymentForm;
@ -10728,7 +10798,7 @@ reportMessageReactions chat_id:int53 message_id:int53 sender_id:MessageSender =
//@description Returns detailed revenue statistics about a chat. Currently, this method can be used only for channels if supergroupFullInfo.can_get_revenue_statistics == true @chat_id Chat identifier @is_dark Pass true if a dark theme is used by the application //@description Returns detailed revenue statistics about a chat. Currently, this method can be used only for channels if supergroupFullInfo.can_get_revenue_statistics == true @chat_id Chat identifier @is_dark Pass true if a dark theme is used by the application
getChatRevenueStatistics chat_id:int53 is_dark:Bool = ChatRevenueStatistics; getChatRevenueStatistics chat_id:int53 is_dark:Bool = ChatRevenueStatistics;
//@description Returns URL for chat revenue withdrawal; requires owner privileges in the chat. Currently, this method can be used only for channels if supergroupFullInfo.can_get_revenue_statistics == true and getOption("can_withdraw_chat_revenue") //@description Returns a URL for chat revenue withdrawal; requires owner privileges in the chat. Currently, this method can be used only for channels if supergroupFullInfo.can_get_revenue_statistics == true and getOption("can_withdraw_chat_revenue")
//@chat_id Chat identifier //@chat_id Chat identifier
//@password The 2-step verification password of the current user //@password The 2-step verification password of the current user
getChatRevenueWithdrawalUrl chat_id:int53 password:string = HttpUrl; getChatRevenueWithdrawalUrl chat_id:int53 password:string = HttpUrl;
@ -10741,16 +10811,20 @@ getChatRevenueTransactions chat_id:int53 offset:int32 limit:int32 = ChatRevenueT
//@description Returns detailed Telegram star revenue statistics //@description Returns detailed Telegram star revenue statistics
//@owner_id Identifier of the owner of the Telegram stars; can be identifier of an owned bot, or identifier of a channel chat with supergroupFullInfo.can_get_revenue_statistics == true //@owner_id Identifier of the owner of the Telegram stars; can be identifier of an owned bot, or identifier of an owned channel chat
//@is_dark Pass true if a dark theme is used by the application //@is_dark Pass true if a dark theme is used by the application
getStarRevenueStatistics owner_id:MessageSender is_dark:Bool = StarRevenueStatistics; getStarRevenueStatistics owner_id:MessageSender is_dark:Bool = StarRevenueStatistics;
//@description Returns URL for Telegram star withdrawal //@description Returns a URL for Telegram star withdrawal
//@owner_id Identifier of the owner of the Telegram stars; can be identifier of an owned bot, or identifier of a channel chat with supergroupFullInfo.can_get_revenue_statistics == true //@owner_id Identifier of the owner of the Telegram stars; can be identifier of an owned bot, or identifier of an owned channel chat
//@star_count The number of Telegram stars to withdraw. Must be at least getOption("star_withdrawal_count_min") //@star_count The number of Telegram stars to withdraw. Must be at least getOption("star_withdrawal_count_min")
//@password The 2-step verification password of the current user //@password The 2-step verification password of the current user
getStarWithdrawalUrl owner_id:MessageSender star_count:int53 password:string = HttpUrl; getStarWithdrawalUrl owner_id:MessageSender star_count:int53 password:string = HttpUrl;
//@description Returns a URL for a Telegram Ad platform account that can be used to set up advertisments for the chat paid in the owned Telegram stars
//@owner_id Identifier of the owner of the Telegram stars; can be identifier of an owned bot, or identifier of an owned channel chat
getStarAdAccountUrl owner_id:MessageSender = HttpUrl;
//@description Returns detailed statistics about a chat. Currently, this method can be used only for supergroups and channels. Can be used only if supergroupFullInfo.can_get_statistics == true @chat_id Chat identifier @is_dark Pass true if a dark theme is used by the application //@description Returns detailed statistics about a chat. Currently, this method can be used only for supergroups and channels. Can be used only if supergroupFullInfo.can_get_statistics == true @chat_id Chat identifier @is_dark Pass true if a dark theme is used by the application
getChatStatistics chat_id:int53 is_dark:Bool = ChatStatistics; getChatStatistics chat_id:int53 is_dark:Bool = ChatStatistics;