Automatizar mensajes de WhatsApp usando C NET

24 de marzo de 2025

Si eres desarrollador o gestionas un negocio, mantener el contacto con tus usuarios no debería ser una molestia. Con Wassenger + C#, puedes configurar mensajes automatizados de WhatsApp que simplemente funcionan — sin envíos manuales, sin tiempos perdidos.

Esto es lo que puedes hacer con ello:

📅 Programar y enviar mensajes personalizados — Mantén a tu audiencia informada con recordatorios, actualizaciones, promociones o cualquier otra cosa.

📊 Rastrear entregas y respuestas — Ve qué está llegando y a qué responde la gente.

🤖 Reducir tareas manuales aburridas — Automatiza lo repetitivo y ahorra mucho tiempo a tu equipo.

😊 Mejorar la experiencia del cliente — Mensajes rápidos y constantes = usuarios felices.

¿Quieres configurarlo? Tenemos una guía sencilla para mostrarte cómo. Empieza a automatizar WhatsApp con C# en poco tiempo.

🫣 ¿No quieres usar programación? ¡No hay problema! Explora nuestra nueva función de Campañas sin código para WhatsApp. Importa tus contactos, define un mensaje, programa una fecha de entrega y relájate! 🥳 🥳

🤩 🤖 Wassenger es una plataforma de comunicación completa y solución API para WhatsApp. Explora más de 100+ casos de uso de la API y automatiza cualquier cosa en WhatsApp registrándote para una prueba gratuita y comenzando en minutos!

Requisitos

  • Tener un número de WhatsApp ya vinculado a la plataforma y en línea.
  • Número de teléfono del destinatario con prefijo internacional en formato E164. Ejemplo: +12345678900. Valida el formato del número de teléfono aquí.

Endpoint de la API

Usaremos el siguiente endpoint de la API para enviar mensajes a un grupo:

Preparar la solicitud

URL objetivo de la API usando el método POST

https://api.wassenger.com/v1/messages

Encabezados HTTPS requeridos > Obtén tu clave API aquí

Content-Type: application/json
Token: $API_TOKEN

Usa el cuerpo en formato JSON

{
  "phone": "+1234567890",
  "message": "Hello world, this is a sample message"
}

🖥️ ¿Buscas un ejemplo de código? Ve al probador en vivo de la API y obtén ejemplos de código listos para usar en más de 15 lenguajes de programación, incluyendo Python, JavaScript, PHP, C#, Java, Ruby, Go, Powershell, cURL y más.

🤩 🤖 Wassenger es una solución API completa para WhatsApp. Regístrate para una prueba gratuita de 7 días y comienza en minutos!

Enviar mensajes automatizados con C# (RestClient)

  • Configuración: La clave API, el número de teléfono y el mensaje se almacenan en variables para una fácil modificación.
  • RestClient y RestRequest: El RestClient se inicializa con la URL de la API, y el RestRequest se crea con el método POST.
  • Encabezados: Se añaden encabezados para Content-Type y Token a la solicitud.
  • Payload: El payload se crea como un objeto anónimo y se añade al cuerpo de la solicitud usando AddJsonBody.
  • Ejecución y manejo: La solicitud se ejecuta usando el método Execute, y la respuesta se verifica para comprobar el éxito. Se imprimen mensajes apropiados según el estado de la respuesta.
// This code requires you to have installed RestSharp package.
// Documentation: https://restsharp.dev
// Installation: https://www.nuget.org/packages/RestSharp
using System;
using RestSharp;
class Program
{
static void Main(string[] args)
{
var apiKey = "YOUR_ACTUAL_API_KEY";
var phone = "+1234567890";
var message = "Hello world, this is a sample message";
var client = new RestClient("https://api.wassenger.com/v1/messages");
var request = new RestRequest(Method.POST);
request.AddHeader("Content-Type", "application/json");
request.AddHeader("Token", apiKey);
var payload = new
{
phone = phone, 
message = message
};
request.AddJsonBody(payload);
IRestResponse response = client.Execute(request);
if(response.IsSuccessful)
{
Console.WriteLine("Message sent successfully.");
Console.WriteLine("Response: " + response.Content);
}
else
{
Console.WriteLine("Failed to send message.Status code: " + response.StatusCode);
Console.WriteLine("Error: " + response.ErrorMessage);
}
}
}

