# Request ENV variables to also be shown in the context menu

**URL:** <https://discourse.nodered.org/t/request-env-variables-to-also-be-shown-in-the-context-menu/77219>\
**Category:** Feature Requests\
**Created:** [3 April 2023 23:20 UTC](https://discourse.nodered.org/t/request-env-variables-to-also-be-shown-in-the-context-menu/77219 "2023-04-03T23:20:05Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![Trying\_to\_learn](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/trying_to_learn/32/28400_2.png) [@Trying\_to\_learn](https://discourse.nodered.org/u/Trying_to_learn)\
**Post date:** [3 April 2023 23:20 UTC](https://discourse.nodered.org/t/request-env-variables-to-also-be-shown-in-the-context-menu/77219/1 "2023-04-03T23:20:05Z")

</div>

In the edit screen on the right there are options for showing either:  
`information`  
`help`  
`debug`  
`config`  
`dashboard`  
`context`  
and others.

In the context menu you can select/see  
`node`  
`flow`  
and  
`global`  
values.

But with the option to have `env` variables in/on tabs it may be nice to see them listed here also.

---

<div class="post-metadata">

**Author:** ![TotallyInformation](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/totallyinformation/32/31_2.png) [@TotallyInformation](https://discourse.nodered.org/u/TotallyInformation)\
**Post date:** [4 April 2023 00:33 UTC](https://discourse.nodered.org/t/request-env-variables-to-also-be-shown-in-the-context-menu/77219/2 "2023-04-04T00:33:34Z")

</div>

That might be sensible.

You might not want to see external environment variables though as they are used by some to hold sensitive information (in the mistaken belief that they are somehow "secure" since they are not obviously visible - of course, since they are held in the OS memory, that isn't actually true).

---

<div class="post-metadata">

**Author:** ![Trying\_to\_learn](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/trying_to_learn/32/28400_2.png) [@Trying\_to\_learn](https://discourse.nodered.org/u/Trying_to_learn)\
**Post date:** [4 April 2023 00:42 UTC](https://discourse.nodered.org/t/request-env-variables-to-also-be-shown-in-the-context-menu/77219/3 "2023-04-04T00:42:13Z")

</div>

I do agree in a lot of ways.

But I am really getting dizzy with `env` things just now and not being able to easily see them it became a bit of an unanswered question.

Like so many things in computing where do you draw the line.

But what's the difference between `env` and `global` then?  
Only in that if `env` is also seen globally, I am not quite getting their exact meaning.

Ok, certain nodes need a _key_ to use them.  
That is - I'm guessing - stored in their `env`.  
But then that gets into a grey area for me to where is that different to `node` context?  
(Only that one is _privte_ and one is public)

could you elaborate on where/how it fits in?  
Is there `flow`, `global` and `nodee` `env` variables?  
Would that be _complicating_ things in that way?

---

<div class="post-metadata">

**Author:** ![TotallyInformation](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/totallyinformation/32/31_2.png) [@TotallyInformation](https://discourse.nodered.org/u/TotallyInformation)\
**Post date:** [4 April 2023 01:03 UTC](https://discourse.nodered.org/t/request-env-variables-to-also-be-shown-in-the-context-menu/77219/4 "2023-04-04T01:03:05Z")

</div>

> [@Trying\_to\_learn](#):
>
> But what's the difference between `env` and `global` then?

That's a good question that has become a little blurred by how they are being used in sub-flows, tabs and groups.

Environment variables are just that, they exist in the Operating System environment, not strictly in Node-RED - or at least, that is the definition, whether that is how they are actually being implemented in sub-flows, tabs and groups is a matter that I've not looked into.

It would have been feasible in theory to implement more different types of context variable for those contexts.

However, the difference from a Node-RED perspective is that env variables can be incorporated into other inputs. So you can do this:

![image](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/3X/7/0/7075cae95cd48efcc123425cb5fc888bb19f4503.png)

Which you cannot do with a context/flow/global variable. In other words, they can be used even if someone has not allowed the specific use in the typed input field. They can also be used like this:

![image](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/3X/0/4/042b4edd5f505dbf21c78d5c5652c865cd7f785a.png)

Which again cannot be done another way without using JSONata.

> [@Trying\_to\_learn](#):
>
> Is there `flow`, `global` and `nodee` `env` variables?

No, you cannot really have a node environment variable and there wouldn't be much point since you can simply use use a node's context store to do that (well, you can't do that in anything other than a function node - see the other thread on requesting context support in typed input for more on that subject).

Again, the real point of an environment variable is that they normally live in the Operating Systems memory space and not in Node-RED/node.js - it is simply that Node-RED's use of them in tabs, groups and sub-flows somewhat confuses that concept since those environment variables only live in Node-RED's memory space (which doesn't make it wrong or less useful, just confusing). A context/flow/global variable always lives in Node-RED's memory space (though it may ALSO live in a permanent store as well if you have defined one in settings.js).

> [@Trying\_to\_learn](#):
>
> Would that be _complicating_ things in that way?

Yes. 😁

---

<div class="post-metadata">

**Author:** ![Trying\_to\_learn](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/trying_to_learn/32/28400_2.png) [@Trying\_to\_learn](https://discourse.nodered.org/u/Trying_to_learn)\
**Post date:** [4 April 2023 01:06 UTC](https://discourse.nodered.org/t/request-env-variables-to-also-be-shown-in-the-context-menu/77219/5 "2023-04-04T01:06:53Z")

</div>

Ok.

Thanks.

I may leave well enough alone then.

Thanks.

Not worth any more action.

---

<div class="post-metadata">

**Author:** ![Colin](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/colin/32/17040_2.png) [@Colin](https://discourse.nodered.org/u/Colin)\
**Post date:** [4 April 2023 09:04 UTC](https://discourse.nodered.org/t/request-env-variables-to-also-be-shown-in-the-context-menu/77219/6 "2023-04-04T09:04:27Z")

</div>

Just so you would get an idea of what you are asking for, run this in a command window to see all the env vars.  
`printenv`

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/1X/d073cd938eafa2e558d7c2cd59003b3ef4963033.png) [@system](https://discourse.nodered.org/u/system)\
**Post date:** [3 June 2023 09:04 UTC](https://discourse.nodered.org/t/request-env-variables-to-also-be-shown-in-the-context-menu/77219/7 "2023-06-03T09:04:48Z")

</div>

This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.
