diff --git a/message.go b/message.go index fec6f87..90a66ca 100644 --- a/message.go +++ b/message.go @@ -233,6 +233,7 @@ type MessageSend struct { Files []*File `json:"-"` AllowedMentions *MessageAllowedMentions `json:"allowed_mentions,omitempty"` Reference *MessageReference `json:"message_reference,omitempty"` + StickerIDs []string `json:"sticker_ids"` // TODO: Remove this when compatibility is not required. File *File `json:"-"` diff --git a/restapi.go b/restapi.go index fe4d2fe..c4d5bb4 100644 --- a/restapi.go +++ b/restapi.go @@ -1700,13 +1700,19 @@ func (s *Session) ChannelMessageSendComplex(channelID string, data *MessageSend, } } + if data.StickerIDs != nil { + if len(data.StickerIDs) > 3 { + err = fmt.Errorf("cannot send more than 3 stickers") + return + } + } + var response []byte if len(files) > 0 { contentType, body, encodeErr := MultipartBodyWithJSON(data, files) if encodeErr != nil { return st, encodeErr } - response, err = s.request("POST", endpoint, contentType, body, endpoint, 0, options...) } else { response, err = s.RequestWithBucketID("POST", endpoint, data, endpoint, options...)