Plazbot
WhatsApp for Developers

WhatsApp en tu código con un solo comando.

Conecta tu número, recibe un mensaje de tu propio celular y respóndelo por la API. Todo desde la terminal, en unos minutos y sobre la Cloud API oficial de Meta.

Requiere Node 18+ y una cuenta de Plazbot (gratis, sin tarjeta).

Ver el quickstart
  • Meta Business Partner
  • Datos en LA o en la UE
  • Soporte en español
~/mi-app — zsh
$

Quickstart

De cero a tu primera respuesta en 3 pasos.

Sin crear una app en Meta, sin tokens y sin configurar servidores de webhooks.

  1. 01

    Instala el CLI e inicia sesión

    Se abre el navegador, confirmas el código y eliges tu workspace. Sin copiar API keys ni IDs.

    terminal
    1
    2
    npm i -g plazbot-cli
    plazbot login
  2. 02

    Conecta tu número y pruébalo

    El asistente conecta tu número con el registro de Meta (o usa uno ya conectado), espera tu "hola" desde tu celular, te responde por la API y registra tu webhook.

    terminal
    1
    2
    3
    4
    plazbot whatsapp setup
    # ¿Ya tienes número? Envía directo:
    plazbot whatsapp send-message --to 51912345678 --message "Hola 👋"
  3. 03

    Llévalo a tu app

    El asistente te imprime este código con tus datos. Para tu servidor, crea una API key en el panel.

    send.ts
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    import { Plazbot } from "plazbot"
    const bot = new Plazbot({
    apiKey: process.env.PLAZBOT_KEY!,
    workspaceId: process.env.PLAZBOT_WORKSPACE_ID!,
    zone: "LA", // "LA" | "EU"
    })
    await bot.message.onWhatsappMessage({
    to: "51912345678",
    message: "¡Hola! Te escribo desde mi app 👋",
    })

Conecta tu número

Tres formas de conectar WhatsApp.

Todas usan el registro oficial de Meta. Como Meta Business Partner, Plazbot gestiona la app, los webhooks y los tokens por ti.

Tu número con WhatsApp API

Conecta un número nuevo o dedicado con el registro oficial de Meta. Listo para plantillas y envíos a escala.

Panel → Integraciones, o plazbot whatsapp connect

Tu WhatsApp Business actual

Coexistencia: sigues usando la app WhatsApp Business en tu celular y además lo operas por API. Se vincula escaneando un QR.

plazbot whatsapp connect --business

Los números de tus clientes

Genera un link y compártelo. Tu cliente conecta su propio número desde su navegador, sin darte accesos de Meta.

Link compartible co.plzb.link por API

terminalBash
1
2
3
4
5
6
7
8
9
curl -X POST \
https://api.plazbot.com/api/workspace/$PLAZBOT_WORKSPACE_ID/onboarding-link \
-H "Authorization: Bearer $PLAZBOT_KEY" \
-H "x-workspace-id: $PLAZBOT_WORKSPACE_ID" \
-H "Content-Type: application/json" \
-d '{ "type": "whatsapp" }'
# → { "data": { "shortUrl": "https://co.plzb.link/La_...",
# "expiresAt": "..." } } (válido 7 días)

Arma tu mensaje

Escribe tu mensaje y copia el código.

Elige el tipo, cambia los datos y el código se genera al instante para SDK, CLI o REST.

text.tsTypeScript
1
2
3
4
await bot.message.onWhatsappMessage({
to: "51912345678",
message: "Gracias por escribirnos, Ana.",
})

plazbot-cli

Todo WhatsApp desde tu terminal.

Más allá de enviar: chatea, haz envíos masivos, conecta webhooks y pon un agente IA a responder, sin salir de la consola.

terminal
1
2
3
4
5
6
7
8
plazbot whatsapp chat 51912345678
# WhatsApp Chat
# Destination: 51912345678
# /exit to quit
> Hola Ana, tu pedido ya salió 🚚
✔ Sent

Recibe eventos

Explora cada evento antes de escribir una línea.

