encryptionKey issues on update

Describe the issue/error/question

Currently I have an Issue to start a server with npm (formerly running on 0.162.0) and now 0.165.1 where any execution dies with the following error below

What is the error message (if any)?

0|n8n      | Error: configuration param 'encryptionKey' not declared in the schema
0|n8n      |     at Object.validate (/usr/local/lib/node_modules/n8n/node_modules/convict/src/main.js:676:17)
0|n8n      |     at Object.<anonymous> (/usr/local/lib/node_modules/n8n/dist/config/index.js:687:8)
0|n8n      |     at Module._compile (node:internal/modules/cjs/loader:1101:14)
0|n8n      |     at Object.Module._extensions..js (node:internal/modules/cjs/loader:1153:10)
0|n8n      |     at Module.load (node:internal/modules/cjs/loader:981:32)
0|n8n      |     at Function.Module._load (node:internal/modules/cjs/loader:822:12)
0|n8n      |     at Module.require (node:internal/modules/cjs/loader:1005:19)
0|n8n      |     at require (node:internal/modules/cjs/helpers:102:18)
0|n8n      |     at Object.<anonymous> (/usr/local/lib/node_modules/n8n/dist/src/ExternalHooks.js:5:16)
0|n8n      |     at Module._compile (node:internal/modules/cjs/loader:1101:14)

Please share the workflow

Share the output returned by the last node

There was a problem executing the workflow:
"Workflow execution process did crash for an unknown reason!"

Information on your n8n setup

  • n8n version: 0.162.0, 0.165.0, 0.165.1
  • Database you’re using (default: SQLite): SQLite
  • Running n8n with the execution process [own(default), main]:own
  • Running n8n via [Docker, npm, n8n.cloud, desktop app]:npm

Are you able to share your configuration file with anything sensitive removed?

Welcome to the community @chrkaatz !

It originates in ExernalHooks. Do you have any defined? If so please remove them and then try again.

Generally, does the error make sense. If you would try to access “encryptionKey” via the config object it should fail like that, as it is not defined in there.

1 Like

First of all, I forgot to mention, how amazed I am by this project. It is truly awesome!

It is very bare - the config itself is the json object just with the encryptionKey.

I am rather putting in the config via environment variables

      NODE_ENV: "production",
      N8N_BASIC_AUTH_ACTIVE: true,
      N8N_BASIC_AUTH_USER: "XXX",
      N8N_BASIC_AUTH_PASSWORD: "XXX",
      WEBHOOK_URL: "https://example.com/",
      GENERIC_TIMEZONE: "Europe/Berlin",
      N8N_ENCRYPTION_KEY: "SECRET-KEY",
      EXECUTIONS_PROCESS: "main",

Regading the second comment - I have a workflow which contains a webhook.

Now after emptying the config on v0.165.1 it started to work again.

@jan any idea how I can get around that, when I want to update the system?

Thanks a lot. That is really great to hear! Always great when people enjoy using n8n and it is helpful!

Regarding your question. There seems to be a misunderstanding. I meant that if you added somewhere code like config.get('encryptionKey') then exactly that error is expected. If you did not do that, then that error should not occur.

So just to make sure I understand you correctly. You are saying that you are running an unchanged version of n8n, one that got installed via npm install -g n8n and you do also not have any external hook files loaded via the environment variable EXTERNAL_HOOK_FILES?

Yes, it is a bare

npm install -g n8n

install and I do not touch the EXTERNAL_HOOK_FILES at all.