diff --git a/core/src/main/kotlin/behavior/GuildBehavior.kt b/core/src/main/kotlin/behavior/GuildBehavior.kt index 6370e273a999..4c749b53f025 100644 --- a/core/src/main/kotlin/behavior/GuildBehavior.kt +++ b/core/src/main/kotlin/behavior/GuildBehavior.kt @@ -316,9 +316,14 @@ public interface GuildBehavior : KordEntity, Strategizable { * Requests to edit this guild's [MFA level][MFALevel] and returns the updated level. * This requires guild ownership. * + * @param reason the reason showing up in the audit log * @throws RestRequestException if something went wrong during the request. */ - public suspend fun editMFALevel(level: MFALevel): MFALevel = kord.rest.guild.modifyGuildMFALevel(id, level).level + public suspend fun editMFALevel(level: MFALevel, reason: String? = null): MFALevel = + kord.rest.guild.modifyGuildMFALevel(id, level, reason).level + + @Deprecated("Binary compatibility, keep for at least one release.", level = HIDDEN) + public suspend fun editMFALevel(level: MFALevel): MFALevel = editMFALevel(level, reason = null) /** * Requests to leave this guild. diff --git a/rest/src/main/kotlin/service/GuildService.kt b/rest/src/main/kotlin/service/GuildService.kt index b3664e1e8768..1ca80be25fa5 100644 --- a/rest/src/main/kotlin/service/GuildService.kt +++ b/rest/src/main/kotlin/service/GuildService.kt @@ -278,12 +278,20 @@ public class GuildService(requestHandler: RequestHandler) : RestService(requestH } } + @Deprecated("Binary compatibility, keep for at least one release.", level = HIDDEN) public suspend fun modifyGuildMFALevel(guildId: Snowflake, level: MFALevel): GuildMFALevelModifyResponse = - call(Route.GuildMFALevelModify) { - keys[Route.GuildId] = guildId - val request = GuildMFALevelModifyRequest(level) - body(GuildMFALevelModifyRequest.serializer(), request) - } + modifyGuildMFALevel(guildId, level, reason = null) + + public suspend fun modifyGuildMFALevel( + guildId: Snowflake, + level: MFALevel, + reason: String? = null, + ): GuildMFALevelModifyResponse = call(Route.GuildMFALevelModify) { + keys[Route.GuildId] = guildId + val request = GuildMFALevelModifyRequest(level) + body(GuildMFALevelModifyRequest.serializer(), request) + auditLogReason(reason) + } public suspend fun deleteGuildRole(guildId: Snowflake, roleId: Snowflake, reason: String? = null): Unit = call(Route.GuildRoleDelete) {