> For the complete documentation index, see [llms.txt](https://india-energy-stack.gitbook.io/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://india-energy-stack.gitbook.io/docs/schemas/outagenotification.md).

# OutageNotification (WIP)

*A machine-readable payload a distribution licensee publishes to describe one planned or unplanned electricity outage — usable both as a public outage-map feed and as a push alert to affected consumers.*

> ⚠️ **Work in progress — subject to change.** Field names, enums and interpretation are not final. Do not depend on it for production integrations yet.

|                    |                                                                                                                                                                                                            |
| ------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Canonical base** | `https://india-energy-stack.github.io/ies-accelerator/schemas/OutageNotification`                                                                                                                          |
| **Latest version** | **v0.1**                                                                                                                                                                                                   |
| **Status**         | Work in progress (current: **v0.1**) · **Issued by** DISCOMs (or their OMS / MDMS / SCADA / RTDAS) · **Consumed by** outage-map feeds, subscribed consumers, mass-alerting networks, reliability reporting |
| **Category**       | Data Exchange payloads                                                                                                                                                                                     |
| **Used in**        | — no IES use-case guide yet                                                                                                                                                                                |

What this schema is for, in plain language — standards basis, design rationale, open points: [OutageNotification (Schemas Overview)](/docs/schemas-overview/schemas-overview/outage-notification.md).

## Developer resources — v0.1 (current)

| Resource                 | URL                                                                                                                                                                                                                            | Notes                                                        |
| ------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------ |
| Field reference (README) | <https://india-energy-stack.github.io/ies-accelerator/schemas/OutageNotification/v0.1/README.md>                                                                                                                               | human-readable field reference for this version              |
| `attributes.yaml`        | <https://india-energy-stack.github.io/ies-accelerator/schemas/OutageNotification/v0.1/attributes.yaml>                                                                                                                         | OpenAPI 3.1 source of truth                                  |
| `schema.json`            | <https://india-energy-stack.github.io/ies-accelerator/schemas/OutageNotification/v0.1/schema.json>                                                                                                                             | compiled JSON Schema (Draft 2020-12) — validate against this |
| `context.jsonld`         | <https://india-energy-stack.github.io/ies-accelerator/schemas/OutageNotification/v0.1/context.jsonld>                                                                                                                          | JSON-LD context for semantic resolution                      |
| `vocab.jsonld`           | <https://india-energy-stack.github.io/ies-accelerator/schemas/OutageNotification/v0.1/vocab.jsonld>                                                                                                                            | RDF vocabulary with standards alignments                     |
| `examples/`              | [https://github.com/India-Energy-Stack/ies-accelerator/tree/main/schemas/OutageNotification/v0.1/examples](https://github.com/India-Energy-Stack/ies-accelerator/tree/main/schemas/OutageNotification/v0.1/examples/README.md) | worked payloads                                              |

## Field reference — v0.1 (current)

*A field name in **bold** with a trailing **\*** is required; all others are optional. **Type** shows units for QuantitativeValue models. Descriptions are simplified to the plain meaning of each field — the per-version pages (see **Versions** below) carry the full text, standards basis and notes.*

**OutageNotification Payload**

| Field                   | Type                                                                                   | Description                                                                                               |
| ----------------------- | -------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- |
| **`objectType`** \*     | `OUTAGE_NOTIFICATION`                                                                  | —                                                                                                         |
| **`id`** \*             | Identifier                                                                             | Stable notice identity; reused across UPDATE/CANCEL messages.                                             |
| **`outageClass`** \*    | `PLANNED` / `BREAKDOWN` / `SCHEDULED_ROSTERING` / `EMERGENCY_ROSTERING`                | Outage class, from the DISCOM OMS "Down Info" set (local, additive enum).                                 |
| **`status`** \*         | `SCHEDULED` / `ACTIVE` / `PARTIALLY_RESTORED` / `RESTORED` / `CANCELLED`               | Outage lifecycle state.                                                                                   |
| `msgType`               | `ALERT` / `UPDATE` / `CANCEL`                                                          | Message type; UPDATE/CANCEL refer to a prior notice via `references`.                                     |
| `references`            | list of Identifier                                                                     | Prior notice ids this message updates or cancels (CAP `references`).                                      |
| `severity`              | `EXTREME` / `SEVERE` / `MODERATE` / `MINOR` / `UNKNOWN`                                | Severity of the outage.                                                                                   |
| `category`              | `MAINTENANCE` / `UPGRADE` / `FAULT` / `LOAD_SHEDDING` / `WEATHER` / `SAFETY` / `OTHER` | Coarse descriptor for display/filtering (local enum; not CAP `info/category`).                            |
| `cause`                 | OutageCause                                                                            | —                                                                                                         |
| `forceMajeure`          | yes / no                                                                               | OMS "Force Majeure" flag.                                                                                 |
| `issuedBy`              | Party                                                                                  | —                                                                                                         |
| `issuedAt`              | date-time                                                                              | —                                                                                                         |
| `detectedAt`            | date-time                                                                              | When MDMS/SCADA first detected the outage (unplanned).                                                    |
| `lastUpdatedAt`         | date-time                                                                              | —                                                                                                         |
| `network`               | OutageNetworkContext                                                                   | —                                                                                                         |
| **`affectedAssets`** \* | list of OutageAsset                                                                    | —                                                                                                         |
| `affectedArea`          | OutageAffectedArea                                                                     | —                                                                                                         |
| `impact`                | OutageImpact                                                                           | —                                                                                                         |
| **`timing`** \*         | OutageTiming                                                                           | —                                                                                                         |
| `response`              | OutageResponse                                                                         | —                                                                                                         |
| `publicInfo`            | OutagePublicInfo                                                                       | —                                                                                                         |
| `provenance`            | OutageProvenance                                                                       | —                                                                                                         |
| `extensions`            | object                                                                                 | Namespaced DISCOM-specific fields, e.g. { "discom": { "breakdownId": "6357257", "downType": "FEEDER" } }. |

**OutageCause**

| Field           | Type                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    | Description                                                                                                                                                                                |
| --------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `category`      | `EQUIPMENT` / `LIGHTNING` / `PLANNED` / `POWER_SUPPLY` / `PUBLIC` / `VEGETATION` / `WEATHER` / `WILDLIFE` / `UNKNOWN` / `OTHER`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         | Standardized interruption cause category, for reliability benchmarking.                                                                                                                    |
| `subcategory`   | `DEGRADATION` / `EQUIPMENT_ERROR` / `ENVIRONMENTAL` / `DIRECT_STRIKE` / `INDIRECT_STRIKE` / `NEW_CONSTRUCTION` / `MAINTENANCE` / `CUSTOMER_REQUEST` / `OTHER_UTILITY_REQUEST` / `GENERATION` / `TRANSMISSION` / `SUBTRANSMISSION` / `DISTRIBUTION` / `DISTRIBUTED_GENERATION_STORAGE` / `OTHER_UTILITY_SUPPLY` / `DIG_IN` / `FOREIGN_CONTACT` / `FIRE_POLICE` / `VEHICLE` / `WITHIN_CLEARANCE_ZONE` / `OUTSIDE_CLEARANCE_ZONE` / `PRECIPITATION` / `ICE` / `WIND` / `EXTREME_TEMPERATURE` / `MAMMAL` / `BIRD` / `REPTILE_AMPHIBIAN` / `NO_SPECIFIC_CAUSE_FOUND` / `UTILITY_ERROR` / `OTHER_UTILITY_INITIATED` / `OTHER` | Standardized cause subcategory; must be valid for the chosen `category` (see $comment for the mapping).                                                                                    |
| `faultType`     | text                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    | Vendor asset/voltage level of the fault, e.g. 33KV, 11KV, DT, LT.                                                                                                                          |
| `code`          | text                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    | Vendor/OMS fault-reason code, carried verbatim (e.g. a DISCOM FAULT\_REASON) — not standardized; map to `category`/`subcategory` for interoperability (see fault\_reason\_crosswalk.json). |
| `codeNamespace` | text                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    | Authority/vendor that defines `code` (e.g. the OMS vendor or DISCOM).                                                                                                                      |
| `text`          | text                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    | Free-text reason; may be localized (e.g. Hindi).                                                                                                                                           |

**OutageAsset**

| Field               | Type                                                                 | Description                                                                                                 |
| ------------------- | -------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- |
| **`id`** \*         | Identifier                                                           | Asset id/name; ideally a stable GIS feature id or MRID for map join.                                        |
| **`assetLevel`** \* | `SUBSTATION` / `FEEDER` / `DT` / `LINE_SEGMENT` / `SERVICE_POINT`    | Network level of the affected asset (local enum; aligns with CIM Equipment/UsagePoint).                     |
| `voltageLevel`      | text                                                                 | e.g. 33kV, 11kV, LT, DT.                                                                                    |
| `consumerCategory`  | `URBAN` / `RURAL` / `AGRICULTURE` / `INDUSTRIAL` / `MIXED` / `OTHER` | Consumer mix on the asset (local enum; DISCOM "Feeder Type").                                               |
| `meterRef`          | Identifier                                                           | Feeder/substation smart-meter number — join key to MDMS/MeterData.                                          |
| `parentRef`         | Identifier                                                           | Parent asset (e.g. a feeder's substation, a DT's feeder).                                                   |
| `geo`               | GeoJSONGeometry                                                      | Optional inline geometry (WGS84): Point (substation/DT), LineString (feeder route), Polygon (service area). |

**OutageNetworkContext**

| Field         | Type       | Description |
| ------------- | ---------- | ----------- |
| `discom`      | Identifier | —           |
| `zone`        | text       | —           |
| `circle`      | text       | —           |
| `division`    | text       | —           |
| `subdivision` | text       | —           |
| `substation`  | Identifier | —           |
| `district`    | text       | —           |

**OutageAffectedArea**

| Field        | Type            | Description                                                         |
| ------------ | --------------- | ------------------------------------------------------------------- |
| `text`       | text            | Free-text localities (CAP areaDesc), e.g. "SEC-14, 9, 11 Rajnagar". |
| `adminAreas` | list of text    | Named localities / wards / villages.                                |
| `geo`        | GeoJSONGeometry | Polygon/MultiPolygon service area, or Point/circle (CAP).           |

**OutageImpact**

| Field               | Type               | Description                                        |
| ------------------- | ------------------ | -------------------------------------------------- |
| `customersAffected` | integer            | —                                                  |
| `deEnergized`       | list of Identifier | Optional SDP/UsagePoint refs (authenticated tier). |
| `energized`         | list of Identifier | Optional points confirmed still energized.         |

**OutageTiming**

| Field                  | Type       | Description                                        |
| ---------------------- | ---------- | -------------------------------------------------- |
| **`period`** \*        | TimePeriod | Outage window (Down From + duration).              |
| `estimatedRestoration` | date-time  | ETR (OMS "Estimated Time").                        |
| `actualRestoration`    | date-time  | Set when status=RESTORED; feeds IEEE 1366 indices. |
| `slaTargetMinutes`     | integer    | SLA target, e.g. 240 (4 hrs).                      |

**OutageResponse**

| Field            | Type     | Description                                                     |
| ---------------- | -------- | --------------------------------------------------------------- |
| `backFeedGiven`  | yes / no | Partial restoration via alternate feed (OMS "Back-Feed given"). |
| `resourceStatus` | text     | e.g. PENDING, RESOURCE\_ALLOCATED, IN\_PROGRESS.                |
| `complaintCount` | integer  | Linked consumer complaints (OMS "No. of Complaints").           |

**OutagePublicInfo**

| Field         | Type | Description                  |
| ------------- | ---- | ---------------------------- |
| `language`    | text | BCP-47, e.g. en, hi.         |
| `headline`    | text | —                            |
| `description` | text | —                            |
| `instruction` | text | What the consumer should do. |

**OutageProvenance**

| Field          | Type                                                  | Description                                                                                         |
| -------------- | ----------------------------------------------------- | --------------------------------------------------------------------------------------------------- |
| `source`       | `MDMS` / `OMS` / `SCADA` / `RTDAS` / `AMI` / `MANUAL` | System that raised this notice (local enum; RTDAS = Real-Time Data Acquisition System).             |
| `amispCode`    | text                                                  | AMI Service Provider that supplied the detection signal (feeder-status ingest API).                 |
| `detectionRef` | Identifier                                            | Reference to the real-time detection record that raised the outage (e.g. a DISCOM RTDAS\_DATA\_ID). |
| `signal`       | OutageSignal                                          | —                                                                                                   |
| `alarmRefs`    | list of OutageAlarmRef                                | References into MeterData AlarmProfile records.                                                     |

**OutageSignal**

| Field          | Type                                     | Description                                                                        |
| -------------- | ---------------------------------------- | ---------------------------------------------------------------------------------- |
| `eventId`      | text                                     | Idempotency key of the originating feeder-status event.                            |
| `feederStatus` | `ENERGIZED` / `DE_ENERGIZED` / `UNKNOWN` | Normalized feeder status (local enum); raw vendor code in `rawCode`.               |
| `diPort`       | text                                     | Digital-input port on the substation meter that carried the signal.                |
| `rawCode`      | text                                     | Vendor-native status code as received (e.g. FEEDER\_STATUS=102), for traceability. |

**OutageAlarmRef**

| Field             | Type       | Description |
| ----------------- | ---------- | ----------- |
| **`meterRef`** \* | Identifier | —           |
| `alarmId`         | integer    | —           |
| `timestamp`       | date-time  | —           |

**Party**

| Field     | Type       | Description                              |
| --------- | ---------- | ---------------------------------------- |
| `id`      | Identifier | —                                        |
| `name`    | text       | —                                        |
| `contact` | text       | Phone/email/URL for queries (e.g. 1912). |

**Identifier**

| Field           | Type                                                                                                                                                 | Description                           |
| --------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------- |
| **`scheme`** \* | `METER_SERIAL` / `MRID` / `GIS_FEATURE_ID` / `SERVICE_DELIVERY_POINT` / `FEEDER` / `SUBSTATION` / `DT` / `CONSUMER_NUMBER` / `ORG` / `DID` / `OTHER` | Identifier scheme (mixed provenance). |
| **`value`** \*  | text                                                                                                                                                 | —                                     |
| `namespace`     | text                                                                                                                                                 | —                                     |

**TimePeriod**

| Field             | Type      | Description          |
| ----------------- | --------- | -------------------- |
| **`start`** \*    | date-time | —                    |
| **`duration`** \* | duration  | ISO-8601, e.g. PT2H. |

## Versions

Every published version stays reachable at its canonical URL — clients pin a version explicitly. Click a version for its full field reference.

| Version                                          | Status          | Notes                                                                                      | Files                                                                                                                                                                                                                                                                                                                                                                      |
| ------------------------------------------------ | --------------- | ------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [v0.1](/docs/schemas/outagenotification/v0.1.md) | **Draft (WIP)** | Initial model: OutageNotification + sub-models; provenance links to MeterData AlarmProfile | [schema.json](https://india-energy-stack.github.io/ies-accelerator/schemas/OutageNotification/v0.1/schema.json) · [attributes.yaml](https://india-energy-stack.github.io/ies-accelerator/schemas/OutageNotification/v0.1/attributes.yaml) · [examples](https://github.com/India-Energy-Stack/ies-accelerator/tree/main/schemas/OutageNotification/v0.1/examples/README.md) |


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://india-energy-stack.gitbook.io/docs/schemas/outagenotification.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
