---
title: "Start chunk deletion"
method: POST
path: "/local-file-groups/{id}/chunk-deletions"
tags: ["local-file-groups"]
---

# Start chunk deletion

`POST /local-file-groups/{id}/chunk-deletions`

Initiates an asynchronous job that deletes chunk rows whose text contains any of the given substrings (subtractive delete), without recomputing embeddings. The source group itself is preserved and remains searchable during deletion.

The response returns a chunk deletion job id; poll GET /local-file-groups/{id}/chunk-deletions/{chunk\_deletion\_id} to check the job status.

Required roles: All

## Path parameters

- `id` string, required

## Request body

- StartChunkDeletionRequest
  - `text_contains` string[], required — OR list of substrings. Chunk rows whose text (raw JSONL line) contains any of these substrings (literal match) are deleted. Raw SQL is not accepted.

## Response `200`

Chunk deletion job successfully started

- StartChunkDeletionResponse
  - `source_group_id` string, required — The ID of the source group whose chunks are being deleted
  - `id` string, required — The id of the started chunk deletion job, used to poll its status

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `404` — Not Found
- `500` — Internal Server Error

---

[API](https://skmtc.net/qlonolink/apis/qaip-apis.md) · [All operations](https://skmtc.net/qlonolink/apis/qaip-apis/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/qlonolink/qaip-apis/versions/f5f5994dfe05/schema)
