---
title: "Create operator alerts"
method: POST
path: "/api/operator-alerts"
tags: ["operator-alerts"]
---

# Create operator alerts

`POST /api/operator-alerts`

Creates one or multiple operator alerts from canonical payload fields.

## Request body

- union
  - OperatorAlertCreateRequest — Payload for creating operator alerts.
    - `operator_id` string, nullable — Operator UUID
    - `status` string, nullable — Alert status
    - `type` union — Alert type
      - 'modifica_stato_appuntamento' | 'conferma_appuntamento_da_riprogrammare' | 'conferma_stato_grave_paziente' | 'aggiungi_nota_stato_paziente' | 'aggiungi_disponibilita' | 'aggiungi_fasce_orarie' | 'invia_fattura_mensile' | 'correggi_fattura' | 'conferma_riassegnazione_paziente' — Operator alert type constants.
      - string
    - `title` string, nullable — Alert title
    - `description` string, nullable — Alert description
    - `metadata` union — Metadata JSON payload
      - object
      - unknown[]
        - unknown
    - `closed_at` string, date-time, nullable — Close timestamp
    - `duration_hours` integer, nullable — Duration in hours
    - `is_blocking` boolean, nullable — Force whether this alert can block portal access; defaults from type when omitted
  - OperatorAlertCreateRequest[]
    - `operator_id` string, nullable — Operator UUID
    - `status` string, nullable — Alert status
    - `type` union — Alert type
      - 'modifica_stato_appuntamento' | 'conferma_appuntamento_da_riprogrammare' | 'conferma_stato_grave_paziente' | 'aggiungi_nota_stato_paziente' | 'aggiungi_disponibilita' | 'aggiungi_fasce_orarie' | 'invia_fattura_mensile' | 'correggi_fattura' | 'conferma_riassegnazione_paziente' — Operator alert type constants.
      - string
    - `title` string, nullable — Alert title
    - `description` string, nullable — Alert description
    - `metadata` union — Metadata JSON payload
      - object
      - unknown[]
        - unknown
    - `closed_at` string, date-time, nullable — Close timestamp
    - `duration_hours` integer, nullable — Duration in hours
    - `is_blocking` boolean, nullable — Force whether this alert can block portal access; defaults from type when omitted

## Response `200`

Successful Response

- OperatorAlertResponse[]
  - `id` string, uuid, nullable — Alert UUID
  - `operator_id` string, uuid, nullable — Operator UUID
  - `created_at` string, date-time, nullable — Creation timestamp
  - `updated_at` string, date-time, nullable — Last update timestamp
  - `status` string, nullable — Alert status
  - `type` string, nullable — Alert type
  - `title` string, nullable — Alert title
  - `description` string, nullable — Alert description
  - `metadata` union — Alert metadata JSON
    - object
    - unknown[]
      - unknown
  - `closed_at` string, date-time, nullable — Close timestamp
  - `duration_hours` integer, nullable — Alert duration in hours
  - `is_blocking` boolean — Whether this alert can block portal access once its grace period elapses
  - `is_currently_blocking` boolean, required — Whether this alert is blocking access right now (grace period considered)

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.dev/corabea/apis/corabea-api.md) · [All operations](https://skmtc.dev/corabea/apis/corabea-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/corabea/corabea-api/revisions/13c1bce1bdc4/schema)
