WakaTime · Schema
SummaryDay
A single day's coding-activity summary returned by the WakaTime Summaries API. Each summary aggregates a day's heartbeats by category, project, language, editor, OS, machine, branch, dependency, and entity.
Developer ProductivityDeveloper ToolsTime TrackingCoding AnalyticsLeaderboardsIDE PluginsOpen SourcePublic APIs
Properties
| Name | Type | Description |
|---|---|---|
| grand_total | object | |
| categories | array | |
| projects | array | |
| languages | array | |
| editors | array | |
| operating_systems | array | |
| machines | array | |
| branches | array | |
| dependencies | array | |
| entities | array | |
| range | object |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/wakatime/main/json-schema/wakatime-summary-schema.json",
"title": "SummaryDay",
"description": "A single day's coding-activity summary returned by the WakaTime Summaries API. Each summary aggregates a day's heartbeats by category, project, language, editor, OS, machine, branch, dependency, and entity.",
"type": "object",
"additionalProperties": true,
"properties": {
"grand_total": { "$ref": "#/$defs/SummaryTotal" },
"categories": { "type": "array", "items": { "$ref": "#/$defs/SummaryBreakdown" } },
"projects": { "type": "array", "items": { "$ref": "#/$defs/SummaryBreakdown" } },
"languages": { "type": "array", "items": { "$ref": "#/$defs/SummaryBreakdown" } },
"editors": { "type": "array", "items": { "$ref": "#/$defs/SummaryBreakdown" } },
"operating_systems": { "type": "array", "items": { "$ref": "#/$defs/SummaryBreakdown" } },
"machines": { "type": "array", "items": { "$ref": "#/$defs/SummaryBreakdown" } },
"branches": { "type": "array", "items": { "$ref": "#/$defs/SummaryBreakdown" } },
"dependencies": { "type": "array", "items": { "$ref": "#/$defs/SummaryBreakdown" } },
"entities": { "type": "array", "items": { "$ref": "#/$defs/SummaryBreakdown" } },
"range": {
"type": "object",
"properties": {
"date": { "type": "string", "format": "date" },
"start": { "type": "string", "format": "date-time" },
"end": { "type": "string", "format": "date-time" },
"text": { "type": "string" },
"timezone": { "type": "string" }
}
}
},
"$defs": {
"SummaryTotal": {
"type": "object",
"properties": {
"hours": { "type": "integer", "minimum": 0 },
"minutes": { "type": "integer", "minimum": 0 },
"total_seconds": { "type": "number", "minimum": 0 },
"digital": { "type": "string", "description": "HH:MM formatted." },
"decimal": { "type": "string", "description": "Hours as decimal string." },
"text": { "type": "string", "description": "Human-readable string e.g. '4 hrs 12 mins'." }
}
},
"SummaryBreakdown": {
"type": "object",
"properties": {
"name": { "type": "string" },
"total_seconds": { "type": "number", "minimum": 0 },
"percent": { "type": "number", "minimum": 0, "maximum": 100 },
"digital": { "type": "string" },
"decimal": { "type": "string" },
"text": { "type": "string" },
"hours": { "type": "integer", "minimum": 0 },
"minutes": { "type": "integer", "minimum": 0 },
"seconds": { "type": ["integer", "null"], "minimum": 0 },
"machine_name_id": { "type": ["string", "null"] }
}
}
}
}