Alerts
Operational signals from devices, sites, and integrations—scoped, classified, and actionable
Alerts surface operational issues, notifications, and insights across the Texture Platform. They consolidate signals from devices, sites, external services, and Texture automations so operators know what needs attention. Each alert records what happened, where it occurred, how severe it is, and what actions have been taken.
Why Alerts matter#
- Situational awareness — Maintain a real-time pulse on device health, site performance, and platform automations.
- Coordinated response — Track acknowledgement, remediation, and resolution so teams never duplicate effort.
- Platform-wide connectivity — Link alerts to Sites and Devices for fast navigation between an incident, the underlying asset, and related context.
- Auditable history — Preserve a full record of status changes, snoozes, and resolutions for compliance and post-event analysis.
Capture principle#
Texture always captures incoming alerts, regardless of workspace visibility settings.
When you hide alerts or narrow severity and OEM filters, the platform still stores every alert in the database. Filtering applies only to what operators see in the Dashboard and what external systems receive through Destinations (for example, ALERT_CREATED webhooks). Nothing is deleted or dropped at ingestion.
This separation keeps a complete audit trail while letting each workspace control noise in the UI and notification pipeline.
Alert visibility#
Workspaces can tune how alerts appear and which events trigger outbound notifications:
| Control | What it does |
|---|---|
| Master switch | Disable to hide all alerts in the Dashboard and pause destination fanout for the workspace. Capture continues in the background. |
| Minimum severity | Show and notify only for selected levels (CRITICAL, WARNING, INFO). |
| OEM overrides | Hide alerts from specific connected integrations (keyed by manufacturer slug) while keeping other sources visible. |
Important: Visibility rules take effect only after you save workspace alert settings for the first time. Until then, all alerts remain visible and notifications behave as they did before configuration was introduced.
Configure visibility in the Dashboard under Settings → Alerts.
| Topic | Guide |
|---|---|
| Dashboard setup, defaults, and behavior | Alert configuration |
| REST API — list, create, and lifecycle | Alerts API |
| OEM ingestion paths and provider quirks | OEM alert reference |
Core data model#
Alerts follow a consistent schema across the API and Dashboard. Key fields include:
| Field | Description |
|---|---|
id / externalId | Unique identifiers for the alert in Texture and any upstream system. |
workspaceId, siteId, deviceId | Scope the alert to a workspace, site, and (optionally) a specific device. |
title, description | Human-readable summary and optional detail about the condition. |
type, subtype | Structured classification (see Types and subtypes). Prefer these over legacy alertType. |
alertType | Legacy free-text classification. Deprecated in favor of type / subtype. |
severity | Required level: CRITICAL, WARNING, or INFO. |
status | Operational state: OPEN, ACKNOWLEDGED, IGNORED, or RESOLVED. |
sourceSystem | Where the alert originated (Texture automations, OEM adapter, partner integration, manual entry, etc.). |
providerName, providerCode | Human-readable and coded identifiers for the upstream provider when applicable. |
acknowledgedAt / by, resolvedAt / by, ignoredAt / by, snoozedUntil | Response workflow and temporary suppression timestamps. |
createdAt, updatedAt | Lifecycle auditing timestamps. |
manufacturer, manufacturerDeviceId, deviceName, deviceType, deviceModel, deviceSerialNumber | Device metadata enrichment when available. |
Alerts are linked to their workspace, site, and device so you can navigate from an incident to the underlying assets in the Dashboard and API responses.
Classification#
Severity#
Severity communicates how urgently an alert must be handled:
| Value | Meaning |
|---|---|
CRITICAL | Immediate action required for safety or system availability. |
WARNING | Elevated attention needed to prevent impact or degraded performance. |
INFO | Informational events worth monitoring but typically not disruptive. |
Status lifecycle#
Operators drive an alert through these states:
- Open (
OPEN) — Newly created and awaiting action. - Acknowledged (
ACKNOWLEDGED) — Someone is actively working the issue. - Ignored (
IGNORED) — Intentionally suppressed without resolution (for example, a false positive). - Resolved (
RESOLVED) — Root cause addressed and the alert closed.
Snoozing sets snoozedUntil to pause follow-up for a defined window without changing the underlying status.
Types and subtypes#
Use type and (optionally) subtype to classify alerts for filtering, routing, and analytics. Ingestion pipelines map free-text OEM messages into these canonical values where possible.
Alert types (AlertType)#
| Type | Typical domain |
|---|---|
COMMUNICATIONS | Device, meter, or controller connectivity |
POWER_LIMIT | Site power limits, ramp rate, power factor |
GRID_STATUS | Grid forming, following, resync |
HARDWARE_FAULT | Inverter, battery, contactor, generator faults |
FIRMWARE_UPDATE | Firmware update status |
CONFIGURATION | Configuration or setup issues |
VOLTAGE_FREQUENCY | Voltage drop, frequency deviation |
STATE_OF_ENERGY | State of energy, reserve, power saving |
TEMPERATURE | Thermal and overtemperature events |
ISLANDING | Islanding / anti-islanding |
GENERATOR | Generator-related faults |
SOFTWARE_PROCESS | Control agent or process failures |
SENSOR | Sensor faults and disconnects |
SYSTEM_SHUTDOWN | External or GPIO shutdown |
PERFORMANCE_DEGRADED | Yield or performance below expectation |
SITE_LEVEL | Site-wide conditions |
SAFETY | Safety-related events |
UNKNOWN | Unclassified (no mapping rule matched) |
Alert subtypes (AlertSubtype)#
| Subtype | Usually paired with |
|---|---|
BATTERY_METER_COMMS | COMMUNICATIONS |
INVERTER_COMMS | COMMUNICATIONS |
PV_INVERTER_COMMS | COMMUNICATIONS |
SITE_CONTROLLER_COMMS | COMMUNICATIONS |
SITE_MAX_LIMITED | POWER_LIMIT |
SITE_MIN_LIMITED | POWER_LIMIT |
RAMP_RATE_LIMITED | POWER_LIMIT |
POWER_FACTOR_LIMITED | POWER_LIMIT |
GRID_FORMING | GRID_STATUS |
GRID_FOLLOWING | GRID_STATUS |
GRID_RESYNC_FAILED | GRID_STATUS |
INVERTER_FAULT | HARDWARE_FAULT |
BATTERY_FAULT | HARDWARE_FAULT |
CONTACTOR_FAULT | HARDWARE_FAULT |
GENERATOR_FAULT | HARDWARE_FAULT |
OPTICASTER_EXE_FAILED | SOFTWARE_PROCESS |
CONTROL_AGENT_CRASHED | SOFTWARE_PROCESS |
LOW_SOE | STATE_OF_ENERGY |
SLEEP_MODE | STATE_OF_ENERGY |
WAIT_FOR_SOLAR | STATE_OF_ENERGY |
EXTERNAL_SWITCH_SHUTDOWN | SYSTEM_SHUTDOWN |
GPIO_SHUTDOWN | SYSTEM_SHUTDOWN |
EXCESSIVE_VOLTAGE_DROP | VOLTAGE_FREQUENCY |
FREQUENCY_DEVIATION | VOLTAGE_FREQUENCY |
METER_DISCONNECTED | SENSOR |
TEMPERATURE_SENSOR_FAULT | SENSOR |
PERFORMANCE_BELOW_EXPECTATION | PERFORMANCE_DEGRADED |
Working with alerts across the platform#
- Sites and devices — Each alert references its originating site and, when applicable, a device. Site and device views expose associated alerts for impact and history.
- Search and filtering — Filter by
type,subtype,severity,status, site, device, and pagination. Workspace visibility settings further narrow what appears in the Dashboard after configuration is saved. - Destinations — Alert lifecycle events can flow to webhooks, email, SMS, and Kafka. Visibility settings gate fanout; see Alert configuration and Destinations.
Creating and updating alerts#
Texture supports multiple creation paths:
| Path | Description |
|---|---|
| REST API | POST /v1/alerts publishes alerts from your systems or automations. PATCH endpoints update acknowledgement, ignore, or resolve. See Alerts API. |
| Dashboard | Operators can file alerts manually for field-discovered issues. Manual entries use the same schema and lifecycle as API-created alerts. |
| External ingestion | Alerts flow in from OEM platforms and partner applications (for example, SolarEdge, Enphase, Also Energy). Use externalId and provider fields for traceability. See OEM alert reference. |
Next steps#
- Alert configuration — Enable visibility controls and tune severity and OEM filters.
- Alerts API — List, create, and update alerts via REST.
- OEM alert reference — Understand provider-specific behavior and volume characteristics.
- Sites and Devices — See how alerts relate to core platform resources.
- Destinations — Deliver
ALERT_CREATEDand related events to external systems.