get_coverage
The project's coverage snapshot in one call: the headline rollup, the latest area-scan status, the AI-derived areas, and the detected build/test targets (with the ids run_coverage needs).
Request
GET /api/v1/ops/projects/{project}/coverage
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
project | path | string | yes | The project's public id. |
- cURL
- CLI
- MCP
curl -H "Authorization: Bearer $TESTVIBE_API_KEY" \
"$TESTVIBE_SERVER/api/v1/ops/projects/$PROJECT/coverage"
testvibe coverage show
Tool get_coverage — optional project.
Response
{
"summary": {
"totalFiles": 184,
"coveredFiles": 73,
"uncoveredFiles": 111,
"coveragePct": 40,
"totalAreas": 12,
"totalTests": 31,
"mappedTests": 26,
"execPct": 57
},
"execAvailable": true,
"collectCoverage": true,
"runActive": false,
"scan": {
"status": "succeeded",
"areasFound": 12,
"mappedFeatures": 26,
"error": null,
"finishedUtc": "2026-06-15T08:41:22Z"
},
"areas": [
{ "id": 101, "slug": "checkout", "name": "Checkout", "source": "agent" }
],
"targets": [
{ "id": 5, "kind": "dotnet", "name": "TestVibe.sln", "path": "TestVibe.sln" }
]
}
coveragePct is UI-test coverage (files touched by a mapped feature); execPct is execution-line coverage and is null until a coverage report has been collected (execAvailable: false). scan is null before the first scan.
Errors
| HTTP | When |
|---|---|
404 not_found | No such project in this workspace. |