---
title: "Move alerts between folders"
method: PATCH
path: "/api/v2/{org_id}/alerts/move"
tags: ["Alerts"]
---

# Move alerts between folders

`PATCH /api/v2/{org_id}/alerts/move`

## 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/move`
- Auth: API key in header `Authorization`
- TypeScript: <https://skmtc.dev/openobserve/apis/openobserve-api-http/docs/api/v2/:org_id/alerts/move/patch.ts> (a function with typed inputs; its response is checked against the schema)

Moves one or more alerts from their current folder to a specified destination folder. Helps organize alerts into logical groups and manage access permissions when using role-based access control.

## Path parameters

- `org_id` string, required

## Query parameters

- `folder` string

## Request body

- object: HTTP request body for `MoveAlerts` endpoint.
  - `alert_ids` string[], required: IDs of the alerts to move.
  - `anomaly_config_ids` string[]: IDs of anomaly detection configs to move. Defaults to empty when not provided. Callers should always supply this to avoid per-ID DB lookups.
  - `dst_folder_id` string, required: Indicates the folder to which alerts should be moved.

## Response `200`

Success

- HttpResponse: HTTP response code 200 is success code 400 is error code 404 is not found code 500 is internal server error code 503 is service unavailable code >= 1000 is custom error code message is the message or error message
  - `code` integer, required
  - `error_detail` string, nullable
  - `hint` string, nullable: One-line guidance on how to fix the error (agent self-correction, D4).
  - `id` string, nullable
  - `message` string, required
  - `name` string, nullable
  - `suggestions` string[], nullable: Closest valid alternatives for a mistyped field/function name.
  - `trace_id` string, nullable
  - `warnings` string[], nullable: Problems with a request that succeeded anyway. Distinct from `hint`, which explains a failure: these accompany a 200, and the caller is entitled to have meant it.

## Other responses

- `403`: Forbidden
- `404`: NotFound
- `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)
