> ## Documentation Index
> Fetch the complete documentation index at: https://docs.memoclaw.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Delete Memories

> Soft-delete one or many memories by ID.

<Snippet file="snippets/wallet-auth-callout.mdx" />

**Price:** FREE

## Path Parameters

<ParamField path="id" type="string" required>
  UUID of the memory to delete.
</ParamField>

## Response (200)

<ResponseField name="deleted" type="boolean">
  Always `true`.
</ResponseField>

<ResponseField name="id" type="string">
  The deleted memory's UUID.
</ResponseField>

<Info>
  Deletion is soft — it sets `deleted_at` on the record. Deleted memories are excluded from all queries (recall, list). This allows future recovery if needed.
</Info>

## Errors

| Status | Description                                                          |
| ------ | -------------------------------------------------------------------- |
| 404    | Memory not found (or already deleted, or belongs to another wallet). |
| 409    | Memory is immutable and cannot be deleted.                           |
| 422    | Invalid UUID format.                                                 |

## Example

<CodeGroup>
  ```bash curl theme={null}
  curl -X DELETE https://api.memoclaw.com/v1/memories/550e8400-e29b-41d4-a716-446655440000
  ```

  ```javascript JavaScript theme={null}
  const response = await fetch(
    "https://api.memoclaw.com/v1/memories/550e8400-e29b-41d4-a716-446655440000",
    { method: "DELETE" }
  );

  const data = await response.json();
  ```

  ```python Python theme={null}
  from memoclaw import MemoClaw

  client = MemoClaw()
  result = client.delete("550e8400-e29b-41d4-a716-446655440000")
  ```
</CodeGroup>

```json Response theme={null}
{
  "deleted": true,
  "id": "550e8400-e29b-41d4-a716-446655440000"
}
```

***

## Bulk Delete — DELETE /v1/memories

Delete multiple memories in a single request. Also free.

**Price:** FREE

### Request Body

<ParamField body="ids" type="string[]" required>
  Array of memory UUIDs to delete (max 100).
</ParamField>

### Response (200)

<ResponseField name="deleted" type="number">
  Number of memories successfully deleted.
</ResponseField>

<ResponseField name="errors" type="array">
  Array of IDs that could not be deleted (not found, immutable, or wrong wallet), if any.
</ResponseField>

### Example

<CodeGroup>
  ```bash curl theme={null}
  curl -X DELETE https://api.memoclaw.com/v1/memories \
    -H "Content-Type: application/json" \
    -H "x-wallet-auth: 0xYourWallet:1699900000:0xSignature..." \
    -d '{"ids": ["id-1", "id-2", "id-3"]}'
  ```

  ```python Python theme={null}
  from memoclaw import MemoClaw

  client = MemoClaw()
  # Delete multiple memories at once
  result = client.bulk_delete(["id-1", "id-2", "id-3"])
  print(f"Deleted {result.deleted} memories")
  ```

  ```typescript TypeScript theme={null}

  import { MemoClawClient } from "memoclaw";

  const client = new MemoClawClient();
  const result = await client.bulkDelete(["id-1", "id-2", "id-3"]);
  console.log(`Deleted ${result.deleted} memories`);
  ```
</CodeGroup>

```json Response theme={null}
{
  "deleted": 3,
  "errors": []
}
```

### Errors

| Status | Description                                    |
| ------ | ---------------------------------------------- |
| 422    | `ids` is missing, empty, or exceeds 100 items. |
