# SecretConfig examples for API/Resource/Record

**URL:** <https://forum.inductiveautomation.com/t/secretconfig-examples-for-api-resource-record/111797>\
**Category:** Module Development\
**Created:** [October 29, 2025, 6:32pm UTC](https://forum.inductiveautomation.com/t/secretconfig-examples-for-api-resource-record/111797 "2025-10-29T18:32:01Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![Aron\_Semle](https://avatars.discourse-cdn.com/v4/letter/a/c77e96/32.png) [@Aron\_Semle](https://forum.inductiveautomation.com/u/Aron_Semle)\
**Post date:** [October 29, 2025, 6:32pm UTC](https://forum.inductiveautomation.com/t/secretconfig-examples-for-api-resource-record/111797/1 "2025-10-29T18:32:01Z")

</div>

Is there an 8.3 example for using a password in a SettingsRecord and SettingsResource through the API? I want the user to be able to configure a token (password) for my module. My SettingsRecord uses an EncodedStringField type. Currently my SettingsResource treats the token as a String (which is probably wrong).

Using chrome debug I was able to figure out to call the /data/api/v1/encryption/encrypt endpoint to encrypt the token. I then send via a PUT to update my record over the API and I get a 422. I’m pretty sure I need to change my SettingsResource to pass the JSON through to the record… but I am struggling. Any examples of custom records –\> API –\> react app would be hugely useful.

---

<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:** [October 29, 2025, 6:53pm UTC](https://forum.inductiveautomation.com/t/secretconfig-examples-for-api-resource-record/111797/2 "2025-10-29T18:53:28Z")

</div>

`EncodedStringField`/`XResource` are all legacy and are only relevant for migration in 8.3.  
The thing to use now is `SecretConfig`.

SDK guide:

> **[8.1 to 8.3 SDK Upgrade Guide | Ignition SDK Programmer's Guide](https://www.sdk-docs.inductiveautomation.com/docs/8.3/to-83-upgrade-guide/#new-secrets-management-api)**
>
> Please read this page carefully to ensure you are aware of any special considerations and actions required to successfully upgrade an existing module or develop a new 8.3 module. The following sections detail API changes made from 8.1 to 8.3, and are...

Example:

> <https://github.com/inductiveautomation/ignition-sdk-examples/blob/f9aa673775043d4dafb0eddcc77981645528a2a2/user-source-profile/user-source-gateway/src/main/java/com/inductiveautomation/ignition/examples/usersource/mongodb/MongoDbUserSourceResource.java>

---

<div class="post-metadata">

**Author:** ![Aron\_Semle](https://avatars.discourse-cdn.com/v4/letter/a/c77e96/32.png) [@Aron\_Semle](https://forum.inductiveautomation.com/u/Aron_Semle)\
**Post date:** [October 29, 2025, 7:16pm UTC](https://forum.inductiveautomation.com/t/secretconfig-examples-for-api-resource-record/111797/3 "2025-10-29T19:16:48Z")

</div>

Got it and thank you! Does this mean the old Records are gone? Said another way, using the resource alone the properties are persisted in the modules data/config/resources/core/your\_namespace/your\_settings\_bucket/config.json file?

---

<div class="post-metadata">

**Author:** ![Aron\_Semle](https://avatars.discourse-cdn.com/v4/letter/a/c77e96/32.png) [@Aron\_Semle](https://forum.inductiveautomation.com/u/Aron_Semle)\
**Post date:** [October 29, 2025, 8:12pm UTC](https://forum.inductiveautomation.com/t/secretconfig-examples-for-api-resource-record/111797/4 "2025-10-29T20:12:32Z")

</div>

That looks to be the case. Thanks again. One last question, is there a JavaScript helper you have to handle the SecretConfig form & API call?

---

<div class="post-metadata">

**Author:** ![Kevin.Herron](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kevin.herron/32/7259_2.png) [@Kevin.Herron](https://forum.inductiveautomation.com/u/Kevin.Herron)\
**Post date:** [October 29, 2025, 8:17pm UTC](https://forum.inductiveautomation.com/t/secretconfig-examples-for-api-resource-record/111797/5 "2025-10-29T20:17:35Z")

</div>

I have no idea how anything front end is documented or supposed to be discoverable, but I think there's a `PasswordInput` react component in the public web UI stuff that is meant to be used with SecretConfig on the backend.

---

<div class="post-metadata">

**Author:** ![Kevin.Herron](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kevin.herron/32/7259_2.png) [@Kevin.Herron](https://forum.inductiveautomation.com/u/Kevin.Herron)\
**Post date:** [October 29, 2025, 8:18pm UTC](https://forum.inductiveautomation.com/t/secretconfig-examples-for-api-resource-record/111797/6 "2025-10-29T20:18:59Z")

</div>

> **[@storybook/cli - Storybook](https://files.inductiveautomation.com/sdk/storybook/ignition83/ignition-web-ui/8.3.1/index.html)**

Hmm, not listed here...

---

<div class="post-metadata">

**Author:** ![ayu](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/ayu/32/16635_2.png) [@ayu](https://forum.inductiveautomation.com/u/ayu)\
**Post date:** [November 6, 2025, 10:47pm UTC](https://forum.inductiveautomation.com/t/secretconfig-examples-for-api-resource-record/111797/7 "2025-11-06T22:47:18Z")

</div>

Hi @Aron_Semle,

Like Kevin mentioned above, we use the React component `PasswordInput` under the hood when the decorator `@FormField(FormFieldType.SECRET)` is applied to your class field. Currently the React component is not available for public consumption, but we are taking steps to get those components ready. Thanks.
