Quickstart
This guide walks you through obtaining an access token and submitting your first signature verification request to Document Validator.
Prepare Authentication
Complete:
Exit criteria:
- You have successfully obtained a Bearer access token from the token endpoint.
1. Extract the document hash and signature
Retrieve the hex-encoded SHA-256 hash and the base64-encoded PKCS7 signature from the signed document.
For JavaScript, complete Extract Signature Data From PDF (JavaScript).
Exit criteria:
- You have extracted a document hash and base64 signature from a signed document.
2. Submit the verification request
Use the access token, document hash and base64 signature from the previous step to verify them with the Signature API.
Use example from the Signature API
Exit criteria:
- A response with HTTP status code 200 is returned from the API.
3. Inspect the response
A successful response returns HTTP 200 with a verifyresult array. Each entry contains a sigcheck object with the overall result and a signerslist array with per-signer details.
Key fields on sigcheck
| Field | Description |
|---|---|
sigcheckresult | true if the overall signature verification passed. |
numberofsigs | Number of cryptographic signatures found. 0 means no recognized signature (SES). |
allsigsvalid | true if every signature in the document passed validation. |
allsigsqual | true if all signatures are qualified (QES). |
allsigsusequalcert | true if all signers used a qualified certificate. |
Key fields on each entry in signerslist
| Field | Description |
|---|---|
signaturelevel | Signature level: QES (qualified), AES (advanced). Absent for SES (empty list). |
signatureclassification | Combined classification, e.g. QES_ZERTES_SIGNATURE, AES_ZERTES_SIGNATURE. |
isqualifiedsig | true for QES; false for AES. |
isqualifiedcert | true if the signer's certificate is a qualified certificate (required for QES). |
privkeyinqualifiedsignaturecreationdevice | true if the private key was held in a QSCD (required for QES). |
signer | Signer identity — full name for QES, phone number for AES. |
dochashmatchessig | true if the document hash matches the hash embedded in the signature. |
sigcertstatus | Certificate status code (0 = valid). |
sigcertcheckerrormsg | Error message if the certificate check failed, null otherwise. |
Interpreting the signature level
signaturelevel | sigcheckresult | numberofsigs | Meaning |
|---|---|---|---|
QES | true | ≥ 1 | Qualified signature — highest legal weight. |
AES | true | ≥ 1 | Advanced signature — cryptographically verified, non-qualified certificate. |
(empty signerslist) | false | 0 | Simple signature (SES) — no cryptographic signature found. |
Exit criteria:
sigcheckresultistruefor a valid, unmodified signature.