> ## 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.

# Move a library to trash

> Moves the library and all its contents into the trash. The library becomes inaccessible by default and can be fully restored within 90 days by calling `restore_library`. After 90 days the library's assets are gradually purged in the background; until the library row itself is removed, restore still works but recovers only the assets not yet purged.

Idempotent — a second call on an already-trashed library no-ops. To trash individual assets without trashing the whole library, use `trash_assets` instead.



## OpenAPI

````yaml https://api.gumnut.ai/openapi.json post /api/libraries/{library_id}/trash
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/libraries/{library_id}/trash:
    post:
      tags:
        - libraries
      summary: Move a library to trash
      description: >-
        Moves the library and all its contents into the trash. The library
        becomes inaccessible by default and can be fully restored within 90 days
        by calling `restore_library`. After 90 days the library's assets are
        gradually purged in the background; until the library row itself is
        removed, restore still works but recovers only the assets not yet
        purged.


        Idempotent — a second call on an already-trashed library no-ops. To
        trash individual assets without trashing the whole library, use
        `trash_assets` instead.
      operationId: trash_library
      parameters:
        - name: library_id
          in: path
          required: true
          schema:
            type: string
            description: Library ID (with `lib_` prefix) of the library to trash.
            title: Library Id
          description: Library ID (with `lib_` prefix) of the library to trash.
      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

````