v2.4 CURRENT PROTOCOLREST

Signature Comparison Requests

A comparison consists of one questioned signature image and one to five reference images from the same person. The request is sent as multipart/form-data to the POST /v2.4/signature/comparisons endpoint, the API immediately answers 202 Accepted with a comparison id, and the analysis finishes in the background.

1

Prepare the Images

Each image may be PNG, JPEG or TIFF; a single file is at most 10 MB. Use a scan of at least 300 DPI, or a photo framed so the signature fills most of it. One reference is required, but at least three are recommended: a person's natural signature variation can only be measured across several samples, and comparisons with a single reference get a noticeably lower confidence score.

2

Send the Request

Put the questioned signature in the questioned field and the references in references[]. The case_reference field is free text and is written into the report as is. Send report=true and a PDF report is produced as well.

3

Get the Result

There are two ways. If your team has a webhook endpoint, the signature.compared event is sent when the analysis finishes; this is the recommended path in production. Alternatively, poll GET /v2.4/signature/comparisons/{id} every 2 seconds until the status field is completed or failed. A typical run takes 3–8 seconds.

Example Request and Response

curl -X POST https://api.incapon.com/v2.4/signature/comparisons \
  -H "Authorization: Bearer $INCAPON_API_KEY" \
  -F questioned=@questioned.png \
  -F "references[]=@reference-1.png" \
  -F "references[]=@reference-2.png" \
  -F "references[]=@reference-3.png" \
  -F case_reference="2026/1432 E." \
  -F report=true

Response Fields

FieldTypeDescription
statusStringprocessing, completed or failed.
scoreIntegerThe 0–100 confidence score; details on the Confidence Score Algorithm page.
bandStringstrong_match, inconclusive or mismatch.
modelsObjectHow many models voted for a match, and the total number of models.
top_featuresArrayThe biometric features that contributed most to the score.
report_urlStringThe address of the PDF report when report=true.
If an image cannot be read or no signature is found, status becomes failed, the error.code field holds a value such as signature_not_detected, and no credits are charged.

Next Steps & Guides

Was this guide helpful?

Your feedback helps us improve our documentation.