List apps
GET
/api/v1/appsKey role viewer or aboveEvery app this key can reach, oldest first, with how many checks each holds and how many issues are open. A key scoped to some apps sees only those.
curl "https://qarunbook.com/api/v1/apps" \
-H "Authorization: Bearer $QARUNBOOK_KEY"Response · 200
{
"data": [
{
"id": "mfq3k2p9x1a",
"name": "Checkout",
"platforms": [
{
"code": "WL",
"label": "Web — laptop"
},
{
"code": "WM",
"label": "Web — mobile view"
},
{
"code": "AND",
"label": "Android"
},
{
"code": "IOS",
"label": "iOS"
}
],
"created_at": "2026-09-02T10:14:03.000Z",
"checks": 96,
"open_issues": 4
}
]
}Get an app
GET
/api/v1/apps/:idKey role viewer or aboveOne app, with a coverage summary and its sections in runbook order. Coverage counts platform-checks: a check on four platforms counts four times, the way the runbook's own figures do.
Path parameters
idstringrequired- The app's id — or its name, URL-encoded:
/apps/Checkout.
curl "https://qarunbook.com/api/v1/apps/mfq3k2p9x1a" \
-H "Authorization: Bearer $QARUNBOOK_KEY"Response · 200
{
"data": {
"id": "mfq3k2p9x1a",
"name": "Checkout",
"platforms": [
{
"code": "WL",
"label": "Web — laptop"
},
{
"code": "WM",
"label": "Web — mobile view"
},
{
"code": "AND",
"label": "Android"
},
{
"code": "IOS",
"label": "iOS"
}
],
"created_at": "2026-09-02T10:14:03.000Z",
"summary": {
"checks": 24,
"passed": 61,
"failed": 4,
"needs_retest": 3,
"untested": 20,
"not_applicable": 8,
"percent_complete": 74,
"open_issues": 4
},
"sections": [
{
"id": "mfq3k2q01aa",
"ref": "AUTH",
"title": "Sign in and accounts",
"checks": 9,
"summary": {
"passed": 28,
"failed": 2,
"needs_retest": 1,
"untested": 5,
"not_applicable": 0
}
}
]
}
}Summary fields
passedinteger- Platform-checks whose latest result is a pass, with nothing open against them.
failedinteger- Recorded as failed, or failing because an issue is open against that platform.
needs_retestinteger- An issue was fixed after the last result — nobody has confirmed the fix yet.
untestedinteger- No result yet.
not_applicableinteger- Checks marked N/A on that platform. Left out of
percent_complete. percent_completeinteger- Passed and failed as a share of everything testable, 0–100.