> ## Documentation Index
> Fetch the complete documentation index at: https://docs.coreflux.org/llms.txt
> Use this file to discover all available pages before exploring further.

# Ignition (Inductive Automation)

> Client-mode REST API connector for Ignition 8.3+ Gateway: overview/gateway-info health, tag-provider list, tags export, and WebDev tag read/write/history

Technical Preview

## Overview

A client-mode connector for a **curated** slice of the [Ignition 8.3 Gateway HTTP API](https://www.docs.inductiveautomation.com/docs/8.3/platform/gateway/openapi) under `https://{gateway}:8088`:

| Catalog connector event | Entity / path | Notes |
| - | - | - |
| GET gateway status | `GET /data/api/v1/overview` | Health / overview smoke |
| (info) | `GET /data/api/v1/gateway-info` | Gateway identity / version |
| (discovery) | `GET /data/api/v1/resources/list/ignition/tag-provider` | List tag providers |
| (config export) | `GET /data/api/v1/tags/export` | Tag **configuration** export (8.3.2+); not live values |
| GET tag values | `GET /system/webdev/{project}/tags/read` | **WebDev** — live tag values |
| POST tag writes | `POST /system/webdev/{project}/tags/write` | **WebDev** |
| GET tag history | `GET /system/webdev/{project}/tags/history` | **WebDev** wrapping historian scripting |

`BASE_ADDRESS` is the gateway root (no trailing slash; endpoints start with `/`). Topics use `historian/ignition/<object>/<verb>`. Default stub port is `8088` (HTTPS often on `8043`).

See the base guide: [REST API Connectors](/latest/lot-language/routes/rest-api-routes).

> [!NOTE]
>
> **Gateway + API Key required.** There is no public Ignition sandbox. Replace `YOUR_GATEWAY` and supply an API Key (`X-Ignition-API-Token`). Prefer Hub secrets.

> [!NOTE]
>
> **WebDev for live tags.** Stock 8.3 OpenAPI is mainly configuration and status. Live tag read/write/history need a WebDev project (custom or e.g. SFLOW MCP Connector) exposing `/system/webdev/{project}/tags/*`.

> [!NOTE]
>
> Prefer Hub secrets for API tokens. This template has not been verified against a live Ignition gateway. Queue status remains **blocked** until an authenticated live smoke succeeds.

## Basic Syntax

```lot wrap theme={"theme":"css-variables","languages":{"custom":["/languages/lot.json"]}}
# Coreflux REST_API template — Ignition 8.3+ Gateway
# Auth: X-Ignition-API-Token: {value.json.api_token}
# BASE_ADDRESS: https://YOUR_GATEWAY:8088

DEFINE ROUTE IgnitionRestApi WITH TYPE REST_API
    ADD REST_API_CONFIG
        WITH BASE_ADDRESS "https://YOUR_GATEWAY:8088"
        WITH ENABLE_CLIENT "true"
        WITH USE_SSL "true"
        WITH REQUEST_TIMEOUT '60'
        WITH DEFAULT_CONTENT_TYPE "application/json"
    ADD EVENT GetGatewayOverview
        WITH SOURCE_TOPIC "historian/ignition/gateway/overview"
        WITH DESTINATION_TOPIC "historian/ignition/gateway/overview/response"
        WITH METHOD "GET"
        WITH ENDPOINT "/data/api/v1/overview"
        WITH HEADERS
            ADD "Accept" "application/json"
            ADD "X-Ignition-API-Token" "{value.json.api_token}"
    ADD EVENT GetTagValues
        WITH SOURCE_TOPIC "historian/ignition/tags/read"
        WITH DESTINATION_TOPIC "historian/ignition/tags/read/response"
        WITH METHOD "GET"
        WITH ENDPOINT "/system/webdev/{value.json.project}/tags/read?paths={value.json.paths}"
        WITH HEADERS
            ADD "Accept" "application/json"
            ADD "X-Ignition-API-Token" "{value.json.api_token}"
    ADD EVENT WriteTagValues
        WITH SOURCE_TOPIC "historian/ignition/tags/write"
        WITH DESTINATION_TOPIC "historian/ignition/tags/write/response"
        WITH METHOD "POST"
        WITH ENDPOINT "/system/webdev/{value.json.project}/tags/write"
        WITH HEADERS
            ADD "Accept" "application/json"
            ADD "Content-Type" "application/json"
            ADD "X-Ignition-API-Token" "{value.json.api_token}"
        WITH BODY "{payload}"
    ADD EVENT GetTagHistory
        WITH SOURCE_TOPIC "historian/ignition/tags/history"
        WITH DESTINATION_TOPIC "historian/ignition/tags/history/response"
        WITH METHOD "GET"
        WITH ENDPOINT "/system/webdev/{value.json.project}/tags/history?paths={value.json.paths}&startTime={value.json.startTime}&endTime={value.json.endTime}&returnSize={value.json.returnSize}"
        WITH HEADERS
            ADD "Accept" "application/json"
            ADD "X-Ignition-API-Token" "{value.json.api_token}"
```

The full package also includes `GetGatewayInfo`, `ListTagProviders`, and `ExportTags`. See `IgnitionRestApi.lot` in the factory package.

## Parameters

| Parameter | Required | Description |
| - | - | - |
| `BASE_ADDRESS` | Yes | `https://{gateway}:8088` (or HTTPS port) — no trailing slash |
| `api_token` | Yes | API Key value for `X-Ignition-API-Token` |
| `project` | For WebDev events | WebDev project name |
| `paths` | For read/history | Comma-separated tag paths |
| `provider` / `path` | For export | Tag provider name and optional folder path |
| `startTime` / `endTime` / `returnSize` | For history | Historian query window |

## Authentication

1. Create an API Key: **Platform > Security > API Keys**.
2. Send header `X-Ignition-API-Token: <token>` on each request.
3. Pass the token in MQTT JSON as `api_token`. Prefer Hub secrets — never commit keys.
4. WebDev may also accept HTTP Basic depending on project security settings.

## MQTT topics

| Event | Source topic | Response topic |
| - | - | - |
| GetGatewayOverview | `historian/ignition/gateway/overview` | `…/response` |
| GetGatewayInfo | `historian/ignition/gateway/info` | `…/response` |
| ListTagProviders | `historian/ignition/tag-providers/list` | `…/response` |
| ExportTags | `historian/ignition/tags/export` | `…/response` |
| GetTagValues | `historian/ignition/tags/read` | `…/response` |
| WriteTagValues | `historian/ignition/tags/write` | `…/response` |
| GetTagHistory | `historian/ignition/tags/history` | `…/response` |

## Related

* [REST API Connectors](/latest/lot-language/routes/rest-api-routes)
* [AVEVA PI Web API](/latest/lot-language/routes/rest-api-apps/aveva-pi-web-api)
* [AVEVA CONNECT data services](/latest/lot-language/routes/rest-api-apps/aveva-connect-data-services)
* Ignition OpenAPI docs: [https://www.docs.inductiveautomation.com/docs/8.3/platform/gateway/openapi](https://www.docs.inductiveautomation.com/docs/8.3/platform/gateway/openapi)
* API Keys: [https://www.docs.inductiveautomation.com/docs/8.3/platform/security/api-keys](https://www.docs.inductiveautomation.com/docs/8.3/platform/security/api-keys)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.