tvpl.api

<back to all web services

SignatureRequest

Requires Authentication
The following routes are available for this service:
POST/Signature
import java.math.*
import java.util.*
import net.servicestack.client.*


open class SignatureRequest
{
    var fileId:Int? = null
    var originalFileId:Int? = null
    var workflowId:Int? = null
    var stepId:Int? = null
    var subDocumentId:Int? = null
}

open class SignatureResponse : IResponseRequest
{
    var code:Int? = null
    var message:String? = null
    var signedFile:UploadedFiles? = null
    var signLog:DocumentSignLog? = null
}

open class UploadedFiles : BasicUploadedFile()
{
    var id:Long? = null
    var uploadedFile:String? = null
    var subDocumentId:Int? = null
    var stepId:Int? = null
    var code:Int? = null
}

open class BasicUploadedFile
{
    var fileName:String? = null
    var filekey:String? = null
    var fileUrl:String? = null
    var checksum:String? = null
    var eTag:String? = null
    var fileSize:Long? = null
}

open class DocumentSignLog
{
    var id:Long? = null
    var documentId:Long? = null
    var subDocumentId:Long? = null
    var stepId:Int? = null
    var fileId:Long? = null
    @StringLength(50)
    var signProvider:String? = null

    @StringLength(100)
    var certSerial:String? = null

    var isSuccess:Boolean? = null
    @StringLength(500)
    var signMessage:String? = null

    var signBy:Long? = null
    var signAt:Date? = null
    var requestId:UUID? = null
    var originalFileId:Int? = null
    var effectBeginDate:Date? = null
    var effectEndDate:Date? = null
}

Kotlin SignatureRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /Signature HTTP/1.1 
Host: etc-api.vsmlab.vn 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	fileId: 0,
	originalFileId: 0,
	workflowId: 0,
	stepId: 0,
	subDocumentId: 0
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	code: 0,
	message: String,
	signedFile: 
	{
		id: 0,
		uploadedFile: String,
		subDocumentId: 0,
		stepId: 0,
		code: 0,
		fileName: String,
		filekey: String,
		fileUrl: String,
		checksum: String,
		eTag: String,
		fileSize: 0
	},
	signLog: 
	{
		id: 0,
		documentId: 0,
		subDocumentId: 0,
		stepId: 0,
		fileId: 0,
		signProvider: String,
		certSerial: String,
		isSuccess: False,
		signMessage: String,
		signBy: 0,
		requestId: 00000000000000000000000000000000,
		originalFileId: 0,
		effectBeginDate: "0001-01-01T00:00:00.0000000+07:06",
		effectEndDate: "0001-01-01T00:00:00.0000000+07:06"
	}
}