diff options
| author | Rapptz <[email protected]> | 2017-04-30 02:58:27 -0400 |
|---|---|---|
| committer | Rapptz <[email protected]> | 2017-04-30 02:58:27 -0400 |
| commit | c54a6a927d3259b95cace40fc165e25141df9322 (patch) | |
| tree | c9206cb32322a066f2bddf22b48f46e4a543231f /discord/http.py | |
| parent | Better TextChannel.is_nsfw() check. (diff) | |
| download | discord.py-c54a6a927d3259b95cace40fc165e25141df9322.tar.xz discord.py-c54a6a927d3259b95cace40fc165e25141df9322.zip | |
Implement audit logs.
Diffstat (limited to 'discord/http.py')
| -rw-r--r-- | discord/http.py | 27 |
1 files changed, 23 insertions, 4 deletions
diff --git a/discord/http.py b/discord/http.py index dde4ba35..eab37c62 100644 --- a/discord/http.py +++ b/discord/http.py @@ -410,15 +410,20 @@ class HTTPClient: # Member management - def kick(self, user_id, guild_id): + def kick(self, user_id, guild_id, reason=None): r = Route('DELETE', '/guilds/{guild_id}/members/{user_id}', guild_id=guild_id, user_id=user_id) - return self.request(r) + if reason: + return self.request(r, params={'reason': reason }) + return self.request(r, params=params) - def ban(self, user_id, guild_id, delete_message_days=1): + def ban(self, user_id, guild_id, delete_message_days=1, reason=None): r = Route('PUT', '/guilds/{guild_id}/bans/{user_id}', guild_id=guild_id, user_id=user_id) params = { - 'delete-message-days': delete_message_days + 'delete-message-days': delete_message_days, } + if reason: + params['reason'] = reason + return self.request(r, params=params) def unban(self, user_id, guild_id): @@ -557,6 +562,20 @@ class HTTPClient: r = Route('PATCH', '/guilds/{guild_id}/emojis/{emoji_id}', guild_id=guild_id, emoji_id=emoji_id) return self.request(r, json=payload) + def get_audit_logs(self, guild_id, limit=100, before=None, after=None, user_id=None, action_type=None): + params = { 'limit': limit } + if before: + params['before'] = before + if after: + params['after'] = after + if user_id: + params['user_id'] = user_id + if action_type: + params['action_type'] = action_type + + r = Route('GET', '/guilds/{guild_id}/audit-logs', guild_id=guild_id) + return self.request(r, params=params) + # Invite management def create_invite(self, channel_id, **options): |