Skip to content
Back

Query.equal error

  • 0
  • 2
  • Databases
  • Functions
  • Cloud
LordGavibear
16 Oct, 2025, 01:31

Hi guys. I'm using Appwrite Cloud, and I'm using version 21 of node-appwrite to benefit from transactions. The problem is I seem to be getting an error when I use Query.equal:

AppwriteException: Invalid query method: equal at _Client.call (file:///usr/local/server/src/function/node_modules/node-appwrite/dist/client.mjs:294:13) at process.processTicksAndRejections (node:internal/process/task_queues:105:5) at async Module.default (file:///usr/local/server/src/function/src/main.js:85:24) at async execute (/usr/local/server/src/server.js:220:16) at async action (/usr/local/server/src/server.js:237:7) at async /usr/local/server/src/server.js:26:5

The relevant excerpt of the code in question that uses it is as follows:

else if(req.bodyJson.drawId){ //This means we tried to start a new conversation

TypeScript
  //We first check if we've already created a conversation with a matching draw
  //If we have already, we return that

  log("Trying to start a convo");
  const existingConvo = await database.listRows({
    databaseId: "68c2503d0005d71c2f12",
    tableId: "journal_conversations",
    queries: [
      Query.equal("userId", userId),
      Query.equal("draw.$id", req.bodyJson.drawId),
      Query.select(['*', 'draw.*', 'draw.card.*'])
    ]
  });

Is this a compatibility issue with the cloud?

TL;DR
Possible issue with Query.equal error not due to incorrect userId or variable. The getRow function may not support Query.equal. Solution: Replace Query.equal with a different method/approach for querying in getRow function.
16 Oct, 2025, 03:23

FYI, it's best to wrap code in backticks to format a bit nicer. You can use 1 backtick for inline code (https://www.markdownguide.org/basic-syntax/#code) and 3 backticks for multiline code (https://www.markdownguide.org/extended-syntax/#syntax-highlighting).

1
16 Oct, 2025, 03:25

Maybe userId is invalid?

16 Oct, 2025, 03:48

No the column is properly named and the variable I'm checking against is defined, so thats not it.

16 Oct, 2025, 04:05

Actually looking at it, I gave the wrong part - the error seems to be in this line:

TypeScript
        databaseId: "68c2503d0005d71c2f12",
        tableId: "draws",
        rowId: req.bodyJson.drawId,
        queries: [
          Query.equal("userId", userId),
          Query.select(['*', 'card.*'])
        ]
      }); ```

Is it that getRow doesn't support queries?
16 Oct, 2025, 04:09

Ok I got past it, apparently getRow doesn't support Query.equal

1
Reply

Reply to this thread by joining our Discord

Reply on Discord

Need support?

Join our Discord

Get community support by joining our Discord server.

Join Discord

Get premium support

Join Appwrite Pro and get email support from our team.

Learn more