{"record":{"id":"3b241c74a860598e","repo":"PaddlePaddle/PaddleOCR","slug":"batch-response-data-must-contain-list-extractresu","errorCode":null,"errorMessage":"Batch response data must contain list 'extractResult'.","messagePattern":"Batch response data must contain list 'extractResult'\\.","errorType":"exception","errorClass":"ResponseFormatError","httpStatus":null,"severity":"error","filePath":"paddleocr/_api_client/_core.py","lineNumber":198,"sourceCode":"    return job_id\n\n\ndef validate_result_json_url(data: dict) -> str:\n    result_url = data.get(\"resultUrl\")\n    if not isinstance(result_url, dict):\n        raise ResponseFormatError(\"Done job response must contain object 'resultUrl'.\")\n    json_url = result_url.get(\"jsonUrl\")\n    if not isinstance(json_url, str) or not json_url:\n        raise ResponseFormatError(\n            \"Done job response resultUrl must contain non-empty string 'jsonUrl'.\"\n        )\n    return json_url\n\n\ndef parse_batch_status(batch_id: str, data: dict) -> BatchStatus:\n    result = data.get(\"extractResult\")\n    if not isinstance(result, list):\n        raise ResponseFormatError(\n            \"Batch response data must contain list 'extractResult'.\"\n        )\n    jobs = []\n    for item in result:\n        if not isinstance(item, dict):\n            raise ResponseFormatError(\"Batch extractResult items must be objects.\")\n        job_id = item.get(\"jobId\")\n        if not isinstance(job_id, str) or not job_id:\n            raise ResponseFormatError(\n                \"Batch extractResult items must contain non-empty string 'jobId'.\"\n            )\n        jobs.append(job_status_from_data(job_id, item))\n    return BatchStatus(batch_id=batch_id, jobs=jobs)\n","sourceCodeStart":180,"sourceCodeEnd":212,"githubUrl":"https://github.com/PaddlePaddle/PaddleOCR/blob/2661c7c0ef5c613e8f93c6e93b2e052399f0f854/paddleocr/_api_client/_core.py#L180-L212","documentation":"Error \"Batch response data must contain list 'extractResult'.\" thrown in PaddlePaddle/PaddleOCR.","triggerScenarios":"Raised by parse_batch_status() when the batch status response data lacks a list field 'extractResult'.","commonSituations":"A batch response was missing the 'extractResult' list. Occurs when querying a batch before it finishes or with an invalid batch id. Wait for completion and verify the batch identifier.","solutions":["Verify you are querying batch status with a valid batch_id; the response data must contain a list 'extractResult'.","Check the raw response JSON to confirm the server returned the expected batch status schema.","Confirm the API version matches the SDK; schema changes can rename or remove extractResult."],"exampleFix":"result = data.get(\"extractResult\")\nif not isinstance(result, list):\n    print(data)  # inspect actual batch status payload","handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"2661c7c0ef5c613e8f93c6e93b2e052399f0f854","analyzedAt":"2026-08-14T20:17:30.180Z","schemaVersion":2},"datasetVersion":"2026-08-15T17:31:12.345Z"}