GET
https://api.app.kognic.com/v1/request-inputs
List a request's inputs together with their current workflow progress, optionally narrowed to a single
scene via sceneId.
Validation: only requests on flexible workflows are supported. A legacy-workflow request returns 400,
and a 404 is returned if the request does not exist.
Access: the caller must be a collaborator on the request (owner, producer or reviewer) with a workspace
role in the project, otherwise 403.
Per-input field availability:
workflowStage and currentTask are populated only when the caller has access to the input's current
phase/action. A producer sees every phase; a reviewer sees only the phases and actions granted to them, so
an input currently sitting in a phase they cannot see returns both fields as null. currentTask is also
null when no task is ongoing (for example the last task completed and the input is awaiting a decision).
workflowStage.phaseDefinition identifies the kind of phase the input is currently in (for example
annotate, correct, sampled-review). Its id is the same for every request and project using that
phase type, so it can be used to group inputs across requests. workflowStage.requestPhaseId, by
contrast, identifies one phase instance of one request. phaseDefinition is always present whenever
workflowStage is.
lastCompletedAnnotationId is the judgement produced by the input's most recently completed assignment. It
is null until at least one task has completed and is not access-gated.
deliveryReady is true once a non-invalidated delivery annotation exists for the input; it is always
present.
createdAt, lastUpdatedAt and completedAt are never access-gated. createdAt is when the input was
added to the request; lastUpdatedAt is its last workflow state change (entering a phase, a task being
created, or completing a phase — not edits inside an ongoing task); completedAt mirrors
deliveryReady and holds the production time of the input's current valid delivery annotation. Because a
re-correction invalidates that annotation, completedAt can return to null and later be set again to a
higher value — do not treat it as a first-delivery stamp.
requestIdstring<uuid>The request whose inputs to list
sceneIdstring<uuid><p>Optional scene filter; when set, only the input for that scene is returned</p>
acceptstringGenerated from available response content types
200
400Bad request
401Unauthorized
403Forbidden
404Not found
413Payload too large
500Internal server error
import requests
import json
url = "https://api.app.kognic.com/v1/request-inputs?requestId=string<uuid>"
payload = {}
headers = {
'accept': 'application/json',
'content-type': 'application/json'
}
response = requests.request("GET", url, headers=headers, data=payload)
print(response.text)