Appearance
Dashboard Service API
The Dashboard Service provides endpoints for retrieving statistics and data for the main dashboard.
Endpoints
All endpoints in this service require authentication.
GET /api/v1/dashboard/stats
Retrieves overall statistics, including the total number of archived emails, total storage used, and the number of failed ingestions in the last 7 days.
Access: Authenticated
Responses
200 OK: An object containing the dashboard statistics.
json{ "totalEmailsArchived": 12345, "totalStorageUsed": 54321098, "failedIngestionsLast7Days": 3 }
GET /api/v1/dashboard/ingestion-history
Retrieves the email ingestion history for the last 30 days, grouped by day.
Access: Authenticated
Responses
200 OK: An object containing the ingestion history.
json{ "history": [ { "date": "2023-09-27T00:00:00.000Z", "count": 150 }, { "date": "2023-09-28T00:00:00.000Z", "count": 200 } ] }
GET /api/v1/dashboard/ingestion-sources
Retrieves a list of all ingestion sources along with their status and storage usage.
Access: Authenticated
Responses
200 OK: An array of ingestion source objects.
json[ { "id": "source-id-1", "name": "Google Workspace", "provider": "google", "status": "active", "storageUsed": 12345678 }, { "id": "source-id-2", "name": "Microsoft 365", "provider": "microsoft", "status": "error", "storageUsed": 87654321 } ]
GET /api/v1/dashboard/recent-syncs
Retrieves a list of recent synchronization jobs. (Note: This is currently a placeholder and will return an empty array).
Access: Authenticated
Responses
200 OK: An empty array.
json[]
GET /api/v1/dashboard/indexed-insights
Retrieves insights from the indexed email data, such as the top senders.
Access: Authenticated
Responses
200 OK: An object containing indexed insights.
json{ "topSenders": [ { "sender": "[email protected]", "count": 42 } ] }