SCADA · JSON Structure

Scada Tag Structure

Structure of a SCADA tag data point including real-time value, quality, alarm limits, and device source information

Type: object Properties: 0
Critical InfrastructureICSIndustrial AutomationIndustrial IoTOT SecuritySCADA

ScadaTag is a JSON Structure definition published by SCADA.

Meta-schema:

JSON Structure

scada-tag-structure.json Raw ↑
{
  "name": "ScadaTag",
  "description": "Structure of a SCADA tag data point including real-time value, quality, alarm limits, and device source information",
  "type": "object",
  "fields": [
    {
      "name": "tagId",
      "type": "string",
      "description": "Unique identifier / address for the tag in the SCADA namespace (e.g., PLANT1.AREA2.PV_101)",
      "required": true,
      "example": "PLANT1.AREA2.PV_101"
    },
    {
      "name": "tagName",
      "type": "string",
      "description": "Human-readable descriptor for the tag",
      "required": false,
      "example": "Reactor Inlet Pressure"
    },
    {
      "name": "tagPath",
      "type": "string",
      "description": "Hierarchical path in the SCADA tag browser (folder/subfolder/tag)",
      "required": false,
      "example": "Plant/Area2/Reactor/PV_101"
    },
    {
      "name": "value",
      "type": "varies",
      "description": "Current real-time value - type depends on dataType field (Float, Integer, Boolean, String)",
      "required": true,
      "example": 14.7
    },
    {
      "name": "dataType",
      "type": "string",
      "description": "OPC-UA data type: Float, Double, Integer, Boolean, String, DateTime",
      "required": true,
      "example": "Float"
    },
    {
      "name": "timestamp",
      "type": "datetime",
      "description": "ISO 8601 UTC timestamp of the most recent reading",
      "required": true,
      "example": "2026-05-02T14:30:00.000Z"
    },
    {
      "name": "quality",
      "type": "string",
      "description": "OPC-UA quality status: Good, Uncertain, Bad, Stale",
      "required": true,
      "values": [
        {"value": "Good", "description": "Data is reliable and current"},
        {"value": "Uncertain", "description": "Data may be stale or from a backup source"},
        {"value": "Bad", "description": "Data is unreliable - device communication issue"},
        {"value": "Stale", "description": "Data has not been updated within the configured scan rate"}
      ]
    },
    {
      "name": "engineeringUnits",
      "type": "string",
      "description": "Physical units for the tag value (e.g., PSI, °C, RPM, m3/hr)",
      "required": false,
      "example": "PSI"
    },
    {
      "name": "description",
      "type": "string",
      "description": "Extended description of what the tag measures",
      "required": false
    },
    {
      "name": "alarmLimits",
      "type": "object",
      "description": "Configured alarm threshold setpoints",
      "required": false,
      "nestedFields": [
        {"name": "highHigh", "type": "number", "description": "Critical high alarm limit"},
        {"name": "high", "type": "number", "description": "Warning high alarm limit"},
        {"name": "low", "type": "number", "description": "Warning low alarm limit"},
        {"name": "lowLow", "type": "number", "description": "Critical low alarm limit"}
      ]
    },
    {
      "name": "deviceSource",
      "type": "object",
      "description": "Information about the field device providing this tag",
      "required": false,
      "nestedFields": [
        {"name": "deviceId", "type": "string", "description": "PLC or RTU identifier"},
        {"name": "deviceType", "type": "string", "description": "PLC, RTU, DCS, IED, Sensor, Controller"},
        {"name": "protocol", "type": "string", "description": "Modbus-TCP, OPC-UA, DNP3, EtherNet/IP, PROFINET, BACnet, MQTT"}
      ]
    },
    {
      "name": "processArea",
      "type": "string",
      "description": "Logical plant area or unit (e.g., Reactor Section, Cooling Tower, Compressor Station)",
      "required": false,
      "example": "Reactor Section"
    }
  ],
  "source": "json-schema/scada-tag-schema.json"
}

Work with this as data

Every JSON Structure here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for json structure

4 MCP tools reach this
  • find_json_structuresBrowse and filter every JSON Structure in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools

Call it yourself

curl for this page
This JSON Structure
curl "https://apis.io/api/v1/json-structures/scada-tag-structure"
All json structure
curl "https://apis.io/api/v1/json-structures?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.