Skip to content

[WEBJS] - /api/sendImage fails with "Data passed to getter must include an id property ... but got undefined" #2277

Description

@DidiDerDenker

Describe the bug

Sending an image via POST /api/sendImage fails with a 500 error.

The failure happens inside the WEBJS engine while evaluating window.WWebJS.sendMessage against WhatsApp Web. WhatsApp Web throws:

Data passed to getter must include an id property (it's how we memoize) but got undefined

Version

{
  "version": "2026.7.1",
  "engine": "WEBJS",
  "tier": "PLUS",
  "browser": "Chrome",
  "platform": "linux/x64"
}

Steps

To Reproduce Steps to reproduce the behavior:

  1. Run WAHA with engine WEBJS.
  2. Start and authenticate a session (QR pairing), state WORKING.
  3. Send a POST /api/sendImage request to a channel chat (…@newsletter):
{
  "session": "***",
  "chatId": "***@newsletter",
  "file": {
    "mimetype": "image/jpeg",
    "filename": "filename.jpg",
    "url": "https://***"
  },
  "caption": "string"
}
  1. Observe the 500 response / log error below.

Error Response / Log

[15:15:21.698] INFO (48): request errored {"reqId":260,"req":{"id":260,"method":"POST","url":"/api/sendImage","query":{},"params":{"path":["api","sendImage"]}},"res":{"statusCode":500},"responseTime":1495}
    err: {
      "type": "Error",
      "message": "Data passed to getter must include an id property (it's how we memoize) but got undefined\ns (https://static.whatsapp.net/rsrc.php/v4/y8/r/utfPCwANvyO.js:85:180)",
      "stack":
          Error: Data passed to getter must include an id property (it's how we memoize) but got undefined
          s (https://static.whatsapp.net/rsrc.php/v4/y8/r/utfPCwANvyO.js:85:180)
              at window.WWebJS.sendMessage (evaluate at WPage.evaluate (/app/dist/core/engines/webjs/WPage.js:13:36), <anonymous>:506:24)
              at #evaluate (/app/node_modules/puppeteer-core/lib/cjs/puppeteer/cdp/ExecutionContext.js:391:56)
              at async ExecutionContext.evaluate (/app/node_modules/puppeteer-core/lib/cjs/puppeteer/cdp/ExecutionContext.js:277:16)
              at async IsolatedWorld.evaluate (/app/node_modules/puppeteer-core/lib/cjs/puppeteer/cdp/IsolatedWorld.js:100:16)
              at async CdpFrame.evaluate (/app/node_modules/puppeteer-core/lib/cjs/puppeteer/api/Frame.js:362:20)
              at async CdpPage.evaluate (/app/node_modules/puppeteer-core/lib/cjs/puppeteer/api/Page.js:818:20)
              at async WPage.evaluate (/app/dist/core/engines/webjs/WPage.js:13:20)
              at async WebjsClientCore.sendMessage (/app/node_modules/whatsapp-web.js/src/Client.js:1625:25)
              at async descriptor.value (/app/dist/core/abc/activity.js:9:20)
      "name": "Error"
    }

Expected behavior

The image should be sent successfully to the target chat/channel, as documented for WEBJS (POST /api/sendImage).

Troubleshooting already done

  • Session was in a healthy/WORKING state before the request.
  • Payload follows the documented sendImage format (session, chatId, file.mimetype, file.url, file.filename, optional caption).
  • Error originates in WhatsApp Web JS (static.whatsapp.net/...) during WWebJS.sendMessage, not during request validation / media download.
  • sendText works (!)

Additional context

  • Target appears to be a WhatsApp Channel (chatId ending with @newsletter).
  • This looks related to WhatsApp Web internal store/LID changes breaking WEBJS media send (similar class of regressions as #2149 / channel media discussions).

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions