mirror of
https://github.com/Rapptz/discord.py.git
synced 2025-06-07 20:28:38 +00:00
Add Guild.fetch_role
This commit is contained in:
parent
3018fee443
commit
9ab938a9ea
@ -3408,6 +3408,37 @@ class Guild(Hashable):
|
||||
data = await self._state.http.get_roles(self.id)
|
||||
return [Role(guild=self, state=self._state, data=d) for d in data]
|
||||
|
||||
async def fetch_role(self, role_id: int, /) -> Role:
|
||||
"""|coro|
|
||||
|
||||
Retrieves a :class:`Role` with the specified ID.
|
||||
|
||||
.. versionadded:: 2.5
|
||||
|
||||
.. note::
|
||||
|
||||
This method is an API call. For general usage, consider :attr:`get_role` instead.
|
||||
|
||||
Parameters
|
||||
----------
|
||||
role_id: :class:`int`
|
||||
The role's ID.
|
||||
|
||||
Raises
|
||||
-------
|
||||
NotFound
|
||||
The role requested could not be found.
|
||||
HTTPException
|
||||
An error occurred fetching the role.
|
||||
|
||||
Returns
|
||||
-------
|
||||
:class:`Role`
|
||||
The retrieved role.
|
||||
"""
|
||||
data = await self._state.http.get_role(self.id, role_id)
|
||||
return Role(guild=self, state=self._state, data=data)
|
||||
|
||||
@overload
|
||||
async def create_role(
|
||||
self,
|
||||
|
@ -1858,6 +1858,9 @@ class HTTPClient:
|
||||
def get_roles(self, guild_id: Snowflake) -> Response[List[role.Role]]:
|
||||
return self.request(Route('GET', '/guilds/{guild_id}/roles', guild_id=guild_id))
|
||||
|
||||
def get_role(self, guild_id: Snowflake, role_id: Snowflake) -> Response[role.Role]:
|
||||
return self.request(Route('GET', '/guilds/{guild_id}/roles/{role_id}', guild_id=guild_id, role_id=role_id))
|
||||
|
||||
def edit_role(
|
||||
self, guild_id: Snowflake, role_id: Snowflake, *, reason: Optional[str] = None, **fields: Any
|
||||
) -> Response[role.Role]:
|
||||
|
Loading…
x
Reference in New Issue
Block a user