---
title: "Move SLOs between folders"
method: POST
path: "/api/{org_id}/slos/move"
tags: ["SLOs"]
---

# Move SLOs between folders

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

Relocates one or more SLOs into another folder. SLOs share the alert folder namespace, so the destination is an alert folder. Requires write access to each SLO being moved, and to the destination folder. A move never changes an SLO's definition and never restarts its measurement.

## Path parameters

- `org_id` string, required

## Request body

- object
  - `dst_folder_id` string, required: Destination folder. An **alert** folder — SLOs share the alert folder namespace rather than having a type of their own.
  - `slo_ids` string[], required: The SLOs to relocate.

## Response `200`

Moved

- 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`: Not Found
- `409`: Name already used in the destination

---

[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)
