Microsoft.AspNetCore.JsonPatch 10.0.1

About

Microsoft.AspNetCore.JsonPatch provides ASP.NET Core support for JSON PATCH requests.

How to Use

To use Microsoft.AspNetCore.JsonPatch, follow these steps:

Installation

dotnet add package Microsoft.AspNetCore.JsonPatch
dotnet add package Microsoft.AspNetCore.Mvc.NewtonsoftJson

Configuration

To enable JSON Patch support, call AddNewtonsoftJson in your ASP.NET Core app's Program.cs:

var builder = WebApplication.CreateBuilder(args);

builder.Services.AddControllers()
    .AddNewtonsoftJson();

Configure when using System.Text.Json

To add support for JSON Patch using Newtonsoft.Json while continuing to use System.Text.Json for other input and output formatters:

  1. Update your Program.cs with logic to construct a NewtonsoftJsonPatchInputFormatter:
    static NewtonsoftJsonPatchInputFormatter GetJsonPatchInputFormatter()
    {
        var builder = new ServiceCollection()
            .AddLogging()
            .AddMvc()
            .AddNewtonsoftJson()
            .Services.BuildServiceProvider();
    
        return builder
            .GetRequiredService<IOptions<MvcOptions>>()
            .Value
            .InputFormatters
            .OfType<NewtonsoftJsonPatchInputFormatter>()
            .First();
    }
    
  2. Configure the input formatter:
    var builder = WebApplication.CreateBuilder(args);
    
    builder.Services.AddControllers(options =>
    {
        options.InputFormatters.Insert(0, GetJsonPatchInputFormatter());
    });
    

Usage

To define an action method for a JSON Patch in an API controller:

  1. Annotate it with the HttpPatch attribute
  2. Accept a JsonPatchDocument<TModel>
  3. Call ApplyTo on the patch document to apply changes

For example:

[HttpPatch]
public IActionResult JsonPatchWithModelState(
    [FromBody] JsonPatchDocument<Customer> patchDoc)
{
    if (patchDoc is not null)
    {
        var customer = CreateCustomer();

        patchDoc.ApplyTo(customer, ModelState);

        if (!ModelState.IsValid)
        {
            return BadRequest(ModelState);
        }

        return new ObjectResult(customer);
    }
    else
    {
        return BadRequest(ModelState);
    }
}

In a real app, the code would retrieve the data from a store such as a database and update the database after applying the patch.

Additional Documentation

For additional documentation and examples, refer to the official documentation on JSON Patch in ASP.NET Core.

Feedback & Contributing

Microsoft.AspNetCore.JsonPatch is released as open-source under the MIT license. Bug reports and contributions are welcome at the GitHub repository.

Showing the top 20 packages that depend on Microsoft.AspNetCore.JsonPatch.

