Getting Started

Verify your first document in under five minutes using the trial sandbox or API key.

1. Get access

2. Authenticate

Production integrations use Bearer auth:

Authorization: Bearer YOUR_API_KEY

Trial multipart uploads may also pass api_key form field or X-API-Key header.

3. First request (image)

curl -s -X POST "https://api.plicaforensic.com/api/v1/verify" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -F "image=@passport_scan.jpg" \
  -F "detail_level=detailed" \
  -F "preserve_exif=true" \
  -F "document_type=passport"

4. First request (document scan via messaging app)

curl -s -X POST "https://api.plicaforensic.com/api/v1/verify" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -F "image=@whatsapp_scan.jpg" \
  -F "detail_level=detailed" \
  -F "preserve_exif=true" \
  -F "document_type=utility_bill"

preserve_exif=true is required for document-scan routing (Layer 1 edit maps, sterile EXIF handling). Trial sandbox (/try) sends this automatically.

5. First request (PDF)

curl -s -X POST "https://api.plicaforensic.com/api/v1/verify" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -F "image=@bank_statement.pdf" \
  -F "detail_level=detailed" \
  -F "document_type=bank_statement"

image field accepts JPEG, PNG, HEIC, WebP, and PDF (max size per server config).

6. Read the response

Key fields to integrate first:

Details: Response format

7. Bulk / async (batch)

For multiple files or long-running PDFs, use async jobs instead of holding a sync connection:

curl -s -X POST "https://api.plicaforensic.com/api/v1/jobs/batch" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -F "files=@doc1.pdf" \
  -F "files=@doc2.pdf" \
  -F "detail_level=basic" \
  -F 'additional_info={"case_ref":"48291"}'

Poll GET /api/v1/jobs?batch_id=… or fetch each result at GET /api/v1/jobs/{job_id}/result. Full cookbook: Async /jobs (cURL + Python).

8. Optional: policy webhooks

Dispatch policy_actions to Slack or n8n after verification. See repo guide policy-enforcement-integration-guide.md.

Limits (typical trial)

ItemDefault
Rate limit~20 verify requests / minute (API key)
Image size20 MB
PDF size50 MB
PIPL tip: Call PLICA at the earliest point where raw upload bytes are still available — before your pipeline recompresses or strips metadata.