# Create Standard TagProvider via Java

**URL:** <https://forum.inductiveautomation.com/t/create-standard-tagprovider-via-java/110028>\
**Category:** Ignition 8.3 Early Access\
**Created:** [August 21, 2025, 9:48am UTC](https://forum.inductiveautomation.com/t/create-standard-tagprovider-via-java/110028 "2025-08-21T09:48:46Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Darren\_Steele](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/darren_steele/32/55624_2.png) [@Darren\_Steele](https://forum.inductiveautomation.com/u/Darren_Steele)\
**Post date:** [August 21, 2025, 9:48am UTC](https://forum.inductiveautomation.com/t/create-standard-tagprovider-via-java/110028/1 "2025-08-21T09:48:46Z")

</div>

Following on from this thread…

> [@Any way to create programmatically database connection and standard realtime tag providers using Java SDK?](https://forum.inductiveautomation.com/t/any-way-to-create-programmatically-database-connection-and-standard-realtime-tag-providers-using-java-sdk/82325):
>
> Hi, I'm new to Ignition and its module development using Java SDK. I'm looking for a way to create programmatically a database connection identical to the connection entry I can create by GUI under Config -\> Database -\> Connections. There is a way to do this? I need also to create programmatically a standard realtime tag provider. I'm able to create programmatically only managed tag provider. Any suggest? Thanks A

Have there been methods added into 8.3 to programmatically create a Standard TagProvider? I see nothing in the docs.

---

<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:** [August 21, 2025, 11:58am UTC](https://forum.inductiveautomation.com/t/create-standard-tagprovider-via-java/110028/2 "2025-08-21T11:58:20Z")

</div>

You could create one via OpenAPI now: [http://localhost:8088/openapi#tag/config-tag-provider/paths/~1data~1api~1v1~1resources~1ignition~1tag-provider/post](http://localhost:8088/openapi#tag/config-tag-provider/paths/~1data~1api~1v1~1resources~1ignition~1tag-provider/post)

---

<div class="post-metadata">

**Author:** ![Darren\_Steele](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/darren_steele/32/55624_2.png) [@Darren\_Steele](https://forum.inductiveautomation.com/u/Darren_Steele)\
**Post date:** [August 21, 2025, 3:18pm UTC](https://forum.inductiveautomation.com/t/create-standard-tagprovider-via-java/110028/3 "2025-08-21T15:18:12Z")

</div>

Thanks for the reply. This looks really promising. I’ve been playing with this via CLI but I always get a 403 Unauthorized : so something along the lines of:

curl [http://localhost:8088/data/api/v1/resources/find/ignition/tag-provider/kanoa](http://localhost:8088/data/api/v1/resources/find/ignition/tag-provider/kanoa) -u darren -v

will prompt for the password for darren, and then with the verbose flag I see the correct base64 encoded string and darren is an admin but still 403.

Should we be able to do this stuff from CLI? I’ve also tried making a simple HTTP GET from within the kanoa module GatewayHook but then I get a 503.

Any suggestions?

---

<div class="post-metadata">

**Author:** ![michael.flagler](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/michael.flagler/32/26272_2.png) [@michael.flagler](https://forum.inductiveautomation.com/u/michael.flagler)\
**Post date:** [August 21, 2025, 3:21pm UTC](https://forum.inductiveautomation.com/t/create-standard-tagprovider-via-java/110028/4 "2025-08-21T15:21:41Z")

</div>

You have to use tokens, not usernames and passwords for interacting with the API. See here:

> **[API Documentation | Ignition User Manual](https://www.docs.inductiveautomation.com/docs/8.3/platform/gateway/openapi)**
>
> The API documentation in the Gateway provides a complete, dynamically generated specification of the HTTP API routes made publicly available by the Gateway and installed modules. These routes allow external systems to securely interact with Ignition...
