Screenpipe Memories API

AI-extracted knowledge from screen activity

OpenAPI Specification

screenpipe-memories-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Screenpipe Activity Memories API
  version: 1.0.0
  description: 'Screenpipe captures everything you see, say, and hear on your computer. Use this API to search through captured content, manage recordings, and build AI-powered automations on top of your screen data.


    The server runs locally at `http://localhost:3030` by default.'
tags:
- name: Memories
  description: AI-extracted knowledge from screen activity
paths:
  /memories:
    get:
      operationId: routes_memories_list_memories_handler
      parameters:
      - name: q
        schema:
          nullable: true
          type: string
        in: query
        style: form
      - name: source
        schema:
          nullable: true
          type: string
        in: query
        style: form
      - name: tags
        schema:
          nullable: true
          type: string
        in: query
        style: form
      - name: min_importance
        schema:
          nullable: true
          type: number
        in: query
        style: form
      - name: start_time
        schema:
          nullable: true
          type: string
        in: query
        style: form
      - name: end_time
        schema:
          nullable: true
          type: string
        in: query
        style: form
      - name: limit
        schema:
          type: integer
        in: query
        style: form
      - name: offset
        schema:
          type: integer
        in: query
        style: form
      - name: order_by
        schema:
          nullable: true
          type: string
        in: query
        style: form
      - name: order_dir
        schema:
          nullable: true
          type: string
        in: query
        style: form
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MemoryListResponse'
      tags:
      - Memories
      summary: List memories
      description: Returns saved AI memories / knowledge extracted from screen activity.
    post:
      operationId: routes_memories_create_memory_handler
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateMemoryRequest'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MemoryResponse'
      tags:
      - Memories
      summary: Create memory
  /memories/{id}:
    get:
      operationId: routes_memories_get_memory_handler
      parameters:
      - name: id
        schema:
          type: integer
        in: path
        required: true
        style: simple
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MemoryResponse'
      tags:
      - Memories
      summary: Get memory by ID
    put:
      operationId: routes_memories_update_memory_handler
      parameters:
      - name: id
        schema:
          type: integer
        in: path
        required: true
        style: simple
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateMemoryRequest'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MemoryResponse'
      tags:
      - Memories
      summary: Update memory
    delete:
      operationId: routes_memories_delete_memory_handler
      parameters:
      - name: id
        schema:
          type: integer
        in: path
        required: true
        style: simple
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
      tags:
      - Memories
      summary: Delete memory
components:
  schemas:
    MemoryListItem:
      type: object
      properties:
        id:
          type: integer
        content:
          type: string
        source:
          type: string
        tags:
          type: array
          items:
            type: string
        importance:
          type: number
        frame_id:
          nullable: true
          type: integer
        created_at:
          type: string
        updated_at:
          type: string
      required:
      - id
      - content
      - source
      - tags
      - importance
      - frame_id
      - created_at
      - updated_at
    MemoryResponse:
      type: object
      properties:
        id:
          type: integer
        content:
          type: string
        source:
          type: string
        source_context:
          nullable: true
          type: object
        tags:
          type: array
          items:
            type: string
        importance:
          type: number
        frame_id:
          nullable: true
          type: integer
        created_at:
          type: string
        updated_at:
          type: string
      required:
      - id
      - content
      - source
      - source_context
      - tags
      - importance
      - frame_id
      - created_at
      - updated_at
    CreateMemoryRequest:
      type: object
      properties:
        content:
          type: string
        source:
          type: string
        source_context:
          nullable: true
          type: object
        tags:
          type: array
          items:
            type: string
        importance:
          type: number
        frame_id:
          nullable: true
          type: integer
      required:
      - content
      - source
      - source_context
      - tags
      - importance
      - frame_id
    MemoryListResponse:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/MemoryListItem'
        pagination:
          $ref: '#/components/schemas/PaginationInfo'
      required:
      - data
      - pagination
    PaginationInfo:
      type: object
      properties:
        limit:
          type: integer
        offset:
          type: integer
        total:
          type: integer
      required:
      - limit
      - offset
      - total
    UpdateMemoryRequest:
      type: object
      properties:
        content:
          nullable: true
          type: string
        tags:
          nullable: true
          type: array
          items:
            type: string
        importance:
          nullable: true
          type: number
        source_context:
          nullable: true
          type: object
      required:
      - content
      - tags
      - importance
      - source_context