Package discord4j.rest.entity
Class RestGuild
- java.lang.Object
-
- discord4j.rest.entity.RestGuild
-
public class RestGuild extends Object
Represents a guild entity in Discord. Guilds in Discord represent an isolated collection of users and channels, and are often referred to as "servers" in the UI.
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description Mono<discord4j.discordjson.json.MemberData>addMember(Snowflake userId, discord4j.discordjson.json.GuildMemberAddRequest request)Mono<Void>addMemberRole(Snowflake userId, Snowflake roleId, String reason)Mono<discord4j.discordjson.json.PruneData>beginGuildPrune(Integer days, Boolean computePruneCount, String reason)static RestGuildcreate(RestClient restClient, Snowflake id)Create aRestGuildfor a given ID.Mono<Void>createBan(Snowflake userId, Integer deleteMessageDays, String reason)Mono<discord4j.discordjson.json.ChannelData>createChannel(discord4j.discordjson.json.ChannelCreateRequest request, String reason)Create a new channel object for the guild.Mono<discord4j.discordjson.json.EmojiData>createEmoji(discord4j.discordjson.json.GuildEmojiCreateRequest request, String reason)Mono<Void>createIntegration(discord4j.discordjson.json.IntegrationCreateRequest request)Mono<discord4j.discordjson.json.RoleData>createRole(discord4j.discordjson.json.RoleCreateRequest request, String reason)Mono<Void>delete()Delete a guild permanently.Mono<Void>deleteIntegration(Snowflake integrationId)Mono<Void>deleteRole(Snowflake roleId, String reason)RestEmojiemoji(Snowflake emojiId)Return aRestEmojirepresentation under this guild.booleanequals(Object o)Mono<discord4j.discordjson.json.BanData>getBan(Snowflake userId)Flux<discord4j.discordjson.json.BanData>getBans()Flux<discord4j.discordjson.json.ChannelData>getChannels()Return aFluxof guild channels.Mono<discord4j.discordjson.json.GuildUpdateData>getData()Retrieve this guild's data upon subscription.Mono<discord4j.discordjson.json.GuildUpdateData>getData(Boolean withCounts)Retrieve this guild's data upon subscription.Flux<discord4j.discordjson.json.EmojiData>getEmojis()SnowflakegetId()Returns the ID of this guild.Flux<discord4j.discordjson.json.IntegrationData>getIntegrations()Flux<discord4j.discordjson.json.InviteData>getInvites()Mono<discord4j.discordjson.json.MemberData>getMember(Snowflake userId)Flux<discord4j.discordjson.json.MemberData>getMembers()Mono<discord4j.discordjson.json.GuildPreviewData>getPreview()Mono<discord4j.discordjson.json.PruneData>getPruneCount(Integer days)Flux<discord4j.discordjson.json.RegionData>getRegions()Flux<discord4j.discordjson.json.RoleData>getRoles()Mono<discord4j.discordjson.json.MemberData>getSelfMember()Flux<discord4j.discordjson.json.TemplateData>getTemplates()Flux<discord4j.discordjson.json.WebhookData>getWebhooks()Mono<discord4j.discordjson.json.GuildWidgetData>getWidget()inthashCode()RestMembermember(Snowflake memberId)Return aRestMemberrepresentation under this guild.Mono<discord4j.discordjson.json.GuildUpdateData>modify(discord4j.discordjson.json.GuildModifyRequest request, String reason)Modify a guild's settings.Flux<discord4j.discordjson.json.RoleData>modifyChannelPositions(List<discord4j.discordjson.json.PositionModifyRequest> requests)Mono<Void>modifyIntegration(Snowflake integrationId, discord4j.discordjson.json.IntegrationModifyRequest request)Mono<discord4j.discordjson.json.MemberData>modifyMember(Snowflake userId, discord4j.discordjson.json.GuildMemberModifyRequest request, String reason)Mono<discord4j.discordjson.json.NicknameModifyData>modifyOwnNickname(discord4j.discordjson.json.NicknameModifyData request)Mono<discord4j.discordjson.json.RoleData>modifyRole(Snowflake roleId, discord4j.discordjson.json.RoleModifyRequest request, String reason)Flux<discord4j.discordjson.json.RoleData>modifyRolePositions(List<discord4j.discordjson.json.PositionModifyRequest> requests)Mono<discord4j.discordjson.json.GuildWidgetData>modifyWidget(discord4j.discordjson.json.GuildWidgetModifyRequest request)Mono<Void>removeGuildBan(Snowflake userId, String reason)Mono<Void>removeGuildMember(Snowflake userId, String reason)Mono<Void>removeMemberRole(Snowflake userId, Snowflake roleId, String reason)RestRolerole(Snowflake roleId)Return aRestRolerepresentation under this guild.Flux<discord4j.discordjson.json.MemberData>searchMembers(Map<String,Object> queryParams)Mono<Void>syncIntegration(Snowflake integrationId)
-
-
-
Method Detail
-
create
public static RestGuild create(RestClient restClient, Snowflake id)
Create aRestGuildfor a given ID. This method does not perform any API request.- Parameters:
restClient- the client to make API requestsid- the ID of this entity- Returns:
- a
RestGuildrepresented by thisid.
-
getId
public Snowflake getId()
Returns the ID of this guild.- Returns:
- The ID of this guild
-
getData
public Mono<discord4j.discordjson.json.GuildUpdateData> getData(@Nullable Boolean withCounts)
Retrieve this guild's data upon subscription.- Parameters:
withCounts- when true, will return approximate member and presence counts for the guild too. otherwise approximate member and presence counts will be null inGuildUpdateData.- Returns:
- a
Monowhere, upon successful completion, emits theGuildUpdateDatabelonging to this entity. If an error is received, it is emitted through theMono.
-
getData
public Mono<discord4j.discordjson.json.GuildUpdateData> getData()
Retrieve this guild's data upon subscription.- Returns:
- a
Monowhere, upon successful completion, emits theGuildUpdateDatabelonging to this entity. If an error is received, it is emitted through theMono.
-
emoji
public RestEmoji emoji(Snowflake emojiId)
Return aRestEmojirepresentation under this guild. This method does not perform any API request.- Parameters:
emojiId- the entity ID- Returns:
- a
RestEmojiwith the given ID, under this guild
-
member
public RestMember member(Snowflake memberId)
Return aRestMemberrepresentation under this guild. This method does not perform any API request.- Parameters:
memberId- the entity ID- Returns:
- a
RestMemberwith the given ID, under this guild
-
role
public RestRole role(Snowflake roleId)
Return aRestRolerepresentation under this guild. This method does not perform any API request.- Parameters:
roleId- the entity ID- Returns:
- a
RestRolewith the given ID, under this guild
-
modify
public Mono<discord4j.discordjson.json.GuildUpdateData> modify(discord4j.discordjson.json.GuildModifyRequest request, @Nullable String reason)
Modify a guild's settings. Requires thePermission.MANAGE_GUILDpermission. Returns the updated guild object on success.- Parameters:
request- the modify request bodyreason- an optional reason for the audit log- Returns:
- a
Monowhere, upon subscription, emits the updatedGuildUpdateDataon success. If an error is received, it is emitted through theMono.
-
delete
public Mono<Void> delete()
Delete a guild permanently. Requires thePermission.MANAGE_GUILDpermission. Returns empty on success.- Returns:
- a
Monowhere, upon subscription, emits a complete signal on success. If an error is received, it is emitted through theMono.
-
getChannels
public Flux<discord4j.discordjson.json.ChannelData> getChannels()
Return aFluxof guild channels.- Returns:
- a sequence of this guild channels
-
createChannel
public Mono<discord4j.discordjson.json.ChannelData> createChannel(discord4j.discordjson.json.ChannelCreateRequest request, @Nullable String reason)
Create a new channel object for the guild. Requires thePermission.MANAGE_CHANNELSpermission. Returns the new channel object on success.- Parameters:
request- the request bodyreason- an optional reason for the audit log- Returns:
- a
Monowhere, upon subscription, emits the createdChannelDataon success. If an error is received, it is emitted through theMono.
-
modifyChannelPositions
public Flux<discord4j.discordjson.json.RoleData> modifyChannelPositions(List<discord4j.discordjson.json.PositionModifyRequest> requests)
-
getSelfMember
public Mono<discord4j.discordjson.json.MemberData> getSelfMember()
-
getMembers
public Flux<discord4j.discordjson.json.MemberData> getMembers()
-
searchMembers
public Flux<discord4j.discordjson.json.MemberData> searchMembers(Map<String,Object> queryParams)
-
addMember
public Mono<discord4j.discordjson.json.MemberData> addMember(Snowflake userId, discord4j.discordjson.json.GuildMemberAddRequest request)
-
modifyMember
public Mono<discord4j.discordjson.json.MemberData> modifyMember(Snowflake userId, discord4j.discordjson.json.GuildMemberModifyRequest request, @Nullable String reason)
-
modifyOwnNickname
public Mono<discord4j.discordjson.json.NicknameModifyData> modifyOwnNickname(discord4j.discordjson.json.NicknameModifyData request)
-
addMemberRole
public Mono<Void> addMemberRole(Snowflake userId, Snowflake roleId, @Nullable String reason)
-
removeMemberRole
public Mono<Void> removeMemberRole(Snowflake userId, Snowflake roleId, @Nullable String reason)
-
getBans
public Flux<discord4j.discordjson.json.BanData> getBans()
-
createBan
public Mono<Void> createBan(Snowflake userId, @Nullable Integer deleteMessageDays, @Nullable String reason)
-
getRoles
public Flux<discord4j.discordjson.json.RoleData> getRoles()
-
createRole
public Mono<discord4j.discordjson.json.RoleData> createRole(discord4j.discordjson.json.RoleCreateRequest request, @Nullable String reason)
-
modifyRolePositions
public Flux<discord4j.discordjson.json.RoleData> modifyRolePositions(List<discord4j.discordjson.json.PositionModifyRequest> requests)
-
modifyRole
public Mono<discord4j.discordjson.json.RoleData> modifyRole(Snowflake roleId, discord4j.discordjson.json.RoleModifyRequest request, @Nullable String reason)
-
getPruneCount
public Mono<discord4j.discordjson.json.PruneData> getPruneCount(@Nullable Integer days)
-
beginGuildPrune
public Mono<discord4j.discordjson.json.PruneData> beginGuildPrune(@Nullable Integer days, @Nullable Boolean computePruneCount, @Nullable String reason)
-
getRegions
public Flux<discord4j.discordjson.json.RegionData> getRegions()
-
getInvites
public Flux<discord4j.discordjson.json.InviteData> getInvites()
-
getIntegrations
public Flux<discord4j.discordjson.json.IntegrationData> getIntegrations()
-
createIntegration
public Mono<Void> createIntegration(discord4j.discordjson.json.IntegrationCreateRequest request)
-
modifyIntegration
public Mono<Void> modifyIntegration(Snowflake integrationId, discord4j.discordjson.json.IntegrationModifyRequest request)
-
getWidget
public Mono<discord4j.discordjson.json.GuildWidgetData> getWidget()
-
modifyWidget
public Mono<discord4j.discordjson.json.GuildWidgetData> modifyWidget(discord4j.discordjson.json.GuildWidgetModifyRequest request)
-
getEmojis
public Flux<discord4j.discordjson.json.EmojiData> getEmojis()
-
createEmoji
public Mono<discord4j.discordjson.json.EmojiData> createEmoji(discord4j.discordjson.json.GuildEmojiCreateRequest request, @Nullable String reason)
-
getWebhooks
public Flux<discord4j.discordjson.json.WebhookData> getWebhooks()
-
getPreview
public Mono<discord4j.discordjson.json.GuildPreviewData> getPreview()
-
getTemplates
public Flux<discord4j.discordjson.json.TemplateData> getTemplates()
-
-