CurlDotNet 1.2.23
See the version list below for details.
dotnet add package CurlDotNet --version 1.2.23
NuGet\Install-Package CurlDotNet -Version 1.2.23
<PackageReference Include="CurlDotNet" Version="1.2.23" />
<PackageVersion Include="CurlDotNet" Version="1.2.23" />
<PackageReference Include="CurlDotNet" />
paket add CurlDotNet --version 1.2.23
#r "nuget: CurlDotNet, 1.2.23"
#:package CurlDotNet@1.2.23
#addin nuget:?package=CurlDotNet&version=1.2.23
#tool nuget:?package=CurlDotNet&version=1.2.23
📚 CurlDotNet Documentation Hub
Welcome to CurlDotNet - the pure .NET implementation of curl that allows C# developers to execute curl commands directly in their applications!
✅ Latest Version: Fully supports .NET 10, .NET 9, and .NET 8 LTS
What is CurlDotNet?
CurlDotNet eliminates the friction of translating curl commands to C# code. Simply paste any curl command from API documentation, Stack Overflow, or bash scripts directly into your .NET application, and it works immediately.
Installation
Install CurlDotNet from NuGet: CurlDotNet on NuGet
dotnet add package CurlDotNet
Or via Package Manager:
Install-Package CurlDotNet
📊 Test Coverage & Performance
✅ 244 Tests - 100% Pass Rate - Rock-solid reliability with self-contained tests
- Test Results: ✅ Passed: 244 | ❌ Failed: 0 | ⏭ Skipped: 0
- Execution Time: ~33 seconds for full suite
- Reliability: Tests use local HTTP servers - no external dependencies
- Command parsing: 85+ tests
- HTTP operations: 50+ tests
- Integration tests: 25+ tests (with local test server)
- Synthetic curl scenarios: 45+ tests
- Error handling: 35+ tests
- No Docker required - Tests run anywhere .NET runs
🚀 Quick Start Paths
🆕 Complete Beginner?
"I'm new to .NET and programming"
- Start here → What is .NET and C#?
- Then → Your First Request
- Next → Explore Recipes
💼 Experienced Developer?
"I know .NET, just show me how to use CurlDotNet"
- Jump to → Installation
- Check out → API Guide
- Browse → Cookbook
🔄 Migrating from Another Library?
"I'm switching from HttpClient/RestSharp/etc."
- See the API Guide to understand CurlDotNet
📖 Documentation Structure
🎓 Tutorials
Learn the basics in plain English
- No prior .NET knowledge required
- Step-by-step explanations
- Lots of analogies and examples
- Start Tutorial Series →
👨🍳 Cookbook
"How do I..." recipes
- Task-focused solutions
- Copy-paste ready code
- Real-world scenarios
- Browse Recipes →
📘 API Guide
Complete API reference with examples
- Every class and method documented
- Multiple examples per feature
- Best practices included
- Explore API →
👨💻 Advanced Features
Advanced topics and techniques
- Working with middleware
- Custom HTTP clients
- Performance optimization
- Testing strategies
🎯 Common Tasks
Basic Operations
Authentication
Working with APIs
Advanced Features
🔍 Quick Reference
The Three Ways to Use CurlDotNet
1. String API (Simplest)
var result = await Curl.ExecuteAsync("curl https://api.example.com");
2. Builder API (Type-Safe)
var result = await new CurlRequestBuilder()
.WithUrl("https://api.example.com")
.WithHeader("Accept", "application/json")
.ExecuteAsync();
3. LibCurl API (Reusable)
var curl = new LibCurl()
.WithBearerToken("token123")
.WithTimeout(TimeSpan.FromSeconds(30));
var result = await curl.GetAsync("https://api.example.com");
📚 Learning Paths
Path 1: Absolute Beginner
Path 2: Web Developer
Path 3: Enterprise Developer
🆘 Getting Help
Can't Find Something?
- Use the search feature
- Check Troubleshooting
- Browse Common Issues
Still Stuck?
📊 Quick Stats
- 300+ curl options supported
- 91 exception types for precise error handling
- 100% pure .NET - no native dependencies
- 95% test coverage
- Works on .NET Framework 4.7.2+, .NET Core 2.0+, .NET 5-10
🎉 Welcome to CurlDotNet!
Ready to start? Choose your path above and let's begin making HTTP requests the easy way!
Documentation version: 1.0.1 | Last updated: November 2024
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- Microsoft.CSharp (>= 4.7.0)
- Newtonsoft.Json (>= 13.0.3)
- Ninject (>= 3.3.6)
- Ninject.Extensions.Factory (>= 3.3.3)
- System.CommandLine (>= 2.0.0-beta4.22272.1)
- System.Text.Json (>= 8.0.5)
-
net10.0
- Newtonsoft.Json (>= 13.0.3)
- Ninject (>= 3.3.6)
- Ninject.Extensions.Factory (>= 3.3.3)
- System.CommandLine (>= 2.0.0-beta4.22272.1)
-
net8.0
- Newtonsoft.Json (>= 13.0.3)
- Ninject (>= 3.3.6)
- Ninject.Extensions.Factory (>= 3.3.3)
- System.CommandLine (>= 2.0.0-beta4.22272.1)
-
net9.0
- Newtonsoft.Json (>= 13.0.3)
- Ninject (>= 3.3.6)
- Ninject.Extensions.Factory (>= 3.3.3)
- System.CommandLine (>= 2.0.0-beta4.22272.1)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 9.5.2 | 89 | 2/19/2026 |
| 9.5.1 | 80 | 2/13/2026 |
| 9.5.0 | 43 | 2/12/2026 |
| 9.4.1 | 59 | 2/12/2026 |
| 9.4.0 | 56 | 2/10/2026 |
| 9.3.3 | 62 | 2/8/2026 |
| 9.2.1 | 715 | 12/1/2025 |
| 9.2.0 | 461 | 12/1/2025 |
| 9.1.0 | 455 | 12/1/2025 |
| 9.0.0 | 461 | 12/1/2025 |
| 3.0.0 | 451 | 12/1/2025 |
| 1.3.5 | 452 | 12/1/2025 |
| 1.2.27 | 413 | 11/18/2025 |
| 1.2.25 | 359 | 11/18/2025 |
| 1.2.23 | 321 | 11/17/2025 |
| 1.2.15 | 286 | 11/17/2025 |
| 1.1.1 | 205 | 11/16/2025 |
| 1.1.0 | 211 | 11/16/2025 |
| 1.0.0 | 125 | 11/16/2025 |
Version 1.2.7 - Streamlined Repository Structure
🚀 Simplified deployment with single-script solution (deploy-simple.sh)
📋 Added comprehensive examples based on cookbook recipes
🔄 Implemented continuous delivery: every commit = new version
✅ Added version bump rule: all changes trigger releases
🛠️ New PR-based workflow: dev branch → PR → merge → auto-release
📝 Created CONTRIBUTING.md and DEPLOY.md for clear workflows
🧪 Added test-all-scripts.sh for local validation
💡 Philosophy: Spend 80% coding, 20% deploying (not vice versa)
💎 Sponsored by IronSoftware
Documentation: https://jacob-mellor.github.io/curl-dot-net/
Repository: https://github.com/jacob-mellor/curl-dot-net
NuGet: CurlDotNet