Microsoft.Extensions.Http.Polly 10.0.0
About
Microsoft.Extensions.Http.Polly integrates IHttpClientFactory with the Polly library to provide comprehensive resilience and transient fault-handling. It allows developers to express policies such as Retry, Circuit Breaker, Timeout, Bulkhead Isolation, and Fallback in a fluent and thread-safe manner.
Note
This package is deprecated. Please use either Microsoft.Extensions.Resilience or Microsoft.Extensions.Http.Resilience instead.
How to Use
To use Microsoft.Extensions.Http.Polly, follow these steps:
Installation
dotnet add package Microsoft.Extensions.Http.Polly
Usage
Handle transient faults
AddTransientHttpErrorPolicy can be used define a policy that handles transient errors:
builder.Services.AddHttpClient("PollyWaitAndRetry")
.AddTransientHttpErrorPolicy(policyBuilder =>
policyBuilder.WaitAndRetryAsync(
retryCount: 3,
retryNumber => TimeSpan.FromMilliseconds(600)));
In the preceding example, failed requests are retried up to three times with a delay of 600 ms between attempts.
Dynamically select policies
To dynamically inspect a request and decide which policy apply, use the AddPolicyHandler extension method:
var timeoutPolicy = Policy.TimeoutAsync<HttpResponseMessage>(
TimeSpan.FromSeconds(10));
var longTimeoutPolicy = Policy.TimeoutAsync<HttpResponseMessage>(
TimeSpan.FromSeconds(30));
builder.Services.AddHttpClient("PollyDynamic")
.AddPolicyHandler(httpRequestMessage =>
httpRequestMessage.Method == HttpMethod.Get
? timeoutPolicy
: longTimeoutPolicy);
In this example, if the outgoing request is an HTTP GET, a 10-second timeout is applied. For any other HTTP method, a 30-second timeout is used.
Main Types
The main types provided by this package are:
PollyHttpClientBuilderExtensions: Provides extension methods for configuringPolicyHttpMessageHandlermessage handlers as part of anHttpClientmessage handler pipelinePolicyHttpMessageHandler: ADelegatingHandlerimplementation that executes request processing surrounded by aPolly.PolicyPollyServiceCollectionExtensions: Provides convenience extension methods to registerPolly.Registry.IPolicyRegistry<string>andPolly.Registry.IReadOnlyPolicyRegistry<string>in a service collectionHttpRequestMessageExtensions: Provides extension methods forHttpRequestMessagePolly integration
Additional Documentation
For additional documentation and examples, refer to the official documentation on using Polly-based handlers in ASP.NET Core.
Feedback & Contributing
Microsoft.Extensions.Http.Polly is released as open-source under the MIT license. Bug reports and contributions are welcome at the GitHub repository.
No packages depend on Microsoft.Extensions.Http.Polly.
.NET Standard 2.0
- Microsoft.Extensions.Http (>= 10.0.0)
- Polly (>= 7.2.4)
- Polly.Extensions.Http (>= 3.0.0)
| Version | Downloads | Last updated |
|---|---|---|
| 10.0.0 | 1 | 12/05/2025 |
| 10.0.0-rc.2.25502.107 | 0 | 10/14/2025 |
| 10.0.0-rc.1.25451.107 | 0 | 09/09/2025 |
| 10.0.0-preview.7.25380.108 | 1 | 12/05/2025 |
| 10.0.0-preview.6.25358.103 | 1 | 12/05/2025 |
| 10.0.0-preview.5.25277.114 | 0 | 06/06/2025 |
| 10.0.0-preview.4.25258.110 | 0 | 05/12/2025 |
| 10.0.0-preview.3.25172.1 | 0 | 04/10/2025 |
| 10.0.0-preview.2.25164.1 | 0 | 03/18/2025 |
| 10.0.0-preview.1.25120.3 | 0 | 02/25/2025 |
| 9.0.11 | 1 | 12/06/2025 |
| 9.0.10 | 1 | 12/06/2025 |
| 9.0.9 | 1 | 12/05/2025 |
| 9.0.8 | 0 | 08/05/2025 |
| 9.0.7 | 0 | 07/08/2025 |
| 9.0.6 | 0 | 06/10/2025 |
| 9.0.5 | 0 | 05/13/2025 |
| 9.0.4 | 0 | 04/08/2025 |
| 9.0.3 | 1 | 12/05/2025 |
| 9.0.2 | 0 | 02/11/2025 |
| 9.0.1 | 0 | 01/14/2025 |
| 9.0.0 | 1 | 12/05/2025 |
| 9.0.0-rc.2.24474.3 | 0 | 10/08/2024 |
| 9.0.0-rc.1.24452.1 | 0 | 09/10/2024 |
| 9.0.0-preview.7.24406.2 | 0 | 08/13/2024 |
| 9.0.0-preview.6.24328.4 | 0 | 07/09/2024 |
| 9.0.0-preview.5.24306.11 | 0 | 06/11/2024 |
| 9.0.0-preview.4.24267.6 | 1 | 12/05/2025 |
| 9.0.0-preview.3.24172.13 | 1 | 12/07/2025 |
| 9.0.0-preview.2.24128.4 | 0 | 03/12/2024 |
| 9.0.0-preview.1.24081.5 | 0 | 02/13/2024 |
| 8.0.22 | 1 | 12/06/2025 |
| 8.0.21 | 0 | 10/14/2025 |
| 8.0.20 | 1 | 12/06/2025 |
| 8.0.19 | 0 | 08/04/2025 |
| 8.0.18 | 1 | 12/06/2025 |
| 8.0.17 | 0 | 06/10/2025 |
| 8.0.16 | 0 | 05/13/2025 |
| 8.0.15 | 0 | 04/08/2025 |
| 8.0.14 | 1 | 12/06/2025 |
| 8.0.13 | 1 | 12/06/2025 |
| 8.0.12 | 1 | 12/06/2025 |
| 8.0.11 | 1 | 12/06/2025 |
| 8.0.10 | 1 | 12/06/2025 |
| 8.0.8 | 1 | 12/05/2025 |
| 8.0.7 | 0 | 07/09/2024 |
| 8.0.6 | 0 | 05/28/2024 |
| 8.0.5 | 0 | 05/14/2024 |
| 8.0.4 | 0 | 04/09/2024 |
| 8.0.3 | 1 | 12/05/2025 |
| 8.0.2 | 0 | 02/13/2024 |
| 8.0.1 | 0 | 01/09/2024 |
| 8.0.0 | 0 | 11/14/2023 |
| 8.0.0-rc.2.23480.2 | 0 | 10/10/2023 |
| 8.0.0-rc.1.23421.29 | 0 | 09/12/2023 |
| 8.0.0-preview.7.23375.9 | 0 | 08/08/2023 |
| 8.0.0-preview.6.23329.11 | 0 | 07/11/2023 |
| 8.0.0-preview.5.23302.2 | 0 | 06/13/2023 |
| 8.0.0-preview.4.23260.4 | 0 | 05/16/2023 |
| 8.0.0-preview.3.23177.8 | 0 | 04/11/2023 |
| 8.0.0-preview.2.23153.2 | 0 | 03/14/2023 |
| 8.0.0-preview.1.23112.2 | 0 | 02/21/2023 |
| 7.0.20 | 1 | 12/06/2025 |
| 7.0.19 | 0 | 05/14/2024 |
| 7.0.18 | 0 | 04/09/2024 |
| 7.0.17 | 1 | 12/06/2025 |
| 7.0.16 | 1 | 12/06/2025 |
| 7.0.15 | 1 | 12/06/2025 |
| 7.0.14 | 0 | 11/14/2023 |
| 7.0.13 | 1 | 12/06/2025 |
| 7.0.12 | 1 | 12/06/2025 |
| 7.0.11 | 1 | 12/06/2025 |
| 7.0.10 | 1 | 12/06/2025 |
| 7.0.9 | 0 | 07/11/2023 |
| 7.0.8 | 0 | 06/22/2023 |
| 7.0.7 | 1 | 12/05/2025 |
| 7.0.5 | 0 | 04/11/2023 |
| 7.0.4 | 0 | 03/14/2023 |
| 7.0.3 | 1 | 12/05/2025 |
| 7.0.2 | 0 | 01/10/2023 |
| 7.0.1 | 0 | 12/13/2022 |
| 7.0.0 | 0 | 11/07/2022 |
| 7.0.0-rc.2.22476.2 | 0 | 10/11/2022 |
| 7.0.0-rc.1.22427.2 | 0 | 09/14/2022 |
| 7.0.0-preview.7.22376.6 | 0 | 08/09/2022 |
| 7.0.0-preview.6.22330.3 | 0 | 07/12/2022 |
| 7.0.0-preview.5.22303.8 | 0 | 06/14/2022 |
| 7.0.0-preview.4.22251.1 | 0 | 05/10/2022 |
| 7.0.0-preview.3.22178.4 | 0 | 04/13/2022 |
| 7.0.0-preview.2.22153.2 | 0 | 03/14/2022 |
| 7.0.0-preview.1.22109.13 | 0 | 02/17/2022 |
| 6.0.36 | 0 | 11/12/2024 |
| 6.0.35 | 1 | 12/06/2025 |
| 6.0.33 | 1 | 12/05/2025 |
| 6.0.32 | 1 | 12/06/2025 |
| 6.0.31 | 1 | 12/06/2025 |
| 6.0.30 | 0 | 05/14/2024 |
| 6.0.29 | 0 | 04/09/2024 |
| 6.0.28 | 1 | 12/06/2025 |
| 6.0.27 | 1 | 12/06/2025 |
| 6.0.26 | 1 | 12/06/2025 |
| 6.0.25 | 0 | 11/14/2023 |
| 6.0.24 | 0 | 10/24/2023 |
| 6.0.23 | 1 | 12/06/2025 |
| 6.0.22 | 1 | 12/06/2025 |
| 6.0.21 | 0 | 08/08/2023 |
| 6.0.20 | 1 | 12/06/2025 |
| 6.0.19 | 0 | 06/22/2023 |
| 6.0.18 | 0 | 06/13/2023 |
| 6.0.16 | 0 | 04/11/2023 |
| 6.0.15 | 0 | 03/14/2023 |
| 6.0.14 | 0 | 02/14/2023 |
| 6.0.13 | 0 | 01/10/2023 |
| 6.0.12 | 0 | 12/13/2022 |
| 6.0.11 | 0 | 11/07/2022 |
| 6.0.10 | 0 | 10/11/2022 |
| 6.0.9 | 0 | 09/13/2022 |
| 6.0.8 | 0 | 08/09/2022 |
| 6.0.7 | 0 | 07/12/2022 |
| 6.0.6 | 0 | 06/14/2022 |
| 6.0.5 | 0 | 05/10/2022 |
| 6.0.4 | 0 | 04/11/2022 |
| 6.0.3 | 0 | 03/08/2022 |
| 6.0.2 | 0 | 02/08/2022 |
| 6.0.1 | 0 | 12/14/2021 |
| 6.0.0 | 0 | 11/08/2021 |
| 6.0.0-rc.2.21480.10 | 0 | 10/12/2021 |
| 6.0.0-rc.1.21452.15 | 0 | 09/14/2021 |
| 6.0.0-preview.7.21378.6 | 0 | 08/10/2021 |
| 6.0.0-preview.6.21355.2 | 0 | 07/14/2021 |
| 6.0.0-preview.5.21301.17 | 0 | 06/15/2021 |
| 6.0.0-preview.4.21253.5 | 0 | 05/24/2021 |
| 6.0.0-preview.3.21201.13 | 0 | 04/08/2021 |
| 6.0.0-preview.2.21154.6 | 0 | 03/11/2021 |
| 6.0.0-preview.1.21103.6 | 0 | 02/12/2021 |
| 5.0.1 | 0 | 12/08/2020 |
| 5.0.0 | 1 | 12/05/2025 |
| 5.0.0-rc.2.20478.4 | 0 | 10/13/2020 |
| 5.0.0-rc.1.20451.7 | 0 | 09/14/2020 |
| 5.0.0-preview.8.20407.3 | 1 | 12/05/2025 |
| 5.0.0-preview.7.20365.4 | 1 | 12/05/2025 |
| 5.0.0-preview.6.20306.1 | 0 | 06/25/2020 |
| 5.0.0-preview.5.20278.3 | 1 | 12/05/2025 |
| 5.0.0-preview.4.20251.2 | 0 | 05/18/2020 |
| 5.0.0-preview.3.20215.2 | 0 | 04/23/2020 |
| 5.0.0-preview.2.20160.3 | 1 | 12/05/2025 |
| 5.0.0-preview.1.20120.4 | 1 | 12/05/2025 |
| 3.1.32 | 1 | 12/05/2025 |
| 3.1.31 | 0 | 11/08/2022 |
| 3.1.30 | 1 | 12/05/2025 |
| 3.1.29 | 1 | 12/06/2025 |
| 3.1.28 | 1 | 12/06/2025 |
| 3.1.27 | 2 | 12/05/2025 |
| 3.1.26 | 1 | 12/06/2025 |
| 3.1.25 | 1 | 12/06/2025 |
| 3.1.24 | 1 | 12/06/2025 |
| 3.1.23 | 1 | 12/05/2025 |
| 3.1.22 | 0 | 12/14/2021 |
| 3.1.21 | 0 | 11/07/2021 |
| 3.1.20 | 1 | 12/06/2025 |
| 3.1.19 | 0 | 09/14/2021 |
| 3.1.18 | 0 | 08/10/2021 |
| 3.1.17 | 0 | 07/13/2021 |
| 3.1.16 | 0 | 06/08/2021 |
| 3.1.15 | 0 | 05/11/2021 |
| 3.1.14 | 0 | 04/06/2021 |
| 3.1.13 | 0 | 03/09/2021 |
| 3.1.12 | 0 | 02/09/2021 |
| 3.1.11 | 0 | 01/12/2021 |
| 3.1.10 | 0 | 11/09/2020 |
| 3.1.9 | 0 | 10/13/2020 |
| 3.1.8 | 0 | 09/08/2020 |
| 3.1.7 | 0 | 08/11/2020 |
| 3.1.6 | 0 | 07/14/2020 |
| 3.1.5 | 0 | 06/09/2020 |
| 3.1.4 | 0 | 05/12/2020 |
| 3.1.3 | 0 | 03/24/2020 |
| 3.1.2 | 0 | 02/18/2020 |
| 3.1.1 | 0 | 01/14/2020 |
| 3.1.0 | 0 | 12/03/2019 |
| 3.1.0-preview3.19553.2 | 0 | 11/13/2019 |
| 3.1.0-preview2.19525.4 | 0 | 11/01/2019 |
| 3.1.0-preview1.19506.1 | 0 | 10/15/2019 |
| 3.0.3 | 1 | 12/06/2025 |
| 3.0.2 | 1 | 12/05/2025 |
| 3.0.1 | 1 | 12/05/2025 |
| 3.0.0 | 1 | 12/05/2025 |
| 3.0.0-rc1.19456.10 | 0 | 09/16/2019 |
| 3.0.0-preview9.19423.4 | 0 | 09/04/2019 |
| 3.0.0-preview8.19405.4 | 0 | 08/13/2019 |
| 3.0.0-preview7.19362.4 | 0 | 07/23/2019 |
| 3.0.0-preview6.19304.6 | 0 | 06/12/2019 |
| 3.0.0-preview5.19227.9 | 0 | 05/06/2019 |
| 3.0.0-preview4.19216.2 | 0 | 04/18/2019 |
| 3.0.0-preview3.19153.1 | 0 | 03/06/2019 |
| 3.0.0-preview.19074.2 | 1 | 12/05/2025 |
| 3.0.0-preview.18572.1 | 1 | 12/05/2025 |
| 2.2.0 | 1 | 12/05/2025 |
| 2.2.0-preview3-35497 | 0 | 10/17/2018 |
| 2.2.0-preview2-35157 | 1 | 12/05/2025 |
| 2.2.0-preview1-35029 | 1 | 12/05/2025 |
| 2.1.1 | 1 | 12/05/2025 |
| 2.1.0 | 0 | 05/29/2018 |
| 2.1.0-rc1-final | 1 | 12/05/2025 |
| 2.1.0-preview2-final | 1 | 12/05/2025 |