> For the complete documentation index, see [llms.txt](https://standards.spdci.org/standards/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://standards.spdci.org/standards/dci-standards/early-warning-systems/wip-early-warning-systems-and-sp-system-interface/9.-ews/data/data-object/do.ews.02-capalert.md).

# DO.EWS.02 CapAlert

An alert is a collection of information that EWS can share with SP System to take anticipatory actions.

The **CapAlert object** **shall** contain alert metadata and descriptive elements aligned with the Common Alerting Protocol (CAP) v1.2. This ensures semantic interoperability and consistent interpretation of alert messages across systems.

**Normative Reference:**\
OASIS Common Alerting Protocol (CAP) v1.2\
<https://docs.oasis-open.org/emergency/cap/v1.2/CAP-v1.2.html>

<table><thead><tr><th width="132.7066650390625">Attribute</th><th width="188.1612548828125">Type</th><th width="150.1409912109375">Cardinality</th><th>Description</th></tr></thead><tbody><tr><td>identifier</td><td><a data-mention href="/standards/standards-for-interoperability-interfaces/common-standards-for-interoperability-interfaces/data/data-types-and-formats/dt.com.02-string.md">DT.COM.02 string</a></td><td>1...1</td><td>Unique identifier of the alert message</td></tr><tr><td>sender</td><td><a data-mention href="/standards/standards-for-interoperability-interfaces/common-standards-for-interoperability-interfaces/data/data-types-and-formats/dt.com.02-string.md">DT.COM.02 string</a></td><td>1...1</td><td>Identifies the sender of the alert.</td></tr><tr><td>sent</td><td><a data-mention href="/standards/standards-for-interoperability-interfaces/common-standards-for-interoperability-interfaces/data/data-types-and-formats/dt.com.02-string/data-formats/df.com.string.01-date_time.md">DF.COM.STRING.01 date_time</a></td><td>1...1</td><td>The time and date of the origination of the alert message</td></tr><tr><td>status</td><td><a data-mention href="/standards/dci-standards/early-warning-systems/wip-early-warning-systems-and-sp-system-interface/9.-ews/data/code-directory/cd.ews.03-status.md">CD.EWS.03 status</a></td><td>1...1</td><td>Status of the alert (e.g., <code>Actual</code>, <code>Exercise</code>, <code>Test</code>).</td></tr><tr><td>msg_type</td><td><a data-mention href="/standards/dci-standards/early-warning-systems/wip-early-warning-systems-and-sp-system-interface/9.-ews/data/code-directory/cd.ews.04-message_type.md">CD.EWS.04 message_type</a></td><td>1....1</td><td>Type of message (e.g., <code>Alert</code>, <code>Update</code>, <code>Cancel</code>).</td></tr><tr><td>source</td><td><a data-mention href="/standards/standards-for-interoperability-interfaces/common-standards-for-interoperability-interfaces/data/data-types-and-formats/dt.com.02-string.md">DT.COM.02 string</a></td><td>0...1</td><td>The text identifying the source of the alert message</td></tr><tr><td>scope</td><td><a data-mention href="/standards/dci-standards/early-warning-systems/wip-early-warning-systems-and-sp-system-interface/9.-ews/data/code-directory/cd.ews.05-scope.md">CD.EWS.05 scope</a></td><td>1...1</td><td>Scope of the alert (e.g., <code>Public</code>, <code>Restricted</code>, <code>Private</code>).</td></tr><tr><td>restriction</td><td><a data-mention href="/standards/standards-for-interoperability-interfaces/common-standards-for-interoperability-interfaces/data/data-types-and-formats/dt.com.02-string.md">DT.COM.02 string</a></td><td>0...1</td><td>The text describing the rule for limiting distribution of the restricted alert message</td></tr><tr><td>addresses</td><td><a data-mention href="/standards/standards-for-interoperability-interfaces/common-standards-for-interoperability-interfaces/data/data-types-and-formats/dt.com.05-array.md">DT.COM.05 array</a></td><td>0...1</td><td>The group listing of intended recipients of the alert message. Required when is “Private”, optional when is “Public” or “Restricted”.</td></tr><tr><td>code</td><td><a data-mention href="/standards/standards-for-interoperability-interfaces/common-standards-for-interoperability-interfaces/data/data-types-and-formats/dt.com.02-string.md">DT.COM.02 string</a></td><td>0...1</td><td>The code denoting the special handling of the alert message</td></tr><tr><td>assessment_date</td><td><a data-mention href="/standards/standards-for-interoperability-interfaces/common-standards-for-interoperability-interfaces/data/data-types-and-formats/dt.com.02-string/data-formats/df.com.string.01-date_time.md">DF.COM.STRING.01 date_time</a></td><td>1...1</td><td>The timestamp when the environmental indicators were calculated.</td></tr><tr><td>threshold_status</td><td><a data-mention href="/standards/dci-standards/early-warning-systems/wip-early-warning-systems-and-sp-system-interface/9.-ews/data/code-directory/cd.ews.10-threshold_status.md">CD.EWS.10 threshold_status</a></td><td>1...1</td><td>Tracks step-by-step escalations</td></tr><tr><td>note</td><td><a data-mention href="/standards/standards-for-interoperability-interfaces/common-standards-for-interoperability-interfaces/data/data-types-and-formats/dt.com.02-string.md">DT.COM.02 string</a></td><td>0...1</td><td>The text describing the purpose or significance of the alert message</td></tr><tr><td>references</td><td><a data-mention href="/standards/standards-for-interoperability-interfaces/common-standards-for-interoperability-interfaces/data/data-types-and-formats/dt.com.05-array.md">DT.COM.05 array</a></td><td>0...1</td><td>The group listing identifying earlier message(s) referenced by the alert message</td></tr><tr><td>incidents</td><td><a data-mention href="/standards/standards-for-interoperability-interfaces/common-standards-for-interoperability-interfaces/data/data-types-and-formats/dt.com.05-array.md">DT.COM.05 array</a></td><td>0...1</td><td>The group listing naming the referent incident(s) of the alert message</td></tr><tr><td>info</td><td><a data-mention href="/standards/dci-standards/early-warning-systems/wip-early-warning-systems-and-sp-system-interface/9.-ews/data/data-object/do.ews.03-info.md">DO.EWS.03 Info</a></td><td>0...*</td><td>details of the CapAlert</td></tr><tr><td>created_at</td><td><a data-mention href="/standards/standards-for-interoperability-interfaces/common-standards-for-interoperability-interfaces/data/data-types-and-formats/dt.com.02-string/data-formats/df.com.string.01-date_time.md">DF.COM.STRING.01 date_time</a></td><td>0...1</td><td>the date of the creation of the alert</td></tr></tbody></table>

```
{
      "identifier": "ALERT-2026-00001",
      "sender": "ews.gov.lb",
      "sent": "2026-06-22T10:00:00Z",
      "status": "Actual",
      "msg_type": "Alert",
      "source": "National Early Warning System",
      "scope": "Public",
      "assessment_date":"2026-06-22T10:00:00Z",
      "threshold_status": "CROSSING_THRESHOLD_1",
      "info": [
        {
          "language": "en-US",
          "category": [
            "Met"
          ],
          "event": "Flash Flood",
          "response_type": [
            "Prepare"
          ],
          "urgency": "Immediate",
          "severity": "Severe",
          "certainty": "Likely",

          "headline": "Flash Flood Warning",
          "description": "Heavy rainfall may cause flash flooding.",
          "instruction": "Move to higher ground.",

          "effective": "2026-06-22T10:00:00Z",
          "expires": "2026-06-22T18:00:00Z",

          "area": [
            {
              "areaDesc": "Bekaa Governorate",

              "polygon": [
                "33.85,35.45 33.95,35.45 33.95,35.55 33.85,35.55 33.85,35.45"
              ],

              "geocode": [
                {
                  "valueName": "ADMIN_CODE",
                  "value": "LB-BI"
                }
              ]
            },
            {
              "areaDesc": "Baalbek District",

              "geocode": [
                {
                  "valueName": "SPMIS_DISTRICT_ID",
                  "value": "DISTRICT_101"
                }
              ]
            }
          ]
        }
      ]
    }
```

{% hint style="info" %}
For slow-onset hazards, updates must reuse the same persistent **`identifier`** alongside an updated **`ASSESSMENT_DATE`**. This removes the need for self-referencing message chains, allowing the platform to treat the stream as a rolling sequence of reassessments for a single continuous event.
{% endhint %}

{% hint style="info" %}
The presence of a structured `geo_code` object within the area in the payload satisfies the technical format requirement, but it does not inherently guarantee administrative alignment. Therefore, establishing a geographic crosswalk is a mandatory operational readiness requirement that must be finalized prior to the first data exchange. This crosswalk functions as a maintained data dictionary matching the payload's `geo_code` identifiers directly to the authoritative national administrative codes used by the Social Protection systems. This agreement must live outside the active data schema and must be formally re-verified by both participating agencies whenever official political boundaries or administrative coding standards change.
{% endhint %}

{% hint style="info" %}
To ensure system stability, prevent database corruption, and handle network retries gracefully, receiving systems must implement strict message deduplication logic at the integration gateway. The receiving platform must evaluate every incoming message using a composite unique key consisting of the **`Identifier` PLUS the `Sender ID`** (or a documented equivalent unique composite key defined in the country profile). If an incoming message matches an existing composite key already stored in the system, the receiver must treat the payload as a **no-op (no operation)**—skipping data duplication, metric recalculations, or downstream workflow triggers. However, the system is normatively required to **retain an immutable audit log record** of the transaction, capturing the arrival timestamp, sender identity, and a status flag indicating the duplicate was safely acknowledged without reprocessing.
{% endhint %}


---

# 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 by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://standards.spdci.org/standards/dci-standards/early-warning-systems/wip-early-warning-systems-and-sp-system-interface/9.-ews/data/data-object/do.ews.02-capalert.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

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.
