Skip to content
KundenreferenzPreiseSicherheitVergleichBlog

Europe

Americas

Oceania

Technical documentation

CheckFile API Integration Guide

Integrate AI document verification into your application in hours. Authentication, endpoints, webhooks and error handling.

Integration in 4 steps

1

Get your API key

Create a CheckFile account and generate an API key from your dashboard. Sandbox mode available for testing.

2

Submit a dossier

Send documents via POST /api/v1/dossiers with files as multipart/form-data. Each dossier receives a unique identifier.

3

Receive results

Analysis is asynchronous. Retrieve results via GET /api/v1/dossiers/{id} or configure a webhook for automatic notification.

4

Configure webhooks

Register a callback URL via POST /api/v1/webhooks. You'll receive a dossier.completed event with the full result.

Authentication

All requests require an Authorization header with your API key. Keys start with cf_live_ (production) or cf_test_ (sandbox).

HTTP Header
Authorization: Bearer cf_live_your_api_key_here

Code examples

cURL
curl -X POST https://api.checkfile.ai/api/v1/dossiers \
  -H "Authorization: Bearer cf_live_your_key" \
  -F "partner_id=your_partner" \
  -F "reference=DOSSIER-2026-001" \
  -F "files[]=@identity.pdf" \
  -F "files[]=@proof_of_address.pdf" \
  -F "files[]=@payslip.pdf"

Main endpoints

POST/api/v1/dossiers
Create a new verification dossier
GET/api/v1/dossiers/{id}
Retrieve dossier status and results
GET/api/v1/dossiers
List all dossiers (pagination, filters)
DELETE/api/v1/dossiers/{id}
Delete a dossier (GDPR compliance)
POST/api/v1/webhooks
Register a notification webhook
GET/api/v1/rules
List configured business rules

Response structure

Each returned dossier contains an overall confidence score, per-document details, detected alerts and extracted data.

JSON Response
{
  "id": "dos_abc123",
  "status": "completed",
  "confidence_score": 0.97,
  "reference": "DOSSIER-2026-001",
  "created_at": "2026-03-28T10:30:00Z",
  "documents": [
    {
      "type": "identity",
      "filename": "identity.pdf",
      "status": "valid",
      "extracted_data": {
        "full_name": "Jean Dupont",
        "date_of_birth": "1985-06-15",
        "document_number": "123456789",
        "expiry_date": "2028-01-01"
      },
      "alerts": []
    },
    {
      "type": "proof_of_address",
      "filename": "proof_of_address.pdf",
      "status": "valid",
      "extracted_data": {
        "full_name": "Jean Dupont",
        "address": "12 rue de la Paix, 75002 Paris"
      },
      "alerts": []
    }
  ],
  "cross_validation": {
    "name_consistency": true,
    "address_consistency": true,
    "alerts": []
  }
}

Error handling

The API uses standard HTTP status codes. Errors include a machine code and a human-readable message.

400Invalid request (missing parameter or incorrect format)
401Invalid or expired API key
404Dossier not found
429Rate limit exceeded (100 req/min default)
500Server error (retry with exponential backoff)

Limits and quotas

Requests per minute
100 (extensible on request)
Max file size
20 MB
Documents per dossier
50 max
Accepted formats
PDF, JPG, PNG, TIFF, HEIC

Use cases by sector

Banking & Fintech

Automated KYC onboarding: submit identity documents, proof of address and payslips for account opening.

Real Estate

Tenant file verification: cross-analyse 10+ documents in the dossier in under a minute.

HR & Staffing

Employment document checks: verify work permits, qualifications and certificates in real time.

Ready to integrate?

Create your free sandbox account and test the API in minutes.