--- Source: https://docs.microblink.com/extraction/api Title: Self-hosted extraction API --- # Self-hosted extraction API The self-hosted extraction API is a REST API that runs [BlinkID](/blinkid) and [BlinkCard](/blinkcard) recognition on your own infrastructure. You send it images you've already captured — it returns structured data extracted from the document. ## What it does {/* #what-it-does */} You POST one or two images of a document (front, back, or both) and the API responds with extracted fields: names, dates, document numbers, MRZ data, and more. There's no SDK to embed, no camera integration, and no data ever leaves your servers. This makes it a good fit when you already have images from your own capture flow, or when you're processing documents in a backend pipeline without a user-facing camera session. ## What's supported {/* #whats-supported */} | Capability | Endpoint | |---|---| | ID documents — both sides | `POST /blinkid-multi-side` | | ID documents — front only | `POST /blinkid-single-side` | | ID barcodes | `POST /id-barcode` | | Payment cards | `POST /blinkcard` | | General barcodes | `POST /barcode` | BlinkID covers passports, national IDs, driver's licenses, and residence permits across [hundreds of document types](https://microblink.com/resources/full-list-of-supported-identity-documents/). BlinkCard handles credit and debit cards. ## Example {/* #example */} Send a front and back image (as a URL or base64): ```bash curl --json '{"imageFront": {"imageUrl": "https://example.com/id-front.jpg"}, "imageBack": {"imageUrl": "https://example.com/id-back.jpg"}}' http://localhost:8080/blinkid-multi-side ``` You get back a JSON object with the extracted document data: ```json { "data": { "firstName": { "latin": "JANE" }, "lastName": { "latin": "DOE" }, "dateOfBirth": { "day": 15, "month": 4, "year": 1990, "originalString": { "latin": "15 APR 1990" } }, "dateOfExpiry": { "day": 14, "month": 4, "year": 2030, "originalString": { "latin": "14 APR 2030" } }, "documentNumber": { "latin": "AB123456" }, "nationality": { "latin": "USA" }, "sex": { "latin": "F" }, "processingStatus": "SUCCESS", "documentClassInfo": { "country": "COUNTRY_USA", "region": "REGION_CALIFORNIA", "type": "TYPE_DL" } } } ``` The full response schema is in the [API reference](/extraction/api/ref). ## Why self-hosted {/* #why-self-hosted */} - **Data stays on your infrastructure** — no images or extracted data are sent to Microblink servers - **Works in air-gapped environments** — runs fully offline once deployed - **No capture dependency** — process images from any source: mobile, web, scanners, or document uploads - **Scales with your stack** — deploy as a Docker container alongside your existing services ## Read more {/* #read-more */} Last updated on Apr 16, 2026