Beispiel #1
0
        /// <summary>
        /// Change the Bounce Purge settings
        /// </summary>
        /// <returns>https://sendgrid.com/docs/API_Reference/Web_API_v3/Settings/mail.html</returns>
        public async Task UpdatBouncePurgeMailSettingsAsync(bool enabled, int hardBounces, int softBounces, CancellationToken cancellationToken = default(CancellationToken))
        {
            var bouncePurgeSettings = new BouncePurgeSettings
            {
                Enabled     = enabled,
                HardBounces = hardBounces,
                SoftBounces = softBounces
            };
            var data     = JObject.FromObject(bouncePurgeSettings);
            var response = await _client.PatchAsync("/mmail_settings/bounce_purge", data, cancellationToken).ConfigureAwait(false);

            response.EnsureSuccess();
        }
Beispiel #2
0
        /// <summary>
        /// Change the Bounce Purge settings.
        /// </summary>
        /// <param name="enabled">if set to <c>true</c> [enabled].</param>
        /// <param name="hardBounces">The hard bounces.</param>
        /// <param name="softBounces">The soft bounces.</param>
        /// <param name="onBehalfOf">The user to impersonate.</param>
        /// <param name="cancellationToken">The cancellation token.</param>
        /// <returns>
        /// The <see cref="BouncePurgeSettings" />.
        /// </returns>
        public Task <BouncePurgeSettings> UpdateBouncePurgeMailSettingsAsync(bool enabled, int hardBounces, int softBounces, string onBehalfOf = null, CancellationToken cancellationToken = default)
        {
            var data = new BouncePurgeSettings
            {
                Enabled     = enabled,
                HardBounces = hardBounces,
                SoftBounces = softBounces
            };

            return(_client
                   .PatchAsync("mail_settings/bounce_purge")
                   .OnBehalfOf(onBehalfOf)
                   .WithJsonBody(data)
                   .WithCancellationToken(cancellationToken)
                   .AsObject <BouncePurgeSettings>());
        }
Beispiel #3
0
        /// <summary>
        /// Change the Bounce Purge settings
        /// </summary>
        /// <param name="enabled">if set to <c>true</c> [enabled].</param>
        /// <param name="hardBounces">The hard bounces.</param>
        /// <param name="softBounces">The soft bounces.</param>
        /// <param name="cancellationToken">The cancellation token.</param>
        /// <returns>
        /// The <see cref="BouncePurgeSettings" />.
        /// </returns>
        public Task <BouncePurgeSettings> UpdatBouncePurgeMailSettingsAsync(bool enabled, int hardBounces, int softBounces, CancellationToken cancellationToken = default(CancellationToken))
        {
            var bouncePurgeSettings = new BouncePurgeSettings
            {
                Enabled     = enabled,
                HardBounces = hardBounces,
                SoftBounces = softBounces
            };
            var data = JObject.FromObject(bouncePurgeSettings);

            return(_client
                   .PatchAsync("mail_settings/bounce_purge")
                   .WithJsonBody(data)
                   .WithCancellationToken(cancellationToken)
                   .AsSendGridObject <BouncePurgeSettings>());
        }
Beispiel #4
0
        /// <summary>
        /// Change the Bounce Purge settings
        /// </summary>
        /// <param name="enabled">if set to <c>true</c> [enabled].</param>
        /// <param name="hardBounces">The hard bounces.</param>
        /// <param name="softBounces">The soft bounces.</param>
        /// <param name="cancellationToken">The cancellation token.</param>
        /// <returns>
        /// The <see cref="BouncePurgeSettings" />.
        /// </returns>
        public async Task <BouncePurgeSettings> UpdatBouncePurgeMailSettingsAsync(bool enabled, int hardBounces, int softBounces, CancellationToken cancellationToken = default(CancellationToken))
        {
            var bouncePurgeSettings = new BouncePurgeSettings
            {
                Enabled     = enabled,
                HardBounces = hardBounces,
                SoftBounces = softBounces
            };
            var data     = JObject.FromObject(bouncePurgeSettings);
            var response = await _client.PatchAsync("/mail_settings/bounce_purge", data, cancellationToken).ConfigureAwait(false);

            response.EnsureSuccess();

            var responseContent = await response.Content.ReadAsStringAsync().ConfigureAwait(false);

            var updatedSettings = JObject.Parse(responseContent).ToObject <BouncePurgeSettings>();

            return(updatedSettings);
        }