GET
https://api.app.kognic.com/v2/request-inputs
List a request's inputs together with their current status and 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.
Paging: results are cursor-paginated and returned in a stable order. Pass metadata.nextCursorId from
a page as the next request's cursorId; the last page has no nextCursorId. A limit above
5000, and a cursorId that is not an input of this request, both return 400.
Per-input field availability:
status is not_started until work begins on the input, completed while it has a valid (non-invalidated)
delivery annotation, and in_progress otherwise. A re-correction invalidates the delivery annotation, so an
input can go back from completed to in_progress.
progressDetails is 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 progressDetails as null.
progressDetails.currentTask is null when no task is ongoing (for example the last task completed and
the input is awaiting a decision).
progressDetails.currentWorkflowStage splits into phase, action and a combined name (for example
"Review 1: Correct"). phase.id identifies one phase of this request, while
phase.phaseDefinition.id identifies the kind of phase (for example annotate, correct,
sampled-review) and is the same for every request and project using that phase type, so it can be used
to group inputs across requests. action is absent when the input is between actions — for example
waiting for a decision after the phase's last task completed.
progressDetails.availableForIntegrationReview is true only for an input sitting in an integration
review phase and awaiting a verdict, that is, one an integration review can be posted for right now. It
turns false once the verdict is in, while a rejected input is being corrected, and for every input
outside such a phase.
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.
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 holds the production
time of the input's current valid delivery annotation and is null whenever status is not completed.
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>
limitinteger<int32><p>Max inputs per page (default 1000, max 5000)</p>
cursorIdstring<uuid>Cursor from the previous page's metadata.nextCursorId
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/v2/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)