Datasets_ConfirmTaskStrings
const url = 'https://dev-api.qualiastudios.dev/v1/accounts/example/datasets/example/preparation:confirmTaskStrings';const options = { method: 'POST', headers: {'X-API-Key': '<X-API-Key>', 'Content-Type': 'application/json'}, body: '{"name":"example","choices":[{"key":"example","displayName":"example","confirmed":true}],"runId":"example"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://dev-api.qualiastudios.dev/v1/accounts/example/datasets/example/preparation:confirmTaskStrings \ --header 'Content-Type: application/json' \ --header 'X-API-Key: <X-API-Key>' \ --data '{ "name": "example", "choices": [ { "key": "example", "displayName": "example", "confirmed": true } ], "runId": "example" }'Stores a person’s decisions on the dataset’s own task names: the full set, so a key not listed is cleared. Only a confirmable candidate of the newest run takes a decision; a blocked one (outcome words, a code, a name already applied as a task label) is FAILED_PRECONDITION. ABORTED when a newer run replaced the candidates the person saw. Nothing confirms automatically.
Authorizations
Section titled “Authorizations ”Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters ”The account id.
The dataset id.
Request Body required
Section titled “Request Body required ”Request for ConfirmTaskStrings.
object
Accounts/{account}/datasets/{dataset}/preparation
The whole set of decisions; keys not listed are cleared.
One decision on one task name.
object
The candidate’s key (ts_
The task name the person gives it, 1 to 32 characters after trimming: a Task’s name.
True to use it as a task; false records a person’s no.
The prepare run whose candidates the person saw.
Example generated
{ "name": "example", "choices": [ { "key": "example", "displayName": "example", "confirmed": true } ], "runId": "example"}Responses
Section titled “ Responses ”OK
What the newest prepare run did to an upload. Everything in it is a proposal or a flag: nothing was removed and no Task was published.
object
Accounts/{account}/datasets/{dataset}/preparation
Where the newest run is.
The newest run’s id.
The dataset version the run read.
When the run was queued.
When the run last changed.
Why the run failed.
The matched or drafted Task. Unset for a run that discovery split into tasks: each has its own Task, in discovery.
object
True when a published Task matched; false when the run drafted one.
Tasks/{task}: the matched Task, or the draft.
The matched revision; 0 for a draft.
Match score, 0 to 1 (0 for a draft).
One line on what the score rests on.
The top candidates, best first (at most 5).
Another Task the match scored.
object
Tasks/{task}
The Task’s name.
Match score, 0 to 1.
The TASK_ASSIGNED event that applied the match; empty when not applied.
How many episodes the match was applied to.
True once that event was undone.
The event that undid it.
The Task’s name.
The takes it split.
object
Only takes split into two or more pieces.
One take the run split into pieces.
object
The as-uploaded (v0) episode.
The take’s duration in seconds.
The windows kept as pieces.
A window of a take, in take time.
object
Start, seconds from the take’s start.
End, seconds from the take’s start.
The idle stretches the cut found.
A window of a take, in take time.
object
Start, seconds from the take’s start.
End, seconds from the take’s start.
The pieces, in span order, in the version the split made.
The split event.
Takes the run left whole or could not split.
The dataset’s own task names.
object
None, outcome_split, single, too_many, sparse, codes or informative.
One line on why.
The rule offers the names (informative).
A person may confirm them (informative, sparse).
One per distinct name, most episodes first.
One distinct task name.
object
Ts_
The string as the dataset gives it.
Episodes that carry it.
It looks like a rig or session code.
It can never be confirmed (see blocked_reason).
The person’s decision; unset when nobody decided.
object
The task name the person gave it.
True: use it as a task. False: a person said no.
Who decided.
object
What kind of actor it is.
The person’s user id when kind is PERSON; empty otherwise.
The person’s display name at the time, for rendering without a lookup.
The rule code, or the model id (e.g. “gemini-robotics-er”), when not a person.
The run a model or rule finding came from, when it has one.
The API key’s id when a person acted through one; empty for a session. Never the key itself.
Signed identity evidence recorded with the change, kept apart from the principal above. Unset on older records and wherever none was signed.
object
How the principal authenticated.
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.
The initiator’s display name at the time, never their email.
The user id of the key’s creator at the time. Not who used the key.
Who owned the key at the time.
The owning space’s id (a workspace or the organization) when
credential_owner is SPACE.
When.
Why it is blocked: outcome words, a code, already a task label.
The tasks discovery found; unset on runs from before discovery.
object
Where discovery is.
The tasks, by task_key.
One discovered task.
object
The matched Task or the draft’s id; empty when no draft was made.
Sha256 of the task’s sorted member take ids.
The task’s name: its Task’s name when it has one (as the Task’s page shows it), else the name discovery gave it.
Takes in the task.
The task’s health: ok, or the reasons it may hold more than one task, comma-separated (inverse, margin), or flagged without one.
The picked reference takes’ ids, best first.
Takes no task holds (their map failed): not linked, not checked.
Why discovery fell back or failed; empty otherwise.
Unset when the upload’s task names were not assessed (a fallback).
object
The names are offered, the discovered tasks disagree with them, and none is confirmed yet.
The sentence that says how they disagree; empty when they agree.
Takes without a published annotation. Above zero, the run is partial: the other takes’ annotations stand.
The first 100 of those takes, each with why.
A take whose proposed annotation did not publish.
object
Accounts/{account}/datasets/{dataset}/episodes/{episode}
Why, as the run recorded it.
What the run flagged without failing, one sentence each: a model that
answered in place of the one asked for (“3 reads answered by
Example
{ "state": "STATE_UNSPECIFIED", "taskStrings": { "candidates": [ { "confirmation": { "actor": { "kind": "KIND_UNSPECIFIED", "attribution": { "authentication": "AUTHENTICATION_UNSPECIFIED", "credentialOwner": "CREDENTIAL_OWNER_UNSPECIFIED" } } } } ] }, "discovery": { "status": "STATUS_UNSPECIFIED" }}default
Section titled “default ”Default error response
The Status type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by gRPC. Each Status message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the API Design Guide.
object
The status code, which should be an enum value of [google.rpc.Code][google.rpc.Code].
A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the [google.rpc.Status.details][google.rpc.Status.details] field, or localized by the client.
A list of messages that carry the error details. There is a common set of message types for APIs to use.
Contains an arbitrary serialized message along with a @type that describes the type of the serialized message.
object
The type of the serialized message.
Example generated
{ "code": 1, "message": "example", "details": [ { "@type": "example" } ]}