Skip to content

restsharp/RestSharp

Repository files navigation

RestSharp - Simple .NET REST Client

RestSharp is a lightweight HTTP API client library. It's a wrapper around HttpClient, not a full-fledged client on its own.

What RestSharp adds to HttpClient:

  • Default parameters of any kind, not just headers
  • Add a parameter of any kind to requests, like query, URL segment, header, cookie, or body
  • Multiple ways to add a request body, including JSON, XML, URL-encoded form data, multipart form data with and without files
  • Built-in serialization and deserilization of JSON, XML, and CSV, as well as the ability to add custom serializers
  • Rich support for authentication

Compatibility note

RestSharp 107 was a major release that brings a lot of changes. We've removed a lot of legacy code and added new features. Finally, RestSharp has moved to HttpClient. We also deprecated the following:

  • SimpleJson in favour of System.Text.Json.JsonSerialzer
  • IRestRequest, and IRestResponse in favour of implementing classes
  • Everything Http and IHttp as those are just wrappers
  • Client configuration moved to RestClientOptions to make the client thread-safe
  • IRestClient interface surface substantially reduced

Most of the client and some of the request options are now in RestClientOptions.

Check v107+ docs for more information.

Packages

Package What it's for
RestSharp The core library, including System.Text.Json serializer and basical XML serializer
RestSharp.Serializers.NewtonsoftJson Use Newtonsoft.Json as a JSON serializer
RestSharp.Serializers.Xml Use custom RestSharp XML serializer for XML
RestSharp.Serializers.CsvHelper Use CsvHelper as a CSV serializer

Code of Conduct

This project has adopted the code of conduct defined by the Contributor Covenant to clarify expected behavior in our community. For more information see the .NET Foundation Code of Conduct.

Users violated the aforementioned code of conduct will be blocked.

Support

RestSharp is an open-source project with a single maintainer. Do not expect your issue to be resolved unless it concerns a large group of RestSharp users. The best way to resolve your issue is to fix it yourself. Fork the repository and submit a pull request. You can also motivate the maintainer by sponsoring this project.

Contribute

Please read CONTRIBUTING.md for details on the process for reporting issues and submitting pull requests.

Get help

Read the docs: Official Site

Ask a question on StackOverflow with the tag restsharp.

Join RestSharp Discord server: Discord

Find RestSharp on Twitter: @RestSharp

Community

.NET Foundation

This project is a part of the .NET Foundation.

Code Contributors

This project exists thanks to all the people who contribute.

Financial Contributors

Become a financial contributor and help us sustain our community. Contribute

License

Apache License 2.0