I am building a version monitoring workflow on a self-hosted n8n CE instance.
The goal is simple: compare the currently installed n8n version against the latest published version on npm, and alert if they don’t match.
I have checked the public API docs at /api/v1/docs/ and there is no version or instance info endpoint. I have also tried several obvious paths — all return 404.
A older community post mentions /rest/settings as a potential source. This also returns 404 on my instance.
Question: What is the correct way to get the installed n8n version programmatically on a self-hosted CE instance? Ideally via HTTP so it can be called from within an n8n HTTP Request node.
If no API endpoint exists, then I am considering:
Execute Command node running n8n --version
Execute Command node running npm list -g n8n --depth=0
Are either of these reliable on a self-hosted instance? Is there a better approach?
We currently don’t expose the version of the n8n instance by default to enhance security.
You have a couple of options here:
You can enable metrics, and then query yourinstance/metrics. There should be a field n8n_version_info containing the information you need.
The /rest/settings endpoint provides the version information for authenticated users. So you could create a custom workflow that authenticates to your instance, and then queries the endpoint