Enviar mensajes automatizados con C# (HttpClient)

  • Configuración: La clave API, el número de teléfono y el mensaje se almacenan en variables.
  • HttpClient y HttpRequestMessage: Se crea la instancia HttpClient, y HttpRequestMessage se inicializa con el método POST y la URL de la API.
  • Encabezados: Se añade el encabezado Token a la solicitud.
  • Contenido: El contenido de la solicitud se crea usando StringContent con el payload JSON y el tipo de contenido apropiado.
  • Ejecución y manejo: La solicitud se envía de forma asíncrona usando SendAsync. La respuesta se verifica con EnsureSuccessStatusCode. Se capturan y manejan las excepciones, mostrando mensajes de error apropiados.
// This code uses the built-in HttpClient package in the.NET framework.
// Documentation: https://docs.microsoft.com/en-us/dotnet/api/system.net.http.httpclient?view=net-6.0
using System;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Text;
using System.Threading.Tasks;
class Program
{
static async Task Main(string[] args)
{
var apiKey = "YOUR_ACTUAL_API_KEY";
var phone = "+1234567890";
var message = "Hello world, this is a sample message";
using(var client = new HttpClient())
{
var request = new HttpRequestMessage
{
Method = HttpMethod.Post, 
RequestUri = new Uri("https://api.wassenger.com/v1/messages"), 
Headers =
{
{ "Token", apiKey }, 
}, 
Content = new StringContent($"{{\"phone\":\"{phone}\", \"message\":\"{message}\"}}", Encoding.UTF8, "application/json")
};
try
{
using(var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var responseBody = await response.Content.ReadAsStringAsync();
Console.WriteLine("Message sent successfully.");
Console.WriteLine("Response: " + responseBody);
}
}
catch(HttpRequestException httpEx)
{
Console.WriteLine($"HTTP error occurred: {httpEx.Message}");
}
catch(Exception ex)
{
Console.WriteLine($"An error occurred: {ex.Message}");
}
}
}
}

Pruebas en vivo de la API

Puedes probar y jugar con la API directamente desde tu navegador.

Una vez que termines de probar, obtén el ejemplo de código autogenerado en tu lenguaje de programación preferido y estarás listo para comenzar.

Prueba nuestro probador en vivo de la API ahora

Preguntas frecuentes

¿Cuáles son las diferencias entre usar RestClient y HttpClient para este propósito?

Para enviar mensajes automatizados en C#, puedes usar tanto RestClient del paquete RestSharp como el HttpClient incorporado en el framework .NET.

  • RestClient (RestSharp): Esta librería de terceros simplifica la realización de llamadas RESTful. Es fácil de usar y excelente para configuraciones rápidas, abstrae mucha de la complejidad.
  • HttpClient: Esta clase incorporada ofrece más control y flexibilidad. Es ideal para escenarios más complejos y para optimizar el rendimiento, pero requiere más código repetitivo.

Elige RestClient por simplicidad y facilidad de uso, y HttpClient por mayor control y rendimiento.

Cómo enviar mensajes a múltiples números de teléfono

Solo tienes que enviar múltiples solicitudes a la API, una por cada número de teléfono objetivo.

Por ejemplo, para enviar un mensaje a 10 números de teléfono, deberías enviar 10 solicitudes HTTPS independientes a la API.

No existe una opción para enviar múltiples mensajes en una sola solicitud a la API.

Cómo validar si un número de teléfono puede recibir mensajes de WhatsApp

Puedes validar si un número de teléfono dado está vinculado a una cuenta de WhatsApp y puede recibir mensajes.

La API proporciona un endpoint que puede validar si un número de teléfono dado existe en WhatsApp.

El único requisito es tener al menos un número de WhatsApp conectado a la plataforma en tu cuenta actual.

Para más detalles, consulta la documentación del endpoint de la API aquí.

Antes de verificar si un número de teléfono existe en WhatsApp, también puedes validar y normalizar el formato de una lista de números de teléfono usando el endpoint validador de números. Este endpoint solo valida el formato correcto E164, pero no verifica si el número existe efectivamente en WhatsApp.

Nota: El número de validaciones de comprobación en WhatsApp está limitado por mes según tu plan de suscripción. Consulta la tabla de precios para más detalles sobre los límites.

¿Buscas más respuestas? Consulta las FAQs extendidas.

Recursos útiles adicionales

Documentación de la API

Para más detalles sobre el endpoint de la API, por favor revisa la documentación donde encontrarás todos los detalles sobre los parámetros de solicitud aceptados, posibles respuestas de éxito o error y ejemplos de código listos para usar en múltiples lenguajes de programación:

https://app.wassenger.com/docs/#tag/Messages/operation/createMessage

Ready to transform your WhatsApp communication?

Start automating your customer interactions today with Wassenger

Get Started Free