---
title: "Delete Experiment Group"
method: DELETE
path: "/api/v1/geo/experiment-groups/{group_id}"
tags: ["geo-monitoring", "geo-experiment-groups"]
---

# Delete Experiment Group

`DELETE /api/v1/geo/experiment-groups/{group_id}`

Delete a group; its experiments are never deleted, only unassigned.

The unassign is mandatory rather than optional: the membership FK is
``ON DELETE RESTRICT``, so the delete would fail while members remain. Both
statements run in the request's single transaction — ``base_crud`` only
flushes, and ``get_session_based_on_request_type`` wraps the request in
``managed_session``, which commits once on success and rolls back on any
exception — so this is atomic without explicit transaction management.

## Path parameters

- `group_id` string, uuid, required

## Response `200`

Successful Response

- object

## Other responses

- `404` — Experiment group not found
- `422` — Validation Error

## Changes

> 19 revisions in range; 1 not diffed.

- **2026-09-03** `d65b8fefae34` — 2 info
  - added the optional property `detail/items/ctx` to the response with the `422` status
  - added the optional property `detail/items/input` to the response with the `422` status

[Change history](https://skmtc.dev/getanana/apis/cleon-api/changes/api/v1/geo/experiment-groups/:group_id/delete.md)

---

[API](https://skmtc.dev/getanana/apis/cleon-api.md) · [All operations](https://skmtc.dev/getanana/apis/cleon-api/llms.txt) · [OpenAPI document](https://skmtc.dev/getanana/apis/cleon-api/revisions/34f2d9e81b0b?raw)
