FahdCloud.ThirdParty.WhatsappProviders
10.0.16
dotnet add package FahdCloud.ThirdParty.WhatsappProviders --version 10.0.16
NuGet\Install-Package FahdCloud.ThirdParty.WhatsappProviders -Version 10.0.16
<PackageReference Include="FahdCloud.ThirdParty.WhatsappProviders" Version="10.0.16" />
<PackageVersion Include="FahdCloud.ThirdParty.WhatsappProviders" Version="10.0.16" />
<PackageReference Include="FahdCloud.ThirdParty.WhatsappProviders" />
paket add FahdCloud.ThirdParty.WhatsappProviders --version 10.0.16
#r "nuget: FahdCloud.ThirdParty.WhatsappProviders, 10.0.16"
#:package FahdCloud.ThirdParty.WhatsappProviders@10.0.16
#addin nuget:?package=FahdCloud.ThirdParty.WhatsappProviders&version=10.0.16
#tool nuget:?package=FahdCloud.ThirdParty.WhatsappProviders&version=10.0.16
FahdCloud.ThirdParty.WhatsappProviders
A .NET library that provides unified interfaces and implementations for integrating with various WhatsApp service providers. This library simplifies the process of sending WhatsApp messages through different third-party providers with a consistent API.
Features
- 🔌 Multiple Provider Support - Support for Karzoun, Mujib, Mazbot, Ultramsg, WASender, Whats360, WABotMaster, and more.
- 💾 Built-in Caching - Memory caching support for improved performance.
- 🏗️ Dependency Injection Ready - Seamless integration with
Microsoft.Extensions.DependencyInjection. - ⚙️ Configuration Support - Easy configuration through
Microsoft.Extensions.Options. - 📱 Media Support - Send text messages, images, documents, and other media types (carrier dependent).
- 🔄 HTTP Client Integration - Built-in HTTP client management with
Microsoft.Extensions.Http.
Supported Providers
- Karzoun Chat - Official WhatsApp Business API partner.
- Mujib - WhatsApp messaging and automation service.
- Mazbot - WhatsApp Marketing and Template messaging service.
- Taqnyat - WhatsApp Business API with template and conversation messaging.
- Elwhats - Comprehensive WhatsApp API provider.
- Ultramsg - Reliable WhatsApp Business API provider.
- WASender - Powerful WhatsApp messaging gateway.
- Whats360 Pro - Comprehensive WhatsApp API with instance and campaign management.
- Whats360 & Whats360V2 - Scalable WhatsApp API platforms.
- WABotMaster - WhatsApp automation and notification service.
Installation
Install the package via NuGet Package Manager:
dotnet add package FahdCloud.ThirdParty.WhatsappProviders
Or via Package Manager Console:
Install-Package FahdCloud.ThirdParty.WhatsappProviders
Setup & Registration
1. Register Services
In your Program.cs or Startup.cs, use the extension method to register all providers:
using FahdCloud.ThirdParty.WhatsappProviders.Extensions;
// Register all provider services
builder.Services.AddWhatsappProviders();
2. Configuration Models
Each provider has its own settings model. You can configure them manually or bind them from your configuration:
// Example for Karzoun
builder.Services.Configure<KarzounSettings>(builder.Configuration.GetSection("Karzoun"));
// Example for Mazbot
builder.Services.Configure<MazbotSettings>(builder.Configuration.GetSection("Mazbot"));
Usage Examples
Karzoun Chat Provider
Karzoun requires an Account ID, Access Token, and Instance ID. The library automatically handles phone number normalization and formatting (appending @c.us).
public async Task SendKarzounMessage(IKarzounService karzounService)
{
var settings = new KarzounSettings
{
AccountId = "your_id",
AccessToken = "your_token",
InstanceId = "your_inbox_id"
};
var result = await karzounService.SendMessageAsync(settings, "+201234567890", "Hello from Karzoun!");
if (result.isSuccess)
Console.WriteLine("Success!");
}
Mazbot Provider
Mazbot uses an API Key and automated JWT authentication. The library handles the login flow for you.
public async Task SendMazbotMessage(IMazbotService mazbotService)
{
var settings = new MazbotSettings
{
ApiKey = "your_api_key",
Email = "your_email",
Password = "your_password"
};
// Send plain text
var result = await mazbotService.SendMessageAsync(settings, "201234567890", "Hello World");
}
Mujib Provider
Mujib requires a Vendor UID and a Bearer Token.
public async Task SendMujibMessage(IMujibService mujibService)
{
var settings = new MujibSetting
{
ApiBaseUrl = "https://api.mujib.com",
VendorUid = "your_uid",
BearerToken = "your_token"
};
var result = await mujibService.SendMessageAsync(settings, "201234567890", "Test message");
}
Whats360 Pro Provider
Whats360 Pro provider supports basic messaging and connection status checks.
public async Task Whats360ProUsage(IWhats360ProService whats360Service)
{
var settings = new Whats360ProSetting
{
Token = "your_token",
InstanceId = "your_instance_id"
};
// Check connection status
bool IsConnected = await whats360Service.CheckConnectionAsync(settings);
// Send text message
var result = await whats360Service.SendMessageAsync(settings, "201234567890@s.whatsapp.net", "Hello from Whats360 Pro!");
}
Taqnyat Provider
Taqnyat uses a Bearer token and supports both template messages for business-initiated conversations and plain text messages for active sessions.
public async Task TaqnyatUsage(ITaqnyatService taqnyatService)
{
var settings = new TaqnyatSetting
{
BearerToken = "your_bearer_token"
};
bool isConnected = await taqnyatService.CheckConnectionAsync(settings);
var templateResult = await taqnyatService.SendTemplateMessageAsync(
settings,
"201234567890",
"approved_template_name",
"ar");
var textResult = await taqnyatService.SendMessageAsync(
settings,
"201234567890",
"Hello from Taqnyat!");
}
Common Response Handling
All services return a SendMessageResponse (or similar unified result) that provides status information:
public class SendMessageResponse
{
public bool isSuccess { get; set; }
public string meessage { get; set; } // Detailed success/error message
}
Requirements
- .NET 9.0 or later
- C# 12+
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
License
Refer to the LICENSE file in the repository for more information.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | 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. |
-
net10.0
- Microsoft.Extensions.Caching.Memory (>= 10.0.2)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.2)
- Microsoft.Extensions.Http (>= 10.0.2)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 10.0.2)
- Newtonsoft.Json (>= 13.0.5-beta1)
- Refit (>= 10.0.1)
- Refit.HttpClientFactory (>= 10.0.1)
- Refit.Newtonsoft.Json (>= 10.0.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 |
|---|---|---|
| 10.0.16 | 163 | 4/14/2026 |
| 10.0.15 | 111 | 4/14/2026 |
| 10.0.14 | 153 | 3/13/2026 |
| 10.0.13 | 365 | 1/25/2026 |
| 9.0.13 | 546 | 9/6/2025 |
| 6.0.3 | 146 | 3/13/2026 |
| 6.0.2 | 225 | 9/8/2025 |
| 6.0.1 | 190 | 9/6/2025 |
| 6.0.0 | 226 | 9/2/2025 |
| 1.0.13 | 300 | 8/6/2025 |
| 1.0.12 | 615 | 7/22/2025 |
| 1.0.11 | 329 | 7/20/2025 |
| 1.0.10 | 299 | 7/20/2025 |
| 1.0.9 | 308 | 7/20/2025 |
| 1.0.8 | 299 | 7/20/2025 |
| 1.0.7 | 151 | 7/5/2025 |
| 1.0.6 | 164 | 7/5/2025 |
| 1.0.5 | 228 | 6/30/2025 |
| 1.0.4 | 225 | 6/30/2025 |
| 1.0.3 | 217 | 6/29/2025 |