Saltar al contenido
WbizTool

Envía mensajes a un grupo de WhatsApp con la API

Publica anuncios para tu equipo, novedades de tu comunidad e informes diarios en un grupo de WhatsApp desde tu propio código. Tu número de WhatsApp vinculado los envía a cualquier grupo del que sea miembro, elegido por el nombre exacto del grupo.

Prueba gratuita: 50 mensajes en cualquier periodo de 30 días, sin tarjeta.

Cómo funciona

  1. Obtén tu clave API y vincula tu número

    Regístrate y vincula tu número de WhatsApp en la página Números de WhatsApp con un código QR o un código de vinculación, igual que WhatsApp Web. En Configuración → Claves API, crea una clave y copia tu Client ID (la guía de claves API de abajo muestra dónde). El ID que aparece en la tarjeta del número (por ejemplo, ID 678) es tu whatsapp_client.

  2. Asegúrate de que tu número está en el grupo

    El número desde el que envías debe ser miembro del grupo, y administrador si solo los administradores pueden escribir en él. Anota el nombre del grupo exactamente como lo muestra WhatsApp, con emojis y signos de puntuación incluidos.

  3. Envía al grupo

    Haz un POST a https://wbiztool.com/api/v1/send_msg/group/ con group_name y msg. Una respuesta con "status": 1 y un msg_id significa que el mensaje está en cola.

  4. Comprueba que salió

    El grupo se busca cuando se envía el mensaje, no cuando llamas a la API. Revisa el estado del mensaje o un webhook: un nombre incorrecto falla ahí con Group not found.

Ejemplos de código en Mensajes a grupos

Enviar un texto a un grupo (cURL)
curl -X POST https://wbiztool.com/api/v1/send_msg/group/ \
  -H "Content-Type: application/json" \
  -d '{
    "client_id": 12345,
    "api_key": "YOUR_API_KEY",
    "whatsapp_client": 678,
    "msg_type": 0,
    "group_name": "Sales Team Mumbai",
    "msg": "Reminder: *weekly review* starts at 4 PM today."
  }'
Python (requests)
import requests

response = requests.post(
    "https://wbiztool.com/api/v1/send_msg/group/",
    json={
        "client_id": 12345,
        "api_key": "YOUR_API_KEY",
        "whatsapp_client": 678,
        "msg_type": 0,
        "group_name": "Sales Team Mumbai",
        "msg": "Reminder: *weekly review* starts at 4 PM today.",
    },
    timeout=60,
)
result = response.json()  # read the body even when the HTTP code is 400

if result.get("status") == 1:
    print("Queued with msg_id", result["msg_id"])
else:
    print("Failed:", result.get("message"))
Python (cliente oficial)
from wbiztool_client import WbizToolClient

client = WbizToolClient(api_key="YOUR_API_KEY", client_id=12345)

result = client.send_message_to_group(
    group_name="Sales Team Mumbai",
    msg="Reminder: weekly review starts at 4 PM today.",
    whatsapp_client=678,
)
print(result)
Node.js (fetch): una imagen desde una URL
// Node.js 18+ (built-in fetch). Save as .mjs to use top-level await.
const response = await fetch("https://wbiztool.com/api/v1/send_msg/group/", {
  method: "POST",
  headers: { "Content-Type": "application/json" },
  body: JSON.stringify({
    client_id: 12345,
    api_key: "YOUR_API_KEY",
    whatsapp_client: 678,
    msg_type: 1,
    group_name: "Sales Team Mumbai",
    img_url: "https://example.com/reports/weekly-sales.png",
    msg: "This week's sales summary",
  }),
});
console.log(await response.json());
PHP (extensión cURL)
<?php
$payload = [
    'client_id'       => 12345,
    'api_key'         => 'YOUR_API_KEY',
    'whatsapp_client' => 678,
    'msg_type'        => 0,
    'group_name'      => 'Sales Team Mumbai',
    'msg'             => 'Reminder: *weekly review* starts at 4 PM today.',
];

