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

# Delete memories

> Delete memories by ID or by filter conditions.

Two mutually exclusive modes:

* **Single delete**: provide `memory_id` only (no other fields allowed)
* **Batch delete**: provide at least one of `user_id` / `group_id` (optionally with `session_id`, `sender_id`)

Returns 204 No Content on success.


## OpenAPI

````yaml /api-reference/openapi.json post /api/v1/memories/delete
openapi: 3.1.0
info:
  title: EverOS API
  description: >-
    Enterprise-grade intelligent memory system for AI agents. Extracts,
    structures, and retrieves information from conversations.
  version: 1.0.0
  contact:
    name: EverOS Team
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0
servers:
  - url: https://api.evermind.ai
    description: Production
security:
  - BearerAuth: []
tags:
  - name: Memories
    description: Memory ingestion, retrieval, search, and deletion
  - name: Groups
    description: Group resource CRUD operations
  - name: Senders
    description: Sender resource CRUD operations
  - name: Settings
    description: Global settings management
  - name: Tasks
    description: Async task status tracking
  - name: Storage
    description: Multimodal content storage (pre-signed upload)
paths:
  /api/v1/memories/delete:
    post:
      tags:
        - memories
      summary: Delete memories
      description: Delete memories by ID or by filter conditions.
      operationId: deleteMemories
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DeleteMemoriesRequest'
            examples:
              singleDeleteById:
                summary: Single delete by memory_id
                description: >-
                  Delete a single MemCell by its ID. No filter fields are
                  allowed in this mode.
                value:
                  memory_id: 67c8a1b2f3e4d5c6a7b8c9d0
              batchDeleteByUser:
                summary: Batch delete by user_id
                description: Delete all memories for a specific user.
                value:
                  user_id: user_123
              batchDeleteByFilters:
                summary: Batch delete by multiple filters
                description: >-
                  Delete memories matching user_id + group_id + session_id +
                  sender_id.
                value:
                  user_id: user_123
                  group_id: group_456
                  session_id: sess_abc
                  sender_id: sender_001
      responses:
        '204':
          description: Memories deleted successfully (no content)
        '422':
          description: >-
            Validation error (invalid parameter values, business rule
            violations)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                mode_conflict:
                  summary: memory_id with filter fields
                  value:
                    code: InvalidParameter
                    message: >-
                      When memory_id is provided, no other fields (user_id,
                      group_id, session_id, sender_id) are allowed
                    request_id: unknown
                    timestamp: '2026-03-24T00:00:00+00:00'
                    path: /api/v1/memories/delete
                missing_scope:
                  summary: Missing required scope
                  value:
                    code: InvalidParameter
                    message: >-
                      Either memory_id must be provided, or at least one of
                      user_id / group_id is required
                    request_id: unknown
                    timestamp: '2026-03-24T00:00:00+00:00'
                    path: /api/v1/memories/delete
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      security:
        - BearerAuth: []
      x-codeSamples:
        - lang: Python
          source: |-
            from everos_cloud import EverOS

            client = EverOS()
            memories = client.v1.memories

            # Delete by memory_id
            memories.delete(memory_id="<string>")

            # Or delete all by user_id
            memories.delete(user_id="<string>")
        - lang: cURL
          source: |-
            curl --request POST \
              --url 'https://api.evermind.ai/api/v1/memories/delete' \
              --header 'Authorization: Bearer <api_key>' \
              --header 'Content-Type: application/json' \
              --data '{}'
components:
  schemas:
    DeleteMemoriesRequest:
      type: object
      properties:
        memory_id:
          type: string
          nullable: true
          default: null
          description: >-
            MemCell ID for single delete. When provided, all filter fields
            (user_id, group_id, session_id, sender_id) must be omitted.
          example: 67c8a1b2f3e4d5c6a7b8c9d0
        user_id:
          type: string
          nullable: true
          default: __all__
          description: >-
            User ID scope for batch delete. Three-state: `"__all__"` (skip) |
            `null`/`""` (match empty) | value (exact match).
          example: user_123
        group_id:
          type: string
          nullable: true
          default: __all__
          description: >-
            Group ID scope for batch delete. Three-state: `"__all__"` (skip) |
            `null`/`""` (match empty) | value (exact match).
          example: group_456
        session_id:
          type: string
          nullable: true
          default: __all__
          description: >-
            Session filter (batch delete only). Three-state: `"__all__"` (skip)
            | `null`/`""` (match empty) | value (exact match).
          example: sess_abc
        sender_id:
          type: string
          nullable: true
          default: __all__
          description: >-
            Sender filter, matches participants array (batch delete only).
            Three-state: `"__all__"` (skip) | `null`/`""` (match empty) | value
            (exact match).
          example: sender_001
      additionalProperties: false
      x-validation-rules:
        - >-
          When memory_id is provided, all filter fields (user_id, group_id,
          session_id, sender_id) must remain at their default value '__all__'.
        - >-
          When memory_id is not provided, at least one of user_id or group_id
          must be set to a value other than '__all__'.
    ErrorResponse:
      type: object
      required:
        - code
        - message
        - timestamp
        - path
      properties:
        code:
          type: string
          description: Error code
          examples:
            - InvalidParameter
            - NotFound
            - InternalError
        message:
          type: string
          description: Error message
        request_id:
          type: string
          description: Request ID
          default: unknown
        timestamp:
          type: string
          description: ISO 8601 timestamp
        path:
          type: string
          description: Request path
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      x-default: Bearer <api_key>
      description: >-
        Bearer authentication header of the form Bearer 'api_key', obtain your
        API key from [everos.evermind.ai](https://everos.evermind.ai).

````