# Perspective Shared Script Session Props

**URL:** <https://forum.inductiveautomation.com/t/perspective-shared-script-session-props/50957>\
**Category:** Ignition\
**Tags:** perspective\
**Created:** [September 14, 2021, 2:45pm UTC](https://forum.inductiveautomation.com/t/perspective-shared-script-session-props/50957 "2021-09-14T14:45:30Z")\
**Posts on this page:** 1\
**Showing post:** 3

<div class="post-metadata">

**Author:** ![paul-griffith](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/paul-griffith/32/37249_2.png) [@paul-griffith](https://forum.inductiveautomation.com/u/paul-griffith)\
**Post date:** [September 14, 2021, 3:05pm UTC](https://forum.inductiveautomation.com/t/perspective-shared-script-session-props/50957/3 "2021-09-14T15:05:02Z")

</div>

Passing the session object is the only _supported_ way. There _is_ a gross hack you can do, but as mentioned in the thread, don't expect support or be surprised if it breaks suddenly on upgrade.

> [@Referencing a session prop from a script library?](https://forum.inductiveautomation.com/t/referencing-a-session-prop-from-a-script-library/33314/5):
>
> In theory, the InternalSession.SESSION [ThreadLocal](https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/ThreadLocal.html) would be populated if you’re running a project script from a Perspective thread; so something like this might work: from com.inductiveautomation.perspective.gateway.session import InternalSession session = InternalSession.SESSION.get() if session is not None: system.perspective.print(session.custom.something)

---

_[View the full topic](https://forum.inductiveautomation.com/t/perspective-shared-script-session-props/50957)._
