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

# Delete a person

> Deletes the person record; the faces that were attached to this person are not deleted — they become unassigned and will be re-clustered on the next clustering pass.

Use `update_face` with `person_id=null` to detach a specific face without deleting the whole person. Use `delete_face` to remove a face detection entirely.

If a concurrent change to the person's faces collides with the deletion, it returns 409 and nothing is deleted; retry the request unchanged.



## OpenAPI

````yaml https://api.gumnut.ai/openapi.json delete /api/people/{person_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/people/{person_id}:
    delete:
      tags:
        - people
      summary: Delete a person
      description: >-
        Deletes the person record; the faces that were attached to this person
        are not deleted — they become unassigned and will be re-clustered on the
        next clustering pass.


        Use `update_face` with `person_id=null` to detach a specific face
        without deleting the whole person. Use `delete_face` to remove a face
        detection entirely.


        If a concurrent change to the person's faces collides with the deletion,
        it returns 409 and nothing is deleted; retry the request unchanged.
      operationId: delete_person
      parameters:
        - name: person_id
          in: path
          required: true
          schema:
            type: string
            description: Person ID (with `person_` prefix) of the person to delete.
            title: Person Id
          description: Person ID (with `person_` prefix) of the person to delete.
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeletionResponse'
        '404':
          description: Not found
        '409':
          description: A concurrent change to the person's faces collided with the deletion
        '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

````