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

# List memories

> List memories for the authenticated Replay account.

`GET /v1/memories` returns memories owned by the account attached to your API key.

## Endpoint

```http theme={null}
GET /v1/memories
```

## Authentication

Required. Send your API key with `Authorization: Bearer`.

```http theme={null}
Authorization: Bearer rpa_...
```

## Request

This endpoint does not accept query parameters or a request body.

## Example

```bash theme={null}
curl --request GET \
  --url "$REPLAY_PUBLIC_API_URL/v1/memories" \
  --header "Authorization: Bearer $REPLAY_API_KEY"
```

## Response

Returns an array of [memory objects](/concepts/memories). Media URL fields are temporary signed URLs and expire 1 hour after the response is created. List responses keep `transcript` as `null`; fetch one memory to read transcript segments.

```json theme={null}
[
  {
    "id": "mem_01JZ8W2X4M9QK7F3T6V1N0P8RA",
    "name": "Product planning walk",
    "started_at": "2026-06-01T16:02:11Z",
    "ended_at": "2026-06-01T16:18:42Z",
    "is_processing": false,
    "user_id": "user_8ad5a3d1-7f24-4fc4-bf76-07fef4f8a92d",
    "duration_seconds": 991,
    "audio_url": "https://gpngkwsgfwohtyenjaks.supabase.co/storage/v1/object/sign/memories/mem_01JZ8W2X4M9QK7F3T6V1N0P8RA/audio.m4a?token=eyJ...",
    "video_url": "https://gpngkwsgfwohtyenjaks.supabase.co/storage/v1/object/sign/memories/mem_01JZ8W2X4M9QK7F3T6V1N0P8RA/video.mp4?token=eyJ...",
    "preview_image_url": "https://gpngkwsgfwohtyenjaks.supabase.co/storage/v1/object/sign/memories/mem_01JZ8W2X4M9QK7F3T6V1N0P8RA/preview.jpg?token=eyJ...",
    "transcript": null,
    "summary": {
      "quick_summary": "A planning conversation about the public API launch.",
      "key_takeaways": [
        "Ship read-only access first.",
        "Expose memory list and detail endpoints."
      ]
    }
  }
]
```

## Empty result

If the account has no memories, the API returns an empty array.

```json theme={null}
[]
```

## Errors

| Status | Meaning                     |
| ------ | --------------------------- |
| `401`  | Missing or invalid API key. |
| `500`  | Internal server error.      |


## OpenAPI

````yaml openapi.json GET /v1/memories
openapi: 3.0.3
info:
  title: Replay Public API
  description: Read Replay memories with a public API key.
  version: 0.1.0
  license:
    name: Proprietary
    url: https://runreplay.com
servers:
  - url: https://api.runreplay.com
security:
  - BearerAuth: []
paths:
  /v1/memories:
    get:
      tags:
        - Memories
      summary: List memories
      description: >-
        Returns memories owned by the account attached to your API key, ordered
        by `started_at` with the newest memories first.
      operationId: listMemories
      responses:
        '200':
          description: A list of memories.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Memory'
              example:
                - id: mem_01JZ8W2X4M9QK7F3T6V1N0P8RA
                  name: Product planning walk
                  started_at: '2026-06-01T16:02:11Z'
                  ended_at: '2026-06-01T16:18:42Z'
                  is_processing: false
                  user_id: user_8ad5a3d1-7f24-4fc4-bf76-07fef4f8a92d
                  duration_seconds: 991
                  audio_url: >-
                    https://gpngkwsgfwohtyenjaks.supabase.co/storage/v1/object/sign/memories/mem_01JZ8W2X4M9QK7F3T6V1N0P8RA/audio.m4a?token=eyJ...
                  video_url: >-
                    https://gpngkwsgfwohtyenjaks.supabase.co/storage/v1/object/sign/memories/mem_01JZ8W2X4M9QK7F3T6V1N0P8RA/video.mp4?token=eyJ...
                  preview_image_url: >-
                    https://gpngkwsgfwohtyenjaks.supabase.co/storage/v1/object/sign/memories/mem_01JZ8W2X4M9QK7F3T6V1N0P8RA/preview.jpg?token=eyJ...
                  transcript: null
                  summary:
                    quick_summary: A planning conversation about the public API launch.
                    key_takeaways:
                      - Ship read-only access first.
                      - Expose memory list and detail endpoints.
        '401':
          $ref: '#/components/responses/Unauthorized'
        '500':
          $ref: '#/components/responses/InternalServerError'
