Retrace Docs
Developer

API Reference

REST API endpoints exposed by the Retrace server.

The Retrace server exposes a REST API on localhost:1420. All endpoints return JSON. The API is used by the React frontend, the Chrome extension, and the MCP server.

Conversations

MethodPathDescription
GET/searchSearch conversations (keyword, semantic, or hybrid)
GET/conversationsList all conversations (paginated)
GET/conversations/:idGet a single conversation with messages
DELETE/conversationsDelete all conversations for a platform
GET/sync-statusCheck sync status per platform
POST/rebuildRebuild conversation index

Import

MethodPathDescription
POST/import/previewUpload a file and preview parsed conversations
POST/import/preview-from-pathPreview conversations from a local file path
POST/import/confirmConfirm and execute a pending import
GET/import/pending/:idGet status of a pending import
GET/import/batchesList past import batches

People

MethodPathDescription
GET/peopleList all people
GET/people/:idGet a person with conversation stats
POST/peopleCreate a new person
PUT/people/:idUpdate a person
POST/people/avatarsScrape profile pictures
POST/people/:id/mergeMerge two person records

Social Graph

MethodPathDescription
GET/social-graphGet the full social graph (nodes + edges with tie strength)
GET/social-graph/timelineGet graph snapshots over time for timelapse

Segments & Processing

MethodPathDescription
GET/conversations/:id/segmentsGet segments for a conversation
GET/segments/recentGet recently processed segments
POST/processing/startStart knowledge extraction for a conversation
POST/processing/stopStop processing
GET/processing/statusGet processing status
POST/processing/bulk-startStart bulk processing
POST/segments/backfillBackfill missing segments

Embeddings

MethodPathDescription
GET/embeddings/statusGet embedding generation status
POST/embeddings/backfillGenerate missing embeddings

Labels & Permissions

MethodPathDescription
GET/labelsList all labels
POST/labelsCreate a label
PUT/labels/:idUpdate a label
GET/labels/resource/:type/:idGet labels for a resource
POST/labels/resource/:type/:idAttach labels to a resource

Consumers (Permission Profiles)

MethodPathDescription
GET/consumersList consumers
POST/consumersCreate a consumer
PUT/consumers/:idUpdate a consumer
DELETE/consumers/:idDelete a consumer
GET/consumers/:id/permissionsGet permission rules
PUT/consumers/:id/permissionsUpdate permission rules

Reflections & Time Capsules

MethodPathDescription
GET/reflectionsList reflections
GET/reflections/:idGet a single reflection
GET/reflections/dimensionsGet reflection dimensions
GET/time-capsulesList time capsules
GET/time-capsules/:idGet a single time capsule

Chat (Embedded Claude)

MethodPathDescription
GET/chat/statusCheck if Claude is available
POST/chat/streamStart a streaming chat session (SSE)

WhatsApp Live Sync

MethodPathDescription
GET/whatsapp/statusGet connection status
POST/whatsapp/startStart WhatsApp connection (generates QR)
POST/whatsapp/stopDisconnect
POST/whatsapp/disconnectDisconnect and clear session
GET/whatsapp/conversationsList synced WhatsApp conversations
PUT/whatsapp/exclusionsSet chat exclusion rules

Obsidian

MethodPathDescription
GET/obsidian/statusGet Obsidian integration status
POST/obsidian/configureConfigure vault path
POST/obsidian/syncTrigger manual sync
GET/obsidian/vault/statusGet vault watch status
POST/obsidian/watch/startStart watching vault for changes
POST/obsidian/watch/stopStop watching

Other

MethodPathDescription
GET/statsGet overall statistics
GET/analyticsGet weekly analytics data
GET/topicsList extracted topics
GET/configGet app configuration
PUT/configUpdate app configuration
GET/modelsList available local LLM models
POST/models/downloadDownload a model
GET/auth/tokenGet API token
POST/ingestIngest data from Chrome extension

On this page