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

# Permanently delete an asset

> Deletes the asset entirely — the database record, the stored file, and all associated data (faces, album links, etc.). **Irreversible.** Prefer `trash_assets` for the user's standard delete action so accidents can be recovered.

**Use `remove_assets_from_album` instead** when the user only wants to remove an asset from a specific album but keep the file in their library. Use `delete_album` to remove an album without deleting its assets.



## OpenAPI

````yaml https://api.gumnut.ai/openapi.json delete /api/assets/{asset_id}
openapi: 3.1.0
info:
  title: Gumnut API
  description: API for using Gumnut to manage photos and videos
  version: 0.1.0
servers: []
security: []
paths:
  /api/assets/{asset_id}:
    delete:
      tags:
        - assets
      summary: Permanently delete an asset
      description: >-
        Deletes the asset entirely — the database record, the stored file, and
        all associated data (faces, album links, etc.). **Irreversible.** Prefer
        `trash_assets` for the user's standard delete action so accidents can be
        recovered.


        **Use `remove_assets_from_album` instead** when the user only wants to
        remove an asset from a specific album but keep the file in their
        library. Use `delete_album` to remove an album without deleting its
        assets.
      operationId: delete_asset
      parameters:
        - name: asset_id
          in: path
          required: true
          schema:
            type: string
            description: >-
              Asset ID (with `asset_` prefix) of the asset to permanently
              delete.
            title: Asset Id
          description: Asset ID (with `asset_` prefix) of the asset to permanently delete.
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeletionResponse'
        '404':
          description: Not found
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    DeletionResponse:
      properties: {}
      type: object
      title: DeletionResponse
      description: >-
        Acknowledgment body returned by destructive endpoints (delete / trash /
        restore /

        permanently delete / remove-from-album / empty-trash).


        Carries no fields — the HTTP 200 + empty JSON object is itself the
        success

        signal. Exists so MCP tools generated from these endpoints have a real

        ``outputSchema`` (rather than the null schema FastMCP emits for 204

        responses), which ChatGPT's MCP submission tooling requires.
      x-stainless-empty-object: true
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
        input:
          title: Input
        ctx:
          type: object
          title: Context
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError

````