Пример #1
0
        public async ValueTask <int?> PruneGuildMembersAsync(
            ulong guildId,
            int days,
            bool computePruneCount = false)
        {
            if (days <= 0)
            {
                throw new InvalidOperationException(
                          $"Parameter '{nameof(days)}' cannot be lower than 1.");
            }

            QueryString qs = new QueryString();

            qs.Add("days", days);
            qs.Add("compute_prune_count", computePruneCount);

            var response = await RestClient.PostAsync(
                DiscordApiRoutes.GuildPrune(
                    guildId) + qs.Query)
                           .ConfigureAwait(false);

            HandleErrors(response);
            if (computePruneCount)
            {
                return(JsonHelper.Deserialize <DiscordPruneObject>(response.Body).Pruned);
            }
            return(null);
        }
Пример #2
0
        public async ValueTask <int> GetPruneCountAsync(
            ulong guildId,
            int days)
        {
            if (days <= 0)
            {
                throw new InvalidOperationException(
                          $"Parameter '{nameof(days)}' cannot be lower than 1.");
            }

            QueryString qs = new QueryString();

            qs.Add("days", days);

            var response = await RestClient.GetAsync(
                DiscordApiRoutes.GuildPrune(guildId) + qs.Query)
                           .ConfigureAwait(false);

            HandleErrors(response);
            return(JsonHelper.Deserialize <DiscordPruneObject>(response.Body).Pruned);
        }