Skip to content

Channels ​

Required configuration ​

Generate and retain a base64-encoded 32-byte CHANNEL_SECRET_KEY for encrypted instance secrets. Set a long random CHANNEL_SECRET to the same value on the server integration and channel host. Losing the encryption key makes stored credentials unrecoverable.

Manage instances ​

The generic channel-host API lists driver schemas, creates, updates, and deletes instances, enables or disables them, reports status, and executes driver-defined actions such as WhatsApp pairing. Updating an instance stops and recreates its runtime.

Message flow ​

  1. A driver normalizes a provider event and assigns a stable message ID.
  2. The host submits it to the authenticated server integration with workflow ID, instance ID, input, and interaction-response routes.
  3. The server derives an idempotency key from channel instance and message IDs and enqueues a durable run.
  4. Signed completion or interaction-request callbacks return to the host's fixed internal callback URL.
  5. The instance handles the result, asks the user a question, or sends output to a provider.

Callback URLs are server configuration, never caller input. Channel callbacks use sha256=<hex> HMAC signatures over the exact JSON body.

WhatsApp cautions ​

Baileys is an unofficial WhatsApp Web client. Upstream changes can break it and account restrictions are possible. Use a dedicated account and never use the integration for unsolicited or bulk messaging. A provider send immediately before a crash may repeat because WhatsApp offers no idempotency key.

Documentation for the current repository state.