Replace the project's own sub-statuses under one status
const url = 'https://beta-api.plune.ai/v1/settings/sub-statuses/passed';const options = { method: 'PUT', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"names":["Test is outdated","Flaky test"]}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request PUT \ --url https://beta-api.plune.ai/v1/settings/sub-statuses/passed \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "names": [ "Test is outdated", "Flaky test" ] }'Add, rename and remove are this one write: the list is what the owner wants under the status now, and an empty one removes them all. A result keeps the name it was marked with, so nothing is carried over and no past run changes. At most 10 of the project’s own per status — the built-ins are on top — each 1–40 characters after trimming; none twice and none a built-in’s, both in any case. The project owner’s alone (403 for a member and a reader). One audit entry, the settings before and after. The CLI and the reporters set no sub-status.
Authorizations
Section titled “Authorizations ”Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters ”Request Body required
Section titled “Request Body required ”object
Example
{ "names": [ "Test is outdated", "Flaky test" ]}Responses
Section titled “ Responses ”Every sub-status of the project, as GET answers
object
Per status in the order passed, failed, broken, blocked, skipped: the built-ins first, then the project’s own in the order the owner set them.
One row of Settings → Statuses (#1231).
object
As a result stores it. A built-in’s is its English name; the dashboard shows it in its own language.
Comes with every project; nobody renames or removes it.
The project’s results that carry this name under this status — a result keeps the name it was marked with, so a renamed one starts at 0.
Example
{ "subStatuses": [ { "status": "passed" } ]}Not one of the five statuses, or a list the settings cannot hold — too long a name, too many, one twice, a built-in’s
object
Example
{ "error": "validation failed — failed.1: 'flaky' is there twice"}No / invalid token or session
Not the project’s owner
object
Example
{ "error": "project owner only"}Rate-limited: the per-route throttle, or the per-minute request limit of the plan an API token counts by (#1442; the body names the plan, #2092). Retry-After carries the seconds until the window rolls over.
object
Example generated
{ "error": "example"}Headers
Section titled “Headers ”Seconds until the window rolls over