# Best practice for an API key

**URL:** <https://forum.inductiveautomation.com/t/best-practice-for-an-api-key/36088>\
**Category:** Maker\
**Created:** [June 26, 2020, 2:00pm UTC](https://forum.inductiveautomation.com/t/best-practice-for-an-api-key/36088 "2020-06-26T14:00:13Z")\
**Posts on this page:** 1\
**Showing post:** 7

<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:** [June 26, 2020, 4:58pm UTC](https://forum.inductiveautomation.com/t/best-practice-for-an-api-key/36088/7 "2020-06-26T16:58:16Z")

</div>

If anyone’s interested in learning a bit about Java development, you can refine this proof of concept I just whipped up:

> **[paul-griffith/secret-keeper](https://github.com/paul-griffith/secret-keeper)**
>
> Toy, incomplete Ignition proof-of-concept module to store secrets in the IDB - paul-griffith/secret-keeper

It adds a new section to the config page of the gateway that lets you define named secret values, and then (within the gateway scope) you can run `system.secrets.getSecret(<name>)` to retrieve the un-encoded value.

---

_[View the full topic](https://forum.inductiveautomation.com/t/best-practice-for-an-api-key/36088)._
