# Delete activity group

`DELETE /api/configuration/activity-groups/{all}`

- **Products:** Operator (`FOH`)
- **Features:** Front of House Generic Access (`FOHGENERIC`)

HTML version: [Delete activity group](https://support.gladstonesoftware.cloud/reference/configuration/delete-activity-group)

## Overview

Removes an activity group permanently. This is a hard delete — the group is removed outright, and there is no active or deleted flag on an activity group, so there is no deactivate alternative and no way to recover the record other than creating it again with [Create activity group](create-activity-group.md).

The endpoint does not check for dependants up front: if any activity, or any price level description override, still points at the group, the delete is refused and you get `409 Conflict` with `You must delete all activities referencing this activity group before you can delete the activity group itself`. Note that the message names activities regardless of what actually holds the reference, so if you have already cleared every activity and still see the `409`, look for price level description overrides against the group.

To clear the way, reassign each activity to another group with `PUT /api/configuration/activities/{id}` or delete it, then retry.

A successful call returns `204 No Content` with an empty body. Repeating the call returns `404` with an empty body, so the operation is not idempotent from the caller's point of view — a `404` tells you either that the group never existed or that it has already gone.

## Endpoint

`DELETE {base_url}/api/configuration/activity-groups/{all}`

`{base_url}` is the environment URL issued to your integration. See [Authenticating with Gladstone APIs](../../guides/authenticating-with-gladstone-apis.md).

## Path parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `activityGroupId` | string | Yes | The id of the group to delete, as returned in `[].id` by [List activity groups](get-all-activity-groups.md). Up to 15 characters; either the value you supplied when the group was created or one the platform generated. Matching is on the stored id — there is no lookup by description. |

## Sample request

```bash title="cURL"
curl -X DELETE '{base_url}/api/configuration/activity-groups/{all}' \
  -H 'Authorization: Bearer {accessToken}' \
  -H 'X-Use-SSO: true'
```

## Errors

| Status | Meaning | When |
|--------|---------|------|
| `400` | Bad request | `activityGroupId` is empty — `ActivityGroupId must be specified`. A request with no id segment at all does not reach this endpoint, so you will rarely see this. |
| `404` | Not found | No activity group holds that id — it never existed, or an earlier call already deleted it. The body is empty. |
| `409` | Conflict | Something still references the group, so the delete is refused — `You must delete all activities referencing this activity group before you can delete the activity group itself`. Reassign or delete the referencing activities, and any price level description overrides for the group, then retry. Nothing is deleted. |
| `500` | Internal server error | The delete failed for any other reason — a conflict when the group is modified between being read and being removed, or any other unexpected server-side failure. Nothing is deleted, and the request is safe to retry. |
