Screenpipe API
Screenpipe is the context layer for AGI - a bridge between context-free AI and context-aware super intelligence.Base URL
The Screenpipe API runs locally on your machine:Core Functionality
Screenpipe provides several key capabilities:- Context Retrieval: Search through screen recordings and audio transcriptions
- Real-time Streams: Stream OCR, UI elements, and audio transcriptions
- Device Management: Control audio and video recording devices
- Pipes System: Extend functionality with pluggable pipes
Most Common Endpoints
The most commonly used endpoints are:/search- Main endpoint for retrieving contextual data/health- Health check endpoint/frames/{frame_id}- Retrieve frame images/pipes- Manage pipes
Getting Started
Quick Example
Here’s a simple example to search for recent content:Response Format
All responses are returned as JSON. Most endpoints follow this structure:Content Types
Screenpipe captures and indexes multiple types of content:- OCR: Text extracted from screen captures
- Audio: Transcribed audio from microphones and system audio
- UI: UI element text from accessibility APIs
- Input: User input events (clicks, keystrokes, clipboard)
All Available Endpoints
Core Search & Retrieval
GET /search- Search screen and audio content (details)GET /search/keyword- Keyword-based searchGET /frames/{frame_id}- Get frame image (details)GET /frames/{frame_id}/ocr- Get OCR text with positionsGET /frames/{frame_id}/metadata- Get frame metadataGET /frames/next-valid- Find next valid frame
Health & Monitoring
GET /health- System health check (details)GET /vision/status- Vision pipeline statusGET /vision/metrics- Vision processing metricsGET /audio/metrics- Audio processing metrics
Device Management
GET /audio/list- List audio devices (details)GET /vision/list- List video capture devicesPOST /audio/start- Start audio recordingPOST /audio/stop- Stop audio recordingPOST /audio/device/start- Start specific devicePOST /audio/device/stop- Stop specific device
Speaker Management
GET /speakers/unnamed- List unnamed speakersPOST /speakers/update- Update speaker namePOST /speakers/search- Search speakersDELETE /speakers/delete- Delete speakerPOST /speakers/hallucination- Mark speaker as hallucinationPOST /speakers/merge- Merge speakersGET /speakers/similar- Find similar speakersPOST /speakers/reassign- Reassign audio to speakerPOST /speakers/undo-reassign- Undo speaker reassignment
Pipes Management
GET /pipes- List all pipes (details)POST /pipes/install- Install a pipeGET /pipes/{id}- Get pipe detailsDELETE /pipes/{id}- Delete a pipe
Data Management
POST /add- Add content manuallyPOST /tags/{content_type}/{id}- Tag contentPOST /raw_sql- Execute raw SQL queries
UI Events
GET /ui-events- Get UI interaction eventsGET /ui-events/stats- Get UI event statistics
Cloud Sync
POST /sync/init- Initialize cloud syncGET /sync/status- Get sync statusPOST /sync/trigger- Trigger manual syncGET /sync/lock- Get sync lock statusPOST /sync/download- Download synced data
Experimental
POST /experimental/frames/merge- Merge frame dataPOST /experimental/validate/media- Validate media files
Next Steps
- Learn about authentication and security
- Explore the search endpoint for querying your data
- Check out pipes management to extend functionality
- Review health monitoring for system status