Saltar al contenido
Plixa
Español
Empezar gratis

Desarrolladores

Construye sobre Plixa en minutos.

Plixa es API-first. Genera un token en el panel, envía un mensaje por POST y recibe cada entrante mediante webhooks firmados. Sin SDK que instalar, sin protocolo propietario — solo JSON, REST y HMAC.

El acceso a la API se incluye en los planes Professional y Business. Genera tokens en /api-tokens desde el panel.

Envía un mensaje

Envía por POST un número de teléfono y un cuerpo. Resolvemos o abrimos la conversación, lo enviamos a WhatsApp y devolvemos el mensaje en cola.

POST https://api.plixa.app/v1/messages/send

  • · Requiere un token con el permiso `write`.
  • · Límite: 100 solicitudes / minuto por token.
Send with curl
curl -X POST https://api.plixa.app/v1/messages/send \
  -H "Authorization: Bearer plixa_pat_…" \
  -H "Content-Type: application/json" \
  -d '{
    "phone": "5511999999999",
    "body": "Hi Lucia! Your order shipped"
  }'
Send with Node.js
await fetch('https://api.plixa.app/v1/messages/send', {
  method: 'POST',
  headers: {
    Authorization: `Bearer ${process.env.PLIXA_TOKEN}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    phone: '5511999999999',
    body: 'Hi Lucia! Your order shipped',
  }),
})

Recibe cada mensaje

Registra un endpoint de webhook en el panel. Plixa envía por POST cada entrante (y saliente, si quieres) a tu URL en segundos.

Se configura en https://app.plixa.app/webhooks

  • · Eventos: message.inbound, message.outbound, conversation.created, conversation.updated, conversation.deleted.
  • · Reintentos: backoff exponencial (1m, 5m, 30m, 2h, 12h), 5 intentos en total. Una respuesta 410 / 4xx detiene la cadena de reintentos.
Verifica la firma

Cada entrega lleva una cabecera X-Plixa-Signature. Vuelve a hashear el cuerpo en crudo con el secreto de tu endpoint y compara en tiempo constante.

X-Plixa-Signature: sha256=<hmac>

Verify a webhook (Node.js / Express)
import crypto from 'crypto'

app.post('/plixa-webhook', express.raw({ type: 'application/json' }), (req, res) => {
  const expected = 'sha256=' + crypto
    .createHmac('sha256', process.env.PLIXA_WEBHOOK_SECRET)
    .update(req.body)
    .digest('hex')

  const provided = req.header('X-Plixa-Signature') ?? ''
  if (!crypto.timingSafeEqual(Buffer.from(expected), Buffer.from(provided))) {
    return res.status(401).send('bad signature')
  }

  const event = JSON.parse(req.body.toString())
  // event.event, event.data — handle and respond 2xx within 10s.
  res.status(204).end()
})
Verify a webhook (PHP / Laravel)
Route::post('/plixa-webhook', function (Request $request) {
    $body = $request->getContent();
    $expected = 'sha256='.hash_hmac('sha256', $body, env('PLIXA_WEBHOOK_SECRET'));
    if (! hash_equals($expected, (string) $request->header('X-Plixa-Signature'))) {
        abort(401, 'bad signature');
    }

    $event = json_decode($body, true);
    // $event['event'], $event['data'] — handle and respond 2xx in <10s.

    return response()->noContent();
});

Referencia completa

Cada endpoint (panel + externo) está documentado con el esquema de la solicitud, ejemplos y los sobres de respuesta.

Abrir la referencia /v1/docs

Empieza ya

Empieza a automatizar WhatsApp hoy.

Conecta tu número en cinco minutos y deja que la IA se encargue de la primera respuesta. Gratis 7 días en Professional — sin tarjeta, cancela cuando quieras.

No se requiere tarjeta.