Error this.getNodeParameter(...).join is not a function

Hello, I’m running into an issue when trying to pass a webhook parameter to a slack node. Can anyone help?

Describe the issue/error/question

An error occurs when trying to use an expression within a slack node to set the channel ID from a webhook input. For some reason this is the only place this seems to error out. I have another flow that branches from that first Switch node and pulls information from the same webhook into a different slack node and response without issue.

The expression is as follows:

{{$node["Webhook"].json["query"]["slack_internal_channel_id"]}}

What is the error message (if any)?

TypeError: this.getNodeParameter(...).join is not a function
    at Object.execute (/usr/local/lib/node_modules/n8n/node_modules/n8n-nodes-base/dist/nodes/Slack/Slack.node.js:303:77)
    at Workflow.runNode (/usr/local/lib/node_modules/n8n/node_modules/n8n-workflow/dist/src/Workflow.js:536:37)
    at /usr/local/lib/node_modules/n8n/node_modules/n8n-core/dist/src/WorkflowExecute.js:454:62
    at processTicksAndRejections (node:internal/process/task_queues:96:5)

Please share the workflow

Information on your n8n setup

  • n8n version: 0.177.0
  • Database you’re using (default: SQLite): SQLite
  • Running n8n via [Docker, npm, n8n.cloud, desktop app]: Docker

I did some more digging and it seems my use of the expression to grab the channel ID is the same one that was suggested by @RicardoE105 in another thread.

You should be able to do it with {{$node["name of the node"].json["channelId"]}}

I found an existing Github issue which documents the same error I am running into.

“User IDs” expects an Array. So you have to write {{ [$node....] }}

This helped me narrow down my issue to actually being with the expression I used inside the “User IDs” being the cause of the error.

Changing my expression from

{{$node["Check User's Email"].json["user"]["id"]}}

to

{{ [ $node["Check User's Email"].json["user"]["id"] ] }}

solved my issue.

That said, I do still get a warning despite it working.

The value “[Array: [“U038MK3JPEE”]]” is not supported!

3 Likes

Hey @GlitchWitch,

Looks like I missed this one last week, nice to see you have worked it out.

There are a few nodes that dynamically load data to be selected that show a warning when you use something else. I noticed a GitHub issue opened for it which is handy, I will make sure it goes onto our internal tracker as well.

2 Likes

Thank you @GlitchWitch for posting the answer as well.

Just so you know, to invite or add a user to a channel the slack node expects an array, and to remove it expects individual items (not an array).

Which is a bit weird, and took quite some time to figure out. Posting this for future reference if anyone faced the same issues.

Also links to slack docs :