Maytapi/Documentación/Guía de C#
Guía de C#Unos 10 minutosCómo enviar un mensaje de WhatsApp con C#
Envía mensajes de texto y multimedia desde C# con una sola petición HTTP y recibe las respuestas en tu propio webhook. REST y JSON puros: sin SDK ni aprobación de plantillas.
Última actualización:
- C#
- REST + JSON
- sin SDK
- respuestas por webhook
// .NET 6+ (System.Net.Http.Json)
using System.Net.Http.Json;
var pid = "your-pid";
var phoneId = "your-phone-id";
var token = "your-token";
using var http = new HttpClient();
http.DefaultRequestHeaders.Add("x-maytapi-key", token);
var res = await http.PostAsJsonAsync(
$"https://api.maytapi.com/api/{pid}/{phoneId}/sendMessage",
new { to_number = "3461xxxxx67", type = "text", message = "Hello from C#!" });
Console.WriteLine(await res.Content.ReadAsStringAsync());Qué necesitas
Cuatro cosas, todas disponibles en la consola en pocos minutos.
-
cuenta
Una cuenta de Maytapi
Regístrate e inicia la prueba gratuita, sin tarjeta.
-
teléfono
Un número vinculado
Escanea el código QR con WhatsApp en tu teléfono. Tu número sigue funcionando como siempre.
-
token
pid y token
Cópialos de la página de token de la consola; el phone_id aparece junto a tu número.
-
C#
Un entorno de C#
Basta con una versión reciente de C# y su cliente HTTP estándar.
Envía un mensaje de texto con C#
Haz un POST con un cuerpo JSON a /sendMessage con tu token en la cabecera x-maytapi-key. El mensaje se encola en tu teléfono y la respuesta llega al instante.
- ✓to_number en formato internacional, p. ej. 3461xxxxx67
- ✓type: text y el texto del mensaje
- ✓La respuesta incluye el id del mensaje
curl -X POST "https://api.maytapi.com/api/$PID/$PHONE_ID/sendMessage" \
-H "x-maytapi-key: $TOKEN" \
-H "Content-Type: application/json" \
-d '{"to_number": "3461xxxxx67", "type": "text", "message": "Hello from C#!"}'{
"success": true,
"data": {
"chatId": "3461xxxxx67@c.us",
"msgId": "3EB065B353B9493D00C9"
}
}Envía una imagen, un video o un documento
Usa el mismo endpoint con type media y una URL pública o un data URI en base64. Añade un pie de foto y un nombre de archivo opcionales.
- ✓Imágenes, video, audio, PDF y otros documentos
- ✓Pie de foto en el campo text
- ✓Los data URI en base64 funcionan igual que las URL
await http.PostAsJsonAsync(
$"https://api.maytapi.com/api/{pid}/{phoneId}/sendMessage",
new
{
to_number = "3461xxxxx67",
type = "media",
message = "https://example.com/invoice-10482.pdf",
text = "Your invoice for order #10482",
filename = "invoice-10482.pdf"
});Recibe respuestas con un webhook en C#
Registra la URL del webhook una vez. Los mensajes entrantes y las confirmaciones de entrega y lectura llegan en JSON; responde con la URL reply incluida en cada evento.
- ✓Devuelve 200 rápido y luego procesa el evento
- ✓Omite tus propios mensajes con fromMe
- ✓Usa event.reply para responder en el mismo chat
await http.PostAsJsonAsync(
$"https://api.maytapi.com/api/{pid}/setWebhook",
new { webhook = "https://example.com/maytapi/webhook" });var app = WebApplication.CreateBuilder(args).Build();
var http = new HttpClient();
http.DefaultRequestHeaders.Add("x-maytapi-key", token);
app.MapPost("/maytapi/webhook", async (JsonElement evt) =>
{
if (evt.GetProperty("type").GetString() == "message" &&
!evt.GetProperty("message").GetProperty("fromMe").GetBoolean())
{
await http.PostAsJsonAsync(evt.GetProperty("reply").GetString(), new
{
to_number = evt.GetProperty("conversation").GetString(),
type = "text",
message = "Thanks! We received your message."
});
}
return Results.Ok();
});
app.Run();FAQ de WhatsApp API con C#
Pregunta lo que quieras a nuestro equipo de soporte por WhatsApp. El tiempo medio de respuesta es inferior a 24 horas.
Centro de ayuda →¿Hay un SDK oficial para C#?
No hace falta. La API es REST con JSON, así que basta con el cliente HTTP estándar de C#, como muestran los ejemplos de esta página.
¿Puedo enviar mensajes a grupos desde C#?
Sí. Usa el id del grupo (termina en @g.us) como to_number; los endpoints de grupos están disponibles en todos los planes.
¿Por qué no llegó mi mensaje?
Comprueba que el estado del teléfono esté activo y revisa la cola y los registros en la consola. Los números nuevos deben calentarse antes de enviar en volumen.
Más funciones de WhatsApp API

Consigue tu clave y envía tu primer mensaje en diez minutos
Sin aprobación, sin plantillas, sin tarjeta. Todos los endpoints abiertos durante tres días.