$ch = curl_init('https://wbiztool.com/api/v1/send_msg/group/');
curl_setopt_array($ch, [
    CURLOPT_POST           => true,
    CURLOPT_HTTPHEADER     => ['Content-Type: application/json'],
    CURLOPT_POSTFIELDS     => json_encode($payload),
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_TIMEOUT        => 60,
]);
$result = json_decode(curl_exec($ch), true);
curl_close($ch);

if (($result['status'] ?? 0) === 1) {
    echo 'Queued with msg_id ' . $result['msg_id'];
} else {
    echo 'Failed: ' . ($result['message'] ?? 'no response');
}

Lo que puedes hacer

  • Textos, imágenes y archivos

    msg_type 0 envía texto, 1 una imagen desde img_url y 2 un archivo desde file_url, o sube el archivo como multipart form data en un campo llamado file.

  • Elegido por el nombre del grupo

    No hay que buscar ningún ID de grupo: group_name es el nombre exacto del grupo en WhatsApp. Escríbelo con las mismas mayúsculas y minúsculas que muestra WhatsApp; los nombres parciales no coinciden.

  • Programa un mensaje a un grupo

    La API para programar mensajes (/api/v1/schedule_msg/) acepta group_name en lugar de phone, con una fecha, una hora y una zona horaria.

  • Grupos y números en una sola petición

    El envío a varios números acepta nombres de grupos mezclados con números de teléfono, así que una sola llamada puede llegar a varios grupos.

  • Estado por webhook

    Pasa webhook para recibir un POST con el msg_id y SENT o FAILED, o llama al endpoint de estado del mensaje con el msg_id.

Conviene saber

  • Enviar a un grupo de WhatsApp por la API (group_name en lugar de phone) funciona en todos los planes, también en la prueba gratuita.
  • El nombre del grupo no se comprueba cuando llamas a la API, así que "status": 1 solo significa que está en cola. Un nombre que no coincide exactamente, un contacto con el mismo nombre, o un grupo donde solo escriben los administradores y tu número no puede publicar, fallan más tarde con Group not found.
  • Si dos grupos tienen exactamente el mismo nombre, el mensaje va al primero de los resultados de búsqueda de WhatsApp. Da a cada grupo un nombre único, y actualiza group_name si alguien le cambia el nombre al grupo.
  • Cada mensaje a un grupo cuenta como un mensaje en los 1.000 al día del número con uso justo.
  • Los mensajes salen desde tu propio número de WhatsApp, así que se aplican las reglas de WhatsApp: escribe a personas que esperan saber de ti.

Preguntas frecuentes

¿Cómo encuentro el ID de un grupo de WhatsApp?
No lo necesitas. La API encuentra el grupo por su nombre: envía group_name exactamente como lo muestra WhatsApp, con emojis y signos de puntuación incluidos, desde un número que esté en el grupo.
¿Qué planes pueden enviar a grupos por la API?
Todos los planes, también la prueba gratuita. Un mensaje a un grupo cuenta como un mensaje, igual que un mensaje a un número de teléfono.
¿Por qué mi mensaje al grupo falló con Group not found?
El nombre no coincidía exactamente con ningún grupo, un contacto tiene el mismo nombre, tu número no está en el grupo, o solo los administradores pueden escribir y tu número no es uno de ellos. Revisa la ortografía y las mayúsculas exactas en WhatsApp.
¿Puedo programar un mensaje a un grupo?
Sí. Haz un POST a /api/v1/schedule_msg/ con group_name en lugar de phone, más date (dd/mm/aaaa), time (HH:MM) y timezone.
¿Necesito la API de WhatsApp Business o la aprobación de Meta?
No. WbizTool envía desde tu propio número de WhatsApp o WhatsApp Business, vinculado como WhatsApp Web. No hay aprobación de Meta ni plantillas de mensajes que aprobar.

Lee las guías

Relacionado

Envía hoy tu primer mensaje automatizado de WhatsApp

Crea una cuenta, escanea el código QR y envía un mensaje en menos de cinco minutos.

Empieza gratis

Planes de pago desde $25 al mes en EE. UU. Precios