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

# Resolve Memory Conflict

> Apply a resolution strategy to a memory conflict

```
POST /openapi/memorylake/api/v2/projects/{id}/memories/conflicts/{conflictId}/resolve
```

Records the user's decision on a conflict. Depending on the strategy, one or more of the conflicting memories may be forgotten — those IDs come back in `forgotten_memory_ids` so your UI can update the corresponding memory rows.

<Note>
  **Permission required:** [`project:mem_conflict_resolve`](/features/team-collaboration/permission-reference#resolve-conflicting-facts) · `instance`
</Note>

### Path Parameters

<ParamField path="id" type="string" required>
  Project ID
</ParamField>

<ParamField path="conflictId" type="string" required>
  Conflict ID
</ParamField>

### Request Body

<ParamField body="strategy" type="string" required>
  Resolution strategy. Each strategy fits a particular conflict shape:

  | Strategy         | What it does                                                                                                       | Memories forgotten      |
  | ---------------- | ------------------------------------------------------------------------------------------------------------------ | ----------------------- |
  | `keep_memory`    | Keep one memory from the conflict set; drop the rest. **Requires** `keep_memory_id`. Typical for memory-vs-memory. | The memories not chosen |
  | `trust_memory`   | Keep the memory and treat the file-side disagreement as resolved. Typical for memory-vs-document.                  | None                    |
  | `trust_document` | Drop the conflicting memory in favor of the document. Typical for memory-vs-document.                              | The conflicting memory  |
  | `dismiss`        | Mark as resolved without changing any memories — use when the conflict is a false alarm.                           | None                    |
</ParamField>

<ParamField body="keep_memory_id" type="string">
  The `memory_id` to keep. Required when `strategy` is `keep_memory`; ignored otherwise.
</ParamField>

<RequestExample>
  ```bash Keep a specific memory theme={null}
  curl -X POST 'https://app.memorylake.ai/openapi/memorylake/api/v2/projects/proj-a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6/memories/conflicts/conf-abc123/resolve' \
    -H 'Authorization: Bearer sk_xxxxxx' \
    -H 'Content-Type: application/json' \
    -d '{
      "strategy": "keep_memory",
      "keep_memory_id": "mem-002"
    }'
  ```

  ```bash Trust the memory theme={null}
  curl -X POST 'https://app.memorylake.ai/openapi/memorylake/api/v2/projects/proj-a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6/memories/conflicts/conf-abc123/resolve' \
    -H 'Authorization: Bearer sk_xxxxxx' \
    -H 'Content-Type: application/json' \
    -d '{
      "strategy": "trust_memory"
    }'
  ```

  ```bash Trust the document theme={null}
  curl -X POST 'https://app.memorylake.ai/openapi/memorylake/api/v2/projects/proj-a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6/memories/conflicts/conf-abc123/resolve' \
    -H 'Authorization: Bearer sk_xxxxxx' \
    -H 'Content-Type: application/json' \
    -d '{
      "strategy": "trust_document"
    }'
  ```

  ```bash Dismiss theme={null}
  curl -X POST 'https://app.memorylake.ai/openapi/memorylake/api/v2/projects/proj-a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6/memories/conflicts/conf-abc123/resolve' \
    -H 'Authorization: Bearer sk_xxxxxx' \
    -H 'Content-Type: application/json' \
    -d '{
      "strategy": "dismiss"
    }'
  ```
</RequestExample>

### Response

<ResponseField name="data" type="object">
  <Expandable title="Resolution result">
    <ResponseField name="id" type="string">Conflict ID</ResponseField>
    <ResponseField name="resolved" type="boolean">Whether the conflict is now marked resolved</ResponseField>
    <ResponseField name="strategy" type="string">Strategy that was applied</ResponseField>
    <ResponseField name="resolve_id" type="string">Audit record ID for this resolution</ResponseField>
    <ResponseField name="forgotten_memory_ids" type="array">Memories forgotten as part of resolution (may be empty)</ResponseField>
  </Expandable>
</ResponseField>

<ResponseExample>
  ```json Success (200) theme={null}
  {
    "success": true,
    "data": {
      "id": "conf-abc123",
      "resolved": true,
      "strategy": "keep_memory",
      "resolve_id": "resv-0001",
      "forgotten_memory_ids": ["mem-001"]
    }
  }
  ```
</ResponseExample>
