# \[IGN-14117\] Historian Profile Config

**URL:** <https://forum.inductiveautomation.com/t/ign-14117-historian-profile-config/110226>\
**Category:** Module Development\
**Tags:** ignition83\
**Created:** [August 27, 2025, 9:52pm UTC](https://forum.inductiveautomation.com/t/ign-14117-historian-profile-config/110226 "2025-08-27T21:52:25Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![jpark](https://avatars.discourse-cdn.com/v4/letter/j/a88e57/32.png) [@jpark](https://forum.inductiveautomation.com/u/jpark)\
**Post date:** [August 27, 2025, 9:52pm UTC](https://forum.inductiveautomation.com/t/ign-14117-historian-profile-config/110226/1 "2025-08-27T21:52:26Z")

</div>

Ignition 8.3 RC1

I’m trying to create a custom historian provider.

Where can I find the historian profile config?

 ![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/7/f/7f937f2786038498e886b3a25159f3df767eb62c.png)

```python
ExtensionPointResourceForm form = new ExtensionPointResourceForm(
       HistorianExtensionPoint.getResourceType(),
        "Historian",
        TYPE_ID,
        SchemaUtil.fromType(####.class),
        SchemaUtil.fromType(SimulatorHistorianSettings.class),
        Collections.emptySet()
);

```

In the Create Historian popup, my custom historian is not selectable and when I click Next, it gives an application error.

 ![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/0/0/003f5ad21820b0a9ee6782ada221ee682d28fa87.png)

 ![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/a/4/a4112bfbc3de9fba9b8375b115827bc5a13f42eb.png)

---

<div class="post-metadata">

**Author:** ![Kurt.Larson](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kurt.larson/32/6426_2.png) [@Kurt.Larson](https://forum.inductiveautomation.com/u/Kurt.Larson)\
**Post date:** [August 28, 2025, 4:46pm UTC](https://forum.inductiveautomation.com/t/ign-14117-historian-profile-config/110226/2 "2025-08-28T16:46:19Z")

</div>

These should be all the steps necessary.

1. Make sure that your module is supplying your `SimulatorExtensionPoint` through `GatewayModuleHook::getExtensionPoints`.
2. Verify that your `SimulatorExtensionPoint ` is an extension of `HistorianExtensionPoint<S extends HistorianSettings>`. `HistorianSettings` is just a marker; this would be your `Historian` configuration. So, `SimulatorHistorianSettings` need to be an extension of `HistorianSettings`.

```python
public class SimulatorExtensionPoint extends HistorianExtensionPoint<SimulatorHistorianSettings> 

// Then, `SimulatorHistorian::getSettings` would return the instance of SimulatorHistorianSettings as configured. 

```

  

1. In your `SimulatorExtensionPoint `, override `getWebUiComponent`; this would look something like below:

```python
@Override
public Optional<WebUiComponent> getWebUiComponent(ComponentType type) {
    return Optional.of(
        new ExtensionPointResourceForm(
            HistorianExtensionPoint.getResourceType(),
            "Historian",
            TYPE_ID, // this would your CustomSimulatorExtensionPoint typeId
            SchemaUtil.fromType(HistorianProvider.class),
            SchemaUtil.fromType(SimulatorHistorianSettings.class)
        )
    );
}

```

I'm guessing that there's an issue with your `SimulatorExtensionPoint`, or `SchemaUtil.fromType(####.class)` wasn't actually `SchemaUtil.fromType(HistorianProvider.class)` as it needs to be.

---

<div class="post-metadata">

**Author:** ![jpark](https://avatars.discourse-cdn.com/v4/letter/j/a88e57/32.png) [@jpark](https://forum.inductiveautomation.com/u/jpark)\
**Post date:** [August 28, 2025, 5:13pm UTC](https://forum.inductiveautomation.com/t/ign-14117-historian-profile-config/110226/3 "2025-08-28T17:13:57Z")

</div>

I’ve added the HistorianProvider.class

Still getting the error though.

> react-dom.js:121 TypeError: Cannot read properties of undefined (reading 'backupConfig')  
> at useMountExtensionPointForm.ts:38:40  
> at Id (react-dom.js:165:137)  
> at Xb (react-dom.js:200:284)  
> at Sk (react-dom.js:198:114)  
> at yb (react-dom.js:196:166)  
> at Mi (react-dom.js:189:373)  
> at db (react-dom.js:79:182)  
> at react-dom.js:184:289

```python
@Override
public List<? extends ExtensionPoint<?>> getExtensionPoints() {
    SimulatorHistorianExtensionPoint sep = new SimulatorHistorianExtensionPoint();
    
    return List.of(sep);
}

```

---

<div class="post-metadata">

**Author:** ![Kurt.Larson](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kurt.larson/32/6426_2.png) [@Kurt.Larson](https://forum.inductiveautomation.com/u/Kurt.Larson)\
**Post date:** [August 29, 2025, 5:17am UTC](https://forum.inductiveautomation.com/t/ign-14117-historian-profile-config/110226/4 "2025-08-29T05:17:10Z")

</div>

Thank you for bringing this to our attention, Jae.

We have confirmed this is a bug related to how default values are handled within the extension point resource form on the Historian page.

Currently, we're targeting this for the upcoming final release, but if it doesn't make that deadline, then it will be included in 8.3.1. I will update you on our progress.
