A high-performance REST API client library for .NET with interface-based declaration, AOT support, and advanced features.
WebApiClient is a REST API client library for .NET that allows developers to define and consume web services using C# interface declarations. It solves the problem of verbose and error-prone HTTP client code by providing a declarative approach with built-in serialization, authentication, and performance optimizations.
.NET developers building applications that consume RESTful APIs, especially those requiring high performance, AOT compatibility, or advanced features like interceptors and OpenAPI integration.
Developers choose WebApiClient for its superior performance over alternatives like Refit, its support for modern .NET features like AOT, and its rich feature set including aspect-oriented programming, syntax analysis, and Swagger code generation.
A REST API library with better functionality, performance, and scalability than refit
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Benchmarks show 2x+ performance improvements over Refit in various request scenarios, as highlighted in the README's BenchmarkDotNet results.
Supports full trimming and Ahead-of-Time compilation for .NET 8, enabling optimized deployments for modern applications.
Allows defining REST APIs using simple C# interfaces, reducing boilerplate code and errors through semantic declaration.
Includes interceptors, filters, logging, retries, and caching, enabling advanced customization without manual HTTP client implementation.
Generates WebApiClientCore interface code from OpenAPI documents, simplifying API integration and reducing manual work.
The extensive feature set and aspect-oriented programming can introduce unnecessary overhead for straightforward API calls, requiring more configuration than simpler libraries.
Compared to more established options like Refit, WebApiClient may have fewer community resources, plugins, or third-party integrations, as implied by its focus on outperforming rather than widespread adoption.
Advanced features like syntax analysis and custom aspects require familiarity with WebApiClient's specific patterns, which could slow down onboarding for developers new to declarative API clients.
WebApiClient is an open-source alternative to the following products: