Documentation

External pilot pattern

1. Partner runs citizen UX on their stack (optional)
2. Partner POSTs to /api/whatsapp/send-message
3. CerebroNovus webhook receives citizen reply
4. Flow engine processes → webhook node POSTs to partner URL (signed)
5. Agent handoff in CerebroNovus inbox if needed

Verify signature (Node.js)

import crypto from "crypto";

function verify(rawBody, signature, timestamp, secret) {
  const expected = crypto
    .createHmac("sha256", secret)
    .update(`${timestamp}.${rawBody}`)
    .digest("hex");
  return crypto.timingSafeEqual(
    Buffer.from(expected),
    Buffer.from(signature)
  );
}

Retry policy: implement idempotency on your side using conversationId + message id.

External pilot pattern — CerebroNovus Docs | CerebroNovus