unstale

npm / @chat-adapter/whatsapp

@chat-adapter/whatsapp

What changed in @chat-adapter/whatsapp 4, from its official release notes, upgrade guides and advisories. Sources checked 2026-10-18.

2 breaking1 security8 new APIs and options5 behavior and defaults4 fixes and other

See which of these apply to your code, ranked, in your agent:

npx @unstale/cli init

@unstale/cli 0.1.1 on npm

@chat-adapter/whatsapp 420 changes

Breaking changes 2

  • Transport failures and unparseable response bodies now throw NetworkError instead of leaking raw fetch errors.

    4.40.0release notes

  • Updates the default API version to v25.0.

    4.30.0release notes

Security 1

  • WhatsApp attachment downloads use guarded downloading: private and internal addresses are refused, responses are capped at 25 MB, and downloads time out after 30 seconds. The access token is kept on Meta media hosts and the configured Graph origin.

    4.39.0release notes

New APIs and options 8

  • Exported for non-2xx Graph API responses, with Meta error details, HTTP status, the raw envelope, and a code mapped to the shared AdapterError taxonomy.

    4.40.0release notes

  • Adds native message replies with WhatsApp contextual reply support.

    4.38.0release notes

  • Adds a shared thread API for marking messages as read across WhatsApp, Messenger, and XChat.

    4.38.0release notes

  • Supports typed Attachment payloads for outbound sends, including binary or HTTPS link passthrough, multi-file sequencing, MIME mapping, caption fallbacks, and card-plus-file sequencing.

    4.34.0release notes

  • Adds sending of pre-approved template messages, enabling business-initiated conversations outside the 24-hour customer service window.

    4.34.0release notes

  • Adds typing indicator support by sending Meta's read-plus-typing payload when a recent inbound message is available.

    4.30.0release notes

  • The config argument is now optional, and every WhatsAppAdapterConfig field is optional; the factory still falls back to WHATSAPP_* environment variables.

    4.29.0release notes

  • Adds a WhatsApp adapter using Meta's WhatsApp Business Cloud API.

    4.20.0release notes

Behavior and default changes 5

  • Inbound and outbound WhatsApp messages now support business-scoped user IDs.

    4.39.0release notes

  • A card with only one eligible LinkButton is now sent as a native cta_url interactive message instead of formatted text.

    4.37.0release notes

  • The context type now makes all fields optional and includes forwarded-message and product-inquiry variants, so consumers must guard optional fields such as from and id.

    4.37.0release notes

  • Supports binary FileUpload uploads for outbound files and attachments.

    4.34.0release notes

  • The adapter now depends on chat as a full dependency rather than an optional dependency, so installing the adapter also installs chat.

    4.21.0release notes

Fixes and other changes 4

  • Empty from and wa_id values are treated as absent, allowing messages from username users who hide their phone number to reach handlers.

    4.42.0release notes

  • Incoming WhatsApp messages preserve the first line of code blocks in message text and formatted content, and bold/strikethrough rewriting no longer corrupts fenced code.

    4.39.0release notes

  • Link button URLs are now included in interactive button message bodies and media captions, rather than being dropped.

    4.37.0release notes

  • Prevents card titles and body content from appearing twice when sending cards with files on WhatsApp, and avoids adding full card fallback text as an image caption when an interactive message follows.

    4.35.0release notes