Class RestGuildUser
Represents a REST-based guild user.
Implements
Inherited Members
Namespace: Discord.Rest
Assembly: Discord.Net.Rest.dll
Syntax
public class RestGuildUser : RestUser, IUpdateable, IGuildUser, IUser, ISnowflakeEntity, IEntity<ulong>, IMentionable, IPresence, IVoiceState
Properties
| Improve this Doc View SourceGuildId
Gets the ID of the guild for this user.
Declaration
public ulong GuildId { get; }
Property Value
| Type | Description |
|---|---|
| System.UInt64 | An System.UInt64 representing the snowflake identifier of the guild that this user belongs to. |
GuildPermissions
Gets the guild-level permissions for this user.
Declaration
public GuildPermissions GuildPermissions { get; }
Property Value
| Type | Description |
|---|---|
| GuildPermissions | A GuildPermissions structure for this user, representing what permissions this user has in the guild. |
Exceptions
| Type | Condition |
|---|---|
| System.InvalidOperationException | Resolving permissions requires the parent guild to be downloaded. |
IsDeafened
Gets a value that indicates whether this user is deafened by the guild.
Declaration
public bool IsDeafened { get; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
|
IsMuted
Gets a value that indicates whether this user is muted (i.e. not permitted to speak via voice) by the guild.
Declaration
public bool IsMuted { get; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
|
JoinedAt
Gets when this user joined the guild.
Declaration
public DateTimeOffset? JoinedAt { get; }
Property Value
| Type | Description |
|---|---|
| System.Nullable<System.DateTimeOffset> | A System.DateTimeOffset representing the time of which the user has joined the guild;
|
Nickname
Gets the nickname for this user.
Declaration
public string Nickname { get; }
Property Value
| Type | Description |
|---|---|
| System.String | A string representing the nickname of the user; |
PremiumSince
Gets the date and time for when this user's guild boost began.
Declaration
public DateTimeOffset? PremiumSince { get; }
Property Value
| Type | Description |
|---|---|
| System.Nullable<System.DateTimeOffset> | A System.DateTimeOffset for when the user began boosting this guild; |
RoleIds
Gets a collection of IDs for the roles that this user currently possesses in the guild.
Declaration
public IReadOnlyCollection<ulong> RoleIds { get; }
Property Value
| Type | Description |
|---|---|
| System.Collections.Generic.IReadOnlyCollection<System.UInt64> | A read-only collection of System.UInt64, each representing a snowflake identifier for a role that this user possesses. |
Remarks
This property returns a read-only collection of the identifiers of the roles that this user possesses. For WebSocket users, a Roles property can be found in place of this property. Due to the REST implementation, only a collection of identifiers can be retrieved instead of the full role objects.
Methods
| Improve this Doc View SourceAddRoleAsync(IRole, RequestOptions)
Adds the specified role to this user in the guild.
Declaration
public Task AddRoleAsync(IRole role, RequestOptions options = null)
Parameters
| Type | Name | Description |
|---|---|---|
| IRole | role | The role to be added to the user. |
| RequestOptions | options | The options to be used when sending the request. |
Returns
| Type | Description |
|---|---|
| System.Threading.Tasks.Task | A task that represents the asynchronous role addition operation. |
AddRolesAsync(IEnumerable<IRole>, RequestOptions)
Adds the specified roles to this user in the guild.
Declaration
public Task AddRolesAsync(IEnumerable<IRole> roles, RequestOptions options = null)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Collections.Generic.IEnumerable<IRole> | roles | The roles to be added to the user. |
| RequestOptions | options | The options to be used when sending the request. |
Returns
| Type | Description |
|---|---|
| System.Threading.Tasks.Task | A task that represents the asynchronous role addition operation. |
GetPermissions(IGuildChannel)
Gets the level permissions granted to this user to a given channel.
Declaration
public ChannelPermissions GetPermissions(IGuildChannel channel)
Parameters
| Type | Name | Description |
|---|---|---|
| IGuildChannel | channel | The channel to get the permission from. |
Returns
| Type | Description |
|---|---|
| ChannelPermissions | A ChannelPermissions structure representing the permissions that a user has in the specified channel. |
Exceptions
| Type | Condition |
|---|---|
| System.InvalidOperationException | Resolving permissions requires the parent guild to be downloaded. |
KickAsync(String, RequestOptions)
Kicks this user from this guild.
Declaration
public Task KickAsync(string reason = null, RequestOptions options = null)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | reason | The reason for the kick which will be recorded in the audit log. |
| RequestOptions | options | The options to be used when sending the request. |
Returns
| Type | Description |
|---|---|
| System.Threading.Tasks.Task | A task that represents the asynchronous kick operation. |
ModifyAsync(Action<GuildUserProperties>, RequestOptions)
Modifies this user's properties in this guild.
Declaration
public Task ModifyAsync(Action<GuildUserProperties> func, RequestOptions options = null)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Action<GuildUserProperties> | func | The delegate containing the properties to modify the user with. |
| RequestOptions | options | The options to be used when sending the request. |
Returns
| Type | Description |
|---|---|
| System.Threading.Tasks.Task | A task that represents the asynchronous modification operation. |
Remarks
This method modifies the current guild user with the specified properties. To see an example of this method and what properties are available, please refer to GuildUserProperties.
RemoveRoleAsync(IRole, RequestOptions)
Removes the specified role from this user in the guild.
Declaration
public Task RemoveRoleAsync(IRole role, RequestOptions options = null)
Parameters
| Type | Name | Description |
|---|---|---|
| IRole | role | The role to be removed from the user. |
| RequestOptions | options | The options to be used when sending the request. |
Returns
| Type | Description |
|---|---|
| System.Threading.Tasks.Task | A task that represents the asynchronous role removal operation. |
RemoveRolesAsync(IEnumerable<IRole>, RequestOptions)
Removes the specified roles from this user in the guild.
Declaration
public Task RemoveRolesAsync(IEnumerable<IRole> roles, RequestOptions options = null)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Collections.Generic.IEnumerable<IRole> | roles | The roles to be removed from the user. |
| RequestOptions | options | The options to be used when sending the request. |
Returns
| Type | Description |
|---|---|
| System.Threading.Tasks.Task | A task that represents the asynchronous role removal operation. |
UpdateAsync(RequestOptions)
Updates this object's properties with its current state.
Declaration
public override Task UpdateAsync(RequestOptions options = null)
Parameters
| Type | Name | Description |
|---|---|---|
| RequestOptions | options |
Returns
| Type | Description |
|---|---|
| System.Threading.Tasks.Task |
Overrides
Explicit Interface Implementations
| Improve this Doc View SourceIGuildUser.Guild
Gets the guild for this user.
Declaration
IGuild IGuildUser.Guild { get; }
Returns
| Type | Description |
|---|---|
| IGuild | A guild object that this user belongs to. |
IVoiceState.IsSelfDeafened
Gets a value that indicates whether this user has marked themselves as deafened.
Declaration
bool IVoiceState.IsSelfDeafened { get; }
Returns
| Type | Description |
|---|---|
| System.Boolean |
|
IVoiceState.IsSelfMuted
Gets a value that indicates whether this user has marked themselves as muted (i.e. not permitted to speak via voice).
Declaration
bool IVoiceState.IsSelfMuted { get; }
Returns
| Type | Description |
|---|---|
| System.Boolean |
|
IVoiceState.IsStreaming
Gets a value that indicates if this user is streaming in a voice channel.
Declaration
bool IVoiceState.IsStreaming { get; }
Returns
| Type | Description |
|---|---|
| System.Boolean |
|
IVoiceState.IsSuppressed
Gets a value that indicates whether the user is muted by the current user.
Declaration
bool IVoiceState.IsSuppressed { get; }
Returns
| Type | Description |
|---|---|
| System.Boolean |
|
IVoiceState.VoiceChannel
Gets the voice channel this user is currently in.
Declaration
IVoiceChannel IVoiceState.VoiceChannel { get; }
Returns
| Type | Description |
|---|---|
| IVoiceChannel | A generic voice channel object representing the voice channel that the user is currently in; |
IVoiceState.VoiceSessionId
Gets the unique identifier for this user's voice session.
Declaration
string IVoiceState.VoiceSessionId { get; }
Returns
| Type | Description |
|---|---|
| System.String |