Get Status of an Extraction Job
/documents/api/1.2/files/{fileId}/_extract/{jobId}
Returns the status of an extraction job
Request
- application/json
- application/xml
-
fileId: string
Globally unique identifier (GUID) of the ZIP file to be extracted into a folder
-
jobId: string
Globally unique identifier (GUID) for the extraction job.
-
includeIgnoredItemDetails: boolean
An optional boolean value that defaults to
true
. Iffalse
theignoredItems
array is not included in the response -
includeSkippedItemDetails: boolean
An optional boolean value that defaults to
true
. Iffalse
theskippedItems
array is not included in the response
Response
- application/json
- application/xml
200 Response
The request was fulfilled.
object
-
completed(optional):
boolean
A boolean indicating if the job in complete
-
completedPercentage(optional):
integer
A number between 0 and 100, capturing how much of the process has been completed.
-
filesCreated(optional):
integer
The number of files created by the extraction job.
-
filesIgnored(optional):
integer
The number of files ignored by the extraction job.
-
filesNameAdjusted(optional):
integer
The number of extracted file names that were renamed by the extraction job.
-
filesOverwritten(optional):
integer
The number of existing files that were over written by the extraction job.
-
filesProcessed(optional):
integer
The number of files processed by the extraction job.
-
filesSkipped(optional):
integer
The number of files not extracted by the extraction job.
-
filesVersioned(optional):
integer
The number of existing files that had the version increased by the extraction job.
-
ignoredItems(optional):
object ignoredItems
An array of zip filenames that were ignored by the extraction job.
-
message(optional):
string
A brief message about the status of the extraction job.
-
progress(optional):
string
A word indicating the state of the extraction job. Possibilities include:
SUCCEEDED
-- Job Completed SuccessfullyFAILED
-- Job FailedPROCESSING
-- Job is processingPENDING
-- Job is pendingABORTED
-- Job aborted
-
skippedItems(optional):
object skippedItems
An array of zip filenames that were skipped by the extraction job.
object
-
object
FilesSkippedIgnoredByExtractZip
Information about why a file was not extracted by the extraction job
object
-
object
FilesSkippedIgnoredByExtractZip
Information about why a file was not extracted by the extraction job
object
-
error(optional):
string
A brief error message about the status of this item.
-
id(optional):
string
The filename in the zip that was not extracted.
-
type(optional):
string
The object type,
file
ordirectory
that was not extracted.
{
"completed":"true",
"completedPercentage":"100",
"errorCode":"0",
"filesCreated":"3",
"filesIgnored":"0",
"filesNameAdjusted":"0",
"filesOverwritten":"0",
"filesProcessed":"3",
"filesSkipped":"0",
"filesVersioned":"0",
"message":"Zip processing completed",
"progress":"SUCCEEDED",
"type":"file"
}
400 Response
The request is invalid as described by the error returned.
403 Response
Forbidden if the user does not have read permission.
Examples
The following example gets the status a completed extraction job.
GET .../files/DC765D5CD846E67B395AE676435D1DBF0C5B3FCDE317/_extract/ZX-E83150A29A911D33321FE8A9A6C5814F1643066913096
Request Header
None.
Request Body
None.
HTTP Status Code
HTTP_STATUS = 200
JSON Response
{ "completed": "true", "completedPercentage": "100", "errorCode": "0", "filesCreated": "0", "filesIgnored": "0", "filesNameAdjusted": "0", "filesOverwritten": "0", "filesProcessed": "3", "filesSkipped": "0", "filesVersioned": "0", "message": "Zip processing completed", "progress": "SUCCEEDED", "type": "file" }
Example 2
The following example gets the status a completed extraction job, but the files were skipped as the files were already present in the folder.
GET .../files/DC765D5CD846E67B395AE676435D1DBF0C5B3FCDE317/_extract/ZX-930F35D291CEA348255D1974A84CB3571643127919210
Request Header
None.
Request Body
None.
HTTP Status Code
HTTP_STATUS = 200
JSON Response
{ "completed": "true", "completedPercentage": "100", "errorCode": "0", "filesCreated": "0", "filesIgnored": "0", "filesNameAdjusted": "0", "filesOverwritten": "0", "filesProcessed": "0", "filesSkipped": "3", "filesVersioned": "0", "message": "Zip processing completed", "progress": "SUCCEEDED", "skippedItems": [ { "id": "exif-xmp.jpg", "type": "file", "error": "Entry skipped - existing file with same name in folder" }, { "id": "Mugs.jpg", "type": "file", "error": "Entry skipped - existing file with same name in folder" }, { "id": "Mugs.png", "type": "file", "error": "Entry skipped - existing file with same name in folder" } ], "type": "file" }
Example 3
The following example gets the status on an in-process extraction job.
GET .../files/DC765D5CD846E67B395AE676435D1DBF0C5B3FCDE317/_extract/ZX-930F35D291CEA348255D1974A84CB3571643127919210
Request Header
None.
Request Body
None.
HTTP Status Code
HTTP_STATUS = 200
JSON Response
{ "completed": "false", "completedPercentage": "25", "errorCode": "0", "filesCreated": "0", "filesIgnored": "1", "filesNameAdjusted": "0", "filesOverwritten": "0", "filesProcessed": "0", "filesSkipped": "0", "filesVersioned": "0", "message": "Processing entry 6image/./exif-xmp.jpg", "progress": "PROCESSING", "type": "file" }
Example 4
The following example requests the status on a job owned by a different user. The error returned is not very detailed to prevent data exposure.
GET .../files/DC765D5CD846E67B395AE676435D1DBF0C5B3FCDE317/_extract/ZX-930F35D291CEA348255D1974A84CB3571643127919210
Request Header
None.
Request Body
None.
HTTP Status Code
HTTP_STATUS = 400
JSON Response
{ "errorCode": "-96", "errorKey": "!csCloudBulkExtractionRequestJobNotValid", "errorMessage": "Extraction job ID not valid.", "errorType": "file", "title": "Extraction job ID not valid.", "type": "https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html" }