# Memory Entries Commands

> See [Memory Entries module docs](../../modules/memories) for permissions and data model.

# Memory Entries Commands

See [Memory Entries module docs](../../modules/memories) for permissions and data model.

### `soat list-memory-entries`

List memory entries

- Method: `GET`
- Path: `/api/v1/memory-entries`

#### Usage

```bash
soat list-memory-entries --memory-id <string>
```

#### Options

##### `--memory-id`

Memory container to list entries from (mem_...)

- Source: `query`
- Required: yes
- Type: `string`
- Example: `mem_V1StGXR8Z5jdHi6B`

##### `--limit`

Maximum number of results to return

- Source: `query`
- Required: no
- Type: `integer`
- Default: `50`

##### `--offset`

Number of results to skip

- Source: `query`
- Required: no
- Type: `integer`
- Default: `0`

##### `--include-invalidated`

Include invalidated (superseded) entries. They are excluded by default; set this to audit the supersede history.

- Source: `query`
- Required: no
- Type: `boolean`
- Default: `false`

### `soat create-memory-entry`

Create a memory entry

- Method: `POST`
- Path: `/api/v1/memory-entries`

#### Usage

```bash
soat create-memory-entry --memory-id <string> --content <string>
```

#### Options

##### `--memory-id`

Memory container to add the entry to (mem_...)

- Source: `body`
- Required: yes
- Type: `string`
- Example: `mem_V1StGXR8Z5jdHi6B`

##### `--content`

The text content of the memory entry

- Source: `body`
- Required: yes
- Type: `string`
- Example: `The customer prefers email communication over phone calls`

##### `--source-type`

How this entry was created

- Source: `body`
- Required: no
- Type: `enum("manual", "agent", "extraction", "orchestration")`
- Default: `manual`
- Example: `manual`

##### `--tags`

Per-entry tag strings, used for entry-granularity filtering in search-knowledge (memory_tags)

- Source: `body`
- Required: no
- Type: `array<string>`
- Example: `["role:traffic-manager","source:rejected_approval"]`

##### `--metadata`

Arbitrary structured metadata attached to the entry

- Source: `body`
- Required: no
- Type: `object<string, unknown>`
- Example: `\{"evidence":"high","quarter":"Q3"\}`

##### `--duplicate-threshold`

Cosine similarity score at or above which the incoming content is considered a duplicate of an existing entry and skipped (default 0.95). Below it the entry is always created.

- Source: `body`
- Required: no
- Type: `number`
- Default: `0.95`

### `soat get-memory-entry`

Get a memory entry

- Method: `GET`
- Path: `/api/v1/memory-entries/{entry_id}`

#### Usage

```bash
soat get-memory-entry --entry-id <string>
```

#### Options

##### `--entry-id`

—

- Source: `path`
- Required: yes
- Type: `string`
- Example: `mem_entry_V1StGXR8Z5jdHi6B`

### `soat update-memory-entry`

Update a memory entry

- Method: `PUT`
- Path: `/api/v1/memory-entries/{entry_id}`

#### Usage

```bash
soat update-memory-entry --entry-id <string>
```

#### Options

##### `--entry-id`

—

- Source: `path`
- Required: yes
- Type: `string`
- Example: `mem_entry_V1StGXR8Z5jdHi6B`

##### `--content`

Updated text content

- Source: `body`
- Required: no
- Type: `string`

##### `--tags`

Replaces the entry's tags. Pass null or an empty array to clear.

- Source: `body`
- Required: no
- Type: `array<string>`
- Example: `["role:traffic-manager"]`

##### `--metadata`

Replaces the entry's metadata. Pass null to clear.

- Source: `body`
- Required: no
- Type: `object<string, unknown>`

### `soat delete-memory-entry`

Delete a memory entry

- Method: `DELETE`
- Path: `/api/v1/memory-entries/{entry_id}`

#### Usage

```bash
soat delete-memory-entry --entry-id <string>
```

#### Options

##### `--entry-id`

—

- Source: `path`
- Required: yes
- Type: `string`
- Example: `mem_entry_V1StGXR8Z5jdHi6B`
