ignition-cli
CLI tool for the Ignition SCADA 8.3+ REST API. Built with Typer, httpx, and Pydantic.
Quick Start
# Install from PyPI
pip install ignition-cli
# Configure a gateway connection (--webdev-project enables tag read/write)
ignition-cli config add dev --url https://gateway:8043 --token "keyId:secretKey" --webdev-project mcp-connector
# Test the connection
ignition-cli config test
# Check gateway status
ignition-cli gateway status
Commands
| Command Group | Description | Key Commands |
|---|---|---|
config |
Manage gateway profiles | init, add, list, show, test, set-default, remove |
gateway |
Gateway operations | status, info, backup, restore, modules, logs, loggers, log-download, scan-projects, scan-config, entity-browse |
project |
Manage Ignition projects | list, show, create, delete, export, import, copy, rename, resources, diff, watch |
tag |
Tag operations | browse, read*, write*, export, import, providers |
device |
Device connections | list, show, restart (supports --module/--type for non-OPC-UA) |
resource |
Generic resource CRUD | list, show, create, update, delete, names, types, upload, download |
perspective |
Perspective views, pages, styles | view list/show/create/update/delete/tree, page list/show/update, style list/show/create/update/delete, session show/update |
mode |
Deployment modes | list, show, create, update, delete, assign, unassign |
api |
Raw API access | get, post, put, delete, discover, spec |
* Tag read and write require the included SFLOW MCP Connector or a custom WebDev endpoint. Use --webdev-project to configure.
Output Formats
All list/show commands support --format / -f with: table (default), json, yaml, csv.
ignition-cli project list -f json | jq '.[].name'
ignition-cli gateway status -f yaml
Authentication
- API Token (recommended):
--token "keyId:secretKey"(sent asX-Ignition-API-Tokenheader) - HTTP Basic Auth:
--username admin --password secret - Environment variables:
IGNITION_GATEWAY_URL,IGNITION_API_TOKEN
Tag Read/Write Setup
Tag read and write are not part of the standard Ignition REST API. They require a WebDev endpoint on the gateway.
Recommended: Install the included SFLOW MCP Connector (contrib/mcp-connector.zip) on your gateway. See contrib/README.md for instructions.
Then configure your profile with the WebDev project name:
ignition-cli config add dev --url https://gateway:8043 --token "keyId:secretKey" --webdev-project mcp-connector
Or pass it per-command:
ignition-cli tag read "[default]HMI/Temperature" --webdev-project mcp-connector
ignition-cli tag write "[default]HMI/Setpoint" 75.0 --webdev-project mcp-connector
Without --webdev-project, the CLI falls back to a direct /tags/read endpoint (non-standard, requires a custom module).
Tools
Perspective View Previewer
tools/perspective-viewer.html — a self-contained HTML file that renders Perspective view JSON locally in a browser. No server or dependencies required.
- Paste JSON or drag & drop a
.jsonfile - Load via URL parameter:
?file=pathfor Playwright automation - Keyboard shortcut:
Ctrl/Cmd+Enterto render - Controls: Dark/light background, component outlines toggle, fit-to-pane scaling
- Renders: Coord/flex/column/drawing/breakpoint/tab/split containers, labels, buttons, inputs, vessel/pump/valve/motor/sensor symbols, SVG shapes (path, rect, circle, ellipse, polygon), embedded view placeholders
Documentation
Run ignition-cli --help for full usage information. See docs/usage.md for the complete reference.
Scenarios
8 production-ready automation scripts in docs/scenarios/ for tasks where the CLI provides unique value:
Development
git clone https://github.com/floriansmeyers/SFLOW-Ignition-CLI.git
cd SFLOW-Ignition-CLI
pip install -e ".[dev]"
pytest tests/
License
MIT
Release files for ignition-cli 0.4.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| ignition_cli-0.4.1.tar.gz | 739.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ignition_cli-0.4.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 784.8 kB
Release files / ignition_cli-0.4.1.tar.gz
| Download URL | ignition_cli-0.4.1.tar.gz |
|---|---|
| Size | 739.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
9a7144c01ecfc8c07e090b83b0437879ab0278f27963f96b0a332e71dd2348bd
|
|
BLAKE2b-256 checksum How to use checksums |
9e84052ade7f308f1408a41e8fc714addcc6e801a4ce19e464806695066e7690
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.14
|
Release files / ignition_cli-0.4.1-py3-none-any.whl
| Download URL | ignition_cli-0.4.1-py3-none-any.whl |
|---|---|
| Size | 45.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
a5d9bb1219e98c539144911ed842fa55dc8f0fbd4ff55fcae185ef49f92decf6
|
|
BLAKE2b-256 checksum How to use checksums |
b13105c31c0804975effd3208e23945b7e8e7c0fa9a57494a2eb648f10f7fcee
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.14
|