Web App
The BiomAPI web app is a single-page application available at the root URL (/). No account required — drop a file and get structured results instantly.
Input Tabs
Section titled “Input Tabs”The top section has five tabs for different input methods.
Upload
Section titled “Upload”Process a single biometry file. Drag and drop, click to browse, or paste a file. The extraction engine is selected automatically by file extension:
- PDF, JPG, PNG, GIF, BMP → BiomAI (LLM extraction)
- JSON → BiomJSON (schema validation, preserves original metadata)
Share toggle — enables BiomPIN generation for the result. Off by default.
Process multiple files at once. Drop a folder or select several files together. Files are processed concurrently up to the server’s concurrency limit. Each file gets an individual result card with inline progress. Results are added to the results panel as they complete.
After batch processing, the Export button downloads a ZIP with all results:
- A by-eye CSV (
biomapi-export-YYYYMMDD-HHMMSS.csv) - Individual JSON files per report
BiomPIN
Section titled “BiomPIN”Retrieve a previously processed result using a BiomPIN code (word-word-123456). The 6-digit numeric suffix is the decryption key — entering only the word-word portion returns an error.
You can also navigate directly to https://biomapi.com/pin/word-word-123456 — the app pre-fills the PIN field and retrieves automatically.
Transcribe
Section titled “Transcribe”Manual data entry (BiomDIRECT). Fill in device info, patient demographics, and per-eye measurements directly. Useful when a PDF isn’t available or for entering data from a printout.
Results from Transcribe are tagged method: "BiomDIRECT" in the response metadata. All measurement fields are optional — enter only what you have.
History
Section titled “History”Recently retrieved BiomPINs are saved in your browser’s localStorage. History entries show the patient name/ID, device, expiry time, and PIN code. Click any entry to retrieve it again.
Stale detection: If the BiomAPI database is reset, stored PINs become invalid. On startup, the web app compares the db_id from GET /api/v1/status against the value stored with each history entry. Entries from a previous database instance are automatically removed.
Results Display
Section titled “Results Display”After any successful processing or retrieval, the results panel shows:
Data tab
Section titled “Data tab”Two-column table (OD / OS) with all extracted fields:
- Biometer: device name, manufacturer
- Patient: name (as initials), ID, date of birth, gender
- Per-eye: AL, ACD, K1/K2 (magnitude + axis), WTW, LT, CCT, lens status, post-refractive, keratometric index
- Posterior keratometry (PK1/PK2) if available
Metadata tab
Section titled “Metadata tab”Extraction provenance:
method— BiomAI or BiomDIRECTtimestamp,filename- For BiomAI results: LLM model, token usage (prompt, candidates, cached, thinking), response time, retry count
BiomPIN card
Section titled “BiomPIN card”If a BiomPIN was generated, the card shows:
- The full PIN (
word-word-123456) — click to copy - A QR code — scan with a mobile device to open the result directly
- Expiry date
ESCRS button
Section titled “ESCRS button”Opens the ESCRS IOL power calculation platform pre-filled with the extracted biometry data.
Edit Modal
Section titled “Edit Modal”Click Edit on any result to open the full edit form. All fields are editable:
- Device:
device_name(required),manufacturer(required) - Patient: name, ID, date of birth, gender (all optional)
- Per eye: all 12 measurement fields (all optional)
- Notes and posterior keratometry
Unsaved changes protection — if you try to close the modal with unsaved changes, a confirmation dialog appears.
Submitting the edit re-processes the data and returns a new result tagged BiomDIRECT. If the original result was BiomAI-extracted, the original LLM metadata is preserved in input_schema_version.
Status Bar
Section titled “Status Bar”The fixed bar at the bottom of the screen shows your current authentication and usage state.
| Element | Description |
|---|---|
| BiomAPI key | Enter your key for higher per-user rate limits. Stored in localStorage. |
| Gemini key | BYOK — uses your own Gemini quota for PDF/image extraction. Stored in localStorage. |
| Usage counters | Live per-engine used/limit display, updated after each request. |
| Auth status | Shows whether you’re authenticated (green) and your user ID. |
Both keys are validated by the app via GET /api/v1/biom/usage when entered. A green indicator means the key is valid; red means invalid or not provided.
Downloads
Section titled “Downloads”Single JSON
Section titled “Single JSON”Download the full StandardAPIResponse JSON for any individual result using the Download button on the result card.
ZIP export
Section titled “ZIP export”From the Batch tab after processing, click Export to download a ZIP containing:
biomapi-export-YYYYMMDD-HHMMSS.csv— by-eye CSV (two rows per report: OD + OS)- Individual JSON files with smart filenames:
biomapi-{patientId}-{device}.json