File tree Expand file tree Collapse file tree 2 files changed +34
-0
lines changed Expand file tree Collapse file tree 2 files changed +34
-0
lines changed Original file line number Diff line number Diff line change @@ -2814,6 +2814,30 @@ async def fetch_roles(self) -> list[Role]:
2814
2814
"""
2815
2815
data = await self ._state .http .get_roles (self .id )
2816
2816
return [Role (guild = self , state = self ._state , data = d ) for d in data ]
2817
+
2818
+ async def fetch_role (self , role_id : int ) -> Role :
2819
+ """|coro|
2820
+
2821
+ Retrieves a :class:`Role` that the guild has.
2822
+
2823
+ .. note::
2824
+
2825
+ This method is an API call. For general usage, consider using :attr:`get_role` instead.
2826
+
2827
+ .. versionadded:: 2.7
2828
+
2829
+ Returns
2830
+ -------
2831
+ :class:`Role`
2832
+ The role in the guild with the specified ID.
2833
+
2834
+ Raises
2835
+ ------
2836
+ HTTPException
2837
+ Retrieving the role failed.
2838
+ """
2839
+ data = await self ._state .http .get_role (self .id , role_id )
2840
+ return Role (guild = self , state = self ._state , data = data )
2817
2841
2818
2842
async def _fetch_role (self , role_id : int ) -> Role :
2819
2843
"""|coro|
Original file line number Diff line number Diff line change @@ -2048,6 +2048,16 @@ def delete_invite(
2048
2048
def get_roles (self , guild_id : Snowflake ) -> Response [list [role .Role ]]:
2049
2049
return self .request (Route ("GET" , "/guilds/{guild_id}/roles" , guild_id = guild_id ))
2050
2050
2051
+ def get_role (self , guild_id : Snowflake , role_id : Snowflake ) -> Response [role .Role ]:
2052
+ return self .request (
2053
+ Route (
2054
+ "GET" ,
2055
+ "/guilds/{guild_id}/roles/{role_id}" ,
2056
+ guild_id = guild_id ,
2057
+ role_id = role_id ,
2058
+ )
2059
+ )
2060
+
2051
2061
def edit_role (
2052
2062
self ,
2053
2063
guild_id : Snowflake ,
You can’t perform that action at this time.
0 commit comments