---
title: "List memories"
method: GET
path: "/memories"
tags: ["Memories"]
---

# List memories

`GET /memories`

## Request

- Base URL: `https://api.mymemory.dev/v1`
- URL: `https://api.mymemory.dev/v1/memories`
- Auth: HTTP bearer

Your memories, newest first. With an API key this includes memories in spaces; pass `spaceId` to list one space, or `scope=home` for only the memories in no space (what the web app's home grid shows).

## Query parameters

- `limit` integer
- `cursor` string
- `start` integer
- `spaceId` string
- `scope` 'all' | 'home'
- `tags` string
- `tagMode` 'and' | 'or'

## Response `200`

A page of memories

- MemoryList
  - `items` Memory[], required
    - `id` string: The memory's ID (same as `uuid`).
    - `uuid` string: The memory's ID. Pass it to `/memories/{id}`.
    - `url` string, nullable: Source URL, or the memory's page on mymemory.dev for notes.
    - `type` string: note, page, tweet, document, video, audio, notion, reddit, instagram, …
    - `title` string, nullable: Title (generated for notes).
    - `description` string, nullable: Short summary, written in the content's language.
    - `content` string, nullable: The saved text. Lists return at most the first 2,000 characters.
    - `ogImage` string, nullable: Preview image URL.
    - `tags` string[]
    - `metadata` object, nullable
    - `processingStage` string: `ready` once the memory is searchable; earlier stages while it's being processed.
    - `isSuccessfullyProcessed` boolean, nullable
    - `errorMessage` string, nullable: Why processing failed, if it did.
    - `createdAt` string, date-time: When it was saved.
    - `updatedAt` string, date-time: Last change.
    - `eventAt` string, date-time, nullable: When the content happened, if you set it.
    - `lastAccessedAt` string, date-time, nullable: Last time it was opened or returned near the top of a search.
    - `userId` integer
    - `contentHash` string, nullable: Hash of the content, used to detect duplicates.
  - `total` integer, required: How many memories match, across all pages.
  - `nextCursor` string: Pass as `cursor` to get the next page. Absent on the last page.

## Other responses

- `400`: Invalid request
- `401`: Missing or invalid API key
- `403`: Not allowed: someone else's memory or space, or a plan limit reached (`Memory limit reached`, `Space limit reached`)
- `404`: Not found, or it isn't yours
- `429`: Too many requests. For a rate limit (`error`: `rate_limited`), wait the seconds in the `Retry-After` header; for an AI budget error, until the budget renews.

---

[API](https://skmtc.dev/mymemory/apis/mymemory-api.md) · [All operations](https://skmtc.dev/mymemory/apis/mymemory-api/llms.txt) · [OpenAPI document](https://skmtc.dev/mymemory/apis/mymemory-api/revisions/a6cdb469f9e8?raw)
