---
title: "Create or update a memory entry (upsert by scope, type, label)"
method: PUT
path: "/api/v1/memories"
tags: ["memory"]
---

# Create or update a memory entry (upsert by scope, type, label)

`PUT /api/v1/memories`

## Request body

- MemoryUpsertRequestDTO
  - `content` string, required — Full content of the memory entry
  - `description` string, required — Short summary shown in the memory index
  - `label` string, required — Slug label, e.g. 'crm-field-schema'. Unique per (scope, type).
  - `scope` 'user' | 'org', required — Whether the entry is org-shared or personal
  - `type` 'instruction' | 'schema' | 'skill' | 'memory', required — Kind of memory

## Response `200`

- MemoryEntryResponseDTO
  - `content` string, required — Full content of the memory entry
  - `description` string, required — Short summary shown in the memory index
  - `id` string, uuid, required — Unique identifier of the memory entry
  - `label` string, required — Slug label of the memory entry
  - `scope` 'user' | 'org', required — Whether the entry is org-shared or personal
  - `type` 'instruction' | 'schema' | 'skill' | 'memory', required — Kind of memory

---

[API](https://skmtc.net/wejam/apis/jam.md) · [All operations](https://skmtc.net/wejam/apis/jam/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/wejam/jam/revisions/bd5a5f406bca/schema)