components:
  schemas:
    Memory:
      type: object
      required:
        - id
        - name
        - started_at
        - ended_at
        - is_processing
        - user_id
        - duration_seconds
        - audio_url
        - video_url
        - preview_image_url
        - transcript
        - summary
      properties:
        id:
          type: string
          description: Unique memory ID.
          example: mem_01JZ8W2X4M9QK7F3T6V1N0P8RA
        name:
          type: string
          description: User-visible memory name.
          example: Product planning walk
        started_at:
          type: string
          format: date-time
          description: ISO timestamp for when the memory started.
          example: '2026-06-01T16:02:11Z'
        ended_at:
          type: string
          format: date-time
          description: ISO timestamp for when the memory ended.
          example: '2026-06-01T16:18:42Z'
        is_processing:
          type: boolean
          description: Whether Replay is still processing transcript and summary data.
          example: false
        user_id:
          type: string
          description: ID of the Replay user that owns the memory.
          example: user_8ad5a3d1-7f24-4fc4-bf76-07fef4f8a92d
        duration_seconds:
          type: integer
          description: Length of the memory in seconds.
          example: 991
        audio_url:
          type: string
          format: uri
          nullable: true
          description: >-
            Temporary signed URL for the memory audio file. Expires 1 hour after
            the response is created. Returns null if the audio file is not
            available.
          example: >-
            https://gpngkwsgfwohtyenjaks.supabase.co/storage/v1/object/sign/memories/mem_01JZ8W2X4M9QK7F3T6V1N0P8RA/audio.m4a?token=eyJ...
        video_url:
          type: string
          format: uri
          nullable: true
          description: >-
            Temporary signed URL for the memory video file. Expires 1 hour after
            the response is created. Returns null if the video file is not
            available.
          example: >-
            https://gpngkwsgfwohtyenjaks.supabase.co/storage/v1/object/sign/memories/mem_01JZ8W2X4M9QK7F3T6V1N0P8RA/video.mp4?token=eyJ...
        preview_image_url:
          type: string
          format: uri
          nullable: true
          description: >-
            Temporary signed URL for the memory preview image. Expires 1 hour
            after the response is created. Returns null if the preview image is
            not available.
          example: >-
            https://gpngkwsgfwohtyenjaks.supabase.co/storage/v1/object/sign/memories/mem_01JZ8W2X4M9QK7F3T6V1N0P8RA/preview.jpg?token=eyJ...
        transcript:
          type: object
          allOf:
            - $ref: '#/components/schemas/MemoryTranscript'
          nullable: true
          description: >-
            Segment transcript, available on memory detail after processing.
            List responses return null.
          example:
            segments:
              - speaker: Speaker 1
                start_at: '2026-06-01T16:02:23.400Z'
                end_at: '2026-06-01T16:02:29.900Z'
                text: We talked through the public API launch.
        summary:
          type: object
          allOf:
            - $ref: '#/components/schemas/MemorySummary'
          nullable: true
          description: Generated summary, available after processing.
          example:
            quick_summary: A planning conversation about the public API launch.
            key_takeaways:
              - Ship read-only access first.
              - Expose memory list and detail endpoints.
    MemoryTranscript:
      type: object
      required:
        - segments
      properties:
        segments:
          type: array
          description: Transcript segments ordered by start time.
          items:
            $ref: '#/components/schemas/TranscriptSegment'
    MemorySummary:
      type: object
      required:
        - quick_summary
        - key_takeaways
      properties:
        quick_summary:
          type: string
          description: Short summary of the memory.
          example: A planning conversation about the public API launch.
        key_takeaways:
          type: array
          description: Important points from the memory.
          items:
            type: string
          example:
            - Ship read-only access first.
            - Expose memory list and detail endpoints.
    ErrorResponse:
      type: object
      required:
        - detail
      properties:
        detail:
          type: string
          example: Invalid API key
    TranscriptSegment:
      type: object
      required:
        - speaker
        - start_at
        - end_at
        - text
      properties:
        speaker:
          type: string
          description: Diarized speaker label.
          example: Speaker 1
        start_at:
          type: string
          format: date-time
          description: Absolute timestamp when this segment starts.
          example: '2026-06-01T16:02:23.400Z'
        end_at:
          type: string
          format: date-time
          description: Absolute timestamp when this segment ends.
          example: '2026-06-01T16:02:29.900Z'
        text:
          type: string
          description: Text spoken in this segment.
          example: We talked through the public API launch.
  responses:
    Unauthorized:
      description: Missing or invalid API key.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          examples:
            missing:
              summary: Missing API key
              value:
                detail: Missing API key
            invalid:
              summary: Invalid API key
              value:
                detail: Invalid API key
    InternalServerError:
      description: Internal server error.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            detail: Internal server error
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: Replay public API key.

````