---
title: "Delete multiple alerts"
method: DELETE
path: "/api/v2/{org_id}/alerts/bulk"
tags: ["Alerts"]
---

# Delete multiple alerts

`DELETE /api/v2/{org_id}/alerts/bulk`

## Request

- Base URL: `https://api.openobserve.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://api.openobserve.ai/api/v2/{org_id}/alerts/bulk`
- Auth: API key in header `Authorization`
- TypeScript: <https://skmtc.dev/openobserve/apis/openobserve-api-http/docs/api/v2/:org_id/alerts/bulk/delete.ts> (a function with typed inputs; its response is checked against the schema)

Permanently removes multiple alerts and all their configurations including conditions, triggers, and notification settings. This action cannot be undone and will stop all monitoring and notifications for the deleted alerts.

## Path parameters

- `org_id` string, required

## Request body

- BulkDeleteRequest
  - `ids` string[], required

## Response `200`

Success

- BulkDeleteAlertResponse: Bulk alert deletion result. Carries a `conflicts` field that the shared `BulkDeleteResponse` does not, so generated clients can see which IDs were retained because they are referenced by composite alerts.
  - `conflicts` BulkDeleteConflict[], required
    - `alert_id` string, required: Alert ID that could not be deleted.
    - `code` string, required: Machine-readable conflict code (e.g. "child_referenced").
    - `hidden_reference_count` integer, required: Number of referencing composites hidden from the caller by permissions.
    - `references` unknown[], required: Referencing composites the caller can read.
      - unknown
  - `err` string, nullable
  - `successful` string[], required
  - `unsuccessful` string[], required

## Other responses

- `500`: Failure

---

[API](https://skmtc.dev/openobserve/apis/openobserve-api-http.md) - [All operations](https://skmtc.dev/openobserve/apis/openobserve-api-http/llms.txt) - [OpenAPI document](https://skmtc.dev/openobserve/apis/openobserve-api-http/revisions/0529b8a10252?raw)
