# Unlock components in module with prefine code

**URL:** <https://forum.inductiveautomation.com/t/unlock-components-in-module-with-prefine-code/109436>\
**Category:** Module Development\
**Tags:** ignition81\
**Created:** [August 6, 2025, 4:51pm UTC](https://forum.inductiveautomation.com/t/unlock-components-in-module-with-prefine-code/109436 "2025-08-06T16:51:18Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![liam1](https://avatars.discourse-cdn.com/v4/letter/l/e68b1a/32.png) [@liam1](https://forum.inductiveautomation.com/u/liam1)\
**Post date:** [August 6, 2025, 4:51pm UTC](https://forum.inductiveautomation.com/t/unlock-components-in-module-with-prefine-code/109436/1 "2025-08-06T16:51:18Z")

</div>

Hi all,

I have build a module which contains 3 components, I want to be able to unlock certain components by typing in a predefined code. Is this possible do with the ignition licensing system or must a create my own custom system to do this?

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [August 6, 2025, 5:40pm UTC](https://forum.inductiveautomation.com/t/unlock-components-in-module-with-prefine-code/109436/2 "2025-08-06T17:40:33Z")

</div>

Ignition licenses can carry extra "license details", which are just key:value pairs (strings) embedded in the license. You would configure these when you prepare a license using the Showcase API tools.

Your module can check for the presence and value of these extra details when your module checks the license information it is handed during startup. You would cache this in your hook somewhere (private static fields with public static getter is common).
