Skip to content

The run’s cases, as a plan lists its own

GET
/v1/runs/{id}/cases
curl --request GET \
--url 'https://beta-api.plune.ai/v1/runs/example/cases?status=failed%2Cbroken&combination=1' \
--header 'Authorization: Bearer <token>'

Every case the run expected (configuration.expected, cases added with «Add tests» among them) or holds a result of — in that order, no duplicates, cases in the Bin left out — each with its title, type and keys: the list plune run grep <run> joins into one --grep, as plune plan grep does a plan’s (plune-ai/cli#85). status keeps the cases whose latest result here is counted under one of the statuses named, as the run’s counters count: a failure of a muted case is muted, not failed (#1247), and an earlier failure followed by a pass is a pass. failed,broken is what «Re-run N failed» takes. A case nobody got to has no status, so a status filter leaves it out. In a run with configurations (#1251) a case stands at the worst of its combinations — failed, broken, blocked, muted, passed, skipped in that order, each combination by its latest result — so a case that failed on Firefox alone is failed; combination reads one combination alone.

id
required
string
status
string
Example
failed,broken

Only the cases whose latest result is counted under one of these — passed, failed, broken, blocked, skipped or muted: a comma-separated list, or the key repeated. None named is every case, run or not; a word that is not one of them is a 400.

combination
integer
<= 24
Example
1

Where each case stands in this combination of the run’s combinations alone (#1251), by its number — the page of a manual run in Chrome or in Firefox. A number the run has no combination for — any number, for a run without configurations — is a 400, as is anything but a number from 0 to 24.

The cases

Media type application/json
object
cases
required
Array<object>
object
id
required
string
title
required
string
type
required
string
Allowed values: manual automated eval
externalKeys
required

Empty when nothing points at the case.

Array<object>

An identifier another tool already uses for this test, so a report can find its case without anyone typing a Plune id. The order of kind is load-bearing: it is the ranking that decides which key wins when several match different cases.

object
kind
required
string
Allowed values: playwright-id path-title allure-history cairn-stable eval-id qase testrail testomat zephyr
value
required
string
<= 1024 characters
count
required
integer
Example
{
"cases": [
{
"id": "6f1c2b3a-0000-4000-8000-0000000000c1",
"title": "Checkout — empty cart @smoke @checkout",
"type": "automated",
"externalKeys": [
{
"kind": "path-title",
"value": "e2e/checkout.spec.ts > Checkout — empty cart"
}
]
}
],
"count": 1
}

status names a status a run does not count by, or combination is not a combination of this run (#1251)

Media type application/json
object
error
required
string
Example generated
{
"error": "example"
}

No / invalid token or session

No such run in your projects

Media type application/json
object
error
required
string
Example generated
{
"error": "example"
}