SDK oficial para integrar WhatsApp en tus aplicaciones .NET de manera rápida y sencilla. Envía mensajes, imágenes, documentos y más con pocas líneas de código.
- ✉️ Envío de mensajes de texto
- 📸 Compartir imágenes y videos
- 📄 Envío de documentos (PDF, Office, ZIP)
- 📍 Compartir ubicación
- 👥 Gestión de contactos y grupos
- 🔒 Implementación segura y robusta
- ⚡ Alto rendimiento
- 🛡️ Manejo de errores inteligente
dotnet add package Wapi2.SDKO a través del Package Manager de Visual Studio:
Install-Package Wapi2.SDK- Regístrate en wapi2.com
- Obtén tu token de acceso
- Crea una sesión y escanea el código QR con tu WhatsApp
- ¡Listo para empezar!
using Wapi2.SDK;
// Inicializar cliente con tu token
var client = new WhatsAppClient("TU-TOKEN-AQUI");try
{
var response = await client.SendMessageAsync(
to: "51999999999", // Número en formato internacional
message: "¡Hola desde .NET!",
sessionId: "TU-SESSION-ID"
);
if (response.Status == "success")
Console.WriteLine("Mensaje enviado exitosamente");
}
catch (WhatsAppException ex)
{
Console.WriteLine($"Error: {ex.Message}");
}// Desde URL
await client.SendImageAsync(
to: "51999999999",
image: "https://ejemplo.com/imagen.jpg",
caption: "¡Mira esta imagen!",
sessionId: "TU-SESSION-ID"
);
// Desde archivo local
string base64Image = Convert.ToBase64String(File.ReadAllBytes("ruta/imagen.jpg"));
await client.SendImageAsync(
to: "51999999999",
image: base64Image,
caption: "Imagen desde archivo local",
sessionId: "TU-SESSION-ID"
);// Admite formatos: mp4, 3gp, mov (máx 16MB)
await client.SendVideoAsync(
to: "51999999999",
video: "https://ejemplo.com/video.mp4",
caption: "¡Mira este video!",
sessionId: "TU-SESSION-ID"
);await client.SendPdfAsync(
to: "51999999999",
pdf: "https://ejemplo.com/documento.pdf",
filename: "documento.pdf",
caption: "Documento importante",
sessionId: "TU-SESSION-ID"
);// Soporta: doc, docx, xls, xlsx, ppt, pptx
await client.SendOfficeDocumentAsync(
to: "51999999999",
document: "https://ejemplo.com/reporte.xlsx",
filename: "reporte.xlsx",
caption: "Reporte mensual",
sessionId: "TU-SESSION-ID"
);await client.SendFileAsync(
to: "51999999999",
document: "https://ejemplo.com/archivos.zip",
filename: "archivos.zip",
caption: "Documentos comprimidos",
sessionId: "TU-SESSION-ID"
);await client.SendLocationAsync(
to: "51999999999",
latitude: -12.0464,
longitude: -77.0428,
description: "Plaza Mayor de Lima",
sessionId: "TU-SESSION-ID"
);try
{
await client.SendMessageAsync(to, message, sessionId);
}
catch (ValidationException ex)
{
Console.WriteLine($"Error de validación: {ex.Message}");
}
catch (FileValidationException ex) when (ex.FileError == FileValidationException.FileErrorType.SizeExceeded)
{
Console.WriteLine("El archivo excede el tamaño máximo de 16MB");
}
catch (NetworkException ex)
{
Console.WriteLine($"Error de red: {ex.Message}");
}
catch (WhatsAppException ex)
{
Console.WriteLine($"Error general: {ex.Message}");
}- Tamaño máximo de archivos: 16MB
- Longitud máxima del nombre de archivo: 255 caracteres
- Longitud máxima de descripción: 1024 caracteres
- Formatos de video soportados: mp4, 3gp, mov
- Formatos de Office soportados: doc, docx, xls, xlsx, ppt, pptx
- .NET Framework 4.6.1 o superior
- Cualquier plataforma que soporte .NET Standard 1.6, incluyendo:
- .NET Core 1.0 o superior
- Xamarin.iOS 10.0 o superior
- Xamarin.Android 7.0 o superior
- Universal Windows Platform 10.0 o superior
- Unity 2018.1 o superior
Para más detalles y ejemplos, visita nuestra documentación completa.
¡Las contribuciones son bienvenidas! Por favor, lee nuestra guía de contribución.
Este proyecto está bajo la Licencia MIT. Ver el archivo LICENSE para más detalles.
- 📧 Email: admin@wapi2.com
- 💬 Chat: +51924893117
- 📚 Documentación API
- 🐛 Reportar Issues