--- title: "Status Monitoring" description: "Monitor memory processing status and completion rates" --- Monitor memory processing status and track completion rates using the list endpoint. ## Status Overview ```typescript const response = await client.documents.list({ limit: 100 }); const statusCounts = response.memories.reduce((acc: any, memory) => { acc[memory.status] = (acc[memory.status] || 0) + 1; return acc; }, {}); console.log('Status breakdown:', statusCounts); ``` ```python response = client.documents.list(limit=100) status_counts = {} for memory in response.memories: status = memory.status status_counts[status] = status_counts.get(status, 0) + 1 print("Status breakdown:", status_counts) ``` ```bash curl -X POST "https://api.supermemory.ai/v3/documents/list" \ -H "Authorization: Bearer $SUPERMEMORY_API_KEY" \ -H "Content-Type: application/json" \ -d '{"limit": 100}' | \ jq '.memories | group_by(.status) | map({status: .[0].status, count: length})' ``` ## Filter Processing Memories ```typescript const response = await client.documents.list({ limit: 100 }); const processing = response.memories.filter(m => ['queued', 'extracting', 'chunking', 'embedding', 'indexing'].includes(m.status) ); console.log(`${processing.length} memories currently processing`); ``` ```python response = client.documents.list(limit=100) processing_statuses = ['queued', 'extracting', 'chunking', 'embedding', 'indexing'] processing = [m for m in response.memories if m.status in processing_statuses] print(f"{len(processing)} memories currently processing") ``` ```bash curl -X POST "https://api.supermemory.ai/v3/documents/list" \ -H "Authorization: Bearer $SUPERMEMORY_API_KEY" \ -H "Content-Type: application/json" \ -d '{"limit": 100}' | \ jq '.memories[] | select(.status | IN("queued", "extracting", "chunking", "embedding", "indexing"))' ``` ## Failed Memories ```typescript const response = await client.documents.list({ limit: 100 }); const failedMemories = response.memories.filter(m => m.status === 'failed'); failedMemories.forEach(memory => { console.log(`Failed: ${memory.id} - ${memory.title || 'Untitled'}`); }); ``` ```python response = client.documents.list(limit=100) failed_memories = [m for m in response.memories if m.status == 'failed'] for memory in failed_memories: title = memory.title or 'Untitled' print(f"Failed: {memory.id} - {title}") ``` ```bash curl -X POST "https://api.supermemory.ai/v3/documents/list" \ -H "Authorization: Bearer $SUPERMEMORY_API_KEY" \ -H "Content-Type: application/json" \ -d '{"limit": 100}' | \ jq '.memories[] | select(.status == "failed") | {id, title, status}' ``` For real-time monitoring of individual memories, use the [Track Processing Status](/memory-api/track-progress) guide.