Packages Downloads
Microsoft.AspNetCore.Mvc.NewtonsoftJson
ASP.NET Core MVC features that use Newtonsoft.Json. Includes input and output formatters for JSON and JSON PATCH. This package was built from the source code at https://github.com/aspnet/AspNetCore/tree/1bf292d47ac2a0ebda07d8a3f00355dd01915ad5
114
Microsoft.AspNetCore.Mvc.NewtonsoftJson
ASP.NET Core MVC features that use Newtonsoft.Json. Includes input and output formatters for JSON and JSON PATCH. This package was built from the source code at https://github.com/aspnet/AspNetCore/tree/509f6badec2f3162f0e50330cd9107e5624b379b
111
Microsoft.AspNetCore.Mvc.NewtonsoftJson
ASP.NET Core MVC features that use Newtonsoft.Json. Includes input and output formatters for JSON and JSON PATCH. This package was built from the source code at https://github.com/aspnet/AspNetCore/tree/b908e913e3befcfe241f3294509e6d9570acc07b
111
Microsoft.AspNetCore.Mvc.NewtonsoftJson
ASP.NET Core MVC features that use Newtonsoft.Json. Includes input and output formatters for JSON and JSON PATCH. This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/215a587e52efa710de84138b0a3374b860b924d8
248
Microsoft.AspNetCore.Mvc.NewtonsoftJson
ASP.NET Core MVC features that use Newtonsoft.Json. Includes input and output formatters for JSON and JSON PATCH. This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/2f1db20456007c9515068a35a65afdf99af70bc6
130
Microsoft.AspNetCore.Mvc.NewtonsoftJson
ASP.NET Core MVC features that use Newtonsoft.Json. Includes input and output formatters for JSON and JSON PATCH. This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/5a4c82ec57fadddef9ce841d608de5c7c8c74446
112
Microsoft.AspNetCore.Mvc.NewtonsoftJson
ASP.NET Core MVC features that use Newtonsoft.Json. Includes input and output formatters for JSON and JSON PATCH. This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/704f7cb1d2cea33afb00c2097731216f121c2c73
199
Microsoft.AspNetCore.Mvc.NewtonsoftJson
ASP.NET Core MVC features that use Newtonsoft.Json. Includes input and output formatters for JSON and JSON PATCH. This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/860072f7781a10db10fa925ea5c86d91f1e6f2c4
110
Microsoft.AspNetCore.Mvc.NewtonsoftJson
ASP.NET Core MVC features that use Newtonsoft.Json. Includes input and output formatters for JSON and JSON PATCH. This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/8e941eb42f819adb116b881195158b3887a70a1c
185
Microsoft.AspNetCore.Mvc.NewtonsoftJson
ASP.NET Core MVC features that use Newtonsoft.Json. Includes input and output formatters for JSON and JSON PATCH. This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/954f61dd38b33caa2b736c73530bd5a294174437
267
Microsoft.AspNetCore.Mvc.NewtonsoftJson
ASP.NET Core MVC features that use Newtonsoft.Json. Includes input and output formatters for JSON and JSON PATCH. This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/b8139c5ee58f1708b0e3368a1b241400edd6cbc4
139
Microsoft.AspNetCore.Mvc.NewtonsoftJson
ASP.NET Core MVC features that use Newtonsoft.Json. Includes input and output formatters for JSON and JSON PATCH. This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/b92c9f50f0333ea661785ba849f303cde6a93844
112
Microsoft.AspNetCore.Mvc.NewtonsoftJson
ASP.NET Core MVC features that use Newtonsoft.Json. Includes input and output formatters for JSON and JSON PATCH. This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/b96167fbfe8bd45d94e4dcda42c7d09eb5745459
233
Microsoft.AspNetCore.Mvc.NewtonsoftJson
ASP.NET Core MVC features that use Newtonsoft.Json. Includes input and output formatters for JSON and JSON PATCH. This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/c2a442982e736e17ae6bcadbfd8ccba278ee1be6
325
Microsoft.AspNetCore.Mvc.NewtonsoftJson
ASP.NET Core MVC features that use Newtonsoft.Json. Includes input and output formatters for JSON and JSON PATCH. This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/c911002ab43b7b989ed67090f2a48d9073d5118d
120
Microsoft.AspNetCore.Mvc.NewtonsoftJson
ASP.NET Core MVC features that use Newtonsoft.Json. Includes input and output formatters for JSON and JSON PATCH. This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/d634f2bd1ad6e319f26ff0f1d7ada5539158a19f
111
Microsoft.AspNetCore.Mvc.NewtonsoftJson
ASP.NET Core MVC features that use Newtonsoft.Json. Includes input and output formatters for JSON and JSON PATCH. This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/da7e9894ce22ef8cc02e5acc56e95a6f8cf8f644
175
Microsoft.AspNetCore.Mvc.NewtonsoftJson
ASP.NET Core MVC features that use Newtonsoft.Json. Includes input and output formatters for JSON and JSON PATCH. This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/e56abc45c4f8adc518abfc11a59849d616431e2c
113
Microsoft.AspNetCore.Mvc.NewtonsoftJson
ASP.NET Core MVC features that use Newtonsoft.Json. Includes input and output formatters for JSON and JSON PATCH. This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/fb4b5a21ebd67b31fff4ddf5c039181da504c932
111
Microsoft.AspNetCore.Mvc.NewtonsoftJson
ASP.NET Core MVC features that use Newtonsoft.Json. Includes input and output formatters for JSON and JSON PATCH. This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/febee99db845fd8766a13bdb391a07c3ee90b4ba
161

.NET Framework 4.6.2

.NET 10.0

.NET Standard 2.0