Registra un destino en el panel (Configuración → Developer), elige los eventos y Plazbot te los envía por POST, firmados. Haz clic en un evento para ver exactamente lo que llega.

  • Firmados con HMAC-SHA256 y un secret whsec_ por destino
  • Reintentos automáticos: 1 min, 5 min, 30 min y 2 h
  • Historial de entregas y reenvío con un clic desde el panel
  • Solo https y timeout de 5 s: responde rápido y procesa después

¿Solo quieres los mensajes entrantes de un número? Usa plazbot whatsapp register-webhook.

POST → tu endpoint · message.incomingJSON
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
{
"id": "evt_4b1d9e7a0c2f4e8b9a61c3d5f7e9a1b2",
"type": "message.incoming",
"createdAt": "2026-09-27T14:05:37.910Z",
"workspaceId": "ws_123",
"data": {
"message": {
"id": "msg_91c0",
"direction": "incoming",
"origin": "client",
"channel": "whatsapp",
"type": "TEXT",
"content": "Hola, ¿tienen envío a Cusco?",
"contentUrl": null,
"contentType": null,
"contentFilename": null,
"platformMessageId": "wamid.HBgLNTE5MTIzNDU2Nzg…",
"isTemplate": null,
"templateCode": null,
"agentId": null,
"agentName": null,
"createdAt": "2026-09-27T14:05:37.402Z"
},
"contact": {
"id": "cnt_8f3a2c",
"name": "Ana",
"lastname": "Torres",
"phone": "51912345678",
"email": null,
"channel": "whatsapp",
"stageId": null,
"assignedAgentId": "agt_AbcDef123",
"assignedAgentName": "Soporte",
"tags": [
{
"id": "tag_vip",
"name": "VIP"
}
],
"isSolved": false,
"solvedByAgentId": null,
"solvedAt": null,
"createdAt": "2026-09-27T14:02:11.482Z"
}
}
}

Sin servidor

O deja que Plazbot ejecute tu código

Con Workers no necesitas endpoint: tu función corre en Plazbot cuando ocurre uno de sus 12 eventos, con acceso a WhatsApp, contactos y conversaciones desde plz. Ver Workers →

message.*
receivedimage.receivedaudio.receiveddocument.received
contact.*
createdexistingdeletedblockedfrom.ad
conversation.*
assignedresolvedreopened
workers/bienvenida.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import { defineWorker } from "plazbot/workers"
export default defineWorker({
name: "bienvenida",
events: ["contact.created"],
async handler(event, plz) {
const { contact } = event.data
if (!contact?.phoneNumber) return
await plz.whatsapp.send({
to: contact.phoneNumber,
message: "¡Bienvenido! ¿En qué te ayudamos?",
})
},
})

Por qué Plazbot

Más que una API de mensajería.

Empiezas enviando mensajes y, cuando lo necesites, sumas agentes IA y automatizaciones sobre el mismo número.

Meta Business Partner

API oficial de WhatsApp, sin intermediarios. Plazbot gestiona la app de Meta, los tokens y los webhooks.

Tus datos en LA o en la UE

Eliges la zona al crear tu cuenta: api.plazbot.com para Latinoamérica o apieu.plazbot.com para Europa.

Agentes IA incluidos

Cuando quieras, conecta un agente con OpenAI, Claude o Gemini y RAG para que responda solo en ese número.

Workers sin servidor

Lógica propia que corre en Plazbot: reacciona a eventos, sincroniza sistemas o programa envíos.

SDK, CLI y REST

El mismo envío desde tu backend en TypeScript, desde la terminal o desde cualquier lenguaje.

En español

Documentación, panel y soporte en español, con equipo en Latinoamérica y Europa.

Meta Business Partner

Conecta tu número y envía tu primer mensaje hoy.

Crea tu cuenta, conecta WhatsApp con el registro oficial de Meta y usa la API key del panel en tu código.

  • Cuenta gratis, sin tarjeta
  • Registro oficial de Meta
  • Soporte en español