---
title: "Remove an attachment from an item"
method: DELETE
path: "/projects/{projectId}/items/{itemId}/attachments/{attachmentId}"
tags: ["Items"]
---

# Remove an attachment from an item

`DELETE /projects/{projectId}/items/{itemId}/attachments/{attachmentId}`

## Request

- Base URL: `https://app.ketryx.com/api/v1`
- URL: `https://app.ketryx.com/api/v1/projects/{projectId}/items/{itemId}/attachments/{attachmentId}`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/ketryx/apis/ketryx-api/docs/projects/:projectId/items/:itemId/attachments/:attachmentId/delete.ts> (a function with typed inputs; its response is checked against the schema)

Creates a new item record without the attachment; earlier records keep it. Approvals follow the project's invalidation settings. Synced attachments and images embedded in rich text cannot be removed. Requires the GET_ITEMS and WRITE_ITEMS capabilities.

## Response `200`

Attachment removed

- object
  - `itemRecordId` string, required: Ketryx ID of the newly created item record

## Other responses

- `400`: The request is not valid.
- `401`: The requester is not authenticated.
- `403`: The requester is unauthorized.
- `404`: The resource was not found.
- `409`: The item changed while this request ran, or another request addressing it by its Ketryx ID is writing it; retry

---

[API](https://skmtc.dev/ketryx/apis/ketryx-api.md) - [All operations](https://skmtc.dev/ketryx/apis/ketryx-api/llms.txt) - [OpenAPI document](https://skmtc.dev/ketryx/apis/ketryx-api/revisions/a2a484dc35ca?raw)