Version Downloads Last updated
10.0.1 8 12/10/2025
10.0.0 31 11/13/2025
10.0.0-rc.2.25502.107 37 10/15/2025
10.0.0-rc.1.25451.107 47 09/09/2025
10.0.0-preview.7.25380.108 50 08/12/2025
10.0.0-preview.6.25358.103 53 07/16/2025
10.0.0-preview.5.25277.114 63 06/08/2025
10.0.0-preview.4.25258.110 65 05/13/2025
10.0.0-preview.3.25172.1 67 04/13/2025
10.0.0-preview.2.25164.1 69 03/31/2025
10.0.0-preview.1.25120.3 65 04/01/2025
9.0.11 22 11/13/2025
9.0.10 35 10/15/2025
9.0.9 42 09/09/2025
9.0.8 148 08/07/2025
9.0.7 58 07/09/2025
9.0.6 54 06/13/2025
9.0.5 67 05/14/2025
9.0.4 70 04/09/2025
9.0.3 158 03/27/2025
9.0.2 89 02/14/2025
9.0.1 67 02/11/2025
9.0.0 83 11/14/2024
9.0.0-rc.2.24474.3 77 10/17/2024
9.0.0-rc.1.24452.1 82 10/23/2024
9.0.0-preview.7.24406.2 74 08/19/2024
9.0.0-preview.6.24328.4 96 07/20/2024
9.0.0-preview.5.24306.11 99 07/20/2024
9.0.0-preview.4.24267.6 90 07/20/2024
9.0.0-preview.3.24172.13 103 07/20/2024
9.0.0-preview.2.24128.4 103 07/20/2024
9.0.0-preview.1.24081.5 97 07/20/2024
8.0.22 22 11/13/2025
8.0.21 40 10/15/2025
8.0.20 46 09/09/2025
8.0.19 52 08/07/2025
8.0.18 54 07/09/2025
8.0.17 48 06/13/2025
8.0.16 67 05/14/2025
8.0.15 73 04/09/2025
8.0.14 80 03/31/2025
8.0.13 75 03/31/2025
8.0.12 88 03/31/2025
8.0.11 82 11/14/2024
8.0.10 95 10/15/2024
8.0.8 87 08/21/2024
8.0.7 118 07/20/2024
8.0.6 112 06/27/2024
8.0.5 98 07/20/2024
8.0.4 102 06/04/2024
8.0.3 102 07/20/2024
8.0.2 106 02/15/2024
8.0.1 178 02/04/2024
8.0.0 104 07/20/2024
8.0.0-rc.2.23480.2 91 07/20/2024
8.0.0-rc.1.23421.29 91 07/20/2024
8.0.0-preview.7.23375.9 93 07/20/2024
8.0.0-preview.6.23329.11 113 07/20/2024
8.0.0-preview.5.23302.2 95 07/20/2024
8.0.0-preview.4.23260.4 87 07/20/2024
8.0.0-preview.3.23177.8 99 07/20/2024
8.0.0-preview.2.23153.2 116 07/20/2024
8.0.0-preview.1.23112.2 86 07/20/2024
7.0.20 94 07/20/2024
7.0.19 95 07/20/2024
7.0.18 98 07/20/2024
7.0.17 93 07/20/2024
7.0.16 90 07/20/2024
7.0.15 96 07/20/2024
7.0.14 89 07/20/2024
7.0.13 104 07/20/2024
7.0.12 98 07/20/2024
7.0.11 117 07/20/2024
7.0.10 87 07/20/2024
7.0.9 111 07/20/2024
7.0.8 101 07/20/2024
7.0.7 105 07/20/2024
7.0.5 95 07/20/2024
7.0.4 104 07/20/2024
7.0.3 170 02/04/2024
7.0.2 91 07/20/2024
7.0.1 103 07/20/2024
7.0.0 113 02/04/2024
7.0.0-rc.2.22476.2 101 07/20/2024
7.0.0-rc.1.22427.2 106 07/20/2024
7.0.0-preview.7.22376.6 94 07/20/2024
7.0.0-preview.6.22330.3 106 07/20/2024
7.0.0-preview.5.22303.8 89 07/20/2024
7.0.0-preview.4.22251.1 108 07/20/2024
7.0.0-preview.3.22178.4 98 07/20/2024
7.0.0-preview.2.22153.2 92 07/20/2024
7.0.0-preview.1.22109.13 107 07/20/2024
6.0.36 79 11/14/2024
6.0.35 73 10/21/2024
6.0.33 75 08/21/2024
6.0.32 94 07/20/2024
6.0.31 106 07/20/2024
6.0.30 96 07/20/2024
6.0.29 100 07/20/2024
6.0.28 100 07/20/2024
6.0.27 94 07/20/2024
6.0.26 87 07/20/2024
6.0.25 86 07/20/2024
6.0.24 92 07/20/2024
6.0.23 104 07/20/2024
6.0.22 102 07/20/2024
6.0.21 103 07/20/2024
6.0.20 106 07/20/2024
6.0.19 113 07/20/2024
6.0.18 96 07/20/2024
6.0.16 99 07/20/2024
6.0.15 98 07/20/2024
6.0.14 113 07/20/2024
6.0.13 95 07/20/2024
6.0.12 97 07/20/2024
6.0.11 106 07/20/2024
6.0.10 105 07/20/2024
6.0.9 96 07/20/2024
6.0.8 111 07/20/2024
6.0.7 111 07/20/2024
6.0.6 100 07/20/2024
6.0.5 94 07/20/2024
6.0.4 107 07/20/2024
6.0.3 127 02/05/2024
6.0.2 112 07/20/2024
6.0.1 101 07/20/2024
6.0.0 97 07/20/2024
6.0.0-rc.2.21480.10 94 07/20/2024
6.0.0-rc.1.21452.15 91 07/20/2024
6.0.0-preview.7.21378.6 94 07/20/2024
6.0.0-preview.6.21355.2 87 07/20/2024
6.0.0-preview.5.21301.17 121 07/20/2024
6.0.0-preview.4.21253.5 109 07/20/2024
6.0.0-preview.3.21201.13 94 07/20/2024
6.0.0-preview.2.21154.6 94 07/20/2024
6.0.0-preview.1.21103.6 97 07/20/2024
5.0.17 102 07/20/2024
5.0.16 107 07/20/2024
5.0.15 113 07/20/2024
5.0.14 106 07/20/2024
5.0.13 111 07/20/2024
5.0.12 103 07/20/2024
5.0.11 105 07/20/2024
5.0.10 101 07/20/2024
5.0.9 101 07/20/2024
5.0.8 107 07/20/2024
5.0.7 107 07/20/2024
5.0.6 103 07/20/2024
5.0.5 99 07/20/2024
5.0.4 110 07/20/2024
5.0.3 92 07/20/2024
5.0.2 93 07/20/2024
5.0.1 108 07/20/2024
5.0.0 114 07/20/2024
5.0.0-rc.2.20475.17 96 07/20/2024
5.0.0-rc.1.20451.17 91 07/20/2024
5.0.0-preview.8.20414.8 85 07/20/2024
5.0.0-preview.7.20365.19 82 07/20/2024
5.0.0-preview.6.20312.15 103 07/20/2024
5.0.0-preview.5.20279.2 96 07/20/2024
5.0.0-preview.4.20257.10 97 07/20/2024
5.0.0-preview.3.20215.14 102 07/20/2024
5.0.0-preview.2.20167.3 101 07/20/2024
5.0.0-preview.1.20124.5 97 07/20/2024
3.1.32 98 07/20/2024
3.1.31 89 07/20/2024
3.1.30 101 07/20/2024
3.1.29 91 07/20/2024
3.1.28 106 07/20/2024
3.1.27 99 07/20/2024
3.1.26 103 07/20/2024
3.1.25 102 07/20/2024
3.1.24 106 07/20/2024
3.1.23 104 07/20/2024
3.1.22 104 07/20/2024
3.1.21 96 07/20/2024
3.1.20 104 07/20/2024
3.1.19 102 07/20/2024
3.1.18 104 07/20/2024
3.1.17 104 07/20/2024
3.1.16 109 07/20/2024
3.1.15 111 07/20/2024
3.1.14 104 07/20/2024
3.1.13 102 07/20/2024
3.1.12 104 07/20/2024
3.1.11 99 07/20/2024
3.1.10 98 07/20/2024
3.1.9 103 07/20/2024
3.1.8 100 07/20/2024
3.1.7 92 07/20/2024
3.1.6 103 07/20/2024
3.1.5 97 07/20/2024
3.1.4 91 07/20/2024
3.1.3 99 07/20/2024
3.1.2 101 07/20/2024
3.1.1 101 07/20/2024
3.1.0 100 07/20/2024
3.1.0-preview3.19555.2 100 07/20/2024
3.1.0-preview2.19528.8 104 07/20/2024
3.1.0-preview1.19508.20 93 07/20/2024
3.0.3 104 07/20/2024
3.0.2 103 07/20/2024
3.0.0 91 07/20/2024
3.0.0-rc1.19457.4 93 07/20/2024
3.0.0-preview9.19424.4 91 07/20/2024
3.0.0-preview8.19405.7 80 07/20/2024
3.0.0-preview7.19365.7 101 07/20/2024
3.0.0-preview6.19307.2 95 07/20/2024
3.0.0-preview5-19227-01 88 07/20/2024
3.0.0-preview4-19216-03 105 07/20/2024
3.0.0-preview3-19153-02 106 07/20/2024
3.0.0-preview-19075-0444 103 07/20/2024
3.0.0-preview-18579-0056 105 07/20/2024
2.3.0 69 03/31/2025
2.2.0 120 07/20/2024
2.2.0-preview3-35497 83 07/20/2024
2.2.0-preview2-35157 98 07/20/2024
2.2.0-preview1-35029 103 07/20/2024
2.1.1 95 07/20/2024
2.1.0 95 07/20/2024
2.1.0-rc1-final 99 07/20/2024
2.1.0-preview2-final 90 07/20/2024
2.1.0-preview1-final 96 07/20/2024
2.0.0 134 02/05/2024
2.0.0-preview2-final 91 07/20/2024
2.0.0-preview1-final 108 07/20/2024
1.1.2 101 07/20/2024
1.1.1 94 07/20/2024
1.1.0 93 07/20/2024
1.1.0-preview1-final 97 07/20/2024
1.0.0 101 07/20/2024
1.0.0-rc2-final 98 07/20/2024