bulkBan method

Future<BulkBanResponse> bulkBan(
  1. Snowflake id,
  2. List<Snowflake> userIds,
  3. {Duration? deleteMessages,
  4. String? auditLogReason}
)

Ban up to 200 users from a guild, and optionally delete previous messages sent by the banned users.

Implementation

Future<BulkBanResponse> bulkBan(Snowflake id, List<Snowflake> userIds, {Duration? deleteMessages, String? auditLogReason}) async {
  final route = HttpRoute()
    ..guilds(id: id.toString())
    ..bulkBan();
  final request = BasicRequest(
    route,
    method: 'POST',
    auditLogReason: auditLogReason,
    body: jsonEncode({
      'user_ids': userIds.map((s) => s.toString()).toList(),
      if (deleteMessages != null) 'delete_message_seconds': deleteMessages.inSeconds,
    }),
  );
  final response = await client.httpHandler.executeSafe(request);
  return parseBulkBanResponse(response.jsonBody as Map<String, Object?>);
}