---
title: "Bulk Delete Projects"
method: POST
path: "/api/v1/admin/projects/bulk-delete"
tags: ["admin-projects"]
---

# Bulk Delete Projects

`POST /api/v1/admin/projects/bulk-delete`

Permanently delete several projects and all their associated data.

Partial success is expected and reported in the body, not via the status
code: each project is deleted in its own transaction, so a failure on one
does not roll back the rest. A 200 does NOT mean every project was
deleted — callers must inspect ``failed``.

Rate limited deliberately: this endpoint has no eligibility guard (it will
delete a paid, in-production project) and there is no soft-delete or
restore path, so the limit is the remaining blast-radius control.

## Request body

- AdminProjectBulkDeleteRequest — Request to permanently delete several projects in one call. Capped at the admin projects table page size (50). Selection in the UI is scoped to the current page, so a larger batch cannot be produced legitimately — and each project costs ~20 DB round trips plus one R2 delete per stored file, so an unbounded batch risks exceeding the request timeout.
  - `project_ids` string[], required — Projects to permanently delete. Duplicates are ignored.

## Response `200`

Successful Response

- AdminProjectBulkDeleteResponse — Outcome of a bulk delete. Bulk delete is partial-success by design: each project is deleted in its own transaction, so one failure does not roll back the others. Callers MUST check ``failed`` — a 200 does not mean everything was deleted.
  - `deleted_count` integer, required — Number of projects actually deleted
  - `deleted_ids` string[]
  - `failed` AdminProjectBulkDeleteFailure[]
    - `project_id` string, uuid, required
    - `error` string, required — Human-readable reason the delete failed

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.dev/prototyping/apis/prototyping-io-api.md) · [All operations](https://skmtc.dev/prototyping/apis/prototyping-io-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/prototyping/prototyping-io-api/revisions/f4a0079fbb57/schema)
