Skip to main content
Version: 2.3.0

Update Processing Workflow

Last updated: September 16, 2026
Updated by: VNPT eContract's team


Purpose​

Update the processing workflow for a document created in section 4.1 and updated in section 4.2 (if any), including the list of processing participants, the processing order, the processing permissions, and the corresponding signature position information on each component file (fileInfoId) of the document.

  • Request URL: /v2/documents/update-process
  • HTTP method: POST
  • HTTP content-type: application/json
  • Authorize: Bearer token
  • Parameter:
KeyTypeRequiredDescription
idGUIDYesDocumentId of the document for which the workflow is to be configured (obtained from the API response of section 4.1 or 4.2)
processInOrderbooleanYesWhether processing is sequential (true) or parallel (false)
processesarrayYesList of processing steps - details below
processes[].orderNointYesProcessing order (if processInOrder = true)
processes[].processedByUserCodestring(50)YesCode of the user assigned to process this step
processes[].accessPermissionCodestring(50)YesProcessing permission code (e.g.: "D" — Digital signature; see the processing permission catalog in the Appendix for more details)
processes[].positionstringYesCoordinates of the signature position on the file, format "x1,y1,x2,y2"
processes[].pageSignintYesPage to be signed within the file
processes[].fileInfoIdGUIDYesID of the component file to be processed (obtained from downloadFileUrls[].id in the latest response of the API in section 4.1 or 4.2)

Sample request​

{
"id": "f5b0c112-d357-44ce-b8a8-7cb77d3d0b9e",
"processInOrder": true,
"processes": [
{
"orderNo": 1,
"processedByUserCode": "user001",
"accessPermissionCode": "D",
"position": "234,514,374,574",
"pageSign": 1,
"fileInfoId": "6865273c-90f5-49cd-403b-08defc11a479"
},
{
"orderNo": 2,
"processedByUserCode": "user002",
"accessPermissionCode": "D",
"position": "334,614,474,674",
"pageSign": 1,
"fileInfoId": "a940f960-213c-4a89-403c-08defc11a479"
}
]
}

Sample response body​

{
"data": {
"id": "f5b0c112-d357-44ce-b8a8-7cb77d3d0b9e",
"createdDate": "2026-08-13T17:55:40.8560899",
"lastModifiedDate": "2026-08-13T17:58:15.7799973+07:00",
"no": "DOCUMENT-MF-001",
"subject": "Multi-file document DOCUMENT-MF-001 - Updated",
"hasVerified": false,
"hasVerify": false,
"hasSeal": false,
"requireVerifiedUserSigning": false,
"status": {
"value": 1,
"description": "New"
},
"contractStatus": {
"value": 0,
"description": "Undefined"
},
"description": "Example of updating document DOCUMENT-MF-001",
"createdByUserId": 27938,
"processRecipientCount": 2,
"waitingProcesses": [
],
"processInOrder": true,
"isWaitToSignDraw": false,
"isWaitToSignDigital": false,
"isWaitToApprove": false,
"isWaitToFillData": false,
"isWaitToCoordinate": false,
"isWaitToESign": false,
"isWaitToEkyc": false,
"isFillable": false,
"type": {
"id": 8950,
"code": "DOCID",
"name": "Test document",
"documentCount": 1,
"enableVnptSeal": false,
"requireVerifiedUserSigning": false,
"children": [
]
},
"processes": [
{
"id": "bba867ee-09f9-41f6-6ddb-08def929c6d3",
"createdDate": "2026-08-13T17:58:15.7798094+07:00",
"comId": 7354,
"isOrder": true,
"orderNo": 1,
"pageSign": 1,
"position": "234,514,374,574",
"displayType": {
"value": 0,
"description": "0"
},
"accessPermission": {
"value": 4,
"description": "Sign digital"
},
"status": {
"value": 1,
"description": "Waiting"
},
"processedByUserId": 59407,
"documentId": "f5b0c112-d357-44ce-b8a8-7cb77d3d0b9e",
"fillingItems": [
],
"fileInfoId": "6865273c-90f5-49cd-403b-08defc11a479",
"attachments": [
]
},
{
"id": "129da2f9-85d4-4390-6ddc-08def929c6d3",
"createdDate": "2026-08-13T17:58:15.7799953+07:00",
"comId": 7354,
"isOrder": true,
"orderNo": 2,
"pageSign": 1,
"position": "334,614,474,674",
"displayType": {
"value": 0,
"description": "0"
},
"accessPermission": {
"value": 4,
"description": "Sign digital"
},
"status": {
"value": 1,
"description": "Waiting"
},
"processedByUserId": 27938,
"documentId": "f5b0c112-d357-44ce-b8a8-7cb77d3d0b9e",
"fillingItems": [
],
"fileInfoId": "a940f960-213c-4a89-403c-08defc11a479",
"attachments": [
]
}
],
"accessibleViewProcesses": [
],
"histories": [
{
"createdDate": "2026-08-13T17:58:15.7800305+07:00",
"requestType": {
"value": 0,
"description": "Web"
},
"ipAddress": "10.70.39.34",
"activity": {
"value": 2,
"description": "Update document"
}
}
],
"attachments": [],
"relatedDocuments": [],
"linkedDocuments": [],
"messages": [],
"fillingItems": [],
"sharedUsers": [],
"isMarkStar": false,
"downloadFileUrls": [
{
"id": "6865273c-90f5-49cd-403b-08defc11a479",
"fileName": "Tai-lieu-chinh-01.pdf",
"downloadUrl": "{HOST}/api/Download?token=...",
"downloadWatermarkMetadataUrl": "{HOST}/api/Download?token=...",
"orderNo": 1,
"size": 358043,
"fileType": {
"value": 0,
"description": "General"
},
"hasSeal": false
},
{
"id": "a940f960-213c-4a89-403c-08defc11a479",
"fileName": "Phu-luc-02.pdf",
"downloadUrl": "{HOST}/api/Download?token=...",
"downloadWatermarkMetadataUrl": "{HOST}/api/Download?token=...",
"orderNo": 2,
"size": 262757,
"fileType": {
"value": 0,
"description": "General"
},
"hasSeal": false
}
],
"zipDownloadUrl": "{HOST}/api/Download/MergeFilesZipDocument?token=...",
"zipDownloadOriginalUrl": "{HOST}/api/Download/MergeFilesZipDocument?token=...",
"zipDownloadWatermarkMetadataUrl": "{HOST}/api/Download/MergeFilesZipDocument?token=...",
"requiresSealSendConfirmation": false,
"fixedPosition": false,
"isLaborContractDocument": false
},
"success": true,
"code": 0,
"messages": [
"Update document success"
]
}

