Skip to content

Checks_CancelCheckRun

POST
/v1/accounts/{account}/checks/{check}/runs/{run}:cancel
curl --request POST \
--url https://junction-api.qualiastudios.dev/v1/accounts/example/checks/example/runs/example:cancel \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <X-API-Key>' \
--data '{ "name": "example" }'

Cancels a running VLM or heuristic run: its pipeline run is cancelled, which releases the credits it reserved, and the run ends FAILED with “cancelled by” who asked. A VLM run still QUEUED behind another ends so at once: it never starts and reserves nothing. Episodes it had not read keep their issues. The check may be -: a run’s id names one run. Needs what RunCheck needs (a write on the dataset). FAILED_PRECONDITION for a run that has ended, one still starting its pipeline run (ask again in a few seconds) and any other check’s run. A pipeline cancel that answered late or failed but took ends the run all the same. UNAVAILABLE when the pipeline could not be reached or did not answer in time and the run does not read cancelled after: it still runs; ask again. ABORTED when another cancel or end of a queued run keeps it busy: nothing changed; ask again. NOT_FOUND outside the caller’s workspace.

account
required
string

The account id.

check
required
string

The check id.

run
required
string

The run id.

Media type application/json

Request for Checks.CancelCheckRun.

object
name
required

Accounts/{account}/checks/{check}/runs/{run} (check may be -).

string
Example generated
{
"name": "example"
}

OK

Media type application/json

One run of a check over a dataset, as RunCheck recorded it. Its id is the operation’s (RunCheckResponse.operation), so its events on the record name it too. A merged dataset is checked one upload at a time, one run each, named under the upload, but for VLM and REACH, which are one run named under the merged dataset.

Served by qds-api.

object
name

Accounts/{account}/checks/{check}/runs/{run}

string
dataset

Accounts/{account}/datasets/{dataset}: the dataset it checked (an upload, for each per-upload run of a merged dataset).

string
operation

Accounts/{account}/operations/{operation}: the same id, as RunCheckResponse.operation and the record’s events name it.

string
state

Where it stands.

string format: enum
Allowed values: STATE_UNSPECIFIED QUEUED RUNNING SUCCEEDED FAILED
failureReason

Why it failed; empty otherwise.

string
selectedCount

Episodes of the selection; 0 when it checked the whole dataset.

integer format: int32
raisedCount

Issues and notes it opened (new ones, and ones a re-run had closed); set once it succeeded.

integer format: int32
resolvedCount

Open issues and notes it no longer found, dismissed as RESOLVED; set once it succeeded.

integer format: int32
creator

Who started it.

object
kind

What kind of actor it is.

string format: enum
Allowed values: KIND_UNSPECIFIED PERSON VALIDATION RULE MODEL OPERATOR SYSTEM
user

The person’s user id when kind is PERSON; empty otherwise.

string
displayName

The person’s display name at the time, for rendering without a lookup.

string
agent

The rule code, or for a MODEL the Qualia model tier (e.g. “qualia-vlm”; “qualia” for any other model), when not a person.

string
run

The run a model or rule finding came from, when it has one.

string
apiKey

The API key’s id when a person acted through one; empty for a session. Never the key itself.

string
attribution

Signed identity evidence recorded with the change, kept apart from the principal above. Unset on older records and wherever none was signed.

object
authentication

How the principal authenticated.

string format: enum
Allowed values: AUTHENTICATION_UNSPECIFIED SESSION API_KEY SERVICE
initiator

The user id of a person verified as starting the work: the person of a session, or the person a trusted service’s signed job record names. Empty when nobody was verified.

string
initiatorDisplayName

The initiator’s display name at the time, never their email.

string
credentialCreator

The user id of the key’s creator at the time. Not who used the key.

string
credentialOwner

Who owned the key at the time.

string format: enum
Allowed values: CREDENTIAL_OWNER_UNSPECIFIED PERSON SPACE
credentialOwnerSpace

The owning space’s id (a workspace or the organization) when credential_owner is SPACE.

string
createTime

When RunCheck recorded it.

string format: date-time
updateTime

When it last moved; once it ended, when it ended.

string format: date-time
judgedTasks

The Task revisions it judged against, set once it planned: a VLM run’s Tasks, and the ones a heuristic run read duration bounds from. A run judges each Task at the revision its episodes’ links carry, never a newer one; empty when it read no Task.

Array<object>

A Task revision a run judged its episodes against.

object
task

Accounts/{account}/tasks/{task}

string
displayName

The Task’s display name, as that revision (or draft) has it.

string
revision

The revision the episodes’ links carry (Episode.linked_task_revision); 0 when the run read the Task’s unpublished draft.

integer format: int32
vlm

The VLM check’s.

object
model

The Qualia model tier that read (or reads) the episodes: the one asked for, or once the run answered, the one it reports. Empty while a run that named none has not answered.

string
pipelineRun

The pipeline run that reads the episodes, a UUID; empty until it started. The gateway serves its status and settled credits.

string
episodeCount

Episodes planned for the model: linked to a published task.

integer format: int32
unlinkedCount

Episodes of the selection left out: no published task.

integer format: int32
unreadCount

Planned episodes the model could not read (no published video, a refused call, an invalid answer). Their other issues are left as they were. Each gets an open “not checked” issue (code not_checked) that takes it out of KEPT, as a confident failure does; against a draft task, or on an episode a person kept, it is a note. The next VLM reading of the episode closes it, whatever its verdict.

integer format: int32
passCount

Findings written, by verdict.

integer format: int32
failCount

Failing findings: issues at CONFIDENT confidence or more, else notes.

integer format: int32
uncertainCount

Uncertain findings: notes.

integer format: int32
datasetChecks

Accounts/{account}/datasets/{dataset}/checks/{check}: the catalog checks a RunDatasetChecks run reads, by category then check id; empty for a run of the single VLM check.

Array<string>
reviewHealth

A graph check run’s review health, computed once when its pipeline run ended; set once the run succeeded on a template with the review_health step.

object
available

The rules could read this run. When false, unavailable_code and unavailable_reason say why; the numbers, rows, questions and checks are unset.

boolean
unavailableCode

Why not: “no_decisions” (no episode read), “no_task_review” (no observation was read), “no_task_map” (no upload of the run has a task discovery), “map_incomplete” (the map covers under 90% of the run’s episodes, e.g. after cuts), “partial_run” (the run read under 90% of the discovered episodes) or “invalid_input”.

string
unavailableReason

Why not, in a sentence.

string
version

“review-health-v1”.

string
thresholdsSha256

Sha256 of the frozen thresholds (CurationBench’s THRESHOLDS_SHA256).

string
prepareOperations

Accounts/{account}/operations/{operation}: the prepare runs whose task discovery it read, one per upload.

Array<string>
episodeCount

Episodes read.

integer format: int32
reviewedCount

Of them, episodes whose observation was read.

integer format: int32
removedCount

Removals.

integer format: int32
removalRate

Removed_count / episode_count.

number format: double
mapSucceededCount

Episodes the discovery map calls successful.

integer format: int32
mapSucceededShare

Map_succeeded_count / episode_count.

number format: double
gap

The kept share less the share the map calls successful.

number format: double
removedCompletedCount

Removals whose observation says the task was completed (they deviated).

integer format: int32
deviatesCompletedShare

Removed_completed_count / removed_count.

number format: double
mapCoverage

Share of the run’s episodes the map covers.

number format: double
groupingAgreement

Share of the run’s episodes judged against a Task linked to their own discovered task.

number format: double
contradictionChecked

The contradiction rule ran: false when grouping_agreement is under 0.9.

boolean
tasks

Per task, largest first.

Array<object>

One task’s numbers.

object
task

The task’s display name in the discovery, else the Task’s label.

string
episodeCount

Its episodes in the run.

integer format: int32
removedCount

Of them, removals.

integer format: int32
mapSucceededCount

Of them, episodes the discovery map calls successful.

integer format: int32
removalRate

Removed_count / episode_count.

number format: double
mapSucceededShare

Map_succeeded_count / episode_count.

number format: double
gap

The kept share less the share the map calls successful.

number format: double
questions

At most three questions, in the rules’ order.

Array<object>

One question for a person, with example episodes.

object
rule

The rule that asks it: “contradiction” (tasks may be mixed), “under_removal”, “over_removal” or “outcome_data”.

string
question

The question, in a sentence.

string
detail

Why it is asked, with the numbers.

string
groups

Contradiction: the tasks it fires on.

Array<object>

A task (or variant) the contradiction rule fires on.

object
task

The task’s display name in the discovery.

string
variant

The variant’s name; empty for a whole task.

string
episodeCount

Its episodes in the run.

integer format: int32
removedCount

Of them, removals: a failing finding.

integer format: int32
mapSucceededCount

Of them, episodes the discovery map calls successful.

integer format: int32
referenceEpisodeIds

The SUCCESS references most of them were judged against, by episode id: a Task’s reference can live in another dataset.

Array<string>
episodes

Example episodes.

Array<string>
action

Where it is answered: “tasks” (the task grouping and the references), “miss_check” (the miss check below), or empty.

string
moreQuestions

The rules of questions past the three, not shown.

Array<string>
spotCheck

The spot check.

object
episodes

The episodes, at most ten, picked reproducibly from the pool.

Array<string>
poolCount

Every removal the map calls successful.

integer format: int32
flagErrorCount

Wrong removals among the episodes that say the references or the Task may not fit the dataset (4).

integer format: int32
missCheck

The miss check; unset unless the run keeps too much.

object
episodes

The episodes shown, at most eight.

Array<string>
restEpisodes

The rest of the queue, in removal-score order.

Array<string>
poolCount

The whole queue.

integer format: int32
confirmCount

Removals among the shown episodes that say the rest likely go too (5).

integer format: int32
unpublishedCount

Episodes whose proposed labels did not publish. Their findings stand; a run above zero is partial.

integer format: int32
unpublishedProposals

The first 100 of those episodes, each with why.

Array<object>

An episode whose proposed labels did not publish.

object
episode

Accounts/{account}/datasets/{dataset}/episodes/{episode}

string
reason

Why, as the publisher answered.

string
pending

Nobody saw the publication end: it may still land. Running the same reading again replays it.

boolean
unreadEpisodes

The first 100 episodes counted in unread_count, each with why, in the order the run planned them.

Array<object>

A planned episode the run could not read.

object
episode

Accounts/{account}/datasets/{dataset}/episodes/{episode}

string
reason

Why, in a sentence: no published video, a refused call, an invalid answer.

string
notCheckedSummary

One line on a succeeded run that could not read every planned episode, e.g. “completed, 4 of 30 episodes not checked”; empty otherwise. The run’s state stays SUCCEEDED.

string
Example
{
"state": "STATE_UNSPECIFIED",
"creator": {
"kind": "KIND_UNSPECIFIED",
"attribution": {
"authentication": "AUTHENTICATION_UNSPECIFIED",
"credentialOwner": "CREDENTIAL_OWNER_UNSPECIFIED"
}
}
}

Default error response

Media type application/json
One of:
API error

A refusal from the API itself.

object
code
required

The gRPC code name in upper case, e.g. NOT_FOUND.

string
message
required
string
retryable
required

Whether the same call may succeed if retried.

boolean
details
required

Empty, except when a dataset copy or move is refused: then one google.rpc.ErrorInfo with the refusal’s reason code, its domain and, in metadata, the datasets it names.

Array<object>
object
Example generated
{
"code": "example",
"message": "example",
"retryable": true,
"details": [
{}
]
}