# Delete one alert

deleteAlert · DELETE /api/alerts

## Endpoint
`DELETE /api/alerts`

Deletes one of this key's alerts by id (from listAlerts). Nothing else changes.

## Authentication
```json
[]
```
An empty security requirement means this operation does not declare authentication. Read operation notes for entitlement and protocol-method requirements.

## Parameters
| Name | In | Required | Description |
| --- | --- | --- | --- |
| id | query | Yes |  |

## Responses and errors
| HTTP status | Meaning |
| --- | --- |
| 200 | Deleted. |
| 404 | No such alert for this key. |
| 401 | Unknown, revoked or malformed key (code unauthorized). |
| 402 | Not a paid key, or the plan holds no more alerts (code plan_required). |
| 429 | Rate limit exceeded; honour Retry-After. |
| 503 | Alerts are not yet enabled on this deployment (migration 048 pending). |

## Response examples
No response example is supplied by OpenAPI for this operation. The complete response schemas are preserved below; use an actual response for observed values.

## Retry guidance
See [errors and retries](/docs/api/overview#errors-and-retries). Honor operation-specific response headers. A POST may create state; do not replay it automatically.

## Complete operation contract
The expanded contract below includes all parameter constraints, response headers, schemas and examples from OpenAPI.

```json
{
  "path": "/api/alerts",
  "method": "DELETE",
  "parameters": [
    {
      "name": "id",
      "in": "query",
      "required": true,
      "schema": {
        "type": "string",
        "format": "uuid"
      }
    }
  ],
  "operationId": "deleteAlert",
  "summary": "Delete one alert",
  "description": "Deletes one of this key's alerts by id (from listAlerts). Nothing else changes.",
  "tags": [
    "keys",
    "Manage access"
  ],
  "responses": {
    "200": {
      "description": "Deleted."
    },
    "404": {
      "description": "No such alert for this key."
    },
    "401": {
      "description": "Unknown, revoked or malformed key (code unauthorized)."
    },
    "402": {
      "description": "Not a paid key, or the plan holds no more alerts (code plan_required)."
    },
    "429": {
      "description": "Rate limit exceeded; honour Retry-After."
    },
    "503": {
      "description": "Alerts are not yet enabled on this deployment (migration 048 pending)."
    }
  },
  "x-codeSamples": [
    {
      "lang": "curl",
      "label": "curl",
      "source": "curl -s -X DELETE -H \"Authorization: Bearer $CS_API_KEY\" 'https://china-snapshot.com/api/alerts?id=<alert id>'"
    }
  ]
}
```