Response Body Description​

KeyTypeDescription
successbooleanResponse status of the request (true: Success, false: Failure)
codeintResponse code from the system
messagesarrayList of messages or errors returned from the system (Example: ["Update document success"])
dataobjectObject containing details of the document after updating the processing workflow (see details below)

Details of data:​

The fields id, createdDate, lastModifiedDate, no, subject, description, status, contractStatus, type, downloadFileUrls, zipDownloadUrl, zipDownloadOriginalUrl, zipDownloadWatermarkMetadataUrl... have the same meaning as in the Create Multi-file Document API (section 4.1). The table below only describes the fields whose values change or that are newly generated after the processing workflow is updated for the document.

KeyTypeDescription
processRecipientCountintNumber of participants in the processing workflow that was just configured
processInOrderbooleanWhether processing is sequential (true) or parallel (false), taken from the value sent in the request
processesarrayList of processing steps that were just configured — details of each element (see below)

Details of the processes list:​

A list containing the processing step objects within the document workflow, with the properties of 1 element:

KeyTypeDescription
idGUIDId of the processing step, generated by the system
createdDatedatetimeTime the processing step was created
comIdintCompany Id of the processor
isOrderbooleanWhether the processing step belongs to a sequential workflow
orderNointProcessing order
pageSignintPage number to be signed within the file
positionstringCoordinates of the signature position on the file, format "x1,y1,x2,y2"
displayTypeobjectSignature display type (see the Enum catalog in the Appendix)
accessPermissionobjectProcessing permission granted for this step (e.g.: Digital signature - see the Enum catalog in the Appendix)
statusobjectStatus of the processing step (e.g.: Waiting - Pending processing)
processedByUserIdintId of the user assigned to process this step
documentIdstring (GUID)Id of the document containing this processing step
fillingItemsarrayList of data fields to be filled in at this step (if any)
fileInfoIdstring (GUID)ID of the component file to be processed at this step
attachmentsarrayAttachments generated at this processing step (if any)
Note

The response returns the full document information after the processing workflow update: the processes array shows the processing steps that were just configured (status "Waiting" - Pending processing), and processRecipientCount shows the number of participants in the processing workflow.