Documentation
¶
Index ¶
- Variables
- func NewError(rq *http.Request, rqBody []byte, rs *http.Response, rsBody []byte) error
- func NewErrorAPIErr(rq *http.Request, rqBody []byte, rs *http.Response, rsBody []byte, ...) error
- func NewErrorErr(rq *http.Request, rqBody []byte, rs *http.Response, rsBody []byte, err error) error
- type ApplicationService
- type AuditLogService
- type AuditLogServiceImpl
- type ChannelService
- type Check
- type Client
- type Config
- type ConfigOpt
- func WithBotTokenFunc(botTokenFunc func() string) ConfigOpt
- func WithHTTPClient(httpClient *http.Client) ConfigOpt
- func WithLogger(logger log.Logger) ConfigOpt
- func WithRateLimiter(rateLimiter rrate.Limiter) ConfigOpt
- func WithRateLimiterConfig(rateLimiterConfig rrate.Config) ConfigOpt
- func WithRateLimiterConfigOpts(opts ...rrate.ConfigOpt) ConfigOpt
- func WithUserAgent(userAgent string) ConfigOpt
- type EmojiService
- type Error
- type GatewayService
- type GuildScheduledEventService
- type GuildService
- type GuildTemplateService
- type InteractionService
- type InviteService
- type OAuth2Service
- type RequestConfig
- type RequestOpt
- type Service
- type Services
- type StageInstanceService
- type StickerService
- type ThreadService
- type UserService
- type VoiceService
- type WebhookService
Constants ¶
This section is empty.
Variables ¶
var DefaultConfig = Config{ HTTPClient: &http.Client{Timeout: 20 * time.Second}, RateLimiterConfig: &rrate.DefaultConfig, UserAgent: fmt.Sprintf("DiscordBot (%s, %s)", info.GitHub, info.Version), }
DefaultConfig is the configuration which is used by default
Functions ¶
Types ¶
type ApplicationService ¶
type ApplicationService interface {
Service
GetGlobalCommands(applicationID discord.Snowflake, opts ...RequestOpt) ([]discord.ApplicationCommand, error)
GetGlobalCommand(applicationID discord.Snowflake, commandID discord.Snowflake, opts ...RequestOpt) (discord.ApplicationCommand, error)
CreateGlobalCommand(applicationID discord.Snowflake, commandCreate discord.ApplicationCommandCreate, opts ...RequestOpt) (discord.ApplicationCommand, error)
SetGlobalCommands(applicationID discord.Snowflake, commandCreates []discord.ApplicationCommandCreate, opts ...RequestOpt) ([]discord.ApplicationCommand, error)
UpdateGlobalCommand(applicationID discord.Snowflake, commandID discord.Snowflake, commandUpdate discord.ApplicationCommandUpdate, opts ...RequestOpt) (discord.ApplicationCommand, error)
DeleteGlobalCommand(applicationID discord.Snowflake, commandID discord.Snowflake, opts ...RequestOpt) error
GetGuildCommands(applicationID discord.Snowflake, guildID discord.Snowflake, opts ...RequestOpt) ([]discord.ApplicationCommand, error)
GetGuildCommand(applicationID discord.Snowflake, guildID discord.Snowflake, commandID discord.Snowflake, opts ...RequestOpt) (discord.ApplicationCommand, error)
CreateGuildCommand(applicationID discord.Snowflake, guildID discord.Snowflake, command discord.ApplicationCommandCreate, opts ...RequestOpt) (discord.ApplicationCommand, error)
SetGuildCommands(applicationID discord.Snowflake, guildID discord.Snowflake, commands []discord.ApplicationCommandCreate, opts ...RequestOpt) ([]discord.ApplicationCommand, error)
UpdateGuildCommand(applicationID discord.Snowflake, guildID discord.Snowflake, commandID discord.Snowflake, command discord.ApplicationCommandUpdate, opts ...RequestOpt) (discord.ApplicationCommand, error)
DeleteGuildCommand(applicationID discord.Snowflake, guildID discord.Snowflake, commandID discord.Snowflake, opts ...RequestOpt) error
GetGuildCommandsPermissions(applicationID discord.Snowflake, guildID discord.Snowflake, opts ...RequestOpt) ([]discord.ApplicationCommandPermissions, error)
GetGuildCommandPermissions(applicationID discord.Snowflake, guildID discord.Snowflake, commandID discord.Snowflake, opts ...RequestOpt) (*discord.ApplicationCommandPermissions, error)
SetGuildCommandsPermissions(applicationID discord.Snowflake, guildID discord.Snowflake, commandPermissions []discord.ApplicationCommandPermissionsSet, opts ...RequestOpt) ([]discord.ApplicationCommandPermissions, error)
SetGuildCommandPermissions(applicationID discord.Snowflake, guildID discord.Snowflake, commandID discord.Snowflake, commandPermissions []discord.ApplicationCommandPermission, opts ...RequestOpt) (*discord.ApplicationCommandPermissions, error)
}
func NewApplicationService ¶
func NewApplicationService(restClient Client) ApplicationService
type AuditLogService ¶
type AuditLogService interface {
Service
GetAuditLog(guildID discord.Snowflake, userID discord.Snowflake, actionType discord.AuditLogEvent, before discord.Snowflake, limit int, opts ...RequestOpt) (*discord.AuditLog, error)
}
func NewAuditLogService ¶
func NewAuditLogService(restClient Client) AuditLogService
type AuditLogServiceImpl ¶
type AuditLogServiceImpl struct {
// contains filtered or unexported fields
}
func (*AuditLogServiceImpl) GetAuditLog ¶
func (s *AuditLogServiceImpl) GetAuditLog(guildID discord.Snowflake, userID discord.Snowflake, actionType discord.AuditLogEvent, before discord.Snowflake, limit int, opts ...RequestOpt) (auditLog *discord.AuditLog, err error)
func (*AuditLogServiceImpl) RestClient ¶
func (s *AuditLogServiceImpl) RestClient() Client
type ChannelService ¶
type ChannelService interface {
Service
GetChannel(channelID discord.Snowflake, opts ...RequestOpt) (discord.Channel, error)
UpdateChannel(channelID discord.Snowflake, channelUpdate discord.ChannelUpdate, opts ...RequestOpt) (discord.Channel, error)
DeleteChannel(channelID discord.Snowflake, opts ...RequestOpt) error
GetWebhooks(channelID discord.Snowflake, opts ...RequestOpt) ([]discord.Webhook, error)
CreateWebhook(channelID discord.Snowflake, webhookCreate discord.WebhookCreate, opts ...RequestOpt) (discord.Webhook, error)
GetPermissionOverwrites(channelID discord.Snowflake, opts ...RequestOpt) ([]discord.PermissionOverwrite, error)
GetPermissionOverwrite(channelID discord.Snowflake, overwriteID discord.Snowflake, opts ...RequestOpt) (*discord.PermissionOverwrite, error)
UpdatePermissionOverwrite(channelID discord.Snowflake, overwriteID discord.Snowflake, permissionOverwrite discord.PermissionOverwriteUpdate, opts ...RequestOpt) error
DeletePermissionOverwrite(channelID discord.Snowflake, overwriteID discord.Snowflake, opts ...RequestOpt) error
SendTyping(channelID discord.Snowflake, opts ...RequestOpt) error
GetMessage(channelID discord.Snowflake, messageID discord.Snowflake, opts ...RequestOpt) (*discord.Message, error)
GetMessages(channelID discord.Snowflake, around discord.Snowflake, before discord.Snowflake, after discord.Snowflake, limit int, opts ...RequestOpt) ([]discord.Message, error)
CreateMessage(channelID discord.Snowflake, messageCreate discord.MessageCreate, opts ...RequestOpt) (*discord.Message, error)
UpdateMessage(channelID discord.Snowflake, messageID discord.Snowflake, messageUpdate discord.MessageUpdate, opts ...RequestOpt) (*discord.Message, error)
DeleteMessage(channelID discord.Snowflake, messageID discord.Snowflake, opts ...RequestOpt) error
BulkDeleteMessages(channelID discord.Snowflake, messageIDs []discord.Snowflake, opts ...RequestOpt) error
CrosspostMessage(channelID discord.Snowflake, messageID discord.Snowflake, opts ...RequestOpt) (*discord.Message, error)
GetReactions(channelID discord.Snowflake, messageID discord.Snowflake, emoji string, opts ...RequestOpt) ([]discord.User, error)
AddReaction(channelID discord.Snowflake, messageID discord.Snowflake, emoji string, opts ...RequestOpt) error
RemoveOwnReaction(channelID discord.Snowflake, messageID discord.Snowflake, emoji string, opts ...RequestOpt) error
RemoveUserReaction(channelID discord.Snowflake, messageID discord.Snowflake, emoji string, userID discord.Snowflake, opts ...RequestOpt) error
RemoveAllReactions(channelID discord.Snowflake, messageID discord.Snowflake, opts ...RequestOpt) error
RemoveAllReactionsForEmoji(channelID discord.Snowflake, messageID discord.Snowflake, emoji string, opts ...RequestOpt) error
GetPinnedMessages(channelID discord.Snowflake, opts ...RequestOpt) ([]discord.Message, error)
PinMessage(channelID discord.Snowflake, messageID discord.Snowflake, opts ...RequestOpt) error
UnpinMessage(channelID discord.Snowflake, messageID discord.Snowflake, opts ...RequestOpt) error
}
func NewChannelService ¶
func NewChannelService(restClient Client) ChannelService
type Check ¶
type Check func() bool
Check is a function which gets executed right before a request is made
type Client ¶
type Client interface {
// Logger returns the logger the rest client uses
Logger() log.Logger
// HTTPClient returns the http.Client the rest client uses
HTTPClient() *http.Client
// RateLimiter returns the rrate.Limiter the rest client uses
RateLimiter() rrate.Limiter
// Config returns the Config the rest client uses
Config() Config
// Close closes the rest client and awaits all pending requests to finish. You can use a cancelling context to abort the waiting
Close(ctx context.Context) error
// Do makes a request to the given route.CompiledAPIRoute and marshals the given interface{} as json and unmarshalls the response into the given interface
Do(route *route.CompiledAPIRoute, rqBody interface{}, rsBody interface{}, opts ...RequestOpt) error
}
Client allows doing requests to different endpoints
type Config ¶
type Config struct {
Logger log.Logger
HTTPClient *http.Client
RateLimiter rrate.Limiter
RateLimiterConfig *rrate.Config
BotTokenFunc func() string
UserAgent string
}
Config is the configuration for the rest client
type ConfigOpt ¶
type ConfigOpt func(config *Config)
ConfigOpt can be used to supply optional parameters to NewClient
func WithBotTokenFunc ¶ added in v0.6.6
WithBotTokenFunc sets the function to get the bot token
func WithHTTPClient ¶
WithHTTPClient applies a custom http.Client to the rest rate limiter
func WithLogger ¶
WithLogger applies a custom logger to the rest rate limiter
func WithRateLimiter ¶
WithRateLimiter applies a custom rrate.Limiter to the rest client
func WithRateLimiterConfig ¶
WithRateLimiterConfig applies a custom logger to the rest rate limiter
func WithRateLimiterConfigOpts ¶
WithRateLimiterConfigOpts applies rrate.ConfigOpt for the rrate.Limiter to the rest rate limiter
func WithUserAgent ¶
WithUserAgent sets the user agent for all requests
type EmojiService ¶
type EmojiService interface {
Service
GetEmojis(guildID discord.Snowflake, opts ...RequestOpt) ([]discord.Emoji, error)
GetEmoji(guildID discord.Snowflake, emojiID discord.Snowflake, opts ...RequestOpt) (*discord.Emoji, error)
CreateEmoji(guildID discord.Snowflake, emojiCreate discord.EmojiCreate, opts ...RequestOpt) (*discord.Emoji, error)
UpdateEmoji(guildID discord.Snowflake, emojiID discord.Snowflake, emojiUpdate discord.EmojiUpdate, opts ...RequestOpt) (*discord.Emoji, error)
DeleteEmoji(guildID discord.Snowflake, emojiID discord.Snowflake, opts ...RequestOpt) error
}
func NewEmojiService ¶
func NewEmojiService(restClient Client) EmojiService
type Error ¶
type Error struct {
discord.APIError
Request *http.Request
RqBody []byte
Response *http.Response
RsBody []byte
Err error
}
Error holds the http.Response & an error related to a REST request
type GatewayService ¶
type GatewayService interface {
Service
GetGateway(opts ...RequestOpt) (*discord.Gateway, error)
GetGatewayBot(opts ...RequestOpt) (*discord.GatewayBot, error)
}
func NewGatewayService ¶
func NewGatewayService(restClient Client) GatewayService
type GuildScheduledEventService ¶ added in v0.6.1
type GuildScheduledEventService interface {
Service
GetGuildScheduledEvents(guildID discord.Snowflake, withUserCounts bool, opts ...RequestOpt) ([]discord.GuildScheduledEvent, error)
GetGuildScheduledEvent(guildID discord.Snowflake, guildScheduledEventID discord.Snowflake, withUserCounts bool, opts ...RequestOpt) (*discord.GuildScheduledEvent, error)
CreateGuildScheduledEvent(guildID discord.Snowflake, guildScheduledEventCreate discord.GuildScheduledEventCreate, opts ...RequestOpt) (*discord.GuildScheduledEvent, error)
UpdateGuildScheduledEvent(guildID discord.Snowflake, guildScheduledEventID discord.Snowflake, guildScheduledEventUpdate discord.GuildScheduledEventUpdate, opts ...RequestOpt) (*discord.GuildScheduledEvent, error)
DeleteGuildScheduledEvent(guildID discord.Snowflake, guildScheduledEventID discord.Snowflake, opts ...RequestOpt) error
GetGuildScheduledEventUsers(guildID discord.Snowflake, guildScheduledEventID discord.Snowflake, limit int, withMember bool, before discord.Snowflake, after discord.Snowflake, opts ...RequestOpt) ([]discord.GuildScheduledEventUser, error)
}
func NewGuildScheduledEventService ¶ added in v0.6.1
func NewGuildScheduledEventService(restClient Client) GuildScheduledEventService
type GuildService ¶
type GuildService interface {
Service
GetGuild(guildID discord.Snowflake, withCounts bool, opts ...RequestOpt) (*discord.Guild, error)
GetGuildPreview(guildID discord.Snowflake, opts ...RequestOpt) (*discord.GuildPreview, error)
CreateGuild(guildCreate discord.GuildCreate, opts ...RequestOpt) (*discord.Guild, error)
UpdateGuild(guildID discord.Snowflake, guildUpdate discord.GuildUpdate, opts ...RequestOpt) (*discord.Guild, error)
DeleteGuild(guildID discord.Snowflake, opts ...RequestOpt) error
CreateChannel(guildID discord.Snowflake, guildChannelCreate discord.GuildChannelCreate, opts ...RequestOpt) (discord.GuildChannel, error)
GetRoles(guildID discord.Snowflake, opts ...RequestOpt) ([]discord.Role, error)
GetRole(guildID discord.Snowflake, roleID discord.Snowflake, opts ...RequestOpt) ([]discord.Role, error)
CreateRole(guildID discord.Snowflake, createRole discord.RoleCreate, opts ...RequestOpt) (*discord.Role, error)
UpdateRole(guildID discord.Snowflake, roleID discord.Snowflake, roleUpdate discord.RoleUpdate, opts ...RequestOpt) (*discord.Role, error)
UpdateRolePositions(guildID discord.Snowflake, rolePositionUpdates []discord.RolePositionUpdate, opts ...RequestOpt) ([]discord.Role, error)
DeleteRole(guildID discord.Snowflake, roleID discord.Snowflake, opts ...RequestOpt) error
GetMember(guildID discord.Snowflake, userID discord.Snowflake, opts ...RequestOpt) (*discord.Member, error)
GetMembers(guildID discord.Snowflake, opts ...RequestOpt) ([]discord.Member, error)
SearchMembers(guildID discord.Snowflake, query string, limit int, opts ...RequestOpt) ([]discord.Member, error)
AddMember(guildID discord.Snowflake, userID discord.Snowflake, memberAdd discord.MemberAdd, opts ...RequestOpt) (*discord.Member, error)
RemoveMember(guildID discord.Snowflake, userID discord.Snowflake, opts ...RequestOpt) error
UpdateMember(guildID discord.Snowflake, userID discord.Snowflake, memberUpdate discord.MemberUpdate, opts ...RequestOpt) (*discord.Member, error)
AddMemberRole(guildID discord.Snowflake, userID discord.Snowflake, roleID discord.Snowflake, opts ...RequestOpt) error
RemoveMemberRole(guildID discord.Snowflake, userID discord.Snowflake, roleID discord.Snowflake, opts ...RequestOpt) error
UpdateSelfNick(guildID discord.Snowflake, nick string, opts ...RequestOpt) (*string, error)
GetBans(guildID discord.Snowflake, opts ...RequestOpt) ([]discord.Ban, error)
GetBan(guildID discord.Snowflake, userID discord.Snowflake, opts ...RequestOpt) (*discord.Ban, error)
AddBan(guildID discord.Snowflake, userID discord.Snowflake, deleteMessageDays int, opts ...RequestOpt) error
DeleteBan(guildID discord.Snowflake, userID discord.Snowflake, opts ...RequestOpt) error
GetIntegrations(guildID discord.Snowflake, opts ...RequestOpt) ([]discord.Integration, error)
DeleteIntegration(guildID discord.Snowflake, integrationID discord.Snowflake, opts ...RequestOpt) error
GetWebhooks(guildID discord.Snowflake, opts ...RequestOpt) ([]discord.Webhook, error)
UpdateCurrentUserVoiceState(guildID discord.Snowflake, currentUserVoiceStateUpdate discord.UserVoiceStateUpdate, opts ...RequestOpt) error
UpdateUserVoiceState(guildID discord.Snowflake, userID discord.Snowflake, userVoiceStateUpdate discord.UserVoiceStateUpdate, opts ...RequestOpt) error
}
func NewGuildService ¶
func NewGuildService(restClient Client) GuildService
type GuildTemplateService ¶
type GuildTemplateService interface {
Service
GetGuildTemplate(templateCode string, opts ...RequestOpt) (*discord.GuildTemplate, error)
GetGuildTemplates(guildID discord.Snowflake, opts ...RequestOpt) ([]discord.GuildTemplate, error)
CreateGuildTemplate(guildID discord.Snowflake, guildTemplateCreate discord.GuildTemplateCreate, opts ...RequestOpt) (*discord.GuildTemplate, error)
CreateGuildFromTemplate(templateCode string, createGuildFromTemplate discord.GuildFromTemplateCreate, opts ...RequestOpt) (*discord.Guild, error)
SyncGuildTemplate(guildID discord.Snowflake, templateCode string, opts ...RequestOpt) (*discord.GuildTemplate, error)
UpdateGuildTemplate(guildID discord.Snowflake, templateCode string, guildTemplateUpdate discord.GuildTemplateUpdate, opts ...RequestOpt) (*discord.GuildTemplate, error)
DeleteGuildTemplate(guildID discord.Snowflake, templateCode string, opts ...RequestOpt) (*discord.GuildTemplate, error)
}
func NewGuildTemplateService ¶
func NewGuildTemplateService(restClient Client) GuildTemplateService
type InteractionService ¶
type InteractionService interface {
Service
GetInteractionResponse(interactionID discord.Snowflake, interactionToken string, opts ...RequestOpt) (*discord.Message, error)
CreateInteractionResponse(interactionID discord.Snowflake, interactionToken string, interactionResponse discord.InteractionResponse, opts ...RequestOpt) error
UpdateInteractionResponse(applicationID discord.Snowflake, interactionToken string, messageUpdate discord.MessageUpdate, opts ...RequestOpt) (*discord.Message, error)
DeleteInteractionResponse(applicationID discord.Snowflake, interactionToken string, opts ...RequestOpt) error
GetFollowupMessage(applicationID discord.Snowflake, interactionToken string, messageID discord.Snowflake, opts ...RequestOpt) (*discord.Message, error)
CreateFollowupMessage(applicationID discord.Snowflake, interactionToken string, messageCreate discord.MessageCreate, opts ...RequestOpt) (*discord.Message, error)
UpdateFollowupMessage(applicationID discord.Snowflake, interactionToken string, messageID discord.Snowflake, messageUpdate discord.MessageUpdate, opts ...RequestOpt) (*discord.Message, error)
DeleteFollowupMessage(applicationID discord.Snowflake, interactionToken string, messageID discord.Snowflake, opts ...RequestOpt) error
}
func NewInteractionService ¶
func NewInteractionService(restClient Client) InteractionService
type InviteService ¶
type InviteService interface {
Service
GetInvite(code string, opts ...RequestOpt) (*discord.Invite, error)
CreateInvite(channelID discord.Snowflake, inviteCreate discord.InviteCreate, opts ...RequestOpt) (*discord.Invite, error)
DeleteInvite(code string, opts ...RequestOpt) (*discord.Invite, error)
GetGuildInvites(guildID discord.Snowflake, opts ...RequestOpt) ([]discord.Invite, error)
GetChannelInvites(channelID discord.Snowflake, opts ...RequestOpt) ([]discord.Invite, error)
}
func NewInviteService ¶
func NewInviteService(restClient Client) InviteService
type OAuth2Service ¶
type OAuth2Service interface {
Service
GetBotApplicationInfo(opts ...RequestOpt) (*discord.Application, error)
GetCurrentAuthorizationInfo(bearerToken string, opts ...RequestOpt) (*discord.AuthorizationInformation, error)
GetCurrentUser(bearerToken string, opts ...RequestOpt) (*discord.OAuth2User, error)
GetCurrentUserGuilds(bearerToken string, before discord.Snowflake, after discord.Snowflake, limit int, opts ...RequestOpt) ([]discord.OAuth2Guild, error)
GetCurrentUserConnections(bearerToken string, opts ...RequestOpt) ([]discord.Connection, error)
GetAccessToken(clientID discord.Snowflake, clientSecret string, code string, redirectURI string, opts ...RequestOpt) (*discord.AccessTokenExchange, error)
RefreshAccessToken(clientID discord.Snowflake, clientSecret string, refreshToken string, opts ...RequestOpt) (*discord.AccessTokenExchange, error)
}
func NewOAuth2Service ¶
func NewOAuth2Service(restClient Client) OAuth2Service
type RequestConfig ¶
type RequestConfig struct {
Request *http.Request
Ctx context.Context
Checks []Check
Delay time.Duration
}
RequestConfig are additional options for the request
func (*RequestConfig) Apply ¶
func (c *RequestConfig) Apply(opts []RequestOpt)
Apply applies the given RequestOpt(s) to the RequestConfig & sets the context if none is set
type RequestOpt ¶
type RequestOpt func(config *RequestConfig)
RequestOpt can be used to supply optional parameters to Client.Do
func WithCtx ¶
func WithCtx(ctx context.Context) RequestOpt
WithCtx applies a custom context to the request
func WithDelay ¶
func WithDelay(delay time.Duration) RequestOpt
WithDelay applies a delay to the request
func WithHeader ¶
func WithHeader(key string, value string) RequestOpt
WithHeader adds a custom header to the request
func WithQueryParam ¶
func WithQueryParam(param string, value interface{}) RequestOpt
WithQueryParam applies a custom query parameter to the request
func WithReason ¶
func WithReason(reason string) RequestOpt
WithReason adds a reason header to the request. Not all discord endpoints support this
type Services ¶
type Services interface {
Logger() log.Logger
RestClient() Client
HTTPClient() *http.Client
Close(ctx context.Context) error
ApplicationService() ApplicationService
OAuth2Service() OAuth2Service
AuditLogService() AuditLogService
GatewayService() GatewayService
GuildService() GuildService
ChannelService() ChannelService
ThreadService() ThreadService
InteractionService() InteractionService
InviteService() InviteService
GuildTemplateService() GuildTemplateService
UserService() UserService
VoiceService() VoiceService
WebhookService() WebhookService
StageInstanceService() StageInstanceService
EmojiService() EmojiService
StickerService() StickerService
GuildScheduledEventService() GuildScheduledEventService
}
Services is a manager for all of disgo's HTTP requests
type StageInstanceService ¶
type StageInstanceService interface {
Service
GetStageInstance(guildID discord.Snowflake, opts ...RequestOpt) (*discord.StageInstance, error)
CreateStageInstance(stageInstanceCreate discord.StageInstanceCreate, opts ...RequestOpt) (*discord.StageInstance, error)
UpdateStageInstance(guildID discord.Snowflake, stageInstanceUpdate discord.StageInstanceUpdate, opts ...RequestOpt) (*discord.StageInstance, error)
DeleteStageInstance(guildID discord.Snowflake, opts ...RequestOpt) error
}
func NewStageInstanceService ¶
func NewStageInstanceService(restClient Client) StageInstanceService
type StickerService ¶
type StickerService interface {
GetNitroStickerPacks(opts ...RequestOpt) ([]discord.StickerPack, error)
GetSticker(stickerID discord.Snowflake, opts ...RequestOpt) (*discord.Sticker, error)
GetStickers(guildID discord.Snowflake, opts ...RequestOpt) ([]discord.Sticker, error)
CreateSticker(guildID discord.Snowflake, createSticker discord.StickerCreate, opts ...RequestOpt) (*discord.Sticker, error)
UpdateSticker(guildID discord.Snowflake, stickerID discord.Snowflake, stickerUpdate discord.StickerUpdate, opts ...RequestOpt) (*discord.Sticker, error)
DeleteSticker(guildID discord.Snowflake, stickerID discord.Snowflake, opts ...RequestOpt) error
}
func NewStickerService ¶
func NewStickerService(restClient Client) StickerService
type ThreadService ¶
type ThreadService interface {
Service
CreateThreadWithMessage(channelID discord.Snowflake, messageID discord.Snowflake, threadCreateWithMessage discord.ThreadCreateWithMessage, opts ...RequestOpt) (thread discord.GuildThread, err error)
CreateThread(channelID discord.Snowflake, threadCreate discord.ThreadCreate, opts ...RequestOpt) (thread discord.GuildThread, err error)
JoinThread(threadID discord.Snowflake, opts ...RequestOpt) error
LeaveThread(threadID discord.Snowflake, opts ...RequestOpt) error
AddThreadMember(threadID discord.Snowflake, userID discord.Snowflake, opts ...RequestOpt) error
RemoveThreadMember(threadID discord.Snowflake, userID discord.Snowflake, opts ...RequestOpt) error
GetThreadMember(threadID discord.Snowflake, userID discord.Snowflake, opts ...RequestOpt) (threadMember *discord.ThreadMember, err error)
GetThreadMembers(threadID discord.Snowflake, opts ...RequestOpt) (threadMembers []discord.ThreadMember, err error)
GetPublicArchivedThreads(channelID discord.Snowflake, before discord.Time, limit int, opts ...RequestOpt) (threads *discord.GetThreads, err error)
GetPrivateArchivedThreads(channelID discord.Snowflake, before discord.Time, limit int, opts ...RequestOpt) (threads *discord.GetThreads, err error)
GetJoinedPrivateAchievedThreads(channelID discord.Snowflake, before discord.Time, limit int, opts ...RequestOpt) (threads *discord.GetThreads, err error)
GetActiveGuildThreads(guildID discord.Snowflake, opts ...RequestOpt) (threads *discord.GetAllThreads, err error)
}
func NewThreadService ¶
func NewThreadService(restClient Client) ThreadService
type UserService ¶
type UserService interface {
Service
GetUser(userID discord.Snowflake, opts ...RequestOpt) (*discord.User, error)
UpdateSelfUser(selfUserUpdate discord.SelfUserUpdate, opts ...RequestOpt) (*discord.OAuth2User, error)
GetGuilds(before int, after int, limit int, opts ...RequestOpt) ([]discord.OAuth2Guild, error)
LeaveGuild(guildID discord.Snowflake, opts ...RequestOpt) error
GetDMChannels(opts ...RequestOpt) ([]discord.Channel, error)
CreateDMChannel(userID discord.Snowflake, opts ...RequestOpt) (*discord.Channel, error)
}
func NewUserService ¶
func NewUserService(restClient Client) UserService
type VoiceService ¶
type VoiceService interface {
Service
GetVoiceRegions(opts ...RequestOpt) ([]discord.VoiceRegion, error)
}
func NewVoiceService ¶
func NewVoiceService(restClient Client) VoiceService
type WebhookService ¶
type WebhookService interface {
Service
GetWebhook(webhookID discord.Snowflake, opts ...RequestOpt) (discord.Webhook, error)
UpdateWebhook(webhookID discord.Snowflake, webhookUpdate discord.WebhookUpdate, opts ...RequestOpt) (discord.Webhook, error)
DeleteWebhook(webhookID discord.Snowflake, opts ...RequestOpt) error
GetWebhookWithToken(webhookID discord.Snowflake, webhookToken string, opts ...RequestOpt) (discord.Webhook, error)
UpdateWebhookWithToken(webhookID discord.Snowflake, webhookToken string, webhookUpdate discord.WebhookUpdateWithToken, opts ...RequestOpt) (discord.Webhook, error)
DeleteWebhookWithToken(webhookID discord.Snowflake, webhookToken string, opts ...RequestOpt) error
CreateMessage(webhookID discord.Snowflake, webhookToken string, messageCreate discord.WebhookMessageCreate, wait bool, threadID discord.Snowflake, opts ...RequestOpt) (*discord.Message, error)
CreateMessageSlack(webhookID discord.Snowflake, webhookToken string, messageCreate discord.Payload, wait bool, threadID discord.Snowflake, opts ...RequestOpt) (*discord.Message, error)
CreateMessageGitHub(webhookID discord.Snowflake, webhookToken string, messageCreate discord.Payload, wait bool, threadID discord.Snowflake, opts ...RequestOpt) (*discord.Message, error)
UpdateMessage(webhookID discord.Snowflake, webhookToken string, messageID discord.Snowflake, messageUpdate discord.WebhookMessageUpdate, threadID discord.Snowflake, opts ...RequestOpt) (*discord.Message, error)
DeleteMessage(webhookID discord.Snowflake, webhookToken string, messageID discord.Snowflake, threadID discord.Snowflake, opts ...RequestOpt) error
}
func NewWebhookService ¶
func NewWebhookService(restClient Client) WebhookService
Source Files
¶
- application_service.go
- audit_log_service.go
- channel_service.go
- emoji_service.go
- gateway_service.go
- guild_scheduled_event_service.go
- guild_service.go
- guild_template_service.go
- interaction_service.go
- invite_service.go
- oauth2_service.go
- request_opt.go
- rest_client.go
- rest_config.go
- rest_error.go
- rest_services.go
- stage_instance_service.go
- sticker_service.go
- thread_service.go
- user_service.go
- voice_service.go
- webhook_service.go