---
title: Get request input
slug: api-guide/get-request-input
docTags: 
createdAt: 2026-09-23T13:13:26.096Z
---

{
  "id": "YaaZlkv0BTJQZvcA2r4-y",
  "type": "api-oas-v2",
  "data": {
    "method": "GET",
    "url": "https://api.app.kognic.com/v2/request-inputs/{requestInputId}",
    "servers": [
      {
        "url": "https://api.app.kognic.com/v2/request-inputs/{requestInputId}"
      }
    ],
    "name": "Get request input",
    "description": "<p>Get a single request input, its status and its current workflow progress by request-input id.</p>\n<p><strong>Validation:</strong> flexible workflows only (a legacy-workflow request returns 400); returns 404 if the input\nor its request does not exist.</p>\n<p><strong>Access:</strong> the caller must be a collaborator on the request (owner, producer or reviewer) with a workspace\nrole in the project, otherwise 403.</p>\n<p><strong>Per-input field availability:</strong></p>\n<ul>\n<li><code>status</code> is <code>not_started</code> until work begins on the input, <code>completed</code> while it has a valid (non-invalidated)\ndelivery annotation, and <code>in_progress</code> otherwise. A re-correction invalidates the delivery annotation, so an\ninput can go back from <code>completed</code> to <code>in_progress</code>.</li>\n<li><code>progressDetails</code> is populated only when the caller has access to the input's current phase/action. A\nproducer sees every phase; a reviewer sees only the phases and actions granted to them, so an input\ncurrently sitting in a phase they cannot see returns <code>progressDetails</code> as <code>null</code>.</li>\n<li><code>progressDetails.currentTask</code> is <code>null</code> when no task is ongoing (for example the last task completed and\nthe input is awaiting a decision).</li>\n<li><code>progressDetails.currentWorkflowStage</code> splits into <code>phase</code>, <code>action</code> and a combined <code>name</code> (for example\n\"Review 1: Correct\"). <code>phase.id</code> identifies one phase of this request, while\n<code>phase.phaseDefinition.id</code> identifies the <em>kind</em> of phase (for example <code>annotate</code>, <code>correct</code>,\n<code>sampled-review</code>) and is the same for every request and project using that phase type, so it can be used\nto group inputs across requests. <code>action</code> is absent when the input is between actions — for example\nwaiting for a decision after the phase's last task completed.</li>\n<li><code>progressDetails.availableForIntegrationReview</code> is <code>true</code> only for an input sitting in an integration\nreview phase and awaiting a verdict, that is, one an integration review can be posted for right now. It\nturns <code>false</code> once the verdict is in, while a rejected input is being corrected, and for every input\noutside such a phase.</li>\n<li><code>lastCompletedAnnotationId</code> is the judgement produced by the input's most recently completed assignment. It\nis <code>null</code> until at least one task has completed and is not access-gated.</li>\n<li><code>createdAt</code>, <code>lastUpdatedAt</code> and <code>completedAt</code> are never access-gated. <code>createdAt</code> is when the input was\nadded to the request; <code>lastUpdatedAt</code> is its last workflow state change (entering a phase, a task being\ncreated, or completing a phase — not edits inside an ongoing task); <code>completedAt</code> holds the production\ntime of the input's current valid delivery annotation and is <code>null</code> whenever <code>status</code> is not <code>completed</code>.</li>\n</ul>",
    "contentType": "application/json",
    "request": {
      "pathParameters": [
        {
          "kind": "required",
          "name": "requestInputId",
          "type": "string<uuid>",
          "description": "",
          "format": "uuid"
        }
      ],
      "headerParameters": [
        {
          "name": "accept",
          "type": "string",
          "kind": "optional",
          "description": "Generated from available response content types",
          "enum": [
            "application/json"
          ],
          "default": "application/json"
        }
      ],
      "queryParameters": [],
      "bodyDataParameters": [],
      "formDataParameters": [],
      "oAuthParameters": [],
      "cookieParameters": []
    },
    "responses": [
      {
        "statusCode": "200",
        "description": "",
        "jsonExample": "",
        "isExpanded": true,
        "schema": [
          {
            "kind": "optional",
            "type": "object",
            "description": "",
            "customType": "Enveloped_RequestInputV2",
            "schema": [
              {
                "name": "data",
                "kind": "required",
                "type": "object",
                "description": "",
                "modelRef": "#/components/schemas/RequestInputV2",
                "customType": "RequestInputV2",
                "schema": [
                  {
                    "name": "completedAt",
                    "kind": "optional",
                    "type": "string<date-time>",
                    "description": "<p>When the input's current valid delivery annotation was produced. Set whenever <code>status</code> is\n<code>completed</code> and absent otherwise: a re-correction invalidates the annotation and clears this\nfield, and re-delivery sets it again to a later value. Not a first-delivery audit stamp —\nclients polling for completion must tolerate it reverting to <code>null</code>.</p>",
                    "format": "date-time"
                  },
                  {
                    "name": "createdAt",
                    "kind": "required",
                    "type": "string<date-time>",
                    "description": "When the input was added to the request. Not the scene's own creation time.",
                    "format": "date-time"
                  },
                  {
                    "name": "id",
                    "kind": "required",
                    "type": "string<uuid>",
                    "description": "",
                    "format": "uuid"
                  },
                  {
                    "name": "lastCompletedAnnotationId",
                    "kind": "optional",
                    "type": "string<uuid>",
                    "description": "",
                    "format": "uuid"
                  },
                  {
                    "name": "lastUpdatedAt",
                    "kind": "required",
                    "type": "string<date-time>",
                    "description": "<p>The input's last workflow state change: entering a phase, a task being created for it, or the\ninput completing a phase. Edits made inside an ongoing task do not bump it.</p>",
                    "format": "date-time"
                  },
                  {
                    "name": "progressDetails",
                    "kind": "optional",
                    "type": "object",
                    "description": "The input's current workflow progress. Only returned when the caller has access to the input's current phase.",
                    "modelRef": "#/components/schemas/InputProgressDetails",
                    "customType": "InputProgressDetails",
                    "schema": [
                      {
                        "name": "availableForIntegrationReview",
                        "kind": "required",
                        "type": "boolean",
                        "description": "<p>Whether an integration review verdict can be posted for the input right now: it sits in an\nintegration review phase and is awaiting a verdict. False for every input outside such a\nphase.</p>"
                      },
                      {
                        "name": "currentTask",
                        "kind": "optional",
                        "type": "object",
                        "description": "",
                        "modelRef": "#/components/schemas/CurrentTask",
                        "customType": "CurrentTask",
                        "schema": [
                          {
                            "name": "assignedUserId",
                            "kind": "optional",
                            "type": "integer<int64>",
                            "description": "",
                            "format": "int64"
                          },
                          {
                            "name": "isOngoing",
                            "kind": "required",
                            "type": "boolean",
                            "description": ""
                          },
                          {
                            "name": "taskId",
                            "kind": "required",
                            "type": "string<uuid>",
                            "description": "",
                            "format": "uuid"
                          },
                          {
                            "name": "taskType",
                            "kind": "required",
                            "type": "string",
                            "description": "",
                            "modelRef": "#/components/schemas/TaskType",
                            "customType": "TaskType",
                            "schema": []
                          }
                        ]
                      },
                      {
                        "name": "currentWorkflowStage",
                        "kind": "required",
                        "type": "object",
                        "description": "<p>The workflow stage an input is currently in. <code>name</code> combines the phase and action names, ex: \"Review 1: Correct\".</p>",
                        "modelRef": "#/components/schemas/WorkflowStageV2",
                        "customType": "WorkflowStageV2",
                        "schema": [
                          {
                            "name": "action",
                            "kind": "optional",
                            "type": "object",
                            "description": "The action within the phase that the input is currently at.",
                            "modelRef": "#/components/schemas/PhaseAction",
                            "customType": "PhaseAction",
                            "schema": [
                              {
                                "name": "id",
                                "kind": "required",
                                "type": "string<uuid>",
                                "description": "",
                                "format": "uuid"
                              },
                              {
                                "name": "name",
                                "kind": "required",
                                "type": "string",
                                "description": ""
                              }
                            ]
                          },
                          {
                            "name": "name",
                            "kind": "required",
                            "type": "string",
                            "description": ""
                          },
                          {
                            "name": "phase",
                            "kind": "required",
                            "type": "object",
                            "description": "<p>One phase of one request's workflow. Unlike <code>phaseDefinition.id</code>, <code>id</code> is unique to this request.</p>",
                            "modelRef": "#/components/schemas/Phase",
                            "customType": "Phase",
                            "schema": [
                              {
                                "name": "id",
                                "kind": "required",
                                "type": "string<uuid>",
                                "description": "",
                                "format": "uuid"
                              },
                              {
                                "name": "name",
                                "kind": "required",
                                "type": "string",
                                "description": ""
                              },
                              {
                                "name": "phaseDefinition",
                                "kind": "required",
                                "type": "object",
                                "description": "The phase type of a workflow stage. The id is the same for every request and project using this kind of phase.",
                                "modelRef": "#/components/schemas/PhaseDefinition",
                                "customType": "PhaseDefinition",
                                "schema": [
                                  {
                                    "name": "id",
                                    "kind": "required",
                                    "type": "string<uuid>",
                                    "description": "",
                                    "format": "uuid"
                                  },
                                  {
                                    "name": "name",
                                    "kind": "required",
                                    "type": "string",
                                    "description": ""
                                  }
                                ]
                              }
                            ]
                          }
                        ]
                      }
                    ]
                  },
                  {
                    "name": "requestId",
                    "kind": "required",
                    "type": "string<uuid>",
                    "description": "",
                    "format": "uuid"
                  },
                  {
                    "name": "sceneId",
                    "kind": "required",
                    "type": "string<uuid>",
                    "description": "",
                    "format": "uuid"
                  },
                  {
                    "name": "status",
                    "kind": "required",
                    "type": "string",
                    "description": "<p>not_started until work begins, completed while a valid delivery annotation exists, in_progress otherwise.</p>",
                    "modelRef": "#/components/schemas/RequestInputStatus",
                    "customType": "RequestInputStatus",
                    "schema": []
                  }
                ]
              }
            ],
            "modelRef": "#/components/schemas/Enveloped_RequestInputV2",
            "isExpanded": true
          }
        ]
      },
      {
        "statusCode": "400",
        "description": "Bad request",
        "jsonExample": "",
        "isExpanded": true,
        "schema": [
          {
            "kind": "optional",
            "type": "object",
            "description": "",
            "customType": "BadRequest",
            "schema": [
              {
                "name": "errorCode",
                "kind": "optional",
                "type": "string",
                "description": ""
              },
              {
                "name": "message",
                "kind": "required",
                "type": "string",
                "description": ""
              }
            ],
            "modelRef": "#/components/schemas/BadRequest",
            "isExpanded": true
          }
        ]
      },
      {
        "statusCode": "401",
        "description": "Unauthorized",
        "jsonExample": "",
        "isExpanded": true,
        "schema": [
          {
            "kind": "optional",
            "type": "object",
            "description": "",
            "customType": "Unauthorized",
            "schema": [
              {
                "name": "message",
                "kind": "required",
                "type": "string",
                "description": ""
              }
            ],
            "modelRef": "#/components/schemas/Unauthorized",
            "isExpanded": true
          }
        ]
      },
      {
        "statusCode": "403",
        "description": "Forbidden",
        "jsonExample": "",
        "isExpanded": true,
        "schema": [
          {
            "kind": "optional",
            "type": "object",
            "description": "",
            "customType": "Forbidden",
            "schema": [
              {
                "name": "message",
                "kind": "required",
                "type": "string",
                "description": ""
              }
            ],
            "modelRef": "#/components/schemas/Forbidden",
            "isExpanded": true
          }
        ]
      },
      {
        "statusCode": "404",
        "description": "Not found",
        "jsonExample": "",
        "isExpanded": true,
        "schema": [
          {
            "kind": "optional",
            "type": "object",
            "description": "",
            "customType": "NotFound",
            "schema": [
              {
                "name": "message",
                "kind": "required",
                "type": "string",
                "description": ""
              }
            ],
            "modelRef": "#/components/schemas/NotFound",
            "isExpanded": true
          }
        ]
      },
      {
        "statusCode": "413",
        "description": "Payload too large",
        "jsonExample": "",
        "isExpanded": true,
        "schema": [
          {
            "kind": "optional",
            "type": "object",
            "description": "",
            "customType": "PayloadTooLarge",
            "schema": [
              {
                "name": "message",
                "kind": "required",
                "type": "string",
                "description": ""
              }
            ],
            "modelRef": "#/components/schemas/PayloadTooLarge",
            "isExpanded": true
          }
        ]
      },
      {
        "statusCode": "500",
        "description": "Internal server error",
        "jsonExample": "",
        "isExpanded": true,
        "schema": [
          {
            "kind": "optional",
            "type": "object",
            "description": "",
            "customType": "InternalServerError",
            "schema": [
              {
                "name": "message",
                "kind": "required",
                "type": "string",
                "description": ""
              }
            ],
            "modelRef": "#/components/schemas/InternalServerError",
            "isExpanded": true
          }
        ]
      }
    ],
    "hasXCodeSamples": false,
    "examples": {
      "languages": [
        {
          "id": "AlcDuDBUr-tpoWy-OH-tj",
          "language": "python",
          "label": "Python",
          "code": "import requests\nimport json\n\nurl = \"https://api.app.kognic.com/v2/request-inputs/{requestInputId}\"\n\npayload = {}\nheaders = {\n   'accept': 'application/json',\n   'content-type': 'application/json'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
        }
      ],
      "selectedLanguageId": "AlcDuDBUr-tpoWy-OH-tj"
    },
    "results": {
      "languages": [
        {
          "id": "bxzYzDs_h4QhzCuY8Wtw9",
          "language": "200",
          "code": "{\n  \"data\": {\n    \"completedAt\": \"\",\n    \"createdAt\": \"\",\n    \"id\": \"\",\n    \"lastCompletedAnnotationId\": \"\",\n    \"lastUpdatedAt\": \"\",\n    \"progressDetails\": {\n      \"availableForIntegrationReview\": false,\n      \"currentTask\": {\n        \"assignedUserId\": \"\",\n        \"isOngoing\": false,\n        \"taskId\": \"\",\n        \"taskType\": \"\"\n      },\n      \"currentWorkflowStage\": {\n        \"action\": {\n          \"id\": \"\",\n          \"name\": \"\"\n        },\n        \"name\": \"\",\n        \"phase\": {\n          \"id\": \"\",\n          \"name\": \"\",\n          \"phaseDefinition\": {\n            \"id\": \"\",\n            \"name\": \"\"\n          }\n        }\n      }\n    },\n    \"requestId\": \"\",\n    \"sceneId\": \"\",\n    \"status\": \"\"\n  }\n}"
        },
        {
          "id": "PXqlNBiRllXkpgxybnn8A",
          "language": "400",
          "code": "// Bad request\n{\n  \"errorCode\": \"\",\n  \"message\": \"\"\n}"
        },
        {
          "id": "Jh7tyibrUUcDRWsI8hG5C",
          "language": "401",
          "code": "// Unauthorized\n{\n  \"message\": \"\"\n}"
        },
        {
          "id": "wDHVhyX9XF02P-FwdGUL8",
          "language": "403",
          "code": "// Forbidden\n{\n  \"message\": \"\"\n}"
        },
        {
          "id": "reoa7ksLzBnWNzi67ky7t",
          "language": "404",
          "code": "// Not found\n{\n  \"message\": \"\"\n}"
        },
        {
          "id": "TD_UUlUyyCsLYVrDZioJH",
          "language": "413",
          "code": "// Payload too large\n{\n  \"message\": \"\"\n}"
        },
        {
          "id": "qn6_vDJsh2FIeZCqaMnYI",
          "language": "500",
          "code": "// Internal server error\n{\n  \"message\": \"\"\n}"
        }
      ],
      "selectedLanguageId": "bxzYzDs_h4QhzCuY8Wtw9"
    }
  },
  "children": [
    {
      "text": ""
    }
  ]
}