---
title: "Delete multiple files in a single request"
method: POST
path: "/api/v3/files/bulk-delete"
tags: ["Files"]
---

# Delete multiple files in a single request

`POST /api/v3/files/bulk-delete`

Permanently delete multiple files in a single request.

**Authorization (applied to every file in the request):**
- Visibility: file must be accessible to the user → 404 if any are not found
- Delete permission: user must have the right to delete each file → 403 if any are denied
- Workspace type: workspace must not be sync-managed → 400 if any are synced

**Public datasets:** instance admins (`MANAGE_PUBLIC_DATASET`) can bulk-delete public-dataset files. A workspace-scoped API key with read-only access to a public dataset can see the file (so it counts toward visibility) but gets 403 on the delete-permission check — public datasets are read-only for opted-in companies.

Returns 204 (No Content) on success.

## Request body

- FileBulkDeleteRequestSerializerV3 — Request serializer for V3 bulk file deletion.
  - `ids` integer[], required

## Response `204`

Files deleted successfully (no content returned)

## Other responses

- `400` — Invalid request or synced workspace constraint
- `401` — Authentication credentials were not provided
- `403` — User does not have permission to delete one or more files
- `404` — One or more files not found or not accessible

